]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)), not
[~andy/gtk] / ChangeLog.pre-2-4
1 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
4           gtk/gtkwidget.c:
5         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
6         not GTK_WIDGET_GET_ANCESTOR ... see 
7         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
8         Indicate the best practice in the docs for gtk_widget_get_toplevel().
9
10         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
11         so GtkPlug can give the correct signals when transforming
12         from a child to a toplevel.
13         
14         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
15         reparentation correctly.
16
17         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
18         Propagate the previous_toplevel argument down properly.
19
20         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
21         of wrong atr list.
22
23         * gtk/gtkplug.[ch]: Add an "embedded" signal.
24
25         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
26         signals.
27
28         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
29         functions gtk_plug_get_id(), gtk_socket_get_id(),
30         to avoid the user having to worry about realization,
31         and gdkx.h.
32
33         * tests/testsocket.c: Extend to try out the new signals
34         and gtk_plug/socket_get_id().
35
36         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
37         setting of underline attributes.
38
39         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
40         DestroyNotify events from SubstructureNotifyMask
41
42         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
43         Switch GDK_WINDOW_TYPE (window) as needed.
44
45         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
46         allow creation of toplevel windows as children of
47         foreign windows.
48
49         * gtk/gtkplug.c: Remove hacks involving changing private
50         fields of GdkWindow.
51
52         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
53         exactly the same signals and notification
54         be emitted for local embedding as for inter-process
55         embedding.
56
57 2001-07-04  James Henstridge  <james@daa.com.au>
58
59         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
60
61 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
62
63         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
64         XEMBED embedding add a _XEMBED_INFO property to the
65         client with version number and a "mapped" flags.
66         Use the mapped flag instead of the racy MapRequestEvent
67
68         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
69         code to reliably set things (when the child is a passive
70         embedder participating in the XEMBED protocol) intead
71         of just being a hack for embedding non-participating
72         programs. Fix various bugs and race conditions.
73         
74         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
75         work by simply making the GtkSocket the gtk parent
76         of the GtkPlug. Set a flag in this case and make
77         the GtkPlug work like a normal container by overriding
78         methods such as check_resize and "chaining past" GtkWindow
79         to GtkBin.
80
81         * gtk/gtkentry.c (gtk_entry_real_activate)
82           gtk/gtkmain.c (gtk_propagate_event): 
83         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
84         
85         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
86         gtk_widget_get_ancestor):
87         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
88         might not give the expected result and recommend
89         an alternative.
90
91         * tests/testsocket.c tests/testsocket_child.c
92         tests/testsocket_common.c tests/Makefile.am: Extended
93         to test different type of adding plugs to sockets
94         (local,active,passive), and to test mapping/unmapping
95         the plug.
96
97         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
98         mark the window as destroyed until after we
99         called _gdk_windowing_window_destroy().
100         (_gdk_windowing_window_destroy() may use GDK functions
101         on the window.)
102
103         * gdk/x11/gdkinput.c: Remove the check for finalization - 
104         devices can be finalized under some circumnstances.
105  
106         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
107         small problem with GDK_TYPE_DEVICE.
108  
109 2001-07-02  Havoc Pennington  <hp@pobox.com>
110
111         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
112         use constants not atoms.
113
114 2001-07-02  James Henstridge  <james@daa.com.au>
115
116         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
117         PANGO_TYPE_TAB_ARRAY.
118
119         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
120         for PANGO_TYPE_TAB_ARRAY.
121
122         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
123         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
124
125         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
126         the file.  Remove Pango types from defs -- they are now defined in
127         libpango.
128
129 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
130
131         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
132
133         * gtk/gtkobject.c (gtk_object_destroy): invoke
134         g_object_run_dispose().
135
136         * gtk/gtkwindow.c: 
137         * gtk/gtkwidget.c: 
138         * gtk/gtkobject.c:
139         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
140         method.
141
142 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
143
144         * gtk/gtktypeutils.c (gtk_type_class): Remove
145         change check for GTK_TYPE_OBJECT derivation to
146         G_TYPE_OBJECTS - it's Tim-approved to use this 
147         for arbitary objects.
148
149         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
150         prefix gtk_container_dequeue_resize_handler().
151
152         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
153         to the hierarachy_changed signal, since you otherwise
154         have to always keep that around.
155
156         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
157         for extra argument to hierarchy_changed.
158
159 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
160
161         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
162         for style to mean "revert to default style"
163
164         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
165           gtk_widget_restore_default_style): Make this functions
166         deprecated aliases for gtk_widget_set_style (widget, NULL).
167
168         * gtk/gtkwidget.[ch]: Remove:
169            gtk_widget_set_default_style ()
170            gtk_widget_push_style ()
171            gtk_widget_pop_style ()
172         These functions interact are overriden by RC files, and
173         thus virtually useless, and complicated.
174
175 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
176
177         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
178         most of the previous global variables in gtkrc.c. This is
179         in preparation for multi-head, since each screen can
180         have different GtkSettings and RC information.
181
182         * gtk/gtkrc.[ch]: 
183
184         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
185         GtkSettings parameter to GtkRcStyle::parse.
186
187         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
188         Add two new settings gtk-theme-name, gtk-key-theme-name,
189         for RC files that are loaded by name after reading
190         the default RC files.
191         
192         * gtk/gtkrc.c: Allow priorities for styles, as wll as
193         bindings.
194
195         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
196         and use it by default for RC files loaded via 
197         gtk-theme-name, gtk-key-theme-name.
198
199         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
200         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
201         tests/testgtkrc: Require pathnames to be absolute.
202
203         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
204         the source when parsing, since the operation of looking up a
205         pixmap from an RC file depends on the parsing context.
206
207         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
208         reset RC styles on all widgets when files are reparsed.
209
210         * tests/testgtk.c (create_rc_file) 
211           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
212         Simplify, now that gtk_rc_reparse_all() resets styles on
213         all widgets itself.
214
215         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
216         return value.
217
218         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
219         GtkSettings argument.
220
221         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
222         gtk_settings_get_global().
223
224         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
225         to get the appropriate GtkSettings for a widget. (For now,
226         just gets the default GtkSetttings.) 
227
228         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
229           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
230         changes.
231
232         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
233         getting a style for a path without actually having a widget.
234         (Allows using a style for a subpart of a widget, for
235         example.)
236
237         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
238         the RC files to be reloaded for just one GtkSettings
239         (not sure how useful this really is.)
240
241         * gtk/gtkrc.h: Deprecate
242         gtk_rc_add_widget_name/widget_class/class_style
243
244 2001-06-30  Alex Larsson  <alexl@redhat.com>
245
246         * gdk/linux-fb/gdkinput-none.c:
247         * gdk/linux-fb/gdkinput.c:
248         * gdk/linux-fb/gdkinputprivate.h:
249         Convert GdkDevice to a GObject.
250
251         * linux-fb/gdkprivate-fb.h:
252         * linux-fb/gdkvisual-fb.c:
253         Convert GdkVisual to a GObject.
254
255 2001-06-29  Alex Larsson  <alexl@redhat.com>
256
257         * gdk/gdkvisual.h:
258         * gdk/gdkcolor.c:
259         * gdk/x11/gdkx.h:
260         * gdk/x11/gdkvisual-x11.c:
261         Convert GdkVisual to a GObject.
262
263         * gdk/gdkinput.h:
264         * gdk/gdkevents.c:
265         * gdk/x11/gdkinputprivate.h:
266         * gdk/x11/gdkinput-gxi.c:
267         * gdk/x11/gdkinput-none.c:
268         * gdk/x11/gdkinput-x11.c:
269         * gdk/x11/gdkinput-xfree.c:
270         * gdk/x11/gdkinput.c:
271         Convert GdkDevice to a GObject.
272
273 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
274
275         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
276         to just plain new, fixing the number of columns, and column types
277         at creation time.
278
279         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
280
281         * gtk/gtkcellrenderertext.c
282         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
283         height to a specific font.
284
285         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
286
287         * tests/*c: change to work with new store models.
288
289 2001-06-29  Havoc Pennington  <hp@redhat.com>
290
291        * Throughout: fixes to compile with G_DISABLE_COMPAT
292         (s/g_signal_connectc/g_signal_connect/,
293         s/g_signal_newc/g_signal_new/,
294         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
295
296 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
297
298         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
299         add path argument to selection callbacks.
300
301 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
302
303         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
304         walk through a model in a depth first manner, with the option to
305         break out.
306
307 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
308
309         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
310         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
311         column and follow it when draged, rather than a location in the
312         view. "expander_column" property and drawing functions changed
313         accordingly.  Fixes bug #55942.
314
315         (gtk_tree_view_{set,get}_expander_column): Now works with a
316         GtkTreeViewColumn* instead of int.
317
318 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
319
320         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
321
322 2001-06-28  Havoc Pennington  <hp@pobox.com>
323
324         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
325         image data to the screen, using a server grab to avoid race
326         conditions.
327
328         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
329         check for NULL return from gtk_image_new_from_stock(), it never
330         returns NULL.
331         (gtk_item_factory_create_item): fix bug where we parsed the stock
332         ID as an inline pixbuf
333
334         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
335
336         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
337         support (should be using binding set here)
338
339         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
340         support (should be using binding set here)
341
342         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
343         support
344
345         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
346
347         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
348
349         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
350
351         * gtk/gtkimcontextsimple.c
352         (gtk_im_context_simple_filter_keypress): keypad
353
354         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
355
356         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
357
358         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
359
360         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
361         should be binding-setted)
362
363         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
364
365         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
366
367         * gtk/gtkcalendar.c: numeric keypad fixes
368
369         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
370         support
371
372         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
373         screwup
374
375         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
376         clip the render area to the drawable's clip region in advance,
377         so we don't get data from the server that we don't need.
378
379         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
380         check return value of gdk_pixbuf_get_from_drawable(), fall back 
381         to bilevel alpha if we can't get the pixbuf to composite against.
382
383         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
384
385         * gdk/gdkimage.c (gdk_image_get_colormap): add
386         gdk_image_set_colormap, gdk_image_get_colormap
387
388         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
389         take a region of the image, instead of converting the entire
390         image.
391
392         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
393         keybinding signal. Add default bindings for it. Add default
394         handler for show_help that shows the tooltip for the widget.
395
396         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
397         "close" keybinding signal, remove key press handler.
398
399         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
400         it's not our usual practice to leave a deprecated function around
401         with a runtime warning, plus we don't want it to appear in docs,
402         plus if we make them yellow no one will want to change them
403         anyhow.
404
405 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
406
407         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
408         GTK_WIDGET_REALIZE() for resize queueing.
409
410         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
411         GTK_WIDGET_REALIZE() for post event delivery destruction upon
412         GDK_DESTROY.
413         
414         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
415         sompensate for former (pre-2.0) connect_after() facility.
416         (gtk_widget_send_expose): 
417         (gtk_widget_event): assert the widget is realized, since event delivery
418         to non-realized widgets is essentially a bug. event handlers should
419         be able to unconditionally rely on widget->window (unless they
420         emit events on their own which can trigger widget destruction).
421         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
422         logic. event delivery happens as follows:
423         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
424         b) if !was_handled in (a) and the widget is still realized, emit event-
425            specific signal (RUN_LAST handler). returns was_handled.
426         c) emission of GtkWidget::event-after for notification if the widget is
427            still realized (regardless of was_handled from previous stages, no
428            class handler). no return value.
429         d) was_handled gets passed on to caller, to determine further
430            propagation. if the widget got unrealized meanwhile, was_handled
431            is returned as TRUE.
432
433         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
434         gdk_event_get_coords().
435
436 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
437
438         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
439         age 0, binary age 0. depend on glib 1.3.7.
440
441         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
442
443         * gtk/gtkmenubar.c: same here.
444         
445         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
446
447         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
448
449         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
450         
451         * gtk/gtkmenubar.c (add_to_window): likewise.
452         
453         * gtk/gtktextbtree.c: and here...
454         
455         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
456         
457         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
458         
459         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
460         
461         * gtk/gtktreeviewcolumn.c:
462         (_gtk_tree_view_column_set_tree_view): yet again.
463
464         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
465         signal connections without g_signal_connect_data().
466         
467         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
468         demo of the matter.
469         
470         * demos/testpixbuf.c (main): running out of equality phrases for the
471         ChangeLog, but had to adapt connections here as well.
472         
473         * demos/testanimation.c (progressive_timeout): and for the fun of it,
474         tackled this the same way.
475         
476         * tests/testtext.c (create_view): ok, it's becoming a pain at this
477         point, but had enough enery for one more fix.
478
479         * tests/testtreecolumns.c (main): stand up man, do your work!
480
481         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
482         fix, either that's been all of it or CVS gtk is broken yet again.
483         
484 2001-06-29  James Henstridge  <james@daa.com.au>
485
486         The following changes correspond to bug #56812
487
488         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
489         code for GdkDevice.
490
491         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
492         GdkCursor.
493
494 2001-06-19  Havoc Pennington  <hp@pobox.com>
495
496         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
497         for mapping a window without fooling with stacking order, but
498         updating the "withdrawn" flag
499
500         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
501         filtering as soon as possible, moving move resize and wmspec_check
502         handling after the event filter.  Make default filter apply to all
503         events, not just those with no GdkWindow wrapped around the X
504         window. Fix a FIXME about how the window could be a pixmap using 
505         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
506
507         Also, be robust against events not on a known GdkWindow.
508
509         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
510         gdk_x11_ungrab_server): export reference-counted server grabs, so
511         other people can grab server over a GDK function that also does
512         so.
513
514 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
515
516         * gtk/gtktreeviewcolumn.c
517         (gtk_tree_view_column_pack_start_cell_renderer): New function to
518         reflect that you can (hypothetically) pack cell renderers into a
519         column.
520         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
521         (gtk_tree_view_column_cell_is_visible): Move more functionality to
522         the column.
523         (gtk_tree_view_column_cell_can_focus): Move more functionality to
524         the column.
525
526         * gtk/gtktreeview.c: Move to use new column-packing code.
527         (gtk_tree_view_real_expand_row): remove totally braindead code.
528         (gtk_tree_view_real_collapse_row): ditto.
529
530 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
531
532         * gtk/gtktreeviewcolumn.c: Fix a typo.
533         
534 2001-06-26  Joel Becker  <jlbec@evilplan.org>
535
536         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
537           at the end of the file
538
539 2001-06-26  Havoc Pennington  <hp@redhat.com>
540
541         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
542
543 2001-06-26  Havoc Pennington  <hp@redhat.com>
544
545         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
546         property
547
548 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
549
550         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
551         stupid missing statement
552
553         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
554         private function for ATK.  It notifies you of how many _visible_
555         children are deleted when a node is deleted.  Should be used by
556         atk only.
557
558 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
559
560         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
561         Use new pango_context_get_metrics() to fix problems
562         with font lists in descriptions. (#56184, reported by
563         Jonas Borgström)
564
565 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
566
567         * gtk/gtkiconfactory.c:
568         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
569         item factory so inlined pixbufs actually work.
570
571 2001-06-25  Havoc Pennington  <hp@redhat.com>
572
573         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
574         s/RESIZEABLE/RESIZABLE/
575
576         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
577
578 2001-06-25  Alexander Larsson  <alexl@redhat.com>
579
580         * configure.in:
581         Added --enable-fbmanager. This is some experimental code
582         that lets several GtkFB apps coordinate their access to the
583         framebuffer.
584         
585         * acconfig.h:
586         Added ENABLE_FB_MANAGER.
587
588         * gdk/linux-fb/Makefile.am:
589         Added gdkfbmanager and gdkfbswitch.
590
591         * gdk/linux-fb/gdkkeyboard-fb.c:
592         * gdk/linux-fb/gdkmouse-fb.c:
593         * gdk/linux-fb/gdkprivate-fb.h:
594         Split device init and open so that
595         they can be opened and closed while switched
596         away.
597
598         * gdk/linux-fb/gdkmain-fb.c:
599         Add the basic manager communication.
600
601         * gdk/linux-fb/gdkrender-fb.c:
602         Don't update to the shadow fb if we're
603         blocked by the fb manager.
604
605 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
606
607         * docs/Changes-2.0.txt: Add note about child property
608         changes.
609
610 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
611
612         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
613         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
614
615         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
616         with un'reffing wrong list reported by Jeff Franks.
617
618         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
619
620         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
621         for the default icon. Remove inline XPM.
622
623         * gtk/gtkstock.h gtk/gtkiconfactory.c:
624         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
625         is used for GTK_STOCK_DND, but it is a bit too small.)
626
627         * gtk/stock-icons/stock_dnd_multiple.png
628         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
629
630         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
631         TRUE when starting a drag. In other cases, we are
632         just observing. (#52995)
633
634         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
635         function to set the icon for a drag from a GdkPixbuf
636         or stock ID.
637
638         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
639         Likewise, for drag sources.
640
641         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
642         (Now should be done using the stock system.)
643
644 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
645
646         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
647         Removed - didn't work and not particularly useful anyways
648         if it did. 
649
650 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
651
652         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
653         introduced last night that was making things decidedly not work.
654
655         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
656         so that we have getter/setter pairing everywhere it makes
657         sense. (#55767)
658
659         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
660         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
661         deprecated compat macro. (#55516)
662
663         * gtk/gtklabel.[ch]: Add functions
664         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
665         gtk_label_set_label(), which mirror the property API for GtkLabel.
666         Make gtk_label_get_attributes() only reflect the attributes
667         set by gtk_label_set_attributes.
668
669         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
670         from gtk_notebook_set_page().
671
672 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
673
674         * configure.in: Fix tests for XShm.h.
675
676         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
677         gdk_image_new() by use of goto, properly use g_object_unref().
678
679 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
680
681         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
682         calls, as GdkImage is an object. these should be g_obejct_unref()
683         instead but that won't work because of the g_error() statement
684         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
685         to spot these places.
686
687 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
688
689         * modules/input/gtkimcontextxim.c: Fixup some problems with 
690         text length handling in error cases.
691
692         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
693         a bit to make test actually warn on attempt to allocation
694         a negative size. (#56101, Matthias Clasen)
695
696 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
697
698         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
699         noticed by Brian Cameron.
700         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
701         Cameron.
702
703 2001-06-22  Hans Breuer  <hans@breuer.org>
704
705         * gdk/gdk.def : updated externals
706
707         * gdk/win32/gdkdrawable-win32.c : corrected some casts
708         in GDK_NOTEs
709
710         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
711         to translate coordinates to the internal > 16 bit system
712         Try to handle WM_WINDOWPOSCHANGED to get better performance for
713         when moving/resizing
714
715         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
716         and gdk_keymap_get_direction (). The latter is untested for
717         the RTL case
718
719         * gtk/gtk.def : updated externals
720
721         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
722         from pango_language_from_string (), not an already freed pointer
723
724         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
725         binary (-kb) to be useable on windoze
726  
727 2001-06-21  Alexander Larsson  <alexl@redhat.com>
728
729         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
730         Update to new PangoLanguage changes.
731         
732         * gtk/gtkwindow-decorate.c:
733         * gtk/gtkwindow.[ch]:
734         Added setting argument to gtk_window_set_has_frame ()
735         
736 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
737
738         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
739         the case without XKB properly.
740
741         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
742         unused gtk_rc_auto_parse variable.
743
744         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
745         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
746         longer needed with GdkPixbuf.
747
748         * gtk/gtkrc.c (_gtk_rc_init): Make private.
749
750 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
751
752         * gtk/gtkentry.h: Mark deprecated functions with
753         GTK_DISABLE_DEPRECATED.
754
755 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
756
757         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
758
759         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
760
761         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
762           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
763           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
764           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
765           to recent changes in Pango.
766
767         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
768           to test whether the basic engine honors them.
769
770 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
771
772         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
773         gtk_container_child_get_property().
774
775 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
776
777         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
778         (gtk_tree_view_move_cursor_page_up_down): implement.
779
780 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
781
782         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
783         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
784         don't use automatic fixed size buffer for printf-ing floats, doubles
785         can expand to really _huge_ strings, use g_strdup_printf() instead.
786
787 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
788
789         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
790         construct property in 1.2 and still needs to be.
791
792         * gtk/gtkwidget.c: "composite_child" is not a settable property.
793
794 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
795
796         * gtk/gtkliststore.c (gtk_list_store_clear): 
797         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
798         clear a model.
799
800 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
801
802         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
803
804         * gtk/Makefile.am:
805         * gtk/gtk.h: disabled GtkPacker compilation.
806
807         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
808
809         * gtk/gtknotebook.c:
810         * gtk/gtktable.c:
811         * gtk/gtkbox.c: ported this over to child properties.
812
813         * gtk/gtksettings.c: fetch class properties via
814         g_object_class_list_properties().
815
816         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
817         child arg interface. use gobjectnotifyqueue.c for child property
818         notification.
819
820         * gtk/gtkwidget.[hc]: provide necessary means for container child
821         properties, i.e. ::child_notify signal,
822         gtk_widget_freeze_child_notify(),
823         gtk_widget_child_notify(),
824         gtk_widget_thaw_child_notify().
825
826         * tests/testgtk.c: removed inferior property handling code, for
827         property editing, a generic module should be used, and GLE
828         coincidentally fullfills that purpose.
829
830         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
831         needs to be adapted to g_object_class_list_properties() before this
832         builds again.
833
834 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
835
836         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
837         test if a node is expanded.
838
839 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
840
841         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
842         where collapsing a selected row would result in the cursor/anchor
843         getting screwed up.
844
845 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
846
847         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
848         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
849         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
850         Now I can really reorder/sort all Store widgets.  treesorttest
851         seems to just work now.
852         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
853         testtreesort worked through a big coincidence all this time.
854         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
855         code.
856         * tests/testtreecolumns.c: Big 'ol warning at the top letting
857         people know that this code should never ever ever be copied.
858
859 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
860
861         * gtk/gtkwindow.h: Fixed a small typo, it should be
862         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
863         on line 134.
864
865 2001-06-14  Havoc Pennington  <hp@redhat.com>
866
867         Docs fixups, and:
868         
869         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
870         GTK_DISABLE_DEPRECATED
871
872 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
873
874         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
875         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
876         finish it off tonight, though it basically works now when it's a
877         list.  Also, I have a sinking feeling neither GtkTreeStore or
878         GtkListStore actually resort when adding a new item.  I'll look
879         into it.
880
881 2001-06-14  Havoc Pennington  <hp@redhat.com>
882
883         * demos/gtk-demo/main.c (load_file): fix bug identified by
884         warnings I just added to gtktextbuffer
885
886 2001-06-14  Havoc Pennington  <hp@redhat.com>
887
888         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
889
890         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
891
892         * gtk/gtktextbtree.c: don't leak node data all over the place.
893
894         * demos/gtk-demo/main.c (main): create fontify tags for the right
895         buffer
896
897         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
898         to mention tags in the same table can't have the same name,
899         suggested by Skip Montanaro
900
901 2001-06-11  Havoc Pennington  <hp@redhat.com>
902
903         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
904         for trying to add two tags with same name to the tag table
905
906         * demos/gtk-demo/main.c (main): fix colors ;-)
907
908 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
909
910         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
911         that allows grouping together multiple windows so that grabs
912         within that set of windows only affect those windows.
913
914         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
915         signal for notification when a widget becomes shadowed
916         by a grab or is no longer shadowed by a grab.
917
918         * gtk/gtkwidget.c (gtk_widget_propagate_state)
919           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
920         insenstive widgets to maintain a grab.
921
922 2001-06-14  Alexander Larsson  <alexl@redhat.com>
923
924         * docs/README.linux-fb:
925         Add some example config files that can be used with the URW fonts.
926         
927         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
928         Set up the color ramps for DirectColor mode.
929
930 2001-06-11  Havoc Pennington  <hp@redhat.com>
931
932         * Release 1.3.6
933          
934 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
935
936         * gdk/linux-fb/gdkwindow-fb.c:
937         Unify shaped window code and make it repaint the area that used
938         to be part of the shape, but isn't anymore.
939
940 2001-06-11  Havoc Pennington  <hp@redhat.com>
941
942         * NEWS: Updates
943
944         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
945
946         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
947         
948 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
949
950         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
951         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
952         passes zero instead, so do we.
953         
954 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
955
956         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
957         Deep copy dash_list too.
958         (_gdk_fb_gc_new): Set default cap_style before
959         setting values.
960
961 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
962
963         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
964         gdk_keymap_get_direction): New functions.
965
966 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
967
968         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
969         gtk_tree_model_get_flags by adding a second flag for atk.
970
971         * gtk/gtktreemodel.c: make cursor behavior interact better with
972         mouse presses.
973
974 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
975
976         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
977         expand_row/collapse_row to be 2 signals each -- test_expand_row
978         and row_expanded as well as test_collapse_row and row_collapsed.
979
980 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
981
982         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
983         signal name to be changed instead of selection_changed.
984
985 2001-06-08  Havoc Pennington  <hp@redhat.com>
986
987         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
988         "scroll_offset" property for notification when the layout offsets
989         may have changed
990         (gtk_entry_adjust_scroll): add notify for scroll_offset
991         (gtk_entry_layout_index_to_text_index): function to compensate for
992         preedit string when doing coordinate stuff on the entry's layout
993         (gtk_entry_text_index_to_layout_index): inverse function
994         (gtk_entry_get_layout_offsets): hook to get current position of
995         the layout      
996         (gtk_entry_get_layout): hook to get the layout itself.
997
998         * gtk/gtklabel.c (gtk_label_get_layout): new function
999
1000 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1001
1002         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1003         keybinding.
1004         (gtk_tree_view_focus): Fix merge conflict.
1005
1006 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1007
1008         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1009         clean up cursor handling.
1010
1011 2001-06-08  Havoc Pennington  <hp@redhat.com>
1012
1013         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1014         function
1015
1016         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1017         this function
1018
1019 2001-06-08  Alex Larsson  <alexl@redhat.com>
1020
1021         * gtk/gtkcompat.h.in:
1022         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1023         Fixes bug #52892
1024
1025 2001-06-08  Havoc Pennington  <hp@redhat.com>
1026         
1027         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1028         parent still
1029
1030 2001-06-08  Havoc Pennington  <hp@redhat.com>
1031
1032         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1033         don't call g_list funcs on GSList
1034
1035         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1036         gtk_container_focus(), since some widgets have focusable locations
1037         which are not other widgets. These widgets should not have to be 
1038         containers just to manage the focus. For example, GtkHSV is
1039         currently a container for no good reason. Also, this cleans
1040         up the "if (is_container && is_sensitive && is_drawable)
1041         container_focus ()" mess in widget implementations.
1042
1043         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1044         function, and have it just call gtk_widget_child_focus().
1045
1046         * gtk/gtkhsv.c: derive from widget not container
1047         
1048         Throughout: fix to reflect GtkContainer::focus change
1049         
1050 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1051
1052         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1053         range.  Fix bug #55921
1054
1055         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1056         (#55920).
1057
1058 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1059
1060         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1061         and gdk_keymap_get_current_direction().
1062
1063         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1064           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1065         the current locked group, use it to set the keymap
1066         direction.
1067
1068         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1069         to determine whether we draw a split cursor or use
1070         a jumping cursor based on the current direction.
1071
1072         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1073         Obey the split cursor setting. 
1074
1075 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1076
1077         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1078         when toggling on, not when toggling off... (#55906)
1079
1080 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1081
1082         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1083         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1084         in docs. (#55812, Vitaly Tishkov)
1085
1086 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1087
1088         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1089         selection_changed to changed in signal connection to GtkTreeSelection,
1090         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1091
1092 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1093
1094         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1095         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1096         the GtkTreeSelection::changed signal.
1097
1098         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1099         object.
1100
1101         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1102         object.
1103
1104 2001-06-07  Havoc Pennington  <hp@redhat.com>
1105
1106         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1107
1108 2001-06-07  Havoc Pennington  <hp@redhat.com>
1109         
1110         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1111         (not tested yet because with absolute path to srcdir I can't build
1112         atk, but it was broken anyway so this may help) 
1113
1114 2001-06-07  Havoc Pennington  <hp@redhat.com>
1115
1116         * configure.in: output m4macros/Makefile
1117         
1118 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1119
1120         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1121         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1122
1123 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1124
1125         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1126         expansion/collapsing so it only happens in one place.
1127         (gtk_tree_view_real_expand_row): ditto.
1128
1129 2001-06-07  Havoc Pennington  <hp@redhat.com>
1130
1131         * tests/Makefile.am: add missing -I flag
1132
1133         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1134
1135         * configure.in: use pkg-config to see if GModule is
1136         supported; fix to properly turn on included loaders 
1137         when GModule isn't supported; don't use AC_CHECK_LIB 
1138         when libs are not installed yet
1139
1140         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1141
1142         * Makefile.am (SUBDIRS): add m4macros subdir
1143
1144         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1145         dependencies also.
1146
1147 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1148
1149         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1150         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1151
1152 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1153
1154         * gtk/gtktreeview.c
1155         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1156         bindings to expand and collapse rows.
1157         (gtk_tree_view_real_select_cursor_parent): New key binding.
1158         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1159
1160         * gtk/gtkmarshal.list: new
1161         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1162
1163 2001-06-06  Havoc Pennington  <hp@redhat.com>
1164
1165         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1166
1167         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1168         Down to move visually rather than logically, since it confuses 
1169         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1170
1171 2001-06-06  Alex Larsson  <alexl@redhat.com>
1172
1173         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1174         Fix up error messages.
1175
1176 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1177
1178         * gtk/gtktooltips.h: Include gtkwidget.h 
1179         (#55798, Karl Nelson)
1180
1181         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1182         a valid latin-1 character. (Marc Lehmann, #35467)
1183
1184         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1185         (Marc Lehmann, #35467)
1186         
1187 2001-06-05  Alex Larsson  <alexl@redhat.com>
1188
1189         * demos/gtk-demo/appwindow.c (do_appwindow):
1190         Don't swap the order of the args to gtk_widget_destroyed.
1191
1192         * tests/testgtk.c (destroy_properties):
1193         Don't crash when the properties window is destroyed.
1194
1195         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1196         Use with_mnemonics to handle the case of stock items with
1197         underscores in them.
1198
1199 2001-06-05  Havoc Pennington  <hp@redhat.com>
1200
1201         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1202         gtk_text_iter_reorder
1203
1204 2001-06-05  Havoc Pennington  <hp@redhat.com>
1205
1206         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1207
1208 2001-06-05  Havoc Pennington  <hp@redhat.com>
1209
1210         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1211         to the range that was set
1212
1213         * gtk/gtkrange.c: add value_changed signal, primarily 
1214         intended for use with GtkScale
1215         (gtk_range_set_increments): new function
1216         (gtk_range_set_range): new function with weird name
1217         (gtk_range_set_value): new function
1218         (gtk_range_get_value): new function
1219
1220         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1221         from gtk_spin_button_get_value_as_float(). Compat #define
1222         added for get_value_as_float.
1223
1224         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1225
1226         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1227
1228 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1229
1230         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1231
1232 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1233
1234         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1235
1236         * tests/testgtk.c (create_tooltips): Remove usage of
1237         gtk_widget_set().
1238
1239 2001-06-05  Havoc Pennington  <hp@redhat.com>
1240
1241         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1242
1243         Applying patch from Jeff Franks, with function docs added.
1244         
1245         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1246         remove call to set_mnemonic_widget, change docs a bit.  
1247
1248         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1249         new function
1250
1251         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1252         new function
1253
1254         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1255
1256         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1257         function
1258         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1259
1260         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1261         new function
1262
1263         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1264         function        
1265
1266         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1267         auto-selection of mnemonic widget.
1268
1269 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1270
1271         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1272         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1273         (gtk_tree_view_column_set_min_width): ditto.
1274
1275 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1276
1277         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1278         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1279
1280 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1281
1282         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1283         gtk_clist_thaw().
1284
1285 2001-06-04  Havoc Pennington  <hp@pobox.com>
1286
1287         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1288         releases for buttons 6, 7
1289
1290 2001-06-04  Havoc Pennington  <hp@redhat.com>
1291
1292         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1293         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1294         #55562
1295
1296 2001-06-04  Havoc Pennington  <hp@redhat.com>
1297
1298         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1299         where text_view->layout == NULL by assuming its size is 0, 
1300         i.e. same as if we haven't done any reflow. Reported by 
1301         Hidetoshi Tajima #55448 
1302
1303 2001-06-04  Havoc Pennington  <hp@redhat.com>
1304
1305         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1306         and 7 for scroll left/right, from Thomas Broyer
1307
1308 2001-05-10  Havoc Pennington  <hp@redhat.com>
1309
1310         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1311         we need to parse the xsetting as if it were an RC file string.
1312
1313         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1314         value of palette from settings, not from static variable
1315
1316         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1317         xsettings translation table
1318
1319         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1320         hardcoding the toolbar style conflicts with new customizable 
1321         toolbar style philosophy
1322         (gtk_toolbar_class_init): add settings for default toolbar style;
1323         these are used unless the app specifically forces a toolbar style
1324
1325         * gtk/gtksettings.c (settings_install_property_parser): only
1326         return at the start if we warn and parser == NULL
1327
1328         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1329         palette changed handler so we don't notify dead color selections
1330
1331         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1332         xthickness/ythickness of 0 or 1 properly 
1333         (gtk_default_draw_resize_grip): clear the background behind the
1334         resize grips, and align to bottom right if we square the 
1335         area to be drawn.
1336
1337         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1338         statusbar label to 1, so it doesn't make toplevels resize oddly
1339         (gtk_statusbar_size_request): add grip size to request
1340         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1341         the grip size in the request
1342
1343         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1344         bug where showing all on a toplevel makes the toolbar 
1345         button text appear despite the toolbar mode
1346
1347         * gtk/gtkmenubar.c: add internal padding style property
1348
1349         * gtk/gtktoolbar.c: Add internal padding style property; add
1350         shadow type style property
1351
1352         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1353         state; and put Container::border_width outside the frame
1354
1355         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1356         interior focus mode, we just use blinking cursor
1357
1358 2001-06-04  Havoc Pennington  <hp@redhat.com>
1359
1360         * configure.in: Make gdk-pixbuf have same version number as GTK
1361
1362 2001-06-04  Havoc Pennington  <hp@redhat.com>
1363
1364         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1365         digits greater than 6. If there actually are limits (which there
1366         likely aren't), should clamp to them not warn.
1367         (gtk_spin_button_new_with_range): don't take log of 0
1368         (gtk_spin_button_size_request): use digits to compute size
1369         request, rather than step increment.
1370
1371         * tests/testgtk.c (create_spins): test larger values of digits
1372         
1373         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1374         font on map not expose, so we don't get weirdness during scrolling
1375
1376 2001-06-04  Havoc Pennington  <hp@redhat.com>
1377
1378         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
1379         Sam Solon, bug #54577, update value even if not drawable.
1380
1381 2001-06-04  Havoc Pennington  <hp@redhat.com>
1382
1383         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
1384         SCROLL_LEFT, reported by Thomas Broyer.
1385
1386 2001-06-04  Havoc Pennington  <hp@redhat.com>
1387
1388         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
1389         Process updates immediately, to prevent funny lag effect
1390         when scrolling, at some mild potential efficiency cost.
1391
1392 2001-06-04  Havoc Pennington  <hp@redhat.com>
1393
1394         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
1395         slider on the click.
1396
1397 2001-06-03  Havoc Pennington  <hp@pobox.com>
1398
1399         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
1400         hscale/vscale details, so we can use it for scrollbar as well.
1401
1402         * tests/testgtk.c (reformat_value): honor digits from GtkScale
1403
1404         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1405         (GtkScrollType): add START and END from GtkTroughType
1406
1407         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1408         its x/y arguments
1409
1410         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1411         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1412         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1413         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1414         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1415
1416         Notable changes in the process:
1417          
1418         - stepper_size style property is the height for vertical 
1419           ranges, width for horizontal; the other dimension matches
1420           the trough size
1421         - add ability to do NeXT-style steppers (and several other styles
1422           that don't make any sense)
1423         - added min_slider_length, fixed_slider_length properties to
1424           GtkScrollbar
1425         - cleaned some private (or at least useless) functions out of
1426           gtkscale.h    
1427         - moved bindings to GtkScale from subclasses, even arrow keys,
1428           since blind users don't know scale orientation.
1429         - change move_slider action signal to use new GtkScrollType,
1430           remove GtkTroughType argument
1431         - digits rounds the values a range will input to the given 
1432           number of decimals, but will not try to force adjustment 
1433           values set by other controllers. That is, we no longer
1434           modify adjustment->value inside a value_changed handler.
1435         - added getters for GtkScale setters
1436         - middle-click begins a slider drag
1437         
1438 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1439
1440         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1441         getting the focus code to work.
1442         (gtk_tree_view_class_init): Add a bunch of keybindings.
1443
1444         * gtk/gtktreeviewcolumn.c
1445         (gtk_tree_view_column_set_cell_data_func):
1446         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1447         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1448         of "properties_changed" to help justify the death of the latter
1449         signal. (-:
1450
1451         * tests/testtreefocus.c (main): Let some columns be focussable to
1452         test focus better.
1453
1454 2001-06-01  Havoc Pennington  <hp@redhat.com>
1455
1456         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1457         
1458         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1459         overwrite in overwrite mode if we already deleted the selection
1460         and replaced it with new text.  
1461
1462         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1463         selection to an empty range, clear the clipboard if we owned it.
1464         (gtk_label_set_selectable): give up selection if we become
1465         unselectable.
1466         (gtk_label_state_changed): override state changed to unselect text
1467         when insensitive
1468         (get_text_callback): add paranoia check that indexes aren't
1469         outside of label->text
1470         (gtk_label_select_region): make -1 for start_offset mean "end of
1471         label," for consistency with GtkEditable
1472
1473         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1474         GTK_DIALOG_NO_SEPARATOR flag
1475
1476 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1477
1478         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1479         notifications on non-existant "enable_arrow_keys".
1480         (#53753, Skip Montanaro)
1481
1482 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1483
1484         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1485         GDK_TYPE_RECTANGLE.
1486
1487         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1488         of allocation argument be GDK_TYPE_RECTANGLE.
1489
1490 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1491
1492         * gtk/gtkoptionmenu.c: Account for the fact that the border
1493         width is _outside_ the window. (Fixes #54585, bug found
1494         by Bastien Nocera.)
1495
1496 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1497
1498         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1499         value from GDK settings against parameter spec.
1500
1501         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1502         to temporary values and use g_value_transform(), since
1503         thinking that GValue was going to be easy or efficient
1504         to use was, of course, a mistake.
1505
1506         * gtk/gtksettings.c: Add cursor blink setting.
1507         
1508         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1509
1510         * gtk/gtkentry.c: Add cursor blinking.
1511
1512         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1513         cursor blink global settings.
1514
1515         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1516         for :text_position in places where it is missing.
1517
1518 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1519
1520         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1521
1522 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1523
1524         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1525         not pkg-config. (#51032)
1526
1527         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1528         (fixes #51952, James Henstridge)
1529         
1530 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1531
1532         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1533         Rename to the more correct gtk-go-up.
1534
1535         * gtk/stock-icons/stock_menu_sort_ascending.png:
1536         Added new file.
1537         
1538         * gtk/stock-icons/stock_menu_sort_descending.png:
1539         Changed to show descending instead of ascending.
1540
1541         * gtk/gtkiconfactory.c:
1542         Added menu size icon to sort ascending.
1543
1544         * gtk/stock-icons/Makefile.am:
1545         Added stock_menu_sort_ascending.png.
1546         
1547         * gtk/gtkseparatormenuitem.c:
1548         Use correct typenames.
1549
1550 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1551
1552         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1553         gulong as in GSignal.
1554
1555 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1556
1557         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1558         instances of GtkCellRenderer in code (all but dnd icon code).
1559         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1560         there, and I can do multiple Cells per column.
1561
1562         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1563
1564         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1565         when model was unreffed prior to removing the row reference.
1566
1567 2001-05-25  Havoc Pennington  <hp@redhat.com>
1568
1569         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1570         you call gtk_stock_list_ids()
1571
1572         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1573         in list
1574
1575 2001-05-25  Havoc Pennington  <hp@redhat.com>
1576
1577         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1578         set can render without falling back to missing image icon
1579
1580         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1581         size of text, instead of random values
1582
1583         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1584         size of tree view, instead of random values
1585
1586         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1587         image in an appropriate size
1588
1589         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1590         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1591
1592         Throughout: fix GTK_STOCK_BUTTON_ instances
1593         
1594         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1595         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1596         Add a bunch of new stock items/icons
1597
1598         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1599         new function, convenience for inserting columns with a data func
1600
1601         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1602         (_gtk_icon_factory_list_ids): use list of all factories to
1603         generate a list of all known IDs
1604
1605         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1606         gtk_stock_list_items() with a function that returns all IDs known
1607         including those for GtkIconFactory.
1608
1609 2001-05-25  Hans Breuer  <hans@breuer.org>
1610
1611         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1612         work -> check boxes and radio buttons are drawn now, even on win9x.
1613         Improved line settings a bit, still no clue how to get really dotted
1614         lines on win9x, on NT it's PS_ALTERNATE.
1615
1616         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1617         GDK_HINT_MIN_SIZE as well
1618
1619         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1620
1621         * gtk/gtk.def : updated
1622
1623         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1624         pointer not a function pointer pointer
1625
1626         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1627
1628         * tests/testsocket.c : made it compile on win32 again
1629
1630         * tests/makefile.msc : one more test-app uses prop-editor.obj
1631
1632 2001-05-22  Havoc Pennington  <hp@pobox.com>
1633
1634         * gtk/gtkbin.c (gtk_bin_get_child): New function
1635
1636 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1637
1638         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1639         to ignore when doing compose processing.
1640
1641 2001-05-22  Joe Shaw  <joe@ximian.com>
1642
1643         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1644         Simplify as suggested by Havoc. Just get the last iter and work
1645         backward to the tag instead of getting a line and working back from
1646         there. Fixes passing in an invalid offset to
1647         iter_init_from_byte_offset().
1648
1649 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1650
1651         * gtk/gtktreeview*.h: 
1652         * gtk/gtkcell*.h:
1653         * gtk/gtk*store.h:
1654         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1655         macros to all objects.
1656
1657 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1658
1659         * gtk/gtkcellrenderertext.c
1660         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1661         with very large (TM) amounts of text.  May be moved to
1662         GtkCellRenderer in the future, though I'm not sure it wants to be
1663         this accessible.
1664
1665         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1666         More sanity brought to this class.  I like it.
1667
1668         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1669         case.  Kids, don't try this at home.
1670
1671         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1672         convenience function.
1673
1674         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1675
1676 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1677
1678         * gtk/gtkfontsel.c:
1679         Added properties. Based on patch by Lee Mallabone.
1680
1681         * gtk/gtkruler.c:
1682         * gtk/gtkhruler.c:
1683         * gtk/gtkvruler.c:
1684         * gtk/gtktext.c:
1685         * gtk/gtktextview.c:
1686         Converted GtkArg to GParam. Based on patches by John Margaglione.
1687
1688         * tests/Makefile.am:
1689         * tests/testtext.c:
1690         Add a property editor to testtext.
1691         
1692 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1693
1694         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1695
1696         * configure.in: Fixed reversed conditional causing all image
1697         libraries to be linked in.
1698
1699 2001-05-21  Joe Shaw  <joe@ximian.com>
1700
1701         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1702         that top_y needs to be >= 0.
1703
1704 2001-05-11  Havoc Pennington  <hp@pobox.com>
1705         
1706         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1707         losing connection to the X server.
1708
1709 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1710
1711         * configure.in: Start checks for X from pangox/pangoxft
1712         CFLAGS to avoid duplicate libraries.
1713
1714         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1715
1716         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1717         to include gobject.
1718         
1719 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1720
1721         * gtk/gtkspinbutton.c:
1722         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1723         Also do size request reasonable for MAXDOUBLE. Previously it printed
1724         the limits to a buffer and overran it. Instead do it using log10() and
1725         limit the width to 10 digits.
1726         
1727         * gtk/gtkwidget.c (gtk_widget_get_property):
1728         Correctly handle setting the parent property to NULL.
1729
1730 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1731
1732         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1733         style attributes even if the widget isn't realized.
1734
1735         * demos/gtk-demo/main.c: Use a slightly smaller font.
1736
1737 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1738
1739         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1740         This is something that only a widget writer would ever want
1741         to change.
1742
1743         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1744         gtk_signal_emit_by_name().
1745
1746         * gtk/gtkviewport.c: Fix some warnings.
1747
1748         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1749         allowing the requisitions of multiple widgets to be grouped
1750         together.
1751
1752         * tests/testgtk.c: Add GtkSizeGroup test
1753
1754         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1755
1756         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1757         warnings.
1758
1759         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1760
1761 2001-04-28  Martin Baulig  <baulig@suse.de>
1762
1763         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1764         to gtk_image_menu_item_set_icon() and made it work if there's already
1765         an image.
1766         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1767         (gtk_image_menu_item_new_with_label): New function.
1768
1769 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1770
1771         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1772         highlighting code!!!!  The result is okay so long as you don't try
1773         to stress it.  It also highlights a bug in the TextView so it's in
1774         an unproportional font right now until it's fixed.
1775
1776         *demos/gtk-demo/*.c: Clean up code a bit to make it
1777         ugly-parser(TM) friendly. (-:
1778
1779 2001-05-17  Joe Shaw  <joe@ximian.com>
1780
1781         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1782         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1783         if it is only partially onscreen.
1784
1785 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1786
1787         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1788         not by characters.
1789
1790         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1791         are not zero or one; that is, when graphemes of multiple characters
1792         are involved.
1793
1794         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1795         FIXME.
1796
1797 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1798         
1799         * gtk/gtkbbox.c:
1800         Add properties, based on patch by Lee Mallabone.
1801
1802         * gtk/gtknotebook.c:
1803         * gtk/gtktoolbar.c:
1804         Convert from GtkArg to GParam, based on patch by John Margaglione.
1805         
1806         * gtk/gtkhscale.c:
1807         * gtk/gtkvscale.c:
1808         * gtk/gtkhscrollbar.c:
1809         * gtk/gtkvscrollbar.c:
1810         * gtk/gtkrange.c:
1811         Move adjustment property to GtkRange.
1812
1813         * gtk/gtklabel.c:
1814         Setup mnemonics on property changes
1815
1816         * gtk/gtkwidget.c (gtk_widget_get_property):
1817         GdkExtensionMode is an enum, not a flag. Set it with
1818         g_value_set_enum ().
1819
1820         * tests/prop-editor.c:
1821         Better propery editor.
1822
1823         * tests/testgtk.c:
1824         Add new property test. Pass zero to the property editor to
1825         get properties from all derived types.
1826         
1827 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1828
1829         * autogen.sh (have_automake): Require libtool-1.4,
1830         automake-1.4p1.
1831
1832         * acinclude.m4: Remove libtool macros.
1833
1834         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1835         modules.
1836
1837         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1838         for libgdk.
1839
1840         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1841         libgdk.la for libgtk.
1842
1843         * modules/input/Makefile.am: Make modules have full
1844         dependencies.
1845
1846 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1847
1848         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1849         #54699 where paths weren't being checked for correctness.
1850
1851 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1852
1853         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1854         in any order you wan, whether or not the column is added to the
1855         tree, or the tree is realized.  Yay!
1856
1857         * gtk/gtktreeviewcolumn.c
1858         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1859         sorting columns a lot saner
1860
1861         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1862         new function to actually set wether or not a column is
1863         reorderable.
1864
1865         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1866         if we have 'em.
1867
1868         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1869         Fix nasty bug where we were showing the button just before
1870         realizing it.  As a result, the parent window was
1871         tree_view->window instead of tree_view->priv->header_window.
1872
1873         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1874         to let you easily reorder a list or tree.
1875
1876 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1877
1878         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1879         from args to properties.
1880
1881 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1882
1883         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1884         from args to properties. (#51957)
1885
1886         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1887         calls to after ->set_property call.
1888
1889 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1890
1891         * tests/prop-editor.c: Block against redundant changes.
1892
1893         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1894         properties.
1895
1896 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1897
1898         * gdk/gdkpixmap.h: Remove creative formatting.
1899
1900 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1901
1902         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1903         property API. (#51669)
1904
1905         * gtk/gtkscale.c: Patch from John Margaglione converting to
1906         property API. (#51891)
1907
1908         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1909         to property API. (#50985)
1910
1911 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1912
1913         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1914         buffering state across expose event, so we still call end_paint().
1915
1916 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1917
1918         * gtk/gtkhsv.c (paint_triangle):
1919         Expose the ring in the triangle at the correct place when
1920         exposing just a part of the triangle.
1921
1922         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1923         Return FALSE, or window focusing will not work.
1924
1925 2001-05-11  Havoc Pennington  <hp@pobox.com>
1926
1927         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1928         #54144
1929
1930         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1931         bug #54330
1932
1933 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1934
1935         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1936         propagate exposes to NULL child.
1937
1938         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1939         against not having one of the scrollbars.
1940
1941         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1942         we don't keep a mnemonic window if we have no mnemonic installed.
1943
1944 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1945
1946         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1947         it has the _important_ side effect of initializing a class.
1948
1949 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1950
1951         * gdk/linux-fb/gdkprivate-fb.h:
1952         Make sure you can compile out the implementation/wrapper assert
1953         macros.
1954
1955         * gdk/linux-fb/gdkdrawable-fb2.c:
1956         Check implementation/wrappers, initialize type for pixmap dummys.
1957
1958         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1959         Hide the cursor if reading from the screen.
1960
1961         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1962         Fix sign bug in tiling code.
1963
1964         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1965         Handle background pixmaps.
1966
1967 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1968
1969         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1970         function to let user control where columns are dragged.
1971
1972         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1973         Escape is pressed.
1974
1975 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1976
1977         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1978         "columns_changed" signal.
1979         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1980         motion code to draw arrows to the side if indicator is outside the
1981         widget.
1982         (gtk_tree_view_map_expanded_rows): Implement.
1983
1984 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1985
1986         * demos/testpixbuf-save.c: 
1987         * demos/testpixbuf-drawable.c:
1988         Include gdkfb.h on linux-fb.
1989
1990 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1991
1992         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1993         New function for getting toplevel window at position.
1994         (gdk_drag_find_window): Use get_toplevel_window () instead
1995         of gdk_window_get_pointer(). (gdk_drag_status): Use
1996         correct context for getting window.
1997
1998         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1999         g_strdup the atom name.
2000
2001         * gdk/linux-fb/gdkwindow-fb.c:
2002         Costmetic fix.
2003
2004         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2005         Add code for changing cursor on linux-fb backend (same as
2006         win32).
2007
2008 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2009
2010         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2011         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2012         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2013         report was not for the development branch of GTK+, but it applies
2014         anyways).
2015
2016 2001-05-04  Havoc Pennington  <hp@redhat.com>
2017
2018         * configure.in: fix some shell typos
2019
2020         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2021
2022         * gtk/gtkimage.c: handle animations
2023
2024         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2025         border_width * 2, not just border_width
2026
2027         * gtk/gtkscale.c: add "format_value" signal to allow people
2028         to override the way values are drawn.
2029         (gtk_scale_get_value_size): fix width/height mistake,
2030         and compute size from actual displayed text, not 
2031         from made-up text.
2032
2033         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2034         signal registration
2035
2036         * tests/testtext.c: Add "Remove all tags" menu item for testing
2037
2038         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2039
2040         * demos/gtk-demo/main.c (main): add hack so we can find modules
2041         without installing gtk
2042
2043         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2044
2045         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2046         factor)
2047         (gtk_cell_renderer_text_set_property): remove some bogus
2048         g_object_notify
2049
2050         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2051         factor
2052
2053         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2054         to layout
2055
2056         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2057         gtk_text_iter_is_first
2058
2059 2001-01-06  Hans Breuer  <hans@breuer.org>
2060
2061         * gdk/gdk.def : updated exports
2062
2063         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2064         gdk won't compile anymore
2065  
2066         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2067         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2068         Improved gdk_flush () to not only do pending drawing operations
2069         but also process all currently pending events. This should make
2070         the behaviour more similar to the X11 version.  
2071
2072         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2073         option needs to be set even if there is no GDK_GC_BACKGROUND.
2074         (gdk_win32_hdc_get) : use predraw_set_background () independent
2075         of value_mask. This allows to draw dashed lines leaving the original
2076         background intact.
2077
2078         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2079         after processing, because we can't reuse it as the X11 version does.
2080
2081         * gtk/gtk.def : updated exports
2082
2083         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2084         would like to get rid of this file again, and use straight
2085         makefile.msc again, as the other Gtk+ subdirs do)
2086
2087         * test/makefile.msc (new file) : build the test apps here
2088
2089 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2090
2091         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2092         strike-through setting
2093         (gdk_draw_layout_line_with_colors): Render strike-through
2094
2095 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2096
2097         * Release 1.3.5
2098
2099         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2100
2101         * NEWS: Updated
2102
2103         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2104         Makefile breakage.
2105
2106 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2107
2108         * demos/gtk-demo/images.c (progressive_timeout): Fix
2109         typo in filename.
2110
2111         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2112         out FIXME warning; just too annoying.
2113
2114 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2115
2116         * gdk/linux-fb/gdkcolor-fb.c:
2117         Better error messages.
2118
2119         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2120         Initialize abs_x and abs_y.
2121         
2122         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2123         Correct handling of stipple offset.
2124
2125         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2126         Treat directcolor framebuffers as truecolor.
2127         
2128 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2129
2130         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2131         dependency on Atk for accessibility support.
2132
2133         * configure.in **/Makefile.am: Major reworking of substituted
2134         variables for CFLAGS/LIBS to make a lot more sane and 
2135         keep the the compile/link lines a bit shorter.
2136
2137         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2138
2139 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2140
2141         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2142         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2143         use _gtk_boolean_handled_accumulator.
2144
2145 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2146
2147         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2148         to fix things so clicking inside selection leaves cursor
2149         at point where clicked. (#50324)
2150
2151         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2152         sane value for default double click time.
2153
2154         * tests/testtext.c (test_init): Really path to input modules.
2155
2156 2001-05-03  Sven Neumann  <sven@convergence.de>
2157
2158         * demos/testpixbuf-save.c: include target-specific headers as
2159         done in testpixbuf-drawable.c
2160
2161 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2162
2163         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2164         new_text_length appropriately when we run into the 
2165         size limit for the entry. (#53445, reported by Jeff Franks)
2166
2167         * tests/testgtk.c (create_entry): Remove most of the
2168         property toggle buttons. Replace with a "Props" button
2169         that brings up a property editor.
2170
2171         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2172         Split the property editor code out for reuse, improve.
2173
2174 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2175
2176         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2177         trap errors around calls to XSetInputFocus since we have
2178         no way of knowing reliably whether we are viewable or
2179         not. (#53947)
2180
2181 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2182
2183         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2184         fix bug in dropping columns.  Moving columns now basically works
2185         modula some fine tuning.
2186
2187 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2188
2189         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2190         autoscroll support.  It mostly works, but could use some fine
2191         tuning.
2192         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2193         Actually move the column.
2194
2195 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2196
2197         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2198           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2199           New default theme! A slighly improved version of the 2.0 Raleigh
2200           theme, with Windows-esque focus/drawing default. 
2201           (GtkWidget::interior_focus defaults to TRUE.)
2202
2203         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2204
2205 2001-04-30  Havoc Pennington  <hp@pobox.com>
2206
2207         * tests/testtext.c (line_numbers_expose): fix to work with
2208         gtk_paint_layout change
2209
2210 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2211
2212         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2213           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2214           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2215           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2216
2217         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2218           with GtkWidget::interior_focus = TRUE better.
2219
2220         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2221         ::default_outside_border for more flexibility.
2222
2223         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2224         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2225         change that had to be made with g_object_get.
2226
2227 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2228
2229         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2230         (gtk_tree_view_move_column_after): Clean up interface. 
2231
2232 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2233
2234         * gtk/gtkpacker.h:
2235         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2236          to gtkenum.h.
2237
2238         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2239         handled in switch).
2240
2241         * gtk/Makefile.am:
2242         (gtk.defs): generate enum portions with  glib-mkenums.
2243         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2244         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2245         
2246         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2247         addition.
2248
2249         * docs/Changes-2.0.txt: keep a note on signal handlers now
2250         not getting emitted during the emission they were connected within.
2251
2252 2001-04-28  Havoc Pennington  <hp@pobox.com>
2253
2254         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2255
2256 2001-04-24  Havoc Pennington  <hp@redhat.com>
2257
2258         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2259         (gtk_text_layout_move_iter_to_next_line): fix these two for
2260         invisible text, lots of other stuff still hosed.
2261
2262         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2263         new function, replaces the get/set palette stuff. This function 
2264         is intended for use by libgnomeui which should set the hook to a
2265         thing which sets the palette in GConf, and we need the
2266         GConf-to-xsettings proxy which will result in the change being
2267         propagated back to the GTK app.
2268
2269         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2270         about unusable signals that it may be because the signal has 
2271         parameters.
2272
2273         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2274         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2275         it.
2276         (gtk_widget_modify_color_component): call
2277         gtk_widget_modify_style() so the rc style will get copied.
2278         (gtk_widget_modify_font): ditto
2279
2280         * gtk/gtkrc.c: make a couple variables static
2281
2282         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2283         help button by default, since it does nothing
2284
2285         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2286         around with UI
2287
2288         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2289         so we can have tooltips
2290
2291         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2292         can have tooltips
2293
2294         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2295         GDK_ENABLE_BROKEN, because its memory behavior is completely
2296         hosed.
2297
2298         * gtk/gtknotebook.c: remove key press handler, replace with
2299         binding set, add numeric keypad support
2300
2301         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2302
2303         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2304
2305         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2306         addition to plain Delete
2307
2308         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2309         GDK_KP_Enter in addition to GDK_Return
2310
2311         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2312         activate on entry instead of key press
2313         (gtk_font_selection_on_clist_key_press): get
2314         rid of this signal handler, not needed with new font sel.
2315
2316         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2317         no-longer-needed emit_stop_by_name(), just return TRUE
2318
2319         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2320         cruft, this widget is no longer focusable.
2321
2322         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2323         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2324         move_slider action signal, add binding set for vscale/hscale, in
2325         the process support numeric keypad
2326
2327         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2328         make GDK_Return and GDK_KP_Enter activate the entry via 
2329         binding set, instead of hardcoded.
2330
2331 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2332
2333         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2334         code.  Some documentation added.
2335
2336 2001-04-27  Havoc Pennington  <hp@redhat.com>
2337
2338         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2339
2340         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2341
2342         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2343         line/para separators
2344         (gtk_entry_create_layout): set single paragraph mode on the layout
2345
2346         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2347         spacing between the image and label; instead, inside a button box 
2348         the button will get extra space that will go there, but if people 
2349         configure button box for 0 chubbiness, then there's no spacing.
2350
2351         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2352         and min/max size style properties, so people can tune their
2353         chubbiness.
2354
2355         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2356         functions
2357
2358         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2359         space_style, and button_relief into style properties, remove
2360         functions for setting them
2361         
2362         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2363         it back down
2364
2365         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2366         types from gtk_widget_style_get
2367
2368         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2369         with a style property.
2370
2371         * gdk/x11/gdkevents-x11.c: namespace the settings
2372
2373         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2374
2375         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
2376         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
2377         be used. Also, translate doc strings for settings. Also, namespace
2378         the double-click-time property. Also, remove bell properties crap.
2379
2380 2001-04-27  Sven Neumann  <sven@gimp.org>
2381
2382         * Makefile.am: before creating links, check if pkg-config files
2383         exist for the default target. Otherwise link to the pkg-config files
2384         that got installed with this build.
2385
2386 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
2387
2388         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
2389         dragging code.  Revealed some (potential) GdkWindow bugs.
2390
2391         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
2392         _gdk_window_init_position to the end of reparent to fix the case
2393         of reparenting when new_x != old_x and new_y != old_y.
2394
2395 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
2396
2397         * gtk/gtkentry.c (strstr_len): Fix optimization that
2398         was correct for the use here, but completely incorrect
2399         in general.
2400
2401 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
2402
2403         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2404         until patch adding gtk_window_set_size() is recommitted. 
2405
2406         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2407           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2408           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2409           (#10784)
2410
2411 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2412
2413         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2414         window == NULL in a number of cases.
2415
2416         * tests/testdnd.c: Set module path for gdk-pixbuf.
2417
2418 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2419
2420         * gtk/Makefile.am xembed.h: File containing #defines
2421         for XEMBED protocol.
2422
2423         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2424
2425         - Change protocol from old plug/socket specific protocol
2426           to XEMBED draft
2427         - Various fixes to work with GTK+-2.0
2428
2429         Still quite a bit of work to do here to handle initiation
2430         from the socket side (as specified by XEMBED), to handle
2431         the more advanced features of XEMBED, and to figure out
2432         a good way to handle same-app embedding with less overhead
2433         than using full XEMBED.
2434
2435 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2436
2437         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2438         track of whether the toplevel has the focus; only send
2439         focus-in events to the focus widget when the window
2440         actually has the focus.
2441
2442 2001-04-25  Havoc Pennington  <hp@pobox.com>
2443
2444         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2445         were still in the header
2446
2447 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2448
2449         * gtk/gtkclist.[ch]:
2450         * gtk/gtkctree.c:
2451         When there is a row highlighted for D'n'D it must alse
2452         be painted hightlighted on exposes. Otherwise exposes from
2453         the icon being dragged will mess up the hightlight.
2454
2455         * gtk/gtkfontsel.c:
2456         Don't recenter selected font when exposing the font family
2457         clist. This means you can now actually scroll the font family
2458         list.
2459
2460         * gtk/gtknotebook.c:
2461         Fix focus movement on scrolling tabs that are placed on the left
2462         and right.
2463
2464 2001-04-21  Havoc Pennington  <hp@pobox.com>
2465
2466         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2467         empty/invisible lines.
2468
2469         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2470         (gtk_text_iter_set_visible_line_index): new functions to set
2471         indexes excluding invisible text
2472
2473         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2474         index
2475
2476         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2477         (gtk_text_iter_get_visible_line_offset): new functions to 
2478         get indexes excluding invisible text
2479
2480         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2481         bunch of extra padding that served no purpose
2482
2483         * gtk/gtkdialog.c: Make all the spacings configurable via style
2484         properties, for chubbiness configuration in themes
2485
2486         * tests/testtext.c: fix path to the immodules.
2487         
2488 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2489
2490         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2491         got munched by #endif.
2492
2493         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2494
2495         * gtk/gtktreeview.c: Refactored code to clean up a number of
2496         events.
2497
2498         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2499         values to make consistent with other functions.  Spotted by Jeff
2500         Franks <jcf@tpg.com.au>.
2501
2502         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2503         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2504
2505 2001-04-23  Sven Neumann  <sven@gimp.org>
2506
2507         * gtk/Makefile.am
2508         * gtk/gtkplug.c
2509         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2510         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2511
2512 2001-04-23  Sven Neumann  <sven@gimp.org>
2513
2514         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2515         compile for non-X11 targets again
2516
2517 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2518
2519         * gtk/gtkcolorsel.[ch]:
2520         API Change. Take GdkColor arguments instead of gdouble *.
2521         Leave the old gtk_color_selection_set_color for compatibility,
2522         but marked deprecated.
2523         Do correct rounding when converting RGB <-> HSV.
2524         
2525         * gtk/gtkcolorseldialog.c:
2526         * tests/testgtk.c:
2527         Use new GtkColorSelection API.
2528
2529         * gtk/gtkhsv.c:
2530         Fix problem selecting colors in triangle when Hue is 330.
2531         Fix some black dots around the HSB triangle.
2532         
2533         * gtk/gtkfilesel.c:
2534         return FALSE from the focus_in_event handler to fix focus problems.
2535
2536 2001-04-18  Havoc Pennington  <hp@redhat.com>
2537
2538         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2539         set, so keybindings are configurable    
2540         (gtk_window_activate_default): Change to activate the focus widget
2541         instead if there's a focus widget, to be consistent with the
2542         behavior that previously existed in key_press_event
2543
2544 2001-04-18  Havoc Pennington  <hp@redhat.com>
2545
2546         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2547
2548 2001-04-18  Havoc Pennington  <hp@redhat.com>
2549
2550         Close bug #50615:
2551         
2552         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2553         the layout
2554
2555         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2556
2557         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2558
2559         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2560         
2561         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2562         to blue for base, in addition to bg
2563         
2564 2001-04-18  Havoc Pennington  <hp@redhat.com>
2565
2566         * tests/testgtk.c (create_image): allow shrinking the image window
2567         to test that we clip to allocation.
2568
2569         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2570         #9845
2571
2572         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2573
2574 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2575
2576         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2577         mode on shm segments to 0600. We'll see who complains.
2578
2579         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2580         _gdk_windowing_window_destroy() AFTER recursing through
2581         children.
2582
2583         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2584         testsocket_child on X.
2585
2586         * tests/testsocket[_child].c: Fix uses of
2587         gtk_window_get_default_accel_group().
2588
2589         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2590
2591         * gdk/gdkimage.c: (gdk_image_get):
2592         Deal with the possibility that XGetImage() might return NULL.
2593         Allocate the GdkImagePrivate structure only after XGetImage()
2594         succeeds in order not to dereference a NULL ximage pointer.  This
2595         prevents a core dump when XGetImage() fails - which is unlikely,
2596         but can happen due to race conditions accessing the geometries of
2597         drawables.  An x error will still be triggered, but the gdk image
2598         wrapper at least wont seg fault.
2599         
2600 2001-04-18  Havoc Pennington  <hp@redhat.com>
2601
2602         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2603         set
2604
2605         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2606         if the insertion point isn't editable
2607
2608         * demos/gtk-demo/images.c: Added a GtkImage demo
2609
2610         * demos/gtk-demo/drawingarea.c: drawing area demo
2611         
2612         * demos/gtk-demo/menus.c (create_menu): cleanups
2613
2614 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2615
2616         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2617           gdk/x11/gdkevents-x11.c: Introduce an extra child
2618         of toplevel windows that serves to hold the focus to
2619         avoid events being delivered to embedded windows.
2620
2621         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2622         some extra variables to clean up code and reduce the
2623         number of casts.
2624
2625         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2626         guint for 1 bit bit fields, not gboolean.
2627
2628 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2629
2630         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2631         not TRUE. (Fixes #52925)
2632
2633 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2634
2635         * Released 1.3.4
2636
2637         * NEWS: Updated
2638
2639         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2640         use GTK_TYPE_ENUM.
2641
2642 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2643
2644         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2645
2646         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2647         names to compatibility #defines so docs work.
2648
2649         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2650
2651         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2652
2653         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2654
2655         * tests/testgtkrc: No magenta cursors, please.
2656
2657         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2658
2659         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2660         
2661 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2662
2663         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2664         grabs, since they are no longer necessary.
2665
2666         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2667         by signal_connect() and call gtk_button_pressed() rather
2668         than signal_connect_after().
2669
2670         * tests/testgtk.c: Restore radio menu items to combos 
2671         since they'll look OK with Raleigh, and it is easier
2672         than finishing the process of removing them that was
2673         started earlier.
2674
2675 2001-04-16  Hans Breuer  <hans@breuer.org>
2676
2677         * gdk/gdk.def :
2678         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2679
2680         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2681         we are interested in the functions return value not the function address
2682         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2683
2684         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2685
2686 2001-04-14  Hans Breuer  <hans@breuer.org>
2687
2688         * gdk/gdk.def :
2689         * gdk/makefile.msc : updated
2690
2691         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2692         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2693         (the testgtk::text backgound pixmap is drawn again)
2694         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2695         Win32 Pango change
2696         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2697
2698         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2699         Not sure if the returned settings have the right unit, because I couldn't
2700         find any docs for the X version ...
2701
2702         * gtk/gtk.def :
2703         * gtk/makefile.msc.in : updated
2704
2705 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2706
2707         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2708         wording problems. (Compared to version from Johannes Stezenbach to
2709         check correctness.)
2710
2711 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2712
2713         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2714         this to compile.
2715
2716 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2717
2718         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2719         not pixbufpos.
2720
2721         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2722
2723         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2724         are unsigned insts, therefore use g_value_set_uint.
2725         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2726
2727 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2728
2729         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2730
2731         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2732         GTK_TYPE_STRING.
2733
2734         * gtk/gtktreeview.c: New functions to allow initial column
2735         dragging work.
2736
2737         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2738
2739         * tests/testtreefocus.c: give dave some love.
2740
2741         * tests/testtreesort.c: Modify test to check really long samples.
2742
2743 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2744
2745         * gtk-2.0.m4: Pass pkg-config options
2746         before the other args so it works even if
2747         POSIXLY_CORRECT is set.
2748
2749 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2750
2751         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2752         0, interface 0).
2753
2754 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2755
2756         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2757         check for action_func != NULL
2758
2759 2001-04-04  Sven Neumann  <sven@gimp.org>
2760
2761         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2762
2763 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2764
2765         * Released Gtk+-1.3.3.
2766
2767 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2768
2769         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2770
2771 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2772
2773         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2774         files to/from source dir. (if we don't stay in builddir, we
2775         can't reach make-inline-pixbuf.
2776
2777         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2778         deps.
2779
2780         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2781         ages 0).
2782
2783 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2784
2785         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2786         moved to the GtkTreeSortable interface.
2787
2788         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2789         Make more efficient (fixes #50262).
2790
2791 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2792
2793         * NEWS: Updated.
2794
2795         * configure.in: Remove support for uninstalled glib.
2796
2797         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2798         so as not to stop emission.
2799
2800         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2801         is no longer supported.
2802
2803         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2804         into tests, change build order to build modules before
2805         gtk/.
2806
2807         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2808         to here.
2809
2810 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2811
2812         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2813         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2814         GPatternSpec. this is actually unlikely to cause breakage in
2815         third-party apps since except for gle, pretty much ever caller
2816         passes NULL here.
2817
2818         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2819
2820         * *.c: use g_pattern_*() API.
2821
2822         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2823
2824         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2825         directions aren't passed in.
2826
2827         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2828         functionality to be usable from gtkstyle.c as well, give precedence
2829         for conversion to user-supplied parsers.
2830         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2831
2832         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2833         _gtk_settings_parse_convert() for rcporperty value conversion.
2834
2835 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2836
2837         * gdk/linux-fb/gdkevents-fb.c:
2838         Add empty gdk_setting_get().
2839
2840 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2841
2842         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2843         variable names.
2844         
2845         * gtk/makeenums.pl: touch this so enum files get remade.
2846
2847 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2848
2849         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2850         work again when not sorted.
2851
2852         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2853         and "expand_row" signal, closing bug 52578.
2854
2855         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2856         support.
2857
2858         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2859         support.
2860
2861 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2862
2863         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2864         of changes to system settings, gdk_setting_get() to retrieve
2865         a single system setting.
2866
2867         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2868         to the draft XSETTINGS mechanism.
2869
2870         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2871         XSETTINGS.
2872
2873         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2874         of GDK settings changes to the GtkSettings object.
2875
2876         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2877         double-click-timeout property to GDK.
2878
2879         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2880         Define GDK boxed types here.
2881
2882         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2883         gdk/gdkenumtypes.[ch] for enum definitions.
2884
2885         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2886         * gtk/gtk-boxed.defs: Comment out GDK types
2887         * gtk/gtktypeutils.h: Remove GDK types
2888         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2889
2890 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2891
2892         * Applied patch from Ron Steinke to add signal accumulators
2893         so that signals with the convention 'TRUE return means
2894         handled' stop emission on a TRUE return.
2895
2896         * gtk/gtkmain.[ch]: Add private accumulator 
2897         _gtk_boolean_handled_accumulator, used throughout GTK+.
2898         
2899         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2900
2901         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2902         
2903         * gtk/gtkwidget.c: Add accumulators for event signals,
2904         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2905         for ::mnemonic-activate.
2906
2907         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2908
2909 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2910
2911         * gtk/gtkwidget.c: Add missing include.
2912
2913 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2914
2915         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2916         marshaller.
2917
2918         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2919         "changed" signal to "range_changed".
2920
2921         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2922         removing a tree from one model would remove all trees from that
2923         model.
2924         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2925         changed signal instead.
2926
2927 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2928
2929         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2930         chaining up to parent impl, since we have a INPUT_ONLY
2931         window.
2932
2933         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2934         foreground color for the cursor.
2935
2936 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2937
2938         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2939         param spec when caching property values, since we unref it
2940         later when we free the style.
2941
2942         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2943         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2944
2945 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2946
2947         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2948         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2949         stupidity.
2950
2951 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2952
2953         [ First pass at adding style properties. Still needs some definite
2954         fine-tuning. ]
2955
2956         * gtk/gtkbutton.c: Add ::default_spacing style property.
2957          
2958         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2959         ::indicator_spacing style properties.
2960
2961         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2962         style properties.
2963
2964         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2965         rather than a normal property.
2966
2967         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2968         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2969
2970         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2971         Honor ::interior_focus.
2972         
2973         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2974         TRUE.
2975
2976         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2977         Add ::slider_width, ::trough_border, ::stepper_size,
2978         ::stepper_spacing style properties.
2979
2980         * gtk/gtkscale.[ch] Add ::slider-length style property.
2981
2982 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2983
2984         * gdk/linux-fb/gdkwindow-fb.c:
2985         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2986         warnings that were spewed on startup.
2987
2988         * gtk/gtkwindow-decorate.c:
2989         gtk_window_reposition -> _gtk_window_reposition
2990
2991 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2992
2993         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2994         Add boxed type for GtkRequistion. Use it for ::size-request.
2995
2996         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2997         Add a new GtkBorder structure useful for geometry properties
2998         for widgets. Add corresponding GTK_TYPE_BORDER.
2999         
3000         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3001         Support automatic parser selection like
3002         gtk_settings_install_property_parser().
3003
3004         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3005         functionality for use by gtk_widget_class_install_style_property.
3006         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3007
3008 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3009
3010         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3011         g_param_spec_unichar(). 
3012
3013 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3014
3015         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3016         _NET window managers.
3017
3018         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3019
3020 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3021
3022         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3023         bad needs to be nuked, not just deprecated.
3024
3025         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3026         gtk_widget_popup().
3027
3028         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3029         
3030         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3031         widget.
3032         
3033         * docs/Changes-2.0.txt: updates.
3034         
3035 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3036
3037         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3038         for (i = 0; i < 100; i ++)
3039           g_print ("I will confirm it compile before committing\n");
3040
3041 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3042
3043         * gtk/gtktreestore.c: Initial work on implementing the
3044         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3045
3046 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3047
3048         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3049         reference counts around emissions where the widget is used afterwards.
3050         added freeze/thaws around multiple properties being notified.
3051         (_gtk_widget_get_aux_info): cleanups.
3052         
3053         * gtk/gtksettings.c (gtk_settings_install_property): provide
3054         default parsing functions for gdkcolor, enums and flags.
3055
3056         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3057         applied by owen.
3058         backed out gtk_window_get_location(), gtk_window_set_location(),
3059         gtk_window_get_size() and gtk_window_set_size(), these
3060         have to be sorted out wrg x/y/width/height/default_with/default_height
3061         properties.
3062         kept a flag in GtkWindowGeometryInfo to handle user
3063         resetting default sizes.
3064         cleaned up ZVT comments.
3065         bunch of assorted bug fixes, notification fixes.
3066         (_gtk_window_reposition): make this a really internal function.
3067         
3068         * gtk/testgtk.c: fixups.
3069         
3070 2001-03-31  Hans Breuer  <hans@breuer.org>
3071
3072         * config.h.win32.in : disable USE_MMX for msvc build cause
3073         the assembler doesn't fit and is out of my scope. Disable
3074         USE_GMODULE for msvc build as wel. The right way to share
3075         binaries on win32 would be to use libtiff.dll etc. To reduce
3076         installation hassles IMO it's better to include all fileformats
3077         builtin to gdk-pixbuf
3078
3079         * gdk-pixbuf/makefile.msc : new file
3080
3081         * gdk/gdk.def : updated
3082
3083         * gdk/win32/gdkevents-win32.c : don't erase the background if
3084         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3085         buttons
3086         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3087
3088         * gdk/win32/gdkwindow-win32.c : added three new functions like
3089         the X version. Only one is implemented, because the other two
3090         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3091         be default behaviour on win32 anyway ...
3092
3093         * gtk/gtk.def : updated
3094
3095         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3096         from where it was built and add an additional rule to automagically
3097         build gtkmarshal.[hc]
3098
3099         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3100         before array access for the current entry isn't finished
3101
3102         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3103         use g_return_val_if_fail
3104
3105         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3106         for the static array, but let the compiler calculate it. It
3107         makes me wonder if gcc isn't capable to catch bugs like this ...
3108
3109 2001-03-31  James Henstridge  <james@daa.com.au>
3110
3111         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3112         constant "-1" in the aux info structure.
3113
3114 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3115
3116         * gtk/gtkbutton.c (gtk_button_get_property):
3117         * gtk/gtklabel.c:
3118         Remove leaks.
3119         
3120         * gtk/gtkcontainer.c:
3121         * gtk/gtkhscale.c:
3122         * gtk/gtkhscrollbar.c:
3123         * gtk/gtklayout.c:
3124         * gtk/gtkmisc.c:
3125         * gtk/gtkprogress.c:
3126         * gtk/gtkprogressbar.c:
3127         * gtk/gtkrange.c:
3128         * gtk/gtktable.c:
3129         * gtk/gtkviewport.c:
3130         * gtk/gtkvscale.c:
3131         * gtk/gtkvscrollbar.c:
3132         * gtk/gtkwidget.c:
3133         Property patches, based on patches from John Margaglione and Lee Mallabone.
3134
3135 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3136
3137         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3138         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3139         inline API function docs.
3140         (gtk_spin_button_new_with_range): New convenience constructor.
3141         (gtk_spin_button_set_increments): New adjustment helper.
3142         (gtk_spin_button_set_range): New adjustment helper.
3143
3144         * gtk/testgtk.c : added test of the new convenince constructor and
3145         value_changed signals.
3146
3147 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3148
3149         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3150         listen to the reorder signal.
3151
3152 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3153
3154         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3155         to get the aux info structure fo the widget.
3156
3157         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3158         above function.
3159
3160         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3161
3162         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3163         to get the size of the window manager frame, basically the same
3164         code that gdk_window_get_root_origin() had
3165         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3166
3167         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3168         gdk_window_resize() if the window is realized and resizeable
3169
3170         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3171         typo so that setting gravity works
3172
3173         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3174         allocation if auto_shrink is on, even if the default size
3175         has not changed.
3176
3177         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3178         g_return_if_fail
3179
3180 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3181
3182         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3183         reordering/sorting work.  Now pretty much works.
3184
3185         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3186         reorder mostly work.  Still need to get the parity correct.
3187
3188         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3189         signal, so I can listen for the sort_column_changed signal so I
3190         can change my "sort_indicator" property.  Cool.
3191
3192 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3193
3194         [ Patch from Havoc Pennington, hp@redhat.com ]
3195
3196         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3197         Add functions gdk_window_begin_resize_drag/begin_move_drag
3198         to start resizing or moving a toplevel window. This
3199         is done either using the _NET_WM_MOVERESIZE protocol,
3200         or, if that isn't present, by emulation.
3201
3202         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3203         to export the above to GTK+-land.
3204
3205         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3206         
3207         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3208         Move this function into gdkwindow, since we need it
3209         when implementing fallback resizing.
3210
3211         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3212         Fix typo when setting gravity.
3213
3214         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3215         Add an optional (but on by default) resize grip for resizing 
3216         the parent window.
3217
3218 01-03-29  Alexander Larsson  <alexl@redhat.com>
3219
3220         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3221         Don't return TRUE from the event handler, that blocks all
3222         event signals on the tooltip widget. Now you can press buttons
3223         in toolbars again.
3224
3225 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3226
3227         * gtk/testtext.c (create_buffer): Add missing NULL on
3228         valist.
3229
3230         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3231         c-n-p problem with INCONSISTENT property.
3232
3233         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3234
3235         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3236         hook.
3237
3238         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3239         signal as a hook for extending the default popup menu
3240
3241         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3242         use radio menu items for the input method menuitems
3243
3244         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3245         inserted unicode from Ctrl-Shift-hex input method
3246
3247         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3248         validatation here, already done at GtkTextBuffer level.
3249
3250         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3251         popup_menu run action signal and Shift+F10 and Menu keybindings.
3252
3253         * gtk/gtkentry.c: implement a default handler for popup_menu
3254
3255         * gtk/gtktextview.c: implement a default handler for popup_menu
3256
3257         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3258         from a key event
3259         
3260         * gtk/gtklabel.c: remove "trailer" cruft
3261
3262 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3263
3264         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3265         handle reordering of trees.  Seems to mostly work w/ the exception
3266         of the parity flag.
3267
3268         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3269         signal.
3270
3271 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3272
3273         * gtk/gtkwidget.h: c++ fixes.
3274
3275 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3276
3277         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3278         memory.
3279
3280 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3281
3282         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3283         Nils Barth fixing event return values. (#51041)
3284
3285         * gtk/gtkwidget.c: Fix some return values for default
3286         functions.
3287
3288         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3289         return values for trough_keys functions.
3290
3291         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3292         value for add_accelerator (shoudl have been a void
3293         return.)
3294
3295         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3296         Fix return type of EVENT.
3297
3298         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3299         signal return a boolean.
3300
3301 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3302
3303         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3304         reordered signal.
3305
3306         * tests/testtreesort.c (main): fix spelling.
3307
3308 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3309
3310         * gtk/gtkliststore.c: More work on implementing sortable
3311         interface.
3312
3313 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3314
3315         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3316         reference the widgets in the resulting list. (#11821)
3317         This makes this consistent with gtk_container_children.
3318
3319         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3320         uses of gtk_window_list_toplevels.
3321
3322 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3323
3324         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3325         a virtual function to set whether the IM context should use 
3326         the preedit string. (#51922)
3327         
3328 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3329
3330         * gdk/gdkpango.h: Remove stale FIXME comment.
3331
3332 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3333
3334         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3335         Fixed bug that returned NULL if a filename was selected.
3336
3337 2001-03-24  Havoc Pennington  <hp@pobox.com>
3338
3339         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3340         to contain the word "theme"
3341
3342 2001-03-24  Havoc Pennington  <hp@pobox.com>
3343
3344         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3345         slower but finer-grained
3346         (gtk_hsv_focus): get initial focus on the ring or triangle 
3347         according to tab direction
3348
3349         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3350
3351 2001-03-23  Havoc Pennington  <hp@pobox.com>
3352
3353         * gtk/gtkhsv.c: make this somewhat key-navigable
3354
3355         * gtk/gtkfontsel.c: mnemonics
3356
3357         * gtk/gtkgamma.c: mnemonics
3358
3359         * gtk/gtkcolorsel.c: add mnemonics to labels
3360
3361 2001-03-22  Havoc Pennington  <hp@pobox.com>
3362
3363         Applied big patch from Seth Lytle to fix event handler return
3364         values, slightly modified.
3365
3366         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3367         handled.
3368         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3369         select_day
3370
3371         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3372         (gtk_clist_button_release): return TRUE if handled
3373
3374         * gtk/gtkcolorsel.c (mouse_release):
3375         (palette_activate): 
3376         (palette_press): 
3377         (palette_new): 
3378         (mouse_press): 
3379         (get_screen_color): 
3380         fixed return type (void to gboolean), return TRUE,
3381         added GTK_SIGNAL_FUNC cast
3382
3383         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
3384         (void to gboolean), and return TRUE
3385         (gtk_combo_button_release): changed return value to TRUE after
3386         gtk_grab_add on combo->popwin
3387
3388         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
3389         collapse or expand
3390
3391         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
3392         button/motion
3393
3394         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
3395         press/release and motion that trigger act
3396
3397         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
3398
3399         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
3400         for GDK_Return
3401         
3402         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
3403         (gtk_list_button_release): return TRUE if selection
3404
3405         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3406         press
3407
3408         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3409         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3410
3411         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3412         nothing triggered
3413         (gtk_notebook_button_release): return TRUE if we do anything
3414
3415         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3416         (gtk_spin_button_button_release): return TRUE or chained retval
3417
3418         * gtk/gtktext.c (gtk_text_button_press): 
3419         (gtk_text_button_release): return TRUE
3420         (gtk_text_key_press): remove redundant retval code
3421         
3422         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3423         and sensitive
3424         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3425         TRUE if sensitive
3426
3427         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3428         return TRUE
3429
3430 2001-03-23  Havoc Pennington  <hp@redhat.com>
3431
3432         * gtk/testgtk.c: fix warnings
3433
3434         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3435
3436         * gtk/gtktextview.c: fix warnings
3437
3438         * gtk/gtktext.c (find_cursor_at_line): fix warning
3439
3440         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3441
3442         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3443         of this function
3444
3445         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3446         fix warning
3447
3448         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3449
3450         * gtk/gtkfontsel.c: fix warning
3451
3452         * gtk/gtkcolorsel.c: fix warnings
3453
3454 2001-03-23  Havoc Pennington  <hp@redhat.com>
3455
3456         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3457
3458         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3459
3460         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3461         and deprecated gtk_check_menu_item_set_show_toggle().
3462         
3463         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3464
3465         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3466
3467         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3468
3469 2001-03-23  Havoc Pennington  <hp@redhat.com>
3470
3471         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3472         some docs
3473
3474 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3475
3476         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3477         this.
3478
3479         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3480         set_cell to set_value
3481
3482         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3483         set_cell to set_value
3484
3485 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3486
3487         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3488         fix braino.
3489         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3490         support.
3491
3492         * gtk/gtktreeview.c: Addition of initial sortable support.
3493
3494         * gtk/gtktreestore.c: Addition of initial sortable support.
3495
3496         * gtk/gtkliststore.c: Addition of initial sortable support.
3497
3498         * gtk/gtkmarshal.list: yet another marshaller.
3499
3500         * gtk/gtktreedatallist.[ch]: shared code between the store models
3501         for handling sorting headers.
3502
3503 2001-03-22  Havoc Pennington  <hp@redhat.com>
3504
3505         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3506         (gtk_container_unset_focus_chain): Add ability to override the 
3507         focus chain for a container explicitly
3508
3509 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3510
3511         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3512         added PROP_MNEMONIC_WIDGET.
3513
3514         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3515         (gtk_window_remove_mnemonic): 
3516         (gtk_window_add_mnemonic): fixed assertions.
3517         (gtk_window_activate_mnemonic): constrain modifier checks to those
3518         permitted by gtk_accelerator_get_default_mod_mask().
3519         got rid of gtk_window_get_default_accel_group().
3520
3521         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3522         activatable widgets either by focussing or a warning.
3523         added a signal accumulator to ::activate_mnemonic which stops the
3524         emission once a handler returned TRUE.
3525
3526 2001-03-22  Havoc Pennington  <hp@pobox.com>
3527
3528         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3529         the stock item label
3530
3531         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3532
3533         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3534
3535         * demos/gtk-demo/*.c: Add mnemonics all over the place
3536
3537         * gtk/gtklabel.h: mark parse_uline deprecated
3538
3539 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3540
3541         * gtk/gtkitemfactory.[ch]:
3542         Add support for stock and normal imagemenuitems.
3543         
3544         * gtk/testgtk.c:
3545         Add some tests for mnemonics, stock toolbars, stock
3546         and image menuitems in itemfactory and gdk_window_scroll.
3547
3548 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3549
3550         * gtk/gtkbutton.[ch]:
3551         * gtk/gtkdialog.c:
3552         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3553         removed accel_group argument. Renamed gtk_button_new_accel() to
3554         gtk_button_new_with_mnemonic() and removed accel_group argument.
3555
3556         * gtk/gtkcheckbutton.[ch]:
3557         New function gtk_check_button_new_with_mnemonic().
3558
3559         * gtk/gtkentry.c:
3560         Override activate_mnemonic and just grab focus.
3561
3562         * gtk/gtkitemfactory.c:
3563         Don't add menu uline accel group, instead use mnemonics support.
3564
3565         * gtk/gtklabel.[ch]:
3566         New support for mnemonics.
3567
3568         * gtk/gtkmarshal.list:
3569         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3570
3571         * gtk/gtkmenu.[c]:
3572         * gtkmenushell.c:
3573         Use mnemonics instead of accel groups for uline
3574         support in menu items.
3575         Removed gtk_menu_get_uline_accel_group() and
3576         gtk_menu_ensure_uline_accel_group().
3577
3578         * gtk/gtkmenuitem.c:
3579         Override activate_mnemonic to handle switching between
3580         menu items if there are collisions.
3581         
3582         * gtk/gtknotebook.c:
3583         Connect to activate_mnemonic on the tab_label, so that
3584         activating it switches to that notebook page.
3585
3586         * gtk/gtkwidget.[ch]:
3587         Add activate_mnemonic signal. New function
3588         gtk_widget_activate_mnemonic() to emit it.
3589         Default implementation does activate/grab_focus.
3590
3591         * gtk/gtkwindow.[ch]:
3592         Add support for mnemonics in windows.
3593         New functions:
3594         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3595         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3596
3597         * gtk/testgtk.c:
3598         Update to function name changes.
3599         
3600 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3601
3602         * gtk/gtkimagemenuitem.[c]:
3603         Add gtk_image_menu_item_new_from_stock()
3604
3605 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3606
3607         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3608         Fix buglet in meeting.
3609
3610 2001-03-19  Havoc Pennington  <hp@redhat.com>
3611
3612         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3613         add a bunch of accessor functions. This is because we have
3614         reasonable expectations of extending what fields it contains in
3615         the future.
3616
3617         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3618         changes
3619
3620         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3621         GtkIconSource   
3622
3623 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3624
3625         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3626         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3627
3628         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3629           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3630           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3631           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3632         Change float to double everywhere with the exception of 0<->1.0 alignment
3633         and GtkCurve.
3634
3635 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3636
3637         * gdk/win32/gdkdrawable-win32.c
3638         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3639         output.
3640
3641         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3642         gdkwin32.h.
3643
3644 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3645
3646         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3647         print_event_state, print_event): Use preprocessor macro to make
3648         code more compact. Print also GDK_WINDOW_STATE events.
3649         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3650         
3651         * gtk/gtk.def
3652         * gtk/makefile.mingw.in: Update.
3653
3654         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3655         to catch also Cygwin.
3656
3657 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3658
3659         * gtk/gtkspinbutton.[hc]: added rc-style argument
3660         GtkSpinButton::shadow_type.
3661         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3662         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3663         rc-style settings.
3664
3665         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3666
3667         * gtk/gtkwidget.c: quark cleanups.
3668
3669         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3670         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3671         to create_rc_style() (we don't do cloning in standard OO sense).
3672         added per rc style properties.
3673         
3674         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3675         property values and for caching those. some cleanups.
3676         
3677         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3678         
3679         * gtk/gtksettings.[hc]: new file for global rc-file properties
3680         (at least currently, should get extended to support X properties
3681         and other communication mechanisms).
3682         
3683         * gtk/gtkwidget.[hc]: added style property support:
3684         (gtk_widget_class_install_style_property_parser): install style
3685         property pspec with parser function for rc-file values other
3686         than LONG, DOUBLE or STRING.
3687         (gtk_widget_class_install_style_property): same as above without
3688         parser (parsers are going to be needed quite infrequently).
3689         (gtk_widget_style_get_property): retrive style property value.
3690         (gtk_widget_style_get_valist): same as above with varargs support,
3691         has NOCOPY semantics.
3692         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3693
3694 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3695
3696         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3697         "row_activated" signal.
3698
3699         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3700         stupidity.  Lets actually pass in the row with this signal...
3701
3702 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3703
3704         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3705
3706         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3707
3708         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3709         everything into the ::destroy function, and freed a lot more.
3710
3711 2001-03-16  Havoc Pennington  <hp@redhat.com>
3712
3713         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3714         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3715         are now allowed.
3716
3717 2001-03-16  Havoc Pennington  <hp@redhat.com>
3718
3719         * Applied patch from Nils Barth (bug # 51041) to 
3720         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3721         in various places.
3722
3723 2001-03-15  Havoc Pennington  <hp@redhat.com>
3724         
3725         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3726         for properties to set on the tag.
3727
3728         * gtk/testtext.c: fixups to reflect create_tag change
3729         
3730         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3731         background/foreground stipple are objects, not boxed.
3732
3733         * demos/gtk-demo/textview.c: intellihancing
3734
3735 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3736
3737         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3738         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3739
3740 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3741
3742         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3743         Fix sign error with queued region translations.
3744
3745 2001-03-15  HideToshi Tajima  <tajima@happy>
3746
3747         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3748         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3749         * gtk/gtkentry.c (update_im_cursor_location): 
3750         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3751         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3752         set_cursor_pos to set_cursor_location in GtkInputContext class
3753
3754 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3755
3756         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3757         the location of the cell relative to its area.
3758         * gtk/gtkcell*: modified for above change
3759         * gtk/gtktreeview.c: modified for above change.
3760
3761 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3762
3763         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3764          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3765         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3766
3767 2001-03-14  Havoc Pennington  <hp@redhat.com>
3768
3769         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3770         
3771         * gtk/gtk.h: remove gtkdata.h
3772
3773         * gtk/Makefile.am: remove gtkdata
3774         
3775         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3776         not "disconnect" on the adjustments.
3777         
3778         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3779         GtkData
3780
3781         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3782         not GtkData
3783
3784         * configure.in: handle case where X render exists, but Pango lacks
3785         Xft support.
3786
3787 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3788
3789         * gtk/gtktoolbar.[ch]:
3790         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3791         to add stock items to toolbars.
3792
3793         * gtk/Makefile.am:
3794         Remove ../gdk/gdkim.h from gdk_headers.
3795
3796 2001-03-15  Sven Neumann  <sven@gimp.org>
3797
3798         * gdk/gdkim.h: removed
3799         
3800         * gdk/gdkprivate.h
3801         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3802
3803 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3804
3805         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3806         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3807         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3808         set_cursor_pos() virtual method
3809
3810         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3811         (gtk_im_context_xim_set_cursor_pos): add implementation for
3812         set_cursor_pos() method
3813
3814         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3815         position to input methods
3816
3817 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3818
3819         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3820         code a lot.
3821
3822         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3823         g_mem_chunk.
3824         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3825         (_gtk_tree_data_list_node_to_value): Fix to switch on
3826         G_TYPE_FUNDAMENTAL.
3827         (_gtk_tree_data_list_value_to_node): Fix to switch on
3828         G_TYPE_FUNDAMENTAL.
3829         (_gtk_tree_data_list_node_copy): Fix to switch on
3830         G_TYPE_FUNDAMENTAL.
3831
3832 2001-03-12  Havoc Pennington  <hp@redhat.com>
3833
3834         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3835         to convert to new property API. Also, change default_width and
3836         default_height get_property to return 0 as the flag value for
3837         "unset"; -1 is not a valid value for these fields.
3838
3839 2001-03-12  Havoc Pennington  <hp@redhat.com>
3840
3841         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3842         enum with registration for icon sizes, instead of strings.
3843
3844         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3845         gtkwidget.c: Fix to reflect GtkIconSize
3846         
3847 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3848
3849         Make GtkFB compile and link.
3850         
3851         * gdk/linux-fb/gdkdrawable-fb2.c:
3852         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3853         
3854         * gdk/linux-fb/gdkwindow-fb.c:
3855         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3856         Added gdk_window_shape_combine_region.
3857         Added assorted placeholders for unimplemented new GdkWindow API calls.
3858
3859 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3860
3861         * gtk/gtkfilesel.c:
3862         Add more test when converting filenames from/to utf-8.
3863         Don't allow entering text in the filename entry which isn't allowed in
3864         a filename. Just beep instead.
3865
3866 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3867
3868         * gtk/gtkclist.c:
3869         Scroll using gdk_window_scroll(). Don't wait for exposes.
3870         Move the column headers in an order that makes them flash less.
3871
3872 2001-03-10  Hans Breuer  <hans@breuer.org>
3873
3874         * gdk/gdk.def : updated
3875
3876         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3877         to offseting the clip_mask at the right place
3878
3879         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3880         for all the gdkClasses, especially not for the input_only case.
3881         Otherwise flickering wont be avoidable, because we don't get
3882         WM_ERASEBKGND message for these windows.
3883
3884         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3885         and fixed massive redraw problems apparently triggered by Alexanders 
3886         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3887         but it seems to work quite well :-)
3888
3889         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3890         prototype
3891
3892 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3893
3894         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3895         (gtk_list_store_set_cell): Fix a stupid typo.
3896
3897 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3898
3899         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3900         select_all not work if you're in SINGLE mode (it doesn't make that
3901         much sense, anyway.)
3902
3903         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3904         handle types more sanely.
3905         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3906         (_gtk_tree_data_list_node_copy): handle types more sanely.
3907
3908         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3909         GValue better. Converts the type as well.
3910
3911         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3912         GValue better. Converts the type as well.
3913
3914 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3915
3916         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3917         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3918         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3919         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3920
3921         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3922         gdk_im/gdk_ic.
3923
3924 2001-03-09  Hans Breuer  <hans@breuer.org>
3925
3926         * gdk/gdk.def : updated
3927
3928         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3929         for their palette
3930
3931         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3932         removing
3933
3934         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3935         removing and implemented Havoc's GdkWindow state functions; 
3936         stick/unstick only as no-op, cause I don't know how to emulate 
3937         on win32 ...
3938
3939         * gtk/gtk.def : updated
3940
3941         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3942
3943         * gtk/gtktypeutils.c : #include <string.h>
3944
3945         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3946
3947 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3948
3949         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3950         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3951         not a boxed.
3952
3953 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3954
3955         * docs/Changes-2.0.txt:
3956         Document expose event->region change and that gtk_widget_event
3957         doesn't allow passing expose events.
3958
3959         * gdk/gdkevents.h:
3960         Add region to expose event.
3961         
3962         * gdk/gdkevents.c:
3963         Handle event->region in gdk_event_copy() and gdk_event_free().
3964
3965         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3966         Generate expose_event->region when creating expose events.
3967
3968         * gdk/x11/gdkevents-x11.c:
3969         Generate expose events with regions when translating X events.
3970
3971         * gtk/gtkcontainer.[ch]:
3972         Default expose handler that propagates expose events to NO_WINDOW
3973         children. New function gtk_container_propagate_expose()
3974
3975         * gtk/gtkwidget.[ch]:
3976         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3977         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3978         expose events. New function gtk_widget_send_expose() to send expose
3979         events. New function gtk_widget_region_intersect() to calculate
3980         window/region intersections.
3981         
3982         * gtk/gtkmain.c (gtk_main_do_event):
3983         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3984         Use gtk_widget_send_expose() to send expose events.
3985         
3986         * gtk/gtkbin.c:
3987         * gtk/gtkbox.c:
3988         * gtk/gtkfixed.c:
3989         * gtk/gtkimagemenuitem.c:
3990         * gtk/gtklist.c:
3991         * gtk/gtkpacker.c:
3992         * gtk/gtktable.c:
3993         * gtk/gtktree.c:
3994         Remove expose handler, using the default container implementation
3995         instead.
3996         
3997         * gtk/gtkbutton.c:
3998         * gtk/gtkcheckbutton.c:
3999         * gtk/gtkeventbox.c:
4000         * gtk/gtkfixed.c:
4001         * gtk/gtkhandlebox.c:
4002         * gtk/gtklayout.c:
4003         * gtk/gtklistitem.c:
4004         * gtk/gtkmenu.c:
4005         * gtk/gtkmenubar.c:
4006         * gtk/gtkmenuitem.c:
4007         * gtk/gtknotebook.c:
4008         * gtk/gtkoptionmenu.c:
4009         * gtk/gtkpaned.c:
4010         * gtk/gtkscrolledwindow.c:
4011         * gtk/gtktogglebutton.c:
4012         * gtk/gtktoolbar.c:
4013         * gtk/gtktreeitem.c:
4014         * gtk/gtkviewport.c:
4015         Chain expose handler to parent class handler. Use
4016         gtk_container_propagate_expose() to propagate exposes.
4017
4018         * gtk/gtkclist.c (check_exposures):
4019         * gtk/gtktext.c (process_exposes):
4020         Use gtk_widget_send_expose instead of gtk_widget_event.
4021
4022 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4023
4024         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4025
4026 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4027
4028         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4029         unref the nodes.   Fixes bug #50058.
4030
4031         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4032         "::ref_iter" to "::ref_node".
4033         (gtk_tree_model_unref_node): change "::unref_iter" to
4034         "::unref_node". Fixes bug #50064.
4035
4036 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4037
4038         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4039         support for invisible cells.
4040          (gtk_tree_view_bin_expose): ditto
4041
4042 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4043
4044         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4045         on gobjects.
4046
4047         * tests/testtreefocus.c (main): New test file.
4048
4049         * tests/testtreeview.c: update to latest glib changes.
4050
4051         * tests/testtreecolumns.c: update to latest glib changes.
4052
4053 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4054
4055         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4056
4057 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4058
4059         * *.c: added accumulator data argument to g_signal_newc()
4060         functions.
4061
4062         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4063         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4064         * gtk/treestoretest.c (make_window):
4065         s/g_signal_connect/g_signal_connectc/.
4066
4067         * gtk/gtktextbuffer.c: completed signal arg fixups,
4068         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4069
4070 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4071
4072         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4073         G_CONST_RETURN.
4074
4075         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4076         ::hierarchy-changed signal when a widget changes
4077         from anchored to unanchored or vice versa.
4078         (anchored means 
4079          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4080         Use a private flag to keep track of this efficiently.
4081
4082 2001-03-07  Havoc Pennington  <hp@redhat.com>
4083
4084         * gtk/testgtk.c (create_spins): uglify so that size request gets
4085         tested.
4086
4087         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4088         request on values for upper/lower, completes #6152
4089
4090 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4091
4092         * Makefile.am: Remove gtk-config-2.0 again.
4093         (Grrrr, pkg-config. And stops make loops.)
4094
4095 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4096
4097         * gtk/gtksignal.[hc]: removed old emission hook API.
4098         
4099         * docs/Changes-2.0.txt: fixed sections.
4100         
4101         * gtk/gtktextbuffer.c: signal arg fixups.
4102
4103 2001-03-07  Havoc Pennington  <hp@redhat.com>
4104
4105         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4106
4107         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4108         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4109         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4110         validation and the redraw which is higher priority than the
4111         validation.
4112
4113 2001-03-07  Havoc Pennington  <hp@redhat.com>
4114
4115         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4116         (gtk_entry_set_property): remove trailer
4117
4118         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4119         (gtk_entry_get_width_chars): new functions, to set size request to 
4120         a given number of characters
4121
4122         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4123
4124         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4125         (gtk_dialog_get_has_separator): new function
4126         (run_delete_handler): fix to not emit "response" signal
4127         because we already did in the delete event handler installed
4128         at dialog creation time.
4129         
4130         * gtk/gtkdialog.h: add a has_separator property,
4131         add GTK_DIALOG_NO_SEPARATOR flag
4132
4133 2001-03-07  Havoc Pennington  <hp@redhat.com>
4134
4135         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4136         off decorations for a window.
4137
4138         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4139         changes
4140
4141         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4142         to get location of PangoLayout inside the label, closes #51198
4143
4144         * gtk/testgtk.c (create_bbox): fix up button box usage
4145
4146         * gtk/testcalendar.c (create_calendar): fix up button box usage
4147
4148         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4149
4150         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4151
4152         * gtk/gtkhbbox.h: deprecations
4153
4154         * gtk/gtkvbbox.h: deprecations
4155
4156         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4157         emulate deprecated gtk_button_box_get_spacing
4158
4159         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4160         the "set global default" functions
4161         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4162         GtkBox base class
4163
4164         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4165
4166         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4167         render the icon, return the missing image icon.
4168
4169         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4170         image icon if the load fails.   
4171
4172         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4173         when no image is found; should be the Netscape "missing image"
4174         icon eventually but for now is a random image
4175
4176         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4177         role for the session manager
4178
4179         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4180
4181         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4182         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4183
4184         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4185
4186 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4187
4188         * gtk/*.c: marshaller fixes.
4189         
4190         * gtk/gtkmarshal.list: extreme cleanup.
4191
4192         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4193         param spec for now.
4194
4195         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4196         where appliable.
4197
4198         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4199         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4200         which are not reference counted:
4201         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4202         PangoFontDescription, GtkTreeIter and GtkTreePath.
4203
4204 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4205
4206         * gtk/gtktreeselection.h: 
4207         * gtk/gtktreemodel.c:
4208         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4209         file should be included directly, and gobject/gmarshal.h
4210         as well as gtk/gtkmarshal.h even can't be included directly.
4211
4212         * Makefile.am: grr, install gtk-config-2.0.
4213
4214         * gtk/testgtk.c:
4215         * gtk/simple.c:
4216         * gtk/gtkmenu.c:
4217         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4218         passing "*signal*::*" args to gtk_widget_set().
4219         
4220         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4221         
4222         * gtk/*.c: removed trailer arg from property setters and getters.
4223         macro fixups.
4224
4225 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4226
4227         * gtk/gtklabel.c (set_markup): Removed warning
4228
4229 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4230
4231         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4232         field to allow you to hide cell renderers.
4233
4234         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4235
4236         * gtk/gtktreeview.c: Add support for invisible cells.
4237
4238 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4239
4240         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4241         Add "clicked" signal back to columns.
4242
4243         * ChangeLog: remove conflict markers.
4244
4245 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4246
4247         * gtk/gtkbutton.c: Add animation of activation by, on 
4248         activate, pressing the button, and adding a timeout that 
4249         releases the button after 250ms or on key release and
4250         emits ::clicked. (#51501)
4251
4252         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4253         action area, we connect to ::clicked instead of ::activate
4254         so the dialog stays up through the animation.
4255
4256 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4257
4258         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4259         check the ignore_enter flag for the menu shell that
4260         the item is actually a child of, not for attached
4261         submenus. (#51536)
4262
4263 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4264
4265         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4266         special key-press grab handling for widgets within
4267         GtkWindows. Otherwise, fall through to normal case.
4268
4269         This prevents key events being sent twice to GtkInvisible
4270         widgets, which can cause all sorts of mischief.
4271
4272 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4273
4274         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4275         widget is in effect, give the grab widget a first
4276         crack at KEY_PRESS/RELEASE events. (#424)
4277
4278 2001-03-06  James Henstridge  <james@daa.com.au>
4279
4280         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4281         offset for the window_state_event to point at window_state_event
4282         rather than no_expose_event.
4283
4284 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4285
4286         * gtk/gtkimmodule.h: fix busted /* comment */
4287
4288 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4289
4290         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4291         object properties.
4292
4293 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4294
4295         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4296         add object properties.
4297
4298         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4299         to add object properties.
4300
4301         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4302         object properties.
4303
4304         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4305         add object properties.
4306
4307         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4308         object properties.
4309
4310 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4311
4312         * gtk/gtktreemodel.c: renamed "child_toggled" to
4313         "has_child_toggled".
4314
4315         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4316         handle new signal name.
4317
4318         * gtk/gtktreestore.c: Updated to handle new signal name.
4319         * gtk/gtklisttore.c: Updated to handle new signal name.
4320         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4321
4322 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4323
4324         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4325         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4326
4327 2001-03-05  Michael Natterer  <mitch@gimp.org>
4328
4329         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4330         pixbuf-engine coincidentially also failed to make one of it's
4331         parent_class pointers static, causing overwriting of GtkLabel's
4332         parent_class pointer in pixbuf_style_class_init().
4333         (Will commit the fix to the pixbuf-engine too).
4334
4335 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4336
4337         * gdk/gdkwindow.h:
4338         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4339         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4340         gdk_window_set_icon_list for net wmspec functionality.
4341
4342         * gdk/x11/gdkwindow-x11.c:
4343         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4344         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4345         gdk_window_set_icon_list.
4346         Added gdk_wmspec_change_state helper function and used it in the code.
4347         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4348
4349         * gtk/gtkdialog.c (gtk_dialog_init):
4350         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4351
4352         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4353         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4354
4355         * gtk/gtkwindow.c:
4356         new function gtk_window_set_type_hint.
4357         On realize, set type hint and modal hint.
4358
4359         * gtk/gtkwindow.h:
4360         Added type_hint field and gtk_window_set_type_hint.
4361
4362 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4363
4364         * gtk/gtklabel.[ch]:
4365         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4366         New function gtk_label_get_accel_keyval () to get the underline accelerator
4367         of the label. Setting the label pattern overrides other attributes.
4368
4369 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4370
4371         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4372         Added missing initializers to gtk_rc_style_init().
4373
4374 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4375
4376         * gtk/gtktextview.c: fixed bug #51097 about setting 
4377         gtk_text_view_set_border_window_size() if the widget is 
4378         already realized.
4379
4380 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
4381
4382         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
4383
4384         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
4385         comment. Won't do to have duplicated doc comments between
4386         the platform subdirs.
4387
4388 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
4389
4390         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
4391           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
4392
4393         Detectable auto-repeat - make a repeating key generate
4394         press/press/press/release instead of press/release pairs.
4395
4396         If we have Xkb and XkbSetDectableAutoRepeat supports
4397         that, we do it that way. Otherwise, when we get
4398         a release event, we check ahead with XPending to see
4399         if the next key is a KeyPress with the same keycode
4400         and timestamp. (Not 100% reliable, but pretty close.)
4401           
4402 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4403         
4404         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4405         special key-press grab handling for widgets within
4406         GtkWindows. Otherwise, fall through to normal case.
4407  
4408         This prevents key events being sent twice to GtkInvisible
4409         widgets, which can cause all sorts of mischief.
4410  
4411 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4412  
4413         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4414         widget is in effect, give the grab widget a first
4415         crack at KEY_PRESS/RELEASE events. (#424)
4416  
4417 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4418
4419         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4420         to extend the selection. (Roughly based on patch
4421         from Jay Cox, #50939)
4422
4423         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4424         to properly handle previous GDK_BUTTON_PRESS. 
4425         (Patch from Jay Cox, #50938)
4426
4427         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4428         '\0' back along with the deleted text. (#51148)
4429
4430 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4431
4432         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4433         the group when extracting it from the X keyboard event.
4434
4435         * modules/input/Makefile.am modules/input/imipa.c: 
4436         Simple module for entering IPA. (Do we need a 
4437         gtk-stupid-input-tricks CVS module?)
4438
4439 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4440
4441         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4442         const.
4443
4444         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4445
4446         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4447         is no focus widget for the dialog currently, grab the focus as well
4448         as the default.
4449
4450         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4451         the action area's children to iterate through, not the
4452         dialog's children.
4453
4454 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4455
4456         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4457         Add plug-socket tests. (Won't work worth a darn until I commit
4458         the rest of the plug-socket changes, but no reason these
4459         can't go into CVS now.)
4460
4461 2001-03-02  Havoc Pennington  <hp@redhat.com>
4462
4463         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4464         _gdk_region_get_xrectangles()
4465
4466         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4467
4468         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4469
4470         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4471         function, contributed by Ron Steinke    
4472
4473         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4474         gdk_net_wm_supports
4475
4476         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4477         New function, contributed by Ron Steinke
4478
4479         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4480         used to line up the text in the entry when using the entry for
4481         editable sheet cell hacks
4482
4483         * gtk/testgtk.c (create_entry): test the activate_default setting
4484         on GtkEntry
4485
4486         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4487         cause the entry to activate the default button for a dialog when 
4488         activated
4489         (gtk_entry_get_activates_default): new function
4490
4491 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4492
4493         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4494         Hwang to move call to sync_selection() up a few lines
4495         to before the row list is modified, to fix crash when
4496         removing rows in the undo_selection list.
4497
4498         (Test case provided by Daniel Elstner:
4499
4500         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4501
4502 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4503
4504         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4505         of tree->root_tree in parent_set rather than _map(), 
4506         fixing #50892 in a bit better manner.
4507
4508 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4509
4510         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4511
4512 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4513
4514         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4515         gtk_default_draw_shadow.
4516
4517 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4518
4519         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4520         warning, make warnings more verbose, treat a error
4521         in shmat as permanent, and don't try again.
4522         (#51163, Ed Randall.)
4523
4524 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4525
4526         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4527         delay for the first click before starting to scroll.
4528         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4529
4530         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4531         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4532
4533 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4534
4535         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4536         cleanup to remove some references to unused
4537         ->xoffset, ->yoffset.
4538
4539 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4540
4541         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4542         mask. (#51039, fix from Martin Maierhofer)
4543
4544 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4545
4546         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4547         for unshifted + and shifted = for non-us keyboards.
4548         Make <Control>+ and <Control>- work as well as 
4549         <Control>KP_Plus, <Control>KP_Minus for recursive
4550         open/close.  (#2682, René Seindal)
4551
4552 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4553
4554         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4555         the active menu item before deactivating the menu,
4556         so gtk_menu_popdown doesn't change the history. (#50964)
4557         
4558 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4559
4560         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4561         draw lines with text_gc rather than black_gc.
4562         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4563
4564 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4565
4566         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4567         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4568         less interrelated then it was, but it still requires the
4569         GtkTreeView to map it.
4570
4571         * test/testtreecolumn.c: Now I can add a column to one view,
4572         remove it, add it to the another view, remove it, then re-add it
4573         to the first.  Nifty.
4574
4575 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4576
4577         * docs/tutorial/gtk-tut.sgml: Minor corrections
4578
4579 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4580
4581         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4582         GtkRowReference.
4583
4584 2001-02-28  Havoc Pennington  <hp@redhat.com>
4585
4586         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4587         draw_default
4588         (gtk_widget_draw_focus): remove this function; we could instead
4589         make it just gtk_widget_draw(), but in most cases I think the
4590         result would be broken user code, so think it's better to have
4591         that code not compile and get fixed
4592         (gtk_widget_draw_default): ditto
4593
4594         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4595         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4596         
4597         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4598         widgets lose/get the default, instead of calling draw_default
4599         
4600         * docs/Changes-2.0.txt: note about all this
4601
4602         Then fixed every widget in GTK, I won't list all the filenames.
4603
4604 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4605
4606         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4607         _gtk_tree_row_reference_deleted.
4608         (inserted_callback): Proxy out to
4609         _gtk_tree_row_reference_inserted.
4610         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4611         get around signal emission ordering problem.
4612
4613         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4614         fix to work with SINGLE 
4615         (_gtk_tree_selection_internal_select_node): Major sanitization on
4616         selections.  SINGLE now seems to work.
4617
4618         * tests/Makefile.am: add testtreecolumn.c:
4619
4620         * tests/testtreecolumn.c: New test.  Mostly points out selection
4621         bugs currently, but will test columns later.
4622
4623         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4624         selection bug.  I hate touching this code -- it's scary.
4625
4626 2001-02-26  Havoc Pennington  <hp@redhat.com>
4627
4628         * gtk/testgtk.c: test the window state stuff
4629
4630         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4631         window come to the user's attention as if it were just created
4632         (gtk_window_iconify): new function
4633         (gtk_window_deiconify): new function
4634         (gtk_window_stick): new function
4635         (gtk_window_unstick): new function
4636         (gtk_window_maximize): new function
4637         (gtk_window_unmaximize): new function
4638
4639         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4640
4641         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4642
4643         * gdk/x11/gdkevents-x11.c: create window state events when
4644         appropriate
4645         (gdk_wmspec_supported): new function
4646
4647         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4648         iconification before showing the window
4649         (gdk_window_deiconify): new function
4650         (gdk_window_stick): new function
4651         (gdk_window_unstick): new function
4652         (gdk_window_maximize): new function
4653         (gdk_window_unmaximize): new function
4654
4655         * gdk/gdkwindow.c: store the window state in the window; 
4656         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4657         window->mapped.
4658         (gdk_window_get_state): return the current window state
4659
4660         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4661         (gdk_event_get_state): handle GDK_WINDOW_STATE
4662         (gdk_synthesize_window_state): function to create the window state
4663         events
4664
4665         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4666         event, for changes to "window state" such as maximized, sticky, 
4667         etc.
4668         
4669         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4670         focuses a window
4671
4672         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4673         finds out if we support a given WM spec hint
4674
4675 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4676
4677         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4678
4679 2001-02-25  Hans Breuer  <hans@breuer.org>
4680
4681         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4682         cause we want to loose those prototypes only in the latter case
4683
4684         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4685         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4686         impl member variable instead
4687
4688         * gtk/gtk.def : updated
4689
4690         * gtk/gtklist.c : 
4691         * gtk/gtkmenus.c : include <string.h> for memset ()
4692
4693         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4694         for everthing built here, but for gtk-x.x.dll only. This solves
4695         problem of indifferent gtk type definitions
4696
4697 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4698
4699         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4700
4701 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4702
4703         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4704         column that is exposed.
4705
4706         (_gtk_tree_view_update_size): Changed name from set_size, and
4707         changed function to do more work, and not force people calling it
4708         to figure out the size.  Simplifies a lot of code elsewhere.
4709
4710 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4711
4712         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4713         return solid masks for xpms that have no transparent color.
4714         This makes the ..._create_from_xpm... API backwards
4715         compatible.
4716
4717 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4718
4719         * README.win32: Update. Mention the gtk-1-3-win32-production
4720         branch.
4721
4722         * gdk/win32/bdfcursor.c: New file. A program that generates
4723         xcursors.h. Thanks to Stefan Ondrejicka.
4724
4725         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4726         compact format.
4727
4728         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4729
4730         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4731         function, uses xcursors.h.
4732         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4733         cursor from inline data instead of using LoadCursor() to generate
4734         it from a resource.
4735
4736         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4737         event, must check the Windows message for mouse button state, as
4738         the GDK event state might not have been built if it is
4739         undelivered. Remove one goto.
4740
4741         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4742         SetCursor() if the current cursor as returned by GetCursor() is
4743         the window's previous cursor. The ChildWindowFromPoint() test
4744         apparently didn't work correctly.
4745
4746         * gdk/win32/rc/*.cur: Remove.
4747
4748         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4749
4750         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4751
4752         * gtk/makefile.{mingw,msc}.in: Updates.
4753
4754 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4755
4756         * gtk/gtktreemodel.h: add functions for signal emission.
4757
4758         * gtk/gtktreestore.c: move to use above functions instead of
4759         g_signal_emit.
4760
4761         * gtk/gtkliststore.c: ditto
4762
4763 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4764
4765         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4766         GObject instead of GtkObject.
4767
4768         * gtk/gtkliststore.c: ditto.
4769
4770         * gtk/gtktreemodelsort.c: ditto.
4771
4772         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4773         GtkTreeModelIface, instead of in each model.
4774
4775 2001-02-21  Havoc Pennington  <hp@redhat.com>
4776
4777         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4778         unbreak this function
4779
4780         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4781         properties
4782
4783         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4784         properties
4785
4786         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4787         properties
4788
4789         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4790         mean unset the max length
4791
4792 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4793
4794         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4795         Changed name to be set_cell_data_func to make it clear what
4796         the functino does.  Close bug #51069.
4797
4798 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4799
4800         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4801         have memory actually freed.  Keeps box running longer.
4802
4803 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4804         
4805         * gtk/gtkseparatormenuitem.[ch]:
4806         Added new menu separator item. The drawing and size handling
4807         is still done in GtkMenuItem, but the API is a bit more sane.
4808         
4809         * gtk/Makefile.am:
4810         Add gtkseparatormenuitem.[ch].
4811
4812         * gtk/gtk.h:
4813         Add gtkseparatormenuitem.h.
4814         
4815         * gtk/gtkentry.c:
4816         * gtk/gtkmenufactory.c:
4817         * gtk/gtktextview.c:
4818         Use the new API for menu separators.
4819         
4820         * demos/gtk-demo/menus.c (create_menu):
4821         Add some GtkSeparatorMenuItem demo code.
4822
4823 2001-02-20  Havoc Pennington  <hp@redhat.com>
4824
4825         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4826         Lee Mallabone
4827
4828         * gtk/gtkarrow.c: Convert to new property API, patch from 
4829         Lee Mallabone
4830
4831 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4832
4833         * tests/testtreeview.c (toggled_callback): fix to reflect change
4834         in GtkTreeModelStore.
4835
4836 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4837
4838         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4839         function to create an icon set from a pixbuf.
4840
4841 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4842
4843         * gtk/gtkcellrenderertext.[ch]:
4844         Add a "markup" property.
4845
4846         * gtk/treestoretest.c:
4847         Use the markup property, remove some leftover stuff from
4848         GtkTreeModelMapping.
4849
4850 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4851
4852         * gtk/gtklabel.c (gtk_label_set_selectable):
4853         Queue a redraw if the selectable setting was changed.
4854
4855 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4856
4857         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4858         Actually copy the whole gc, not just the public parts.
4859         
4860         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4861         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4862         labels.
4863
4864 2001-02-19  Havoc Pennington  <hp@pobox.com>
4865
4866         * gdk/gdkwindow.c: docs
4867
4868         * gdk/gdkrgb.c: docs
4869
4870         * gdk/gdkregion-generic.c: docs
4871
4872         * gdk/gdkgc.c (gdk_gc_set_values): docs
4873
4874         * gdk/gdkdraw.c: docs
4875
4876         * gdk/gdkdrawable.h: deprecate drawable get/set data
4877
4878 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4879
4880         * demos/gtk-demo/dialog.c: Add simple new demo.
4881
4882 2001-02-19  Havoc Pennington  <hp@redhat.com>
4883
4884         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4885         insert_child_anchor signal, bug #50245
4886
4887         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4888         from create_child_anchor, so the anchor is passed in
4889
4890         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4891         (_gtk_widget_segment_new): have the child anchor object passed in, 
4892         instead of creating it.
4893
4894         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4895         to gtk_text_buffer_get_modified
4896
4897 2001-02-19  Havoc Pennington  <hp@redhat.com>
4898
4899         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4900         changed GLib without fixing GTK
4901
4902         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4903         functions to have an underscore in front. Most of them should 
4904         probably just go away, but for starters don't export them.
4905         Bug #50482
4906
4907 2001-02-19  Havoc Pennington  <hp@redhat.com>
4908
4909         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4910         excluded by default
4911
4912         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4913         clean up the old code a bit
4914
4915         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4916         inconsistent state
4917
4918         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4919         draw inconsistent state
4920
4921         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4922         (create_menu): add inconsistent test
4923
4924         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4925         new function
4926         (gtk_check_menu_item_get_inconsistent): new function
4927         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4928         state (using etched in for now)
4929
4930         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4931         draw inconsistent state
4932
4933         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4934         function, used when the user has selected a range of stuff in
4935         different states
4936         (gtk_toggle_button_get_inconsistent): accessor for that
4937         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4938         don't know what else to do)
4939
4940 2001-02-19  Hans Breuer <hans@breuer.org>
4941
4942         * gtk/gtk.def : updated exported symbols
4943
4944         * gtk/makefile.msc.in : updated
4945
4946         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4947         a colormap, when invoked from testgtk::entry. I'm not sure where
4948         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4949         avoids immediate crashing ...
4950
4951         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4952         any objections ?
4953
4954         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4955         0 parameter. At least msvc doesn't like macros with var args. 
4956         I simply removed the extra 0, was it a feature or a typo ?
4957
4958         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4959         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4960         because the value assignment to the internal struct wasn't working.
4961         I'm not absolutely sure. The problem could have been resolved by
4962         changing the "func" declartion in the struct, but was the pointer
4963         to the function pointer intended ?
4964
4965         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4966
4967         * gdk/gdk.def : updated exported symbols
4968
4969         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4970         only use SetDIBitsToDevice if there is a palette at the drawable
4971         and the image is GDK_VISUAL_PSEUDO_COLOR
4972
4973         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4974
4975         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4976
4977         * gdk/*/makefile.msc : updated
4978
4979 2001-02-19  Havoc Pennington  <hp@redhat.com>
4980
4981         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4982         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4983
4984         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4985         (gdk_key_repeat_restore): nuke
4986
4987         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4988         (gdk_init_check): no atexit func
4989
4990         * gdk/gdkrgb.h: mark some stuff deprecated
4991
4992         * gdk/gdkcolor.h: mark some stuff deprecated
4993         
4994         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4995
4996         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4997
4998 2001-02-16  Havoc Pennington  <hp@redhat.com>
4999
5000         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5001         scroll steps.
5002
5003         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5004         steps, and add Ctrl-arrow shortcuts for paging visually as with
5005         HScale, since Page Up and Page Down move logically.
5006
5007         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5008         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5009         
5010         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5011         steps
5012         (gtk_range_scroll): handle the visual steps
5013
5014         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5015         scroll steps
5016
5017         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5018         steps, not the logical ones.
5019
5020         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5021         (scroll_vertical): handle up/down steps
5022
5023 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5024
5025         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5026         Copy data and free data with free().
5027
5028         * gdk-pixbuf/gdk-pixbuf.c:
5029         * gdk-pixbuf/io-jpeg.c:
5030         * gdk-pixbuf/io-png.c:
5031         Use g_try_malloc/g_free instead malloc/free.
5032         
5033         * gdk-pixbuf/test-gdk-pixbuf.c:
5034         Must... initialize... gobject...
5035         
5036         * gdk-pixbuf/pixops/timescale.c:
5037         * gtk/gtkcalendar.c:
5038         Use g_malloc instead of malloc.
5039         
5040 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5041
5042         * gtk/testgtkrc:
5043         Comment out property assignments, these don't work yet.
5044
5045 2001-02-17  Havoc Pennington  <hp@pobox.com>
5046
5047         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5048         bit.
5049
5050 2001-02-17  Havoc Pennington  <hp@pobox.com>
5051
5052         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5053         shadowed variables that had broken size request in some cases,
5054         leading to bogus tooltips (#50996)
5055
5056 2001-02-06  Jon K Hellan  <hellan@acm.org>
5057
5058         Implement fast browsing of tooltips, bug #50619
5059         
5060         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5061         and last_popdown
5062         
5063         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5064         use_sticky_delay and last_popdown.
5065         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5066         time of popdown.
5067         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5068         is NULL.
5069         (gtk_tooltips_recently_shown): New static function.  Return true
5070         if < sticky_delay has elapsed since last popdown.
5071         (gtk_tooltips_event_handler): Display window after sticky_delay
5072         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5073         since last popdown.
5074         
5075 2001-02-17  Havoc Pennington  <hp@pobox.com>
5076
5077         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5078         instead of (). #6394
5079
5080         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5081         G_CONST_RETURN, make it return by reference, #50473
5082         
5083 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5084
5085         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5086         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5087         setup fields contain garbage (e.g. subwindow, breaking
5088         gdk_drawable_ref() upon event copy).
5089         (gtk_menu_stop_navigating_submenu_cb): same here.
5090
5091         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5092         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5093         * gtk/gtkclist.c (vertical_timeout): 
5094         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5095         default-zero-intialization for unions to memset(,0,), as unions are
5096         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5097         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5098
5099         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5100         g_closure_sink() warning.
5101
5102         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5103         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5104         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5105         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5106         
5107 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5108
5109         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5110         gtk_*_store_get, and moved to GtkTreeModel.
5111
5112         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5113
5114         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5115
5116         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5117
5118         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5119         set the func.
5120
5121         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5122         freeze/thaw notify between setting all the properties for a cell.
5123
5124         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5125
5126 2001-02-15  Havoc Pennington  <hp@redhat.com>
5127
5128         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5129         the X coordinates so they're with respect to the line, rather than 
5130         with respect to the layout.
5131
5132         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5133         Mallabone
5134
5135         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5136         and inverted test
5137
5138         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5139         #50806
5140
5141         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5142
5143         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5144         gtk_text_iter_is_end
5145
5146         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5147         rename gtk_text_buffer_get_end_iter
5148
5149         * gtk/testgtk.c (create_labels): Add test for selectable
5150
5151         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5152         the selection stuff. This code is kind of broken since it doesn't 
5153         use the theme engine.
5154
5155         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5156         fix infinite loop and y offset problem
5157         (gdk_draw_layout_line_with_colors): fix foreground color handling
5158
5159         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5160         that makes the label selectable.
5161         
5162         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5163         layout when the style is set, since fonts etc. could have changed.      
5164
5165 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5166
5167         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5168
5169         * gtk/gtktreemodelsimple.[ch]: removed.
5170
5171 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5172
5173         * gtk/gtktreemodelmapping.[ch]:
5174         New files. Implement GtkTreeModelMapping.
5175         
5176         * gtk/Makefile.am:
5177         Add gtktreemodelmapping.[ch].
5178         
5179         * gtk/gtk.h:
5180         Add gtktreemodelmapping.h
5181
5182         * gtk/treestoretest.c:
5183         Test the GtkTreeModelMapping
5184
5185 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5186
5187         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5188         have a demo, we might as well pass in real values.  Thanks to
5189         clahey for pointing this out.
5190
5191 2001-02-14  Havoc Pennington  <hp@pobox.com>
5192
5193         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5194         "static" to a private function
5195         (gtk_image_menu_item_class_init): remove destroy handler,
5196         add "image" object property
5197
5198 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5199
5200         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5201         Add a shortcut if the window and the current clip_region doesn't
5202         overlap. This is needed when there are a lot of windows in a
5203         window. The layout test in testgtk is a good test.
5204
5205         * gdk/linux-fb/gdkwindow-fb.c:
5206         Whitespace fix.
5207
5208 2001-02-13  Sven Neumann  <sven@convergence.de>
5209
5210         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5211
5212 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5213
5214         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5215         Don't reference last_cursor if it is null. Fixes crash when rotating
5216         the screen before having moved the mouse.
5217
5218         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5219
5220         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5221
5222         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5223         when using 90 or 270 degrees rotation.
5224
5225 2001-02-12  Havoc Pennington  <hp@pobox.com>
5226
5227         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5228         it always set the foreground, even if we were only using
5229         a stipple.
5230         (gdk_draw_layout_line_with_colors): new function, allow
5231         override colors
5232         (gdk_draw_layout_with_colors): new function, allow override
5233         colors
5234         (gdk_pango_layout_line_get_clip_region): function to get the clip
5235         region for a logical text range
5236         (gdk_pango_layout_get_clip_region): get the clip region for a
5237         logical text range
5238
5239         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5240         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5241         the right number of arguments.
5242
5243         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5244         enhance the function to check that node data corresponds to a 
5245         view still belonging to the tree.
5246
5247         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5248         GtkTreePath
5249         (gtk_tree_view_inserted): ditto
5250         (gtk_tree_view_child_toggled): ditto
5251
5252         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5253         simplify this code.
5254
5255         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5256         a PangoAttrList
5257
5258         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5259
5260         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5261
5262         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5263         size in the size request 
5264         (gtk_menu_bar_size_allocate): consider toggle size here
5265
5266         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5267         that displays a widget in the toggle slot
5268
5269         * gtk/testgtk.c: test GtkImageMenuItem
5270
5271         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5272         
5273         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5274         request and allocation
5275
5276         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5277
5278         * gtk/gtkcheckmenuitem.c
5279         (gtk_check_menu_item_toggle_size_request): ditto
5280         
5281 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5282
5283         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5284         reference.
5285
5286         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5287         and refuse to initialize GTK+ if they fail.
5288
5289 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5290
5291         * configure.in: Add check for gtk-doc version.
5292
5293 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5294
5295         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5296         where the xpad/ypad was only being used on one side!
5297
5298 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5299
5300         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5301         function, copied from X11 version.
5302
5303         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5304         DestroyCursor failures. The reason for the problem (despite the
5305         inconsistent messages from GetLastError()) was that
5306         DestroyCursor() cannot be called while a cursor is set in a
5307         window. Set the new cursor first and then destroy the old one.
5308         Thanks to jpe@archaeopteryx.com.
5309
5310         * gdk/win32/gdkcc-win32.c: Remove.
5311
5312         * gdk/win32/Makefile.am: Remove from here, too.
5313         
5314         * gdk/gdk.def
5315         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5316
5317         * gtk/gtk.def
5318         * gtk/makefile.mingw.in: Updates.
5319
5320 2001-02-08  Havoc Pennington  <hp@redhat.com>
5321
5322         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5323         add a widget to a bin that already has a child.
5324
5325         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5326
5327         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5328         
5329         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5330
5331         * gdk/gdk.h: remove gdkcc.h
5332
5333         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5334
5335         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5336         GdkPixbuf, since the previous implementation was GdkColorContext
5337         dependent.
5338
5339         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5340         
5341 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5342
5343         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5344         a sane value!
5345
5346 2001-02-08  Havoc Pennington  <hp@redhat.com>
5347
5348         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5349         lighten them.
5350
5351 2001-02-08  Havoc Pennington  <hp@redhat.com>
5352
5353         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5354         validation idle
5355
5356         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5357         cell renderer
5358
5359         * demos/pixbuf-demo.c (timeout): remove deprecated
5360         gtk_widget_draw
5361
5362         * demos/testpixbuf-save.c (main): remove deprecated
5363         gtk_drawing_area_size
5364
5365         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5366         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5367         at the start of the allocation.
5368         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5369         unsetup or NULL model.
5370
5371         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5372         even/odd/sorted cells in the tree view.
5373
5374         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5375         bugfixes
5376
5377         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
5378         backgrounds with draw_flat_box using different detail for even/odd
5379         rows.
5380
5381         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
5382         row, so we can draw the alternating colors thing
5383
5384         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
5385         property from a synonym property, notify for the synonym.
5386         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
5387         (gtk_text_tag_get_property): Always return the font, even if
5388         all its fields aren't set
5389
5390         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
5391         store the attr list; it leaves us with no way to change attributes
5392         in _render according to the render flags, and no way to implement
5393         get_property. Instead store all the specific text attributes. 
5394         Separate whether an attribute is enabled from its value. Sync all
5395         properties with GtkTextTag, make them all consistent, etc.
5396
5397         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
5398         renderers can highlight the sort row/column     
5399
5400         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
5401         accessor functions to get values; this has the side effect of
5402         showing up which accessor functions were missing. Added those.
5403
5404         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5405         set_alignment, to be consistent with GtkLabel, GtkMisc
5406
5407         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5408         arrow.
5409
5410         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5411
5412         * gtk/gtktreesortable.h: updates in here
5413
5414 2001-02-07  Sven Neumann  <sven@convergence.de>
5415
5416         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5417         pango dimensions after painting the background. We used to draw
5418         gigantic flat boxes here.
5419
5420 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5421
5422         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5423         error introduced with earlier commit) (pointed out by
5424         Ollie Lho)
5425
5426 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5427
5428         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5429         which are no longer necessary.
5430
5431 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5432
5433         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5434
5435 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5436
5437         * gdk/gdk.def
5438         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5439         Provide dummy implementations.
5440
5441 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5442
5443         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5444
5445         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5446         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5447         deprecated this function.
5448
5449         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5450         argument.
5451
5452 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5453
5454         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5455
5456 2001-02-03  Havoc Pennington  <hp@pobox.com>
5457
5458         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5459         Mikael Hermansson with patch from Mikael (if there was a toggle
5460         start one after the first character in the range, this function
5461         was broken). Bug #50380
5462
5463 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5464
5465         * configure.in: Remove confusing comment about X11.
5466
5467 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5468
5469         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5470         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5471         
5472 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5473
5474         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5475         it breaks things on BSD. If you want to compile GTK+ with
5476         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5477         when configuring, since GTK+ simply can't be "pure ANSI" 
5478         in the header files it uses. (#8170, Greg Hudson)
5479
5480 2001-02-02  Havoc Pennington  <hp@redhat.com>
5481
5482         * gtk/gtkwindow.c: docs
5483
5484         * gtk/gtkwidget.c: docs
5485         (gtk_widget_set_colormap): add a reference to the colormap
5486         (gtk_widget_get_default_colormap): add a reference to the colormap
5487
5488         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5489
5490         * gtk/gtktextiter.c: docs
5491
5492         * gtk/gtkmain.c (gtk_propagate_event): docs
5493
5494         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5495         (gtk_paned_set_position): docs
5496
5497         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5498         sort interface, no implementation yet.
5499
5500         * demos/testpixbuf.c (new_testrgb_window): replace
5501         gtk_drawing_area_size() with gtk_widget_set_usize()
5502
5503         * demos/testpixbuf-drawable.c (main): ditto
5504         
5505         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5506
5507         * gtk/gtktextbuffer.c: docs
5508
5509         * gtk/gtkstock.c: docs
5510
5511         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5512
5513         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5514
5515         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5516         
5517         * gtk/gtkimage.c: add some docs in here
5518         (gtk_image_size_request): change name of
5519         gtk_widget_render_stock_icon
5520         (gtk_image_get_icon_set): don't dup returned string
5521         (gtk_image_get_icon_set): don't dup returned string
5522
5523         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5524         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5525         and gtkiconfactory.h functions
5526
5527         * gtk/gtkiconfactory.c: add some docs in here
5528
5529         * gtk/gtkmain.c (gtk_get_default_language): document
5530         (gtk_get_current_event): document
5531         (gtk_get_current_event_state): document
5532         (gtk_get_event_widget): document
5533
5534         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5535
5536         * gtk/gtkcontainer.c: Add some documentation
5537         (gtk_container_add): give a more explanatory warning on adding an
5538         already-parented widget, this is kind of a FAQ and also a common
5539         typo that's easier to debug with a nice warning 
5540
5541         * gtk/gtkcellrenderertoggle.c
5542         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5543         adding this, it's useless
5544         (gtk_cell_renderer_toggle_set_active): remove
5545         (gtk_cell_renderer_toggle_get_radio): add
5546
5547         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5548         the NULL cell renderer, that doesn't make any sense to me. 
5549
5550         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5551         demo code should never use deprecated features.
5552
5553         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5554         code should never use deprecated features.
5555
5556         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5557         gtk_widget_queue_clear_area deprecated
5558
5559         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5560         deprecated
5561
5562         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5563
5564         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5565         a GdkImage deprecated, replaced by new consistently-named
5566         functions       
5567
5568         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5569
5570         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5571
5572         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5573         deprecated
5574
5575         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5576         so it won't appear in docs and confuse people.
5577
5578         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5579
5580         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5581         macros deprecated. (can't mark the type itself deprecated, since
5582         GtkProgressBar is not deprecated and we need the type decl to use
5583         GtkProgressBar)
5584
5585         * gtk/gtkpixmap.h: Mark deprecated
5586
5587         * gtk/gtkoldeditable.h: Mark deprecated
5588
5589         * gtk/gtklist.h: Mark deprecated
5590
5591         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5592         for anything anymore.
5593
5594         * gtk/gtkctree.h: Mark deprecated
5595
5596         * gtk/gtkclist.h: Mark deprecated
5597
5598         * gtk/gtkpreview.h: Mark deprecated
5599
5600         * gtk/gtkpacker.h: Mark deprecated
5601
5602         * gtk/gtktipsquery.h: Mark deprecated
5603
5604         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5605
5606         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5607
5608         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5609
5610         * gtk/gtkruler.h: Add comment that it will move out of GTK
5611
5612         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5613
5614         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5615
5616 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5617
5618         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5619         gdk_colormap_sync private since it was never exported
5620         in a header file.
5621
5622         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5623         colormap->colors[] for StaticGray, StaticColor colormaps.
5624
5625         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5626         was being used as if it was image->bits_per_pixel.
5627
5628         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5629         for the image in the GdkImage structure since it isn't
5630         reconstructable, and we need it to handle packed types
5631
5632         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5633         the assumption that on Win32 image->bits_per_pixel == image->depth,
5634         always.
5635
5636         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5637
5638         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5639         warning message if no converter can be found. 
5640
5641 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5642
5643         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5644         chars to isupper() / tolower(). (#567)
5645
5646         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5647         to clear up 64-bit warnings. (#567)
5648
5649 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5650
5651         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5652         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5653
5654         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5655         since some people set $(libdir) separately. (#1290, David Kaelbling)
5656
5657 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5658
5659         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5660         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5661         MAXPATHLEN, but the code here depends on a fixed value.)
5662         (#4524)
5663
5664 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5665
5666         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5667         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5668
5669 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5670
5671         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5672         viewable there is no way that moving the node will cause the 
5673         focus row to become not viewable, so omit check on the visibility
5674         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5675
5676 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5677
5678         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5679         selection before inserting new text.
5680
5681 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5682
5683         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5684         Make the sensitivity of the reparented child track that of
5685         the original parent menu item. (#34218, David Hodson)
5686
5687         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5688         the case where the current item is destroyed properly.
5689
5690         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5691         some edge cases with child-less menuitems.
5692         
5693 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5694
5695         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5696         key pop down window. (#12074, Jon K Hellan)
5697
5698 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5699
5700         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5701         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5702         The solution here isn't perfect - you get an extraneous
5703         emission of "toggle", which could conceivably confuse an app,
5704         but better than the current situation. LXR search seems to
5705         indicate that no apps in GNOME CVS connect to "toggle".
5706
5707 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5708
5709         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5710         gtk_public_h_sources to directly here to avoid warning when
5711         building srcdir != builddir. (#9656)
5712
5713 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5714
5715         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5716         handlers in gtkrange.c return the proper values (TRUE == handled)
5717         (#10316).
5718
5719         This is just the tip of the iceberg, but gtkrange.c is the
5720         most common place where the propagation is problematical,
5721         and also a place where it is almost certainly safe to change
5722         this in the stable branch.
5723
5724         (You don't want right click popups on a range control or anything...)
5725
5726 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5727
5728         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5729         area on focus out, even if a background pixmap isn't set.
5730         (#13941)
5731         
5732 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5733
5734         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5735         to deal with setting the shape properly when scrolling arrows are
5736         turned on, but not visible because there is sufficient space.
5737         (#13432)
5738
5739 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5740
5741         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5742         items with submenus, destroy the item along with the submenu.
5743         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5744         properly.
5745
5746         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5747         later.
5748
5749 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5750
5751         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5752         the focus widget sometimes wasn't drawn with the default if there
5753         was no default widget.
5754
5755         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5756         unreference pixmaps. 
5757
5758         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5759         for some extra safety.
5760
5761 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5762
5763         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5764         the text of a cell to the old pointer value better, by
5765         copying the new text before freeing the old text. Some code
5766         cleanup. (#8079, Karl Nelson)
5767
5768 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5769
5770         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5771         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5772
5773 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5774
5775         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5776         item from a menu, check to see if it matches 
5777         menu->old_active_menu_item, and if so, unref and clear
5778         old_active_menu_item (Patch from Pavel Cisler)
5779
5780         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5781         menu_shell->active_menu_item, if it is the child being
5782         removed. (Patch based on that of Gene Ragan, #50337)
5783
5784 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5785
5786         * gdk/linux-fb/gdkselection-fb.c: 
5787         * gdk/linux-fb/gdkcolor-fb.c: 
5788         * gdk/linux-fb/gdkdrawable-fb2.c: 
5789         * gdk/linux-fb/gdkfont-fb.c: 
5790         * gdk/linux-fb/gdkim-fb.c: 
5791         * gdk/linux-fb/gdkinput.c: 
5792         * gdk/linux-fb/gdkkeyboard-fb.c: 
5793         * gdk/linux-fb/gdkmain-fb.c: 
5794         * gdk/linux-fb/gdkrender-fb.c: 
5795         A bunch of whitespace cleanup.
5796         
5797 2001-01-30  Havoc Pennington  <hp@pobox.com>
5798
5799         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5800         #ifdef GTK_ENABLE_BROKEN.
5801
5802         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5803         GTK_ENABLE_BROKEN just before including the broken headers.
5804         
5805         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5806         deprecated types registered.
5807
5808         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5809         we have to test the broken stuff.
5810
5811         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5812         
5813 2001-01-30  Havoc Pennington  <hp@redhat.com>
5814
5815         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5816         here where prev pointer was set to the wrong thing
5817
5818         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5819         (gtk_tree_path_is_descendant): new function
5820
5821         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5822         cached length
5823         (gtk_list_store_get_iter): don't modify iter if we can't get the
5824         path.
5825
5826         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5827         
5828         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5829         GtkTreeDragDest
5830
5831         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5832         was causing segfault
5833
5834         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5835         pointer to NULL
5836
5837         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5838
5839         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5840         on returning FALSE
5841         (gtk_list_store_iter_children): ditto
5842         (gtk_list_store_iter_nth_child): ditto
5843         (gtk_list_store_iter_nth_child): ditto
5844         (gtk_list_store_iter_parent): ditto
5845
5846         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5847         on iter->user_data != NULL instead of silently accepting it.
5848         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5849         we are returning TRUE.
5850         (gtk_tree_store_iter_children): ditto
5851         (gtk_tree_store_iter_nth_child): ditto
5852         (gtk_tree_store_iter_parent): ditto
5853         (gtk_tree_store_insert): remove handling of parent->user_data ==
5854         NULL, replace with parent == NULL       
5855
5856         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5857         and a comment explaining things
5858
5859         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5860         interface support to GtkTreeStore.
5861
5862         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5863         FALSE if no prev, fix
5864
5865         * gtk/gtktreeview.c (set_source_row): use a row reference
5866         (set_dest_row): use a row reference
5867
5868 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5869
5870         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5871         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5872         (gtk_tree_selection_select_iter): The same as above.
5873
5874 2001-01-26  Havoc Pennington  <hp@redhat.com>
5875
5876         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5877         which holds a handle to a specific row (particular set of values
5878         in the model, i.e. pointer-identity row).
5879
5880         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5881         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5882         Still need to use it for the src/dest row saved on the drag context.
5883
5884 2001-01-26  Havoc Pennington  <hp@redhat.com>
5885
5886         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5887
5888         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5889         not offset by TREE_VIEW_HEADER_HEIGHT
5890         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5891         TREE_VIEW_HEADER_HEIGHT
5892
5893         * configure.in (included_loaders): for me, --with-included-loaders
5894         generates the error "the specified loader yes does not exist",
5895         i.e. the arg defaults to "yes", so change test for value ""
5896         to test for value "yes", and include all loaders in that case.
5897
5898         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5899
5900         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5901         handle TREE_VIEW_VERTICAL_SEPARATOR
5902         (gtk_tree_view_bin_expose): fix to consider the row offset as
5903         pointing halfway into vertical separator.       
5904         (gtk_tree_view_draw_node_focus_rect): ditto
5905
5906         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5907         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5908         (TRUE) to be called.
5909
5910         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5911         debug mode where the invalid region is colored in on invalidate,
5912         so you can see the flicker and know whether your redraw code is 
5913         doing a good job.
5914
5915         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5916         tree window coordinates (clip rect is in tree window coords)
5917
5918         * gtk/Makefile.am: add gtktreednd.[hc]
5919
5920         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5921
5922         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5923         drag-and-drop data operations on a model (so we can set up tree
5924         drag-and-drop automatically)
5925
5926         * gtk/testgtk.c: Add a window to change sensitivity in the
5927         GtkLabel test; add a way to change the entry frame in GtkEntry
5928         test
5929
5930         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5931         (gtk_entry_get_has_frame): new functions to remove the frame
5932         around an entry
5933         (gtk_entry_size_request): shrink requisition if no frame
5934         (gtk_entry_draw_focus): don't draw frame if no frame
5935
5936         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5937         checks inside a cell renderer
5938         (gtk_default_draw_option): ditto for options
5939
5940         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5941         children from the alignment, not the button
5942         (gtk_tree_view_column_init): ref/sink the column, to emulate
5943         GObject refcounting.
5944
5945         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5946         
5947         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5948         Use theme functions to draw the toggles 
5949
5950         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5951
5952         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5953         GdkPangoAttrEmbossed to use in rendering insensitive text
5954
5955         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5956
5957         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5958         using new GDK features
5959         
5960 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5961
5962         * gtk/gtkimage.c:
5963         Splitted gtk_image_clear into gtk_image_clear() and
5964         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5965         to avoid leaks.
5966
5967         * gtk/gtklabel.c (set_markup):
5968         Don't leak text.
5969
5970         * gtk/gtktextlayout.c:
5971         Always free display->shaped_objects.
5972
5973         * gtk/testgtk.c (create_clist):
5974         Don't leak custom style.
5975
5976 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5977
5978         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5979         Don't leak image. Simplify using gdk_colormap_query_color().
5980         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5981
5982         * linux-fb/gdkcolor-fb.c:
5983         Implemented gdk_colormap_query_color.
5984
5985 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5986
5987         * linux-fb/gdkcursor-fb.c:
5988         Don't leak built-in cursors.
5989
5990         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5991         Don't leak tmp_points.
5992
5993         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5994         Don't modify desc. Don't leak font if the PangoFont
5995         isn't found.
5996         
5997         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5998         Free dash_list.
5999
6000         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6001         Don't leak string.
6002         
6003 2001-01-20  Havoc Pennington  <hp@pobox.com>
6004
6005         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6006         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6007         me, matches Pango
6008
6009 2001-01-22  Havoc Pennington  <hp@redhat.com>
6010
6011         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6012
6013         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6014
6015         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6016         Remove, move back to gdk-pixbuf
6017
6018         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6019         to all the word functions
6020
6021         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6022         before doing anything on NULL layout or if we don't have the focus
6023
6024         * gtk/testtext.c (fill_example_buffer): "justification"
6025
6026         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6027         to be called "justification" not "justify"
6028
6029         * demos/gtk-demo/textview.c (create_tags): "justification"
6030         
6031         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6032
6033 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6034
6035         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6036         Don't leak visible_region. Use visible_region instead of region.
6037         
6038         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6039         Don't do extra gdk_drawable_ref(). This is not X.
6040         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6041         gdk_fb_focused_window is ref:ed.
6042         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6043         windows.
6044
6045 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6046
6047         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6048         Don't leak the PangoFontDescriptor.
6049
6050 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6051
6052         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6053         when not realized.
6054         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6055         (gtk_tree_view_realize): add scroll_to support
6056         (gtk_tree_view_finalize): add a finalize method.  Populate.
6057         (gtk_tree_view_insert_column): ref and sink the column.
6058         (gtk_tree_view_append_column): ref and sink the column.
6059         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6060         individual nodes.  Should make the code much more efficient, if
6061         actually used.
6062
6063 2001-01-19  Havoc Pennington  <hp@redhat.com>
6064
6065         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6066         byte_offset variable was being used to mean both "offset into
6067         layout" and "offset into buffer line" which was no longer true
6068         with addition of preedit string; fix
6069
6070 2001-01-19  Havoc Pennington  <hp@redhat.com>
6071
6072         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6073
6074         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6075         function
6076
6077         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6078         implement
6079
6080         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6081         scroll_to_cell, matches TextView scroll functions better
6082         (gtk_tree_view_tree_to_widget_coords): new function
6083         (gtk_tree_view_widget_to_tree_coords): new function
6084         (gtk_tree_view_get_visible_rect): new function
6085         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6086         (gtk_tree_view_draw_node_focus_rect): new function moved from
6087         draw_focus, also, use width of bin_window as width of the focus
6088         rect
6089         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6090         already-expanded rows
6091         (gtk_tree_view_get_cell_rect): new function
6092         (gtk_tree_view_get_path_at_pos): return the click position
6093         relative to the passed-in cell
6094         (gtk_tree_view_set_expander_column): new function
6095
6096         * configure.in: remove gtk-config-2.0 chmod
6097
6098         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6099         and properly handle drags with targets we don't understand
6100         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6101         scrolling anyway
6102         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6103         mark invisible
6104
6105         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6106         function
6107         (gtk_drag_dest_get_target_list): new function
6108         (gtk_drag_dest_set_target_list): new function
6109         
6110         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6111
6112         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6113         related to drag-and-drop
6114
6115 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6116
6117         * gdk/linux-fb/gdkprivate-fb.h:
6118         Define EMULATE_GDKFONT.
6119         Add extra pango_font stuff to GfkFontPrivate.
6120         
6121         * gdk/linux-fb/gdkdrawable-fb2.c:
6122         * gdk/linux-fb/gdkfont-fb.c:
6123         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6124         emulation using PangoFont.
6125
6126 2001-01-17  Havoc Pennington  <hp@pobox.com>
6127
6128         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6129         all the non-deprecated set_foo functions. Added missing object
6130         properties, and added g_object_notify() to setters. 
6131         Wrote docs.
6132         
6133 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6134
6135         * gtk/gtkmain.c
6136         * gtk/gtkrc.c: (Win32) Use the new
6137         g_win32_get_package_installation_(sub)directory() functions.
6138
6139         * config.h.win32.in: New file.
6140         
6141         * config.h.win32: Removed.
6142
6143         * configure.in: Output config.h.win32.
6144
6145         * Makefile.am: Add it to EXTRA_DIST.
6146
6147         * gtk/gtk.def: Update.
6148
6149 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6150
6151         * gtk/gtklabel.c (gtk_label_size_request): Set the
6152         attributes onto the PangoLayout even if they are newly
6153         created from label->pattern.
6154
6155 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6156
6157         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6158
6159         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6160         structures in functions. Fixes bug where gtk_dataset_*
6161         was accidentally still being used in one place, causing
6162         every dest side event to be treated independently.
6163
6164         * gtk/gtkdnd.c: Remove last vestages of handling
6165         ::draw (fixes warning)
6166         
6167         * gtk/gtkentry.[ch]: Add drag and drop support.
6168
6169         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6170         new function gtk_check_drag_threshhold() for checking
6171         to check if (dx,dy) has exceeded the threshhold for starting
6172         a drag and use it everywhere.
6173
6174 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6175
6176         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6177         add -I{includedir}/gtk-2.0.
6178
6179         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6180         gdk/gdk-pixbuf.h: Doc fixups.
6181         
6182         * gtk/gtkobject.h: Remove trailing , from enum
6183
6184 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6185
6186         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6187         Doh! Mixed up x and y.
6188
6189         * gdk/linux-fb/gdkglobals-fb.c:
6190         Removed gdk_fb_pointer_grab_window_events,
6191         added _gdk_fb_pointer_grab_owner_events and
6192         _gdk_fb_keyboard_grab_owner_events.
6193
6194         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6195         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6196         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6197         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6198         Send crossing events after ungrab finished.
6199         (gdk_keyboard_grab): Set ..._owner_events
6200         (type_masks): Move out of function.
6201         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6202         gdk_fb_keyboard_event_window): New functions, return the
6203         window an event should be targeted at. Handles grabs and
6204         event propagation. Can return NULL.
6205         (gdk_event_make): Remove event_mask checking. Now always
6206         returns an event.
6207                 
6208         * gdk/linux-fb/gdkkeyboard-fb.c:
6209         * gdk/linux-fb/gdkproperty-fb.c:
6210         * gdk/linux-fb/gdkselection-fb.c:
6211         Use new event_window/gdk_event_make() behaviour.
6212         
6213         * gdk/linux-fb/gdkmouse-fb.c:
6214         Use new event_window/gdk_event_make() behaviour.
6215         Only send motion events if in the same window.
6216         If grabbed, use cursor from window if sibling of grabbed
6217         window, and cursor from grabbed window otherwise.
6218
6219         * gdk/linux-fb/gdkprivate-fb.h:
6220         Update gdk_fb_window_send_crossing_events, gdk_event_make
6221         and grab varaible declarations. Add gdk_fb_*_event_window().
6222
6223         * gdk/linux-fb/gdkwindow-fb.c:
6224         Use new event_window/gdk_event_make() behaviour.
6225         Keep correct track of focus window.
6226         (gdk_window_set_events): Set all specific button motion masks
6227         if GDK_BUTTON_MOTION_MASK set.
6228
6229         * gtk/gtkdnd.c (gtk_drag_update):
6230         Free info->last_event if gdk_drag_motion returned FALSE.
6231
6232 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6233
6234         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6235         Eliminate redraws when input-only windows are shown or
6236         hidden. Thanks to jpe@archaeopteryx.com.
6237
6238 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6239
6240         * docs/faq/gtk-faq.sgml: FAQ update:
6241           - Update to bugzilla
6242           - Add GTK+ and security/SUID/SGID
6243           - Add DnD question
6244
6245 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6246
6247         * gdk/linux-fb/gdkdnd-fb.c:
6248         Some cleanups.
6249         
6250 2001-01-15  Havoc Pennington  <hp@pobox.com>
6251
6252         * tests/testtreeview.c: add test stuff for CellRendererToggle
6253
6254         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6255         accessor
6256
6257         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6258         only toggle on button press (would do release like GtkButton, but
6259         we'd need implicit grab code for treeview cells)
6260
6261 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6262
6263         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6264
6265         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6266         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6267
6268         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6269         to g_{locale,filename}_{to,from}_utf8 to match current API.
6270
6271         * gtk/makefile.msc.in (gtk_OBJECTS)
6272         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6273
6274         * gtk/gtk.def: Update.
6275
6276 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6277
6278         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6279         implementaion that more closely mimics the events that an X server
6280         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6281         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6282         with nested preview widgets, for instance, more responsive when
6283         you move the mouse quickly into them.
6284         (find_window_for_pointer_event): Make it actually compile.
6285         (gdk_event_translate): Set send_event to the value of
6286         InSendMessage (). This doesn't really mean the same as X11's
6287         send_event flag, but is close enough, says jpe@archaeopteryx.com
6288
6289 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6290
6291         * gdk/linux-fb/gdkdnd-fb.c:
6292         Implemented drag and drop.
6293         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6294         when it tries to free and then copy the same event (info->last_event).
6295         I am not sure about why this happens, but will continue looking.
6296
6297 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6298
6299         * gdk/linux-fb/gdkwindow-fb.c:
6300         Use gdk_window_invalidate_rect instead of
6301         gdk_window_invalidate_rect_clear to minimise flashing.
6302         When hiding windows you need to clear the root window though.
6303
6304 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6305
6306         * gdk/linux-fb/gdkdrawable-fb2.c:
6307         For optization, add an full_shapes argument to gdk_fb_clip_region.
6308         If this is false, only the cliprects of the shapes are used.
6309
6310         * gdk/linux-fb/gdkprivate-fb.h:
6311         Export gdk_fb_window_peek_shape.
6312         Add full_shapes to gdk_fb_clip_region.
6313
6314         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6315         When moving a window, don't clear everything under the it, just the
6316         root window. Makes stuff faster and flash less.
6317         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6318         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6319         offset of the shape.
6320         
6321
6322 2001-01-12  Havoc Pennington  <hp@redhat.com>
6323
6324         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6325         current invalid region, fixes redraw bug while scrolling the 
6326         text widget
6327
6328         * gtk/gtktextview.c, gtk/gtktextview.h:
6329         Rearrange the scrolling/validation/etc. code in a major way, 
6330         so it seems to make sense to me. Probably isn't genuinely that
6331         much better, but...
6332
6333         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6334         notifies
6335
6336         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6337
6338 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6339
6340         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6341         Hide mouse pointer while rotation. Show it afterwards.
6342
6343 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6344
6345         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6346         windows in consideration when generating clip region.
6347
6348         * gdk/linux-fb/gdkfb.h:
6349         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6350
6351         * gdk/linux-fb/gdkprivate-fb.h:
6352         Add shape to GdkWindowFBDatat.
6353         exported gdk_fb_window_get_abs_shape().
6354         removed gdk_fb_draw_lines declaration.
6355
6356         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6357         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6358         send focus changes when there is a grabbed window.
6359         (gdk_window_get_pointer): Handle shaped windows.
6360         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6361         (gdk_fb_window_peek_shape): Returns the shape for a window,
6362         handles GDK_FB_USE_CHILD_SHAPE.
6363         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6364         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6365         (gdk_window_shape_combine_mask): Implement.
6366
6367         * gtk/gtkwindow-decorate.c:
6368         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6369         setting the shape of a window makes the window transparent.
6370
6371 2001-01-11  Havoc Pennington  <hp@redhat.com>
6372
6373         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6374
6375 2001-01-10  Havoc Pennington  <hp@redhat.com>
6376
6377         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
6378         add this function, bug 40251
6379
6380         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
6381         of type macro   
6382
6383 2001-01-11  Alexander Larsson  <alexl@redhat.com>
6384
6385         * acconfig.h:
6386         Added ENABLE_SHADOW_FB
6387
6388         * configure.in:
6389         Added --disable-shadowfb
6390
6391         * gdk/linux-fb/gdkcursor-fb.c:
6392         Update shadowfb when updating cursor
6393
6394         * gdk/linux-fb/gdkdrawable-fb2.c:
6395         Added wrappers for shadowfb that calls  the normal drawable
6396         methods, but calls gdk_shadow_fb_update(bounding box) when
6397         GdkWindows are drawed to.
6398         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
6399         which also returns the bounding box.
6400
6401         * gdk/linux-fb/gdkfb.h:
6402         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
6403
6404         * gdk/linux-fb/gdkgeometry-fb.c:
6405         Update shadowfb when scrolling window.
6406
6407         * gdk/linux-fb/gdkglobals-fb.c:
6408         Add _gdk_fb_screen_angle.
6409         
6410         * gdk/linux-fb/gdkkeyboard-fb.c:
6411         Test code for screen rotation. Shift-F2 in the xlate driver
6412         rotates the screen.
6413
6414         * gdk/linux-fb/gdkmain-fb.c:
6415         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6416
6417         * gdk/linux-fb/gdkmouse-fb.c:
6418         Use fb_width/height instead of modeinfo.xres/yres.
6419
6420         * gdk/linux-fb/gdkprivate-fb.h:
6421         Added fb_men, fb_width, fb_height & fb_stride. When using
6422         shadow fb these can differ from the framebuffer stuff.
6423         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6424         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6425         _gdk_fb_screen_angle. Removed CM, RP.
6426
6427         * gdk/linux-fb/gdkrender-fb.c:
6428         Added code for shadowfb handling and screen rotation using
6429         shadowfb.
6430
6431         * gdk/linux-fb/gdkwindow-fb.c:
6432         Use fb_mem, fb_stride, fb_width, fb_height.
6433         Added recompute_rowstride to reset the rowstride of all windows.
6434         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6435         window abs positions and window rowstrides. Usefull when the
6436         rotation has changed.
6437
6438 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6439
6440         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6441
6442 2001-01-10  Havoc Pennington  <hp@redhat.com>
6443
6444         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6445         where sibling == iter
6446         (gtk_tree_store_insert_after): handle sibling == iter
6447         (gtk_tree_store_prepend): remove stamp checks
6448         (gtk_tree_store_insert_before): ditto
6449         (gtk_tree_store_append): ditto
6450         (gtk_tree_store_get_path): ditto
6451         (gtk_tree_store_get_value): ditto
6452         (gtk_tree_store_iter_has_child): ditto
6453         (gtk_tree_store_iter_n_children): ditto
6454         (gtk_tree_store_iter_nth_child): ditto
6455         (gtk_tree_store_insert_after): ditto
6456         (gtk_tree_store_is_ancestor): ditto
6457         (gtk_tree_store_iter_depth): ditto
6458         (gtk_tree_store_insert_before): assert that sibling's parent is
6459         the same as the passed-in parent
6460         (gtk_tree_store_insert_after): assert that sibling's parent is
6461         the same as the passed-in parent
6462
6463         
6464         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6465         function to get the first iterator in a model
6466         
6467         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6468         conventionally the "root" in this sense is just NULL afaict.
6469
6470         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6471         where sibling == iter
6472         (gtk_list_store_insert_after): handle case where sibling == iter
6473
6474         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6475         automated tests for ListStore, TreeStore
6476
6477         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6478         (gtk_list_store_insert): update tail pointer, and fix it to work
6479         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6480         (gtk_list_store_append): use tail to be faster
6481         (gtk_list_store_prepend): fix it, update tail pointer
6482         (gtk_list_store_insert_after): fix it, update tail pointer
6483
6484         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6485         the list
6486
6487 2001-01-09  Havoc Pennington  <hp@redhat.com>
6488
6489         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6490         is NULL due to a pending resize
6491
6492         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6493         column width to values less than 1
6494
6495         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6496         width to be between min/max width, and still set the width 
6497         even if autosize is turned on, so the tree view can use this 
6498         function in order to autosize.
6499         (gtk_tree_view_column_init): set initial width to 1 not 0
6500
6501         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6502         setter function to modify column width, so we get notification
6503         (gtk_tree_view_insert_iter_height): ditto
6504         (gtk_tree_view_calc_size): ditto
6505         (gtk_tree_view_check_dirty): ditto
6506
6507         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6508         properties to change all the interesting attributes of the tree
6509         view column.
6510         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6511         (gtk_tree_view_column_get_clickable): add
6512         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6513         attributes; assume a cell renderer with equivalent object
6514         properties has been swapped in. Do g_object_notify().
6515         (gtk_tree_view_column_set_visible): g_object_notify
6516         (gtk_tree_view_column_get_sizing): rename from get_col_type
6517         (gtk_tree_view_column_set_sizing): g_object_notify
6518         (gtk_tree_view_column_set_width): add g_object_notify
6519         (gtk_tree_view_column_set_min_width): ditto
6520         (gtk_tree_view_column_set_max_width): ditto
6521         (gtk_tree_view_column_set_title): ditto
6522         (gtk_tree_view_column_set_clickable): ditto
6523         (gtk_tree_view_column_set_widget): ditto
6524         (gtk_tree_view_column_set_justification): ditto
6525
6526 2001-01-09  Havoc Pennington  <hp@redhat.com>
6527
6528         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6529         there are no rows in the model
6530
6531         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6532         NULL, then return the start of the list
6533
6534         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6535         if we can't get any rows from an empty model 
6536
6537         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6538         extraneous * after function pointer typedef usage
6539
6540         * Makefile.am: don't specify full path to cp and rm
6541
6542         * gtk/gtkcellrenderertextpixbuf.c
6543         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6544         NULL before dereferencing, fixes a segfault that happened from
6545         time to time
6546
6547         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6548         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6549         and reindent the function
6550         (gtk_cell_renderer_pixbuf_get_size): indentation
6551
6552         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6553         we quit it
6554         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6555         (gtk_dialog_set_default_response): New function, to set default
6556         button
6557         (gtk_dialog_set_response_sensitive): New function, to set 
6558         sensitivity of buttons
6559
6560         * gtk/gtkcellrendererpixbuf.c
6561         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6562         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6563
6564         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6565         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6566         also boxed types.
6567         (_gtk_tree_data_list_value_to_node): ditto
6568
6569         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6570         --gtk-debug=tree
6571
6572         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6573
6574         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6575
6576 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6577
6578         * gdk/win32/gdkevents-win32.c: Implement better mouse
6579         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6580         (find_window_for_pointer_event): New function.
6581         (gdk_event_translate): Use it when handling mouse events.
6582
6583 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6584
6585         * configure.in:
6586         Added --with-included-loaders option
6587
6588         * gdk-pixbuf/Makefile.am:
6589         * gdk-pixbuf/gdk-pixbuf-io.c:
6590         Add support for including selected gdk-pixbuf loaders only.
6591
6592         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6593         gtk_window_set_has_frame):
6594         Added inline documentation.
6595
6596         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6597         * docs/reference/gdk/tmpl/windows.sgml:
6598         Added inline documentation.
6599
6600 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6601
6602         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6603         realizing buttons that have already been realized.
6604
6605 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6606
6607         * tests/testtreeview.c (main): Show menu items before adding to
6608         option menu.
6609
6610         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6611         around if we kill them.
6612
6613         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6614         Return if we pass in a NULL model.
6615
6616 2001-01-08  Havoc Pennington  <hp@redhat.com>
6617
6618         * tests/testtreeview.c: hack on this some
6619
6620         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6621         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6622         list
6623         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6624
6625         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6626         functions
6627
6628 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6629
6630         * gtk/gtkwindow-decorate.[hc]:
6631         * gtk/Makefile.am:
6632         New files. Contains an implementation of a minimal WM for
6633         linux-fb.
6634
6635         * gtk/gtkwindow.h:
6636         Add the possibility for GtkWindows to specify a frame. This
6637         is used for the window decoration code, but could concievably
6638         be used for X programs too (xmms style windows).
6639         GtkWindow->frame is the toplevel window if the window is framed.
6640         The signal frame_event gets all events that are targeted to
6641         GtkWindow->frame.
6642         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6643         
6644         * gtk/gtkwindow.c:
6645         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6646         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6647
6648 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6649
6650         * docs/README.linux-fb:
6651         Correct filename ~/.pangoft2_aliases
6652
6653         * gdk/gdkwindow.h:
6654         Added new function gdk_window_get_decorations.
6655
6656         * gdk/linux-fb/gdkfb.h:
6657         Removed _gdk_window_get_decorations declaration.
6658         Renamed _gdk_window_set_child_handler to
6659         gdk_fb_window_set_child_handler.
6660
6661         * gdk/linux-fb/gdkwindow-fb.c:
6662         Renamed _gdk_window_set_child_handler to
6663         gdk_fb_window_set_child_handler.
6664
6665         * gdk/x11/gdkwindow-x11.c:
6666         New function gdk_window_get_mwm_hints().
6667         Implemented gdk_window_get_decorations.
6668
6669         * docs/reference/gdk/tmpl/windows.sgml:
6670         * docs/reference/gdk/gdk-sections.txt:
6671         Added gdk_window_get_decorations docs.
6672         
6673 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6674
6675         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6676         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6677         gdk_fb_window_send_crossing_events):
6678         Possibly send focus events when the mouse moves from one
6679         window to another.
6680
6681 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6682
6683         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6684         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6685         to match current API.
6686
6687         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6688         environment variable is set, don't call g_error when on a
6689         palettized (PseudoColor) display. Some people want to use GTK+ 
6690         in 256-colour mode even though works only partially.
6691
6692         * gdk/gdk.def
6693         * gtk/gtk.def
6694         * gtk/makefile.mingw.in: Update.
6695
6696 2001-01-05  Havoc Pennington  <hp@redhat.com>
6697
6698         * tests/testtreeview.c: hack on this a bit
6699
6700         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6701         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6702
6703         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6704         was spelled incorrectly
6705         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6706
6707         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6708         from gtk_tree_view_set_headers_active   
6709
6710         * gtk/gtktexttag.c:
6711         (gtk_text_tag_get_property): handle PROP_DIRECTION
6712         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6713         properties, bug 40235
6714
6715         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6716         forward_to_line_end
6717
6718 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6719
6720         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6721         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6722         for unicode,locale,filename conversion functions.
6723
6724 2001-01-05  Havoc Pennington  <hp@redhat.com>
6725
6726         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6727         broken if called on the first position in the buffer.
6728
6729         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6730         forward_to_delimiters to be called only if we aren't already at
6731         the delimiters.
6732
6733 2001-01-05  Havoc Pennington  <hp@redhat.com>
6734
6735         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6736
6737 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6738
6739         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6740         colormap in here. Sync from X port.
6741         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6742         Sync from X port.
6743         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6744         This happens now and then, and i don't think it is a bug.
6745         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6746         != endpoint.
6747         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6748         GDK_LINE_SOLID.
6749
6750         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6751         some of the fields filled in at least.
6752
6753         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6754         miLineArcD is no more, remove it from the function definition.
6755
6756 2001-01-04  Havoc Pennington  <hp@redhat.com>
6757
6758         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6759         this
6760
6761         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6762         user_data instead of tree_node
6763
6764         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6765         TREE_VIEW_COLUMN_SIZE
6766
6767         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6768         "size" field to "width" finishes bug 40061
6769
6770         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6771         for bitfields, bug 40268
6772
6773 2001-01-04  Havoc Pennington  <hp@redhat.com>
6774
6775         Rename some stuff:
6776         
6777         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6778
6779         s/GtkModelSimple/GtkTreeModelSimple/g;
6780         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6781         s/gtk_model_simple/gtk_tree_model_simple/g;
6782         s/gtkmodelsimple/gtktreemodelsimple/g;
6783
6784         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6785
6786         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6787         s/column_set_col_type/column_set_sizing/g;
6788
6789         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6790         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6791
6792         s/GtkCellRendererType/GtkCellRendererState/g;
6793         
6794         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6795         (gtk_cell_renderer_toggle_class_init): change "state" property to
6796         "active", to match GtkToggleButton
6797         (gtk_cell_renderer_toggle_get_active): new function, bug
6798         40269
6799         (gtk_cell_renderer_toggle_set_active): new function
6800         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6801         state through gtk_cell_renderer_set_active
6802
6803 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6804
6805         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6806         temporarily until they work again.  Brought up to date with
6807         changes in the model.
6808         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6809         model.
6810
6811 2001-01-04  Havoc Pennington  <hp@redhat.com>
6812
6813         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6814         equal to the line length, then position iterator before paragraph 
6815         separators. Fixes crash reported by Mikael Hermansson when
6816         pressing left arrow from the start of a line.   
6817
6818         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6819         about byte indexes off the end
6820         (iter_set_from_char_offset): add g_error about char offsets
6821         off the end
6822
6823 2001-01-03  Havoc Pennington  <hp@redhat.com>
6824
6825         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6826
6827         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6828         of private functions; remove inclusion of private headers.
6829
6830         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6831         function, so we don't need private functions in gtktextdisplay.c
6832
6833         * gtk/gtktextiterprivate.h: underscore-ification
6834
6835         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6836         to instead say "only useful to implement widgets"
6837
6838         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6839         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6840         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6841
6842         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6843         This function was completely broken
6844
6845         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6846
6847         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6848
6849         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6850
6851         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6852
6853         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6854
6855         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6856
6857         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6858         gtk_paint_layout
6859
6860         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6861         gtk_paint_layout
6862
6863         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6864         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6865         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6866         which were not implemented.     
6867
6868         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6869         insert_pixbuf signal. Rename delete_text to delete_range since it
6870         also deletes pixbufs and child anchors. This almost closes bug
6871         40245 (still need to deal with child anchors)
6872
6873         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6874         insert_pixbuf, change signal names as appropriate, change types of
6875         signals taking marks/tags to have the specific type, not just
6876         G_TYPE_OBJECT
6877         
6878         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6879         closes bug 40051
6880
6881         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6882         unnecessary remove_contents() call
6883         (gtk_option_menu_class_init): add a "changed" signal, closes
6884         bug 40039
6885         (gtk_option_menu_update_contents): emit "changed" if the 
6886         active menu item changes
6887
6888         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6889         cast to GtkObject, reported by Jonas Borgstrom
6890         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6891         we can't do stuff with side effects in finalize. Instead, spew a
6892         warning if the loader isn't closed.
6893
6894         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6895         colormap in here, non-X ports probably need to sync to this change
6896
6897         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6898         assertion that colormap != NULL, you can set the colormap to NULL
6899         if you like.
6900         
6901         * Makefile.am: remove gtk-config-2.0
6902
6903         * configure.in: Use pkg-config to locate GLib. Remove
6904         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6905         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6906         Use pkg-config to locate Pango. Output correct Pango libs to
6907         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6908
6909         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6910         files
6911         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6912         X11 pc files
6913
6914         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6915         unref from here
6916
6917 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6918
6919         * configure.in:
6920         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6921
6922 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6923
6924         * gtk/gtktextlayout.c
6925         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6926         variable when moving back onto a single line.
6927
6928 2001-01-01  Havoc Pennington  <hp@redhat.com>
6929
6930         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6931
6932         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6933
6934         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6935         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6936
6937 2001-01-01  Havoc Pennington  <hp@redhat.com>
6938
6939         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6940
6941         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6942         GtkTextAttributes
6943
6944         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6945         #40246
6946         (gtk_text_attributes_copy_values): rename from 
6947         gtk_text_attributes_copy
6948         (gtk_text_attributes_copy): a more standard GTK copy function, 
6949         which returns a new object
6950
6951 2001-01-01  Havoc Pennington  <hp@redhat.com>
6952
6953         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6954         
6955         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6956         don't fill in tree_view->priv->selection, kind of an unexpected
6957         side effect
6958
6959         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6960         gtkintl.h
6961         
6962         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6963         gtkintl.h
6964         (gtk_cell_renderer_get_property): remove calls to g_value_init
6965
6966         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6967         gtkintl.h
6968
6969         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6970         and include gtkintl.h
6971         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6972         property names
6973
6974         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6975         GtkTreeSelection
6976         (_gtk_tree_selection_new_from_with_view): rename, return
6977         GtkTreeSelection
6978         (_gtk_tree_selection_set_tree_view): rename with uscore
6979         (gtk_tree_selection_get_selected): fill in the "model" out param
6980         first, so it gets filled in even if we return at the top of the 
6981         function
6982         (gtk_tree_selection_real_select_all): add a comment and an else{}
6983         to clarify this a bit
6984         (gtk_tree_selection_real_unselect_all): add the same else{}
6985
6986         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6987         set_tree_view to have underscore prefixes, move them to the
6988         private header, fix return type of new_with_tree_view
6989         (struct _GtkTreeSelection): mark struct
6990         fields private  
6991
6992         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6993         GtkTreeModelFlags, not a guint
6994         (gtk_tree_path_prev): return gboolean not gint
6995         (gtk_tree_path_up): return gboolean not gint
6996
6997         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6998         return GtkTreeModelFlags, not a guint
6999
7000         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7001         that child model is non-null before unrefing it
7002         (g_value_int_compare_func): make this a qsort compare func, not 
7003         a boolean predicate
7004
7005         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7006         (add -umn to the end), and mark it unimplemented
7007         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7008         I don't see what it's for - doesn't the model always sort itself?
7009         (gtk_tree_model_sort_set_compare): this had the wrong signature
7010
7011         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7012         Fix the docs to say that it destructively replaces existing
7013         attributes (previously said that it added attributes).
7014         (gtk_tree_view_column_set_visible): canonicalize bool before
7015         equality testing. Also, check for realization before
7016         hiding/showing the tree_column->window; if this window could exist
7017         before realization, then it's busted and needs fixing, we can't 
7018         create GDK resources pre-realization. Also, remove
7019         superfluous queue_resize(), since set_size() does that for us.
7020         (gtk_tree_view_column_set_col_type): check realization before 
7021         using tree_column->window
7022
7023         * gtk/gtktreedatalist.c: fix filename in copyright notice
7024
7025 2000-12-31  Havoc Pennington  <hp@pobox.com>
7026
7027         * gtk/gtktextview.c: Rearrange all the
7028         scroll-while-dragging-or-selecting code to be different, not
7029         necessarily better. ;-)
7030         (gtk_text_view_scroll_to_mark): Change this
7031         function to take within_margin as a fraction instead of a pixel
7032         value, and to take alignment arguments (indicating where to align 
7033         the mark inside the visible area)
7034         
7035         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7036         to GtkObject
7037
7038         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7039         behavior so that offsets past the end of the line are not 
7040         allowed, and an offset equal to the line length moves the iterator
7041         to the next line
7042         (gtk_text_iter_set_line_index): make parallel change
7043         (gtk_text_iter_get_bytes_in_line): add this function
7044         
7045         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7046         of byte indexes off the end of the line; byte index at the end of
7047         the line now returns FALSE and doesn't fill in the requested
7048         values, byte index past the end of the line is an error.  Also,
7049         don't allow -1 offset anymore, since its meaning is unclear.
7050
7051         This change exposes some bug in visual cursor motion, where we
7052         end up with a huge invalid byte index; needs fixing. Symptom of 
7053         bug is a crash when you hit up arrow.
7054         
7055         (_gtk_text_line_char_locate): match the change to byte_locate
7056
7057         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7058         from start of line properly. fixes bug reported by Mikael
7059         Hermansson where backspace would delete all text before the
7060         cursor.
7061
7062 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7063
7064         * gdk/win32/gdkwindow-win32.c
7065         (gdk_window_impl_win32_get_visible_region): New function, as in
7066         the X11 backend.
7067         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7068         instead of duplicating the same code here.
7069
7070         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7071         GDK_COLORMAP macro.
7072
7073         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7074         destroy function.
7075         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7076         access that.
7077
7078         * gtk/gtk.def: Update.
7079
7080         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7081
7082 2000-12-30  Havoc Pennington  <hp@pobox.com>
7083
7084         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7085         colormap on input only windows, to avoid special cases all over
7086         the code for these windows.
7087
7088 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7089
7090         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7091         we are on a palettized display ("PseudoColor" in X11), as the code
7092         for that doesn't work anyway, and never has.
7093
7094 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7095
7096         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7097         Don't use isprint() for chars > 255.
7098
7099 2000-12-21  Havoc Pennington  <hp@redhat.com>
7100
7101         * tests/testtreeview.c: more work
7102
7103 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7104
7105         * docs/README.linux-fb:
7106         Update the docs to the new pangoft2 way.
7107
7108 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7109
7110         * configure.in:
7111         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7112         pango version.
7113         Remove modules/linux-fb/Makefile.
7114
7115         * gdk/linux-fb/gdkdrawable-fb2.c:
7116         Render glyphs using freetype.
7117
7118         * gdk/linux-fb/gdkfb.h:
7119         Add new fb-specific functions needed for managing windows.
7120
7121         * gdk/linux-fb/gdkmain-fb.c:
7122         Remove gdk_font_init/fini() calls.
7123
7124         * gdk/linux-fb/gdkpango-fb.c:
7125         Remove old implementation. Use pangoft2 instead.
7126
7127         * gdk/linux-fb/gdkprivate-fb.h:
7128         Remove PangoFBFont and related stuff.
7129
7130         * gdk/linux-fb/gdkwindow-fb.c:
7131         Implement drawable->get_visible_region.
7132         Implement support for _gdk_window_set_child_handler () and
7133         _gdk_window_get_decorations().
7134
7135         * modules/Makefile.am:
7136         Remove linux-fb subdir.
7137
7138         * modules/linux-fb/*:
7139         Removed all.
7140         
7141 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7142
7143         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7144         calls, as they are no longer needed.
7145
7146         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7147         
7148         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7149         figure out how to emit a signal on an interface.
7150
7151 2000-12-20  Havoc Pennington  <hp@redhat.com>
7152
7153         * tests: new directory to contain tests, gtk/test* should move
7154         here sometime (with appropriate on-cvs-server hackery)
7155
7156         * tests/testtreeview.c, tests/Makefile.am: a test
7157         
7158         * configure.in (AC_OUTPUT): add tests/Makefile
7159
7160         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7161         and "invisible_set" which were missing
7162
7163         * gtk/gtkrbtree.h: some cheesy indentation fix
7164         
7165 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7166
7167         * gtk/gtkinvisible.c (gtk_invisible_realize):
7168         Attach the style to the window so that the style it is not
7169         leaked when unrealizing the window.
7170
7171 2000-12-18  Havoc Pennington  <hp@redhat.com>
7172
7173         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7174         begin/end user action where appropriate
7175         (gtk_text_view_commit_handler): add begin/end user action
7176
7177         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7178         bracket interactive operations with begin/end user action pair.
7179         
7180         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7181         "interactive" arg from insert_text and delete_text signals.
7182         Add begin_user_action, end_user_action signals
7183         (gtk_text_buffer_begin_user_action): 
7184         (gtk_text_buffer_end_user_action): New functions to delimit 
7185         a user-visible action
7186
7187         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7188         signals.
7189         
7190 2000-12-18  Havoc Pennington  <hp@redhat.com>
7191
7192         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7193         was pretty non-working.
7194
7195         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7196         by passing the length to g_utf8_validate().
7197
7198 2000-12-16  Havoc Pennington  <hp@pobox.com>
7199
7200         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7201         Port to GObject, can go back in gdk-pixbuf after setting up 
7202         a gdk-pixbuf-marshal.h header over there.
7203
7204         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7205         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7206         args
7207         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7208         set
7209         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7210         here, do it when we create the buttons later
7211         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7212         (gtk_tree_view_map): paranoia checks that column->button is shown 
7213         and unmapped
7214         (gtk_tree_view_size_request): only request visible children.
7215         Move header size calculation in here, for cleanliness, and 
7216         to maintain invariants for child widgets if we eventually 
7217         let users set different children inside the buttons
7218         (gtk_tree_view_map_buttons): factor out code to map buttons,
7219         since it was being called several times
7220         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7221         windows instead of just moving them; their height may change 
7222         if we allow random widgets in there, or the theme changes.
7223         (gtk_tree_view_size_allocate): move button size allocation 
7224         above emitting the scroll signals, to ensure a sane state when we
7225         hit user code
7226         (gtk_tree_view_button_release): remove queue_resize after
7227         tree_view_set_size(), set_size() will handle any resize queuing
7228         that's needed
7229         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7230         draw_focus goo
7231         (gtk_tree_view_focus): use gtk_get_current_event() and
7232         gdk_event_get_state()
7233         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7234         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7235         semicolon
7236         (gtk_tree_view_create_button): show the button here
7237         (gtk_tree_view_button_clicked): actually emit the clicked signal
7238         on the column
7239         (_gtk_tree_view_set_size): return right away if the size is
7240         unchanged, as a cheesy optimization
7241         (gtk_tree_view_setup_model): rename set_model_realized to 
7242         setup_model to match the flag that indicates whether we've 
7243         called it
7244         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7245         exist, because set_scroll_adjustment does that and it shouldn't
7246         matter what order you call these in
7247         (gtk_tree_view_get_vadjustment): ditto
7248         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7249         for paranoia
7250         (gtk_tree_view_set_headers_visible): call
7251         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7252         (gtk_tree_view_append_column): clarify whether the return value
7253         is the count of columns before or after, and do the increment 
7254         separately from the return statement so you can tell from the code.
7255         (gtk_tree_view_remove_column): ditto
7256         (gtk_tree_view_insert_column): ditto
7257         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7258         outside the existing range, the docs say that outside-range
7259         columns are allowed, so we handle them as documented. (Presumably
7260         this allows a nice loop with column != NULL as test.)
7261         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7262         mean (left/right/center etc.).
7263         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7264         (gtk_tree_view_expand_row): add docs
7265         (gtk_tree_view_collapse_row): add docs
7266
7267         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7268         function to emit the clicked signal on a column
7269         
7270         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7271         state of an event
7272         (gdk_event_get_time): don't treat GDK_SCROLL 
7273         as a button event, remove default case from switch so gcc 
7274         will whine if we don't explicitly handle all event types
7275
7276         * gtk/gtktreeselection.h: added some FIXME 
7277         
7278         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7279         "columns" to "n_columns" and "column" to "columns" for clarity
7280
7281 2000-12-16  Havoc Pennington  <hp@pobox.com>
7282         
7283         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7284         stuff. This should make e.g. the delete key work again in the
7285         text widget...
7286         (gtk_text_iter_forward_cursor_positions): handle negative count
7287         (gtk_text_iter_backward_cursor_positions): handle negative count
7288         (gtk_text_iter_forward_word_ends): handle negative count
7289         (gtk_text_iter_backward_word_starts): handle negative count
7290
7291         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7292         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7293         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7294         GObject. No doubt will cause breakage.
7295
7296         * demos/gtk-demo/textview.c: remove hacks around
7297         non-GObject-ification of the text objects
7298
7299         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7300         the text tag
7301         
7302 2000-12-14  Havoc Pennington  <hp@pobox.com>
7303
7304         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7305         that we have Xrender
7306
7307 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7308
7309         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7310         Add two virtualized functions gdk_drawable_get_clip_region - to
7311         get the clip region when drawing.
7312         
7313         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7314         use invalidate_region.
7315
7316         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7317         region.
7318
7319         * acconfig.h configure.in: Check for Xft. For now, assume
7320         that if Xft is found, Pango was compiled with Xft support
7321         as well.
7322
7323         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7324         gdk_colormap_query_color().
7325         
7326         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7327         with Xft if appropriate.
7328
7329         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7330         a pangoxft context if we have XFT and the environment
7331         variable GD_USE_XFT is set.
7332         
7333         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7334         and also possibly an XftDraw structure.
7335
7336         * gtk/gtkfontsel.c: Handle the case where the font from the
7337         style doesn't match any of the fonts a bit better.
7338         
7339         * gtk/testgtk.c: Add tabs between directional segments for
7340         hebrew/arabic test. (Not really necessary, just a little
7341         prettier.)
7342
7343 2000-12-14  Havoc Pennington  <hp@redhat.com>
7344
7345         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7346         reading a file
7347
7348 2000-12-14  Havoc Pennington  <hp@redhat.com>
7349
7350         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7351         unused call to get_last_line()
7352
7353         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7354         here until boxed is working (and maybe after that - we should
7355         really not gratuitously break old code)
7356
7357         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7358         specific types for font_desc and tabs args, move them to
7359         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7360         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7361
7362         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7363         use GTK_TYPE_POINTER for signal signatures as a hack-around
7364
7365         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7366         PangoTabArray
7367
7368         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7369         make static
7370         (line_display_index_to_iter): make static
7371
7372         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7373         to marshal a string not a boxed
7374
7375         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
7376
7377         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
7378         since the UTF-8 isn't validated yet
7379
7380         * gtk/gtktextsegment.c (char_segment_check_func): don't require
7381         lines to end in '\n'
7382         
7383         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
7384         forward_to_delimiters, and grapheme boundaries
7385         (gtk_text_view_delete_from_cursor): properly handle non-newline
7386         delimiters, and grapheme boundaries
7387
7388         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
7389         to gtk_text_iter_forward_to_delimiters, and make it work properly
7390         if empty lines end with a character other than '\n'
7391
7392         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
7393         position
7394
7395 2000-12-15  Tor Lillqvist  <tml@iki.fi>
7396
7397         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
7398
7399         * gtk/gtk.def
7400         * gdk/gdk.def: Update.
7401
7402         * gdk/win32/gdkmain-win32.c
7403         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7404         gdkmain-win32.c here.
7405
7406         * gdk/win32/makefile.mingw.in (all): No need to make
7407         gdk-win32res.o here, the makefile one step up will call us to make
7408         it.
7409
7410         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7411         gdkkeys-win32.
7412
7413         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7414
7415         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7416         call to g_source_add().
7417
7418         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7419         leak. Thanks to Andreas Kemnade.
7420
7421 2000-12-13  Havoc Pennington  <hp@pobox.com>
7422
7423         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7424
7425         * gtk/gtktext*.[hc]: update accordingly
7426         
7427 2000-12-13  Havoc Pennington  <hp@pobox.com>
7428
7429         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7430         header file
7431
7432         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7433
7434 2000-12-13  Alex Larsson  <alexl@redhat.com>
7435
7436         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7437         Add support for ps2 intellimouse.
7438
7439         * gdkkeyboard-fb.c:
7440         Move shift-F1 repaint handling to xlate handler only.
7441         
7442         * docs/README.linux-fb:
7443         Add imps2 to docs.
7444         Document the new refresh keys.
7445         
7446 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7447
7448         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7449
7450         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7451         ::position and ::padding.
7452
7453         * gtk/gtkcontainer.c: make ::border_width an INT property.
7454
7455         * gtk/gtkpacker.c: make ::position an INT property.
7456
7457         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7458         guard against NULL h/v scrollbars, since this is used at construction
7459         time.
7460
7461         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7462         internal gtk_clist_constructor().
7463
7464         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7465         gtk_ctree_constructor().
7466
7467         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7468         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7469
7470         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7471         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7472
7473         * gtk/gtkwidget.[hc]:
7474         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7475         and gtk_widget_get().
7476         (gtk_widget_new): use g_object_new_valist().
7477         (gtk_widget_set): use g_object_set_valist().
7478
7479         * gtk/gtkobject.[hc]:
7480         removed gtk_object_arg_get_info(), gtk_object_getv(),
7481         gtk_object_query_args(), gtk_object_newv(),
7482         gtk_object_class_add_signals(),
7483         gtk_object_class_user_signal_new(),
7484         gtk_object_class_user_signal_newv(),
7485         gtk_object_arg_set(), gtk_object_arg_get(),
7486         gtk_object_args_collect(),
7487         gtk_object_default_construct(),
7488         gtk_object_constructed(),
7489         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7490         removed nsignals, signals and n_args members from GtkObjectClass.
7491         (gtk_object_new): use g_object_new_valist().
7492         (gtk_object_set): use g_object_set_valist().
7493         (gtk_object_get): use g_object_get_valist().
7494         
7495         * gtk/gtkcompat.h: define gtk_object_default_construct().
7496         
7497         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7498         g_object_new().
7499
7500         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7501         fucntions, cleaned up method assignments (make sure your structures
7502         are setup properly before calling out). removed all GTK_CONSTRUCTED
7503         hacks ;)
7504
7505 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7506
7507         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7508         off-by-one error in checks. (Dave Lambert)
7509
7510 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7511
7512         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7513         Don't free gdk_fb_keyboard twice.
7514
7515 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7516
7517         * gtk/testgtk.c:
7518         (create_tooltips): 
7519         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7520         use GObject swapped_signal:: properties instead.
7521
7522         * gtk/gtkcellrenderertoggle.c: 
7523         * gtk/gtkcellrenderertextpixbuf.c: 
7524         * gtk/gtkcellrenderertext.c: 
7525         * gtk/gtkcellrendererpixbuf.c: 
7526         * gtk/gtkcellrenderer.c:
7527         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7528         missing warnings for invalid property ids, install properties
7529         with g_object_class_install_property() now.
7530         
7531         * gtk/gtksignal.c:
7532         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7533         
7534 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7535         
7536         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7537         to determine if a window is the focus widget within
7538         its toplevel.
7539
7540         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7541         to be boolean.
7542
7543         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7544         of the case where the container CAN_FOCUS to here instead
7545         of having it in each individual move-the-focus place.
7546
7547         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7548         focusing to be geometric in a much more obvious sense. Arrowing
7549         around is still non-intuitive because it isn't perfect and
7550         because entries, etc, grab the arrow keys, but it at least
7551         usually will do what you expect now.
7552         
7553         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7554         file.
7555
7556         * gtk/gtknotebook.c: Change tabs to be a single item in
7557         the focus chain. Make movement of focus on tabs with arrow
7558         keys wrap around.
7559         
7560         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7561         CHECK_FIND_CHILD macro to give informative error messages
7562         instead of silent returns.
7563
7564         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7565         flag since we handle GdkReturn on the tabs.
7566
7567         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7568         windows rather than sending expose events directly.
7569
7570         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7571         definition for GtkNotebookPage into .c file, since it is private.
7572
7573         * gtk/testgtk.c (create_notebook): Add option for 
7574         testing borderless notebook.
7575
7576         * gtk/testgtk.c (page_switch): Removed egregious poking
7577         around in GTK+ internals.
7578
7579         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7580
7581         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7582         properly through gtk_clist_focus. Make the title headers a
7583         single item in the tab-focus chain, and make left-right wrap
7584         around.
7585
7586         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7587         focus method so that wrapping around works properly.
7588
7589         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7590         that is handled for the widget now. 
7591
7592 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7593
7594         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7595         widgets as TOPLEVEL.
7596
7597         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7598         TOPLEVEL widgets are containers.
7599
7600         * gtk/gtkinvisible.h: Remove useless include.
7601
7602 2000-12-11  Havoc Pennington  <hp@redhat.com>
7603
7604         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7605         Handle chopping off \r\n and 0x2029 in addition to \n before
7606         passing to PangoLayout
7607
7608         * gtk/gtkimcontextsimple.c
7609         (gtk_im_context_simple_get_preedit_string): 
7610         return an empty string if no match is pending
7611
7612         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7613         assertion that the returned preedit string was sane
7614
7615         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7616         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7617         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7618
7619 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7620
7621         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7622         Fix up finalizer to chain to its parent.
7623
7624 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7625
7626         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7627         Clearified the difference between the keyboard types. Wrote a note
7628         about the magic sysrq key to get out of raw mode.
7629
7630 2000-12-09  James Henstridge  <james@daa.com.au>
7631
7632         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7633         member to hold masks for detecting the start of a protocol packet.
7634         (mouse_devs): add packet start masks for ps2 and ms device types.
7635         Left the mask for fidmour blank, as I have no idea what it should
7636         be.
7637         (handle_mouse_io): skip bytes until we get to the start of a
7638         packet.  My Logitech mouse seems to be passing an extra NULL pad
7639         byte, and GPM does a similar thing here.
7640         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7641         this is the ms mouse driver.
7642         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7643         completely broken except for button1.  It was checking the wrong
7644         bit in the packet for the status of the right mouse button, and
7645         wrongly assuming right == button2 rather than 3.  I fixed that and
7646         also added support for middle button (button2).
7647
7648 2000-12-08  Havoc Pennington  <hp@redhat.com>
7649
7650         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7651         that cause a segfault on text insertion
7652
7653         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7654         warning
7655
7656         * gtk/gtktextiter.c (test_log_attrs): use
7657         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7658
7659         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7660         Get log attrs for a line, using a cache stored on the buffer
7661         
7662         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7663         reported by Jeff Franks
7664
7665 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7666
7667         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7668         /dev/ttyS0 -> /dev/mouse
7669
7670 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7671
7672         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7673         Added dummy gdk_fontset_load.
7674
7675 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7676
7677         * docs/README.linux-fb:
7678         * docs/Makefile.am:
7679         Initial GtkFB docs.
7680         
7681         * gdk/linux-fb/Makefile.am:
7682         Define GDK_DATA_PREFIX.
7683
7684         * gdk/linux-fb/gdkmain-fb.c:
7685         Fix typo.
7686         Change default display to /dev/fb0.
7687
7688         * gdk/linux-fb/gdkpango-fb.c:
7689         Add $(prefix)/share/fonts/ to font path.
7690         
7691 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7692
7693         * gdk/linux-fb/gdkkeyboard-fb.c:
7694         New file containing the abstracted keyboard driver. Most code
7695         taken from gdkinput-ps2.c
7696
7697         * gdk/linux-fb/gdkinput-ps2.c:
7698         Removed file.
7699         
7700         * gdk/linux-fb/Makefile.am:
7701         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7702
7703         * gdk/linux-fb/gdkcolor-fb.c:
7704         display->fb was renamed to display->fb_fd.
7705
7706         * gdk/linux-fb/gdkcursor-fb.c:
7707         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7708
7709         * gdk/linux-fb/gdkinput.c:
7710         Moved gdk_input_init here from gdkinput-ps2.c
7711
7712         * gdk/linux-fb/gdkmain-fb.c:
7713         display->fb was renamed to display->fb_fd.
7714         Now the tty and the console is opened here instead
7715         of in the keyboard driver. Also check GDK_VT to see what
7716         tty to open.
7717         Move gdk_beep () here from gdkinput-ps2.c
7718         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7719
7720         * gdk/linux-fb/gdkmouse-fb.c:
7721         Add header.
7722         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7723         Return correct keyboard modifiers.
7724         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7725
7726         * gdk/linux-fb/gdkprivate-fb.h:
7727         Add tty and vt info to display.
7728         Add orignal modeinfo storage to display
7729         Update global functions
7730
7731         * gdk/linux-fb/gdkwindow-fb.c:
7732         Added gdk_fb_window_find_focus().
7733         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7734
7735 2000-12-07  Havoc Pennington  <hp@pobox.com>
7736
7737         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7738         function, noticed by Alex
7739
7740 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7741
7742         * configure.in: Detect freetype properly
7743
7744         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7745         above.
7746
7747 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7748
7749         * gdk/linux-fb/Makefile.am:
7750         Add gdkmouse-fb.c
7751         
7752         * gdk/linux-fb/gdkmouse-fb.c:
7753         New file. Abstracted the mouse drivers a bit.
7754
7755         * gdk/linux-fb/gdkcursor-fb.c:
7756         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7757
7758         * gdk/linux-fb/gdkinput-ps2.c:
7759         Removed old mouse handling code. Moved cursor handling code
7760         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7761         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7762         gdk_mouse_get_info.
7763
7764         * gdk/linux-fb/gdkmain-fb.c:
7765         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7766
7767         * gdk/linux-fb/gdkprivate-fb.h:
7768         Removed public gdk_fb_find_common_ancestor, added and renamed
7769         functions for the new mouse handling code.
7770
7771         * gdk/linux-fb/gdkwindow-fb.c:
7772         Moved gdk_fb_window_send_crossing_events here. added global
7773         variable gdk_fb_window_containing_pointer. made
7774         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7775         renamed to gdk_mouse_get_info.
7776
7777 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7778
7779         * gdk/linux-fb/gdkevents-fb.c:
7780         Update to match latest gmain/gsource changes.
7781
7782         * gdk/linux-fb/gdkinput-ps2.c:
7783         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7784         it links. Will be implemented later.
7785
7786 2000-12-03  Havoc Pennington  <hp@pobox.com>
7787
7788         * gdk/Makefile.am: add gdkkeys.[hc]
7789
7790         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7791         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7792
7793         * acconfig.h, configure.in: add checks and command line options
7794         for XKB
7795
7796         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7797         
7798         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7799         and group in the key event
7800
7801         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7802         field with the low-level hardware key code, and a group
7803         field with the keyboard group
7804
7805         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7806         and declare a couple globals used for keymap handling
7807         
7808         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7809         hold down Shift-Control and type a hex number to get a Unicode 
7810         character corresponding to the hex number
7811         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7812         (return bytes not chars)
7813
7814 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7815
7816         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7817         to avoid waste on 64-bit platforms.
7818
7819 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7820
7821         * INSTALL: Fix link to PNG home, remove reference
7822         to fribidi.
7823
7824         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7825         
7826         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7827         tested.)
7828
7829         * gtk/gtkcheckmenuitem.c: Permanently turn on
7830         always_show_toggle.
7831
7832         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7833         be NULL. (Vladimir Klebanov, #26545)
7834
7835         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7836         some signed/unsigned comparison problems. (#6510,
7837         David Kaelbling)
7838
7839         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7840         return type to boolean (Oskar Liljeblad, #18648)
7841
7842 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7843
7844         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7845         Remove bogus colormap setting.
7846
7847 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7848
7849         * gdk/linux-fb/gdkcolor-fb.c:
7850         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7851
7852         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7853         Must set colormap.
7854         
7855 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7856
7857         * docs/tutorial/gtk-tut.sgml: DND updates
7858
7859 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7860
7861         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7862         Remove old debug g_warning().
7863         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7864         or an implementation, just pass the implementation to draw_drawable_2.
7865         
7866         * gdk/linux-fb/gdkprivate-fb.h:
7867         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7868
7869         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7870         clear and invalidate area when window is destroyed.
7871         (send_map_events): Remove old commented out code.
7872
7873 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7874
7875         * gdk/linux-fb/gdkpango-fb.c:
7876         Use italic instead of oblique in font aliases.
7877         
7878         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7879         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7880         other unsupported functions.
7881
7882 2000-12-04  Havoc Pennington  <hp@redhat.com>
7883
7884         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7885
7886         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7887
7888         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7889
7890         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7891         hack to avoid infinite loops (synthetic expose event) - 
7892         Owen has more appropriate fixes in a branch he'll check in later.
7893
7894         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7895         separator, CR, and CRLF as line ends
7896
7897         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7898         into lines using pango_find_paragraph_boundary(); other bits of
7899         the widget are still going to be broken if the boundary isn't '\n'
7900         though
7901
7902 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7903
7904         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7905         multiply.
7906
7907         * gdk/linux-fb/gdkpango-fb.c:
7908         Copied some 26.6 scaling macros from pango to clean up the rounding.
7909         (pango_fb_font_get_glyph_info): Correct sign on x value.
7910
7911         * gdk/linux-fb/gdkprivate-fb.h:
7912         Removed unreferenced external functions.
7913
7914         * modules/linux-fb/Makefile.am: Use ` instead of '.
7915
7916         * modules/linux-fb/basic.c:
7917         Remove dead code. In particular the dummy lang engine which broke all
7918         pango layouts in GtkFB. Don't include tables-big.i anymore.
7919
7920         * modules/linux-fb/tables-big.i:
7921         Upgrade to latest version from pango. Left for reference, basic_ranges
7922         moved to basic.c.
7923         
7924 2000-12-04  Havoc Pennington  <hp@redhat.com>
7925
7926         Fix bugs Alex found:
7927         
7928         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7929         to "draw"
7930
7931         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7932
7933         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7934
7935         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7936         implementation in here, apparently the expose() implementation was
7937         dead code.
7938
7939 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7940
7941         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7942         Return positive descent.
7943
7944 2000-12-02  Havoc Pennington  <hp@pobox.com>
7945
7946         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7947         method and signal
7948         
7949         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7950         calls gdk_window_process_updates() to push the exposes through
7951         (gtk_widget_class_init): No more draw signal, no
7952         gtk_widget_real_draw()  
7953         
7954         * gtk/gtkbin.c (gtk_bin_draw): remove
7955
7956         * gtk/gtkbox.c (gtk_box_draw): remove
7957
7958         * gtk/gtkbutton.c (gtk_button_draw): remove
7959
7960         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7961
7962         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7963
7964         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7965
7966         * gtk/gtkclist.c (gtk_clist_draw): remove
7967
7968         * gtk/gtkentry.c (gtk_entry_draw): remove
7969
7970         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7971
7972         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7973
7974         * gtk/gtkframe.c (gtk_frame_draw): remove
7975
7976         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7977
7978         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7979
7980         * gtk/gtklayout.c (gtk_layout_draw): remove
7981
7982         * gtk/gtklist.c (gtk_list_draw): remove
7983
7984         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7985
7986         * gtk/gtkmenu.c (gtk_menu_draw): remove
7987
7988         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7989
7990         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7991
7992         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7993
7994         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7995
7996         * gtk/gtkpacker.c (gtk_packer_draw): remove
7997
7998         * gtk/gtkrange.c (gtk_range_draw): remove
7999
8000         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8001
8002         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8003
8004         * gtk/gtktable.c (gtk_table_draw): remove
8005
8006         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8007
8008         * gtk/gtktext.c (gtk_text_draw): remove
8009
8010         * gtk/gtktextview.c (gtk_text_view_draw): remove
8011
8012         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8013
8014         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8015
8016         * gtk/gtktree.c (gtk_tree_draw): remove
8017
8018         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8019
8020         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8021
8022         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8023
8024         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8025
8026         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8027
8028         * gtk/gtkwindow.c (gtk_window_draw): remove
8029
8030 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8031
8032         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8033         a GtkToggleButton is both insensitive and active, it was being
8034         drawn by the GtkButton draw handler which doesn't check the
8035         state. Now it's calling gtk_toggle_button_paint instead.
8036         
8037 2000-12-01  Havoc Pennington  <hp@redhat.com>
8038
8039         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8040         dangling pointers to the appearance attributes from the 
8041         line display
8042
8043         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8044         width/height to mean "full width/height of drawable"
8045
8046         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8047         click to select word/line
8048         
8049         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8050         when getting log attrs. Get a slice, so that pixmaps and stuff
8051         are properly handled.
8052
8053         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8054         paste into the selection (replaces selection now, previously
8055         crashed or added to selection). Reveals longstanding btree bug -
8056         select multiple lines, middle-click on the selection, boom. This
8057         isn't related to my changes though.
8058
8059         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8060         PangoLogAttrs changes
8061         (gtk_entry_move_backward_word): ditto
8062
8063         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8064         functions return bool whether the iter moved onto a
8065         dereferenceable position.
8066  
8067         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8068         functions for motion in terms of display lines.
8069
8070         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8071         get the buffer a mark is inside
8072         
8073 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8074
8075         * gdk/linux-fb/Makefile.am:
8076         * modules/linux-fb/Makefile.am:
8077         Freetype 2 final uses freetype-config
8078
8079         * gdk/linux-fb/gdkpango-fb.c:
8080         Upgrade to use Freetype 2 final.
8081         More flexible support for font aliases, this also fixes a bug with
8082         GtkFontSelector, as the aliases must be visible in the font/family list,
8083         or GtkFontSelector reads uninitialized memory.
8084
8085 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8086
8087         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8088         XGetIMValues to properly terminate variable argument list, and do
8089         NULL return check for ic_values and xim_styles.
8090
8091         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8092         Restore preedit state after XmbResetIC().
8093         
8094         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8095         XvaCreateNestedList() should take XvaNestedList, but not
8096         XvaNestedList*.
8097
8098         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8099         preedit_draw_callback, preedit_caret_callback): Match
8100         "preedit-changed" signal name to "preedit_changed" to be
8101         consistent to the spec.
8102
8103         * gtk/gtkimcontextsimple.c (check_table):
8104         Match "preedit-changed" to "preedit_changed" to be consistent
8105         to the spec.
8106
8107 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8108
8109         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8110         gc->clip_region == NULL>
8111
8112 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8113
8114         Changes by Hans Breuer:
8115         
8116         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8117         Dont't use negative width and height as max_hints. This fixes
8118         Owen's recent testgtk changes for win32.
8119
8120         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8121         gdk_win32_hdc_release): These are exported and may be called with
8122         other drawable types than our GdkDrawableImplWin32 (?).
8123
8124         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8125         so always #define USE_BACKING_STORE.
8126
8127         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8128         of printf for debugging output.
8129
8130         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8131         
8132         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8133
8134         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8135         declaration.
8136
8137         * gtk/gtktexttypes.h: Ditto.
8138
8139         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8140         (GDK_VoidSymbol) also if in case of arg check failure.
8141
8142         * gtk/gtkimcontextsimple.c
8143         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8144         position to the pointer, but to the variable it points to.
8145
8146         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8147
8148         * gtk/gtk.def: Updates.
8149
8150 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8151
8152         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8153         GTK_TYPE_TREE_MODEL.
8154
8155 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8156
8157         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8158         Set the size of the font from the description.
8159         (gdk_text_width): Gross hack that calculates the width
8160         of text by text_length * size/2. This is necessary because
8161         GtkLabel does some ugly gtk_string_width call to calculate
8162         an good size.
8163         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8164
8165 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8166
8167         * docs/tutorial/gtk-tut.sgml: DND updates
8168
8169 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8170
8171         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8172         If you pass width or height == 0 to gdk_window_clear_area they
8173         should be calculated from the window size.
8174
8175 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8176
8177         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8178         a grab, but no grab-cursor, use the cursor from the grabbed
8179         window. (gdk_fb_window_send_crossing_events): Send normal
8180         enter/leave notifications if grab and owner_events == TRUE.
8181
8182 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8183
8184         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8185         Do implicit button grabs, even if the window doesn't
8186         want the event.
8187         (gdk_fb_window_send_crossing_events): If there is a
8188         grab, only the grabbed window gets normal enter/leave
8189         notifications. On ungrab go from grabbed window to current.
8190         Don't send any notification to b when propagating from c -> b.
8191         If setting a grab on window, don't set prev_window.
8192         (handle_mouse_input): Send enter/leave events to the window the
8193         mouse is over, not the grabbed one.
8194         
8195 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8196
8197         * gdk/gdkregion-generic.c: Zap warning.
8198         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8199         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8200
8201 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8202
8203         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8204         The cursor should be hidden if it is part of either the
8205         source or destination region. Not only if it is in both.
8206         (gdk_window_set_transient_for): Silence warnings.
8207
8208 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8209
8210         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8211         The default mode in X is Pie Arcs, therefore that is
8212         what Gtk+ uses.
8213
8214 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8215
8216         * gdk/linux-fb/gdkinput-ps2.c:
8217         Implement correct EnterNotify/LeaveNotify:
8218         (gdk_fb_window_send_crossing_events): New function that sends
8219         all GdkCrossingEvents from the last mouse-window to the specified
8220         destination.
8221         (gdk_fb_window_visibility_crossing): Removed function.
8222         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8223         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8224         instead of gdk_window_get_pointer() for better readability.
8225
8226         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8227         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8228
8229         * gdk/linux-fb/gdkprivate-fb.h:
8230         removed gdk_fb_window_visibility_crossing, added
8231         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8232
8233         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8234         New function that finds the least common ancestor of two windows.
8235         (gdk_window_show, gdk_window_hide):
8236         Use gdk_fb_window_send_crossing_events.
8237         (gdk_fb_window_move_resize): Send configure events to toplevel
8238         windows. Use gdk_fb_window_send_crossing_events.
8239
8240 2000-11-27  Havoc Pennington  <hp@redhat.com>
8241
8242         * gtk/gtkprivate.h (enum): Remove a trailing comma
8243
8244 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8245
8246         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8247         the "changed" callback of the adjustment.  We need to redraw the
8248         spin button's arrows when the adjustment's range changes.
8249         (adjustment_changed_cb): Draw the arrows.
8250         (gtk_spin_button_value_changed): Draw the arrows.
8251
8252 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8253
8254         * gdk/linux-fb/gdkselection-fb.c:
8255         Initial selection implementation.
8256
8257         * gtk/gtkselection.c:
8258         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8259         requestor in gtk_selection_request.
8260         
8261         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8262         Added gdk_selection_property atom.
8263
8264         * gdk/linux-fb/gdkprivate-fb.h:
8265         Export _gdk_selection_window_destroyed.
8266         Removed mask_off_x/y from GdkCursorPrivateFB.
8267         Removed hbearing, added top, left to PangoFBGlyphInfo.
8268
8269         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8270         Call _gdk_selection_window_destroyed
8271         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8272         the root window has been created.
8273         (static_dx_hack, static_dy_hack, compare_draw_rects,
8274         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8275         in region. They are already sorted. Instead just traverse them in
8276         reverse if draw_direction < 0.
8277         
8278         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8279         Double-clicks must be sent after the normal button_press.
8280         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8281         
8282         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8283         Pass _gdk_fb_screen_gc instead of NULL.
8284
8285         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8286         Initialize gdk_selection_property.
8287         (gdk_event_make): Remove unused code.
8288
8289         * gdk/linux-fb/gdkcursor-fb.c:
8290         Make the pixmap for the cursor the same size as the mask. Also remove
8291         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8292         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8293         Now the whole cursor is visible.
8294
8295         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8296         Fix bug where xdest+height instead of ydest+height was used
8297         to calculate if the source and dest overlapped. This fixes the
8298         redraw bug when the main window in testgtk was scrolled when
8299         partially covered by a tall window.
8300         Copy rectangles in region in order depending on draw_direction.
8301         Also moved the draw_direction flipping of start_y and end_y into
8302         the gc functions, as this might not be what all of them want.
8303         (gdk_fb_draw_lines): Support dashed lines.
8304         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8305         so that the text is positioned correctly (was 1 pixel high).
8306
8307         gdk/linux-fb/gdkgc-fb.c:
8308         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8309         all lines were drawn a pixel to short. Also checked the default of
8310         the rest of the values, and they're the same as X now.
8311
8312         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8313         Clean up pixel positioning of the glyphs. Just use bgy->top and
8314         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8315         to all divisions to get correct rounding behaviour.
8316
8317         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8318         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8319         Moved start_y/end_y flip into draw_drawable implementations.
8320         Flip also x rendering when draw_direction < 0.
8321         Remove unneccesary multiply with draw_direction.
8322
8323 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8324
8325         * docs/tutorial/gtk-tut.sgml:
8326           - get rid of gtk_toggle_button_toggled FUD
8327           - start DND section - needs work - based on:
8328                 http://wolfpack.twu.net/docs/gtkdnd/
8329
8330 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8331
8332         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8333         Correct calculation of font metrics. Now GtkEntrys have sane
8334         size.
8335
8336 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8337
8338         * gdk/gdktypes.h:
8339         Add new type GdkSpan
8340         
8341         * docs/reference/gdk/gdk-sections.txt,
8342         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8343         gdk/gdkregion.h:
8344         Implement and document gdk_region_spans_intersect_foreach.
8345
8346         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8347         Add new file gdkrender-fb.c which contains all core
8348         rendering code.
8349         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8350         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8351         (optimized rectangle fillers).
8352
8353         * gdk/linux-fb/gdkdrawable-fb2.c:
8354         Move all rendering code to gdkrender-fb.c.
8355         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8356         Use the new span intersection functions in gdk_fb_fill_spans.
8357         gdk_fb_draw_rectangle() clips filled rectangles and calls
8358         gc->fill_rectangle with the result.
8359         gdk_fb_fill_spans() gets extra argument "sorted".
8360
8361         * gdk/linux-fb/gdkevents-fb.c:
8362         Remove unused includes and defines.
8363         New function gdk_fb_get_time() to get correct time for events.
8364
8365         * gdk/linux-fb/gdkinput-ps2.c:
8366         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8367         Make sure to set the time of all events.
8368
8369         * gdk/linux-fb/gdkmain-fb.c:
8370         Use gdk_fb_get_time ().
8371
8372         * gdk/linux-fb/gdkprivate-fb.h:
8373         New virtual GC calls: fill_span & fill_rectangle.
8374         Export gdk_fb_get_time().
8375         gdk_fb_fill_spans() gets extra argument "sorted".
8376
8377         * gdk/linux-fb/mi*.c:
8378         Use GdkSpan instead of GdkRectangle.
8379         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
8380         from XFree 4 source)
8381         
8382 2000-11-22    <jrb@redhat.com>
8383
8384         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
8385         reversing the order in an if statement will do.  Doing so managed
8386         to make the treemodelsort half work.  Other half will follow after
8387         I get the insert function fully fixed.
8388
8389 2000-11-21  Elliot Lee  <sopwith@redhat.com>
8390         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
8391         more than 2 bits. Besides, I need to implement an evil hack. :)
8392
8393 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
8394
8395         * docs/tutorial/gtk-tut.sgml: minor corrections
8396
8397 2000-11-20  Jonathan Blandford <jrb@redhat.com>
8398         * gtk/gtktreemodelsort.h: Add convertion functions to let you
8399           convert to and from relative path's and iters.
8400
8401         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
8402           testing sorting functions a bit better.  Currently broken -- will
8403           fix in morning.
8404
8405 2000-11-20  Havoc Pennington  <hp@redhat.com>
8406
8407         * gtk/gtkwidget.c: Documented a bunch of functions in here
8408         (gtk_widget_realize): Warn if you try to realize
8409         a widget with no parent that isn't a toplevel
8410         (gtk_widget_intersect): return a gboolean
8411
8412 2000-11-20  Havoc Pennington  <hp@redhat.com>
8413
8414         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8415         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8416         scrolling to be implemented in GDK to finish. Also, right now
8417         we just size_allocate all children on every layout change,
8418         which is pretty lame. Test commented out of testtext.c, 
8419         until it works better.
8420
8421 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8422
8423         * gdk/linux-fb/gdkdrawable-fb2.c:
8424         Removed unused arguments from gdk_fb_drawable_get_pixel().
8425
8426         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8427         Renamed fidur specific mouse packet data in MouseDevice to
8428         generic. Used it in ps2 mouse handling code to avoid blocking
8429         reads.
8430
8431 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8432
8433         * demos/gtk-demo/main.c: Changed to have the list become
8434         non-italic when the demo window is destroyed through an external
8435         event (like a close button).  Doing so found three bugs in the
8436         widget.
8437
8438         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8439
8440         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8441         we actually set the cell.
8442
8443         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8444
8445         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8446         free a leaked path.  Thanks memprof.
8447
8448 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8449
8450         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8451         off-by-one error when destroying allocated segments
8452         on failure. (Elliot)
8453
8454 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8455
8456         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8457         memleaks found by Evan Martin.
8458
8459 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8460
8461         * Released 1.3.2
8462         
8463         * NEWS: Updates for 1.3.2
8464
8465 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8466
8467         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8468         but in general for window system specific events.
8469
8470         * gtk/gtk.def
8471         * gtk/makefile.mingw.in
8472         * gtk/makefile.msc.in: Update.
8473         
8474         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8475
8476 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8477
8478         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8479         distribute gtk.immodules.
8480
8481         * gtk/Makefile.am (install-data-local): Don't install the
8482         gtk.immodules file created for the uninstalled modules;
8483         instead run gtk-query-immodules after install
8484
8485 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8486
8487         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8488         -rpath to the right install location.
8489
8490         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8491         -export-dynamic.
8492
8493         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8494         properly.
8495
8496 2000-11-15  Havoc Pennington  <hp@pobox.com>
8497
8498         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8499         patch from Mikael Hermansson to temporarily stop blinking while
8500         the user is using the keyboard to type or navigate. 
8501
8502         Also, when blinking, stay on for longer than we stay off. Also,
8503         return from start_cursor_blink if !cursor_visible, to save
8504         checking that flag all over the place before we call
8505         start_cursor_blink.
8506
8507 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8508
8509         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8510         only contain a "fontset" line, which is now ignored.
8511
8512         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8513         double-click-to-select-word work.
8514         
8515 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8516
8517         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8518         Don't move back one char when we are actually at the end of the 
8519         paragraph.
8520
8521 2000-11-15  Robert Brady  <robert@suse.co.uk>
8522
8523         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8524         'o' < 'p'.
8525         
8526         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8527         bind_textdomain_codeset.
8528
8529         (gtk_init_check): Make the warning about translating default:LTR
8530         sterner.
8531         
8532 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8533
8534         * **/Makefile.am : remove unecessary rules for win32-specific
8535         config-substituted targets. If you want these rules, use
8536         --enable-maintainer-mode (called automatically by autogen.sh).
8537         Stops a lot of unneccessary make-time warnings.
8538
8539         * gtk/gtktext{layout,display}.c: Factor in total width as
8540         well as screen when figuring alignment for word-wrap as well as
8541         no wrap; this is necessary to handle lines that cannot be wrapped
8542         at all.
8543
8544 2000-11-15  Havoc Pennington  <hp@redhat.com>
8545
8546         * gtk/testtext.c: Implement essential color cycling feature
8547
8548 2000-11-15  Havoc Pennington  <hp@redhat.com>
8549
8550         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8551         when we invalidate the main window.
8552
8553         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8554         GtkTextView will now invalidate the side windows for us when text
8555         changes.
8556
8557 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8558
8559         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8560         unconditionally, since we may need to update the horizontal
8561         scrollbars even if the height didn't change.
8562
8563         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8564         the extra attrs, since some of them affect size.
8565
8566         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8567         x_offset correctly.
8568
8569 2000-11-15  Havoc Pennington  <hp@redhat.com>
8570
8571         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8572         don't move the first line out into the margin, instead move the
8573         whole paragraph in order to make space for the first line within 
8574         the margin
8575
8576 2000-11-15  Havoc Pennington  <hp@redhat.com>
8577
8578         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8579         xoffset in addition to yoffset, so horizontal scrolling doesn't
8580         break redraws
8581
8582 2000-11-15  Havoc Pennington  <hp@redhat.com>
8583
8584         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8585         from the cursor
8586         (render_layout_line): fix reversed test that caused weird
8587         underlines to get drawn
8588
8589 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8590
8591         * gdk/linux-fb/gdkprivate-fb.h:
8592         Fix debug macros.
8593         
8594 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8595
8596         * gdk/linux-fb/gdkprivate-fb.h:
8597         Added virtual functions set_pixel, get_color,
8598         fill_span and draw_drawable to the GC.
8599         Added global _gdk_fb_screen_gc to use instead of
8600         NULL when drawing to the screen.
8601         Added _gdk_fb_gc_calc_state() prototype.
8602
8603         * gdk/linux-fb/gdkgc-fb.c:
8604         Call _gdk_fb_gc_calc_state() on any gc state change.
8605
8606         * gdk/linux-fb/gdkglobals-fb.c:
8607         Add _gdk_fb_screen_gc
8608                 
8609         * gdk/linux-fb/gdkdrawable-fb2.c:
8610         _gdk_fb_gc_calc_state() calculates best functions
8611         for the GC state and depth.
8612         Moved bpp specialized code to separate functions.
8613         Added optimized 24 bpp AA draw_drawable.
8614
8615         * gdk/linux-fb/gdkevents-fb.c:
8616         Silence gcc warning.
8617
8618         * gdk/linux-fb/gdkimage-fb.c:
8619         Use _gdk_fb_screen_gc
8620
8621         * gdk/linux-fb/gdkwindow-fb.c:
8622         Init and use _gdk_fb_screen_gc
8623
8624         * gdk/linux-fb/mitypes.h:
8625         Remove unused types.
8626
8627 2000-11-14  Havoc Pennington  <hp@pobox.com>
8628
8629         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8630         to pixels
8631
8632 2000-11-14  Havoc Pennington  <hp@pobox.com>
8633
8634         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8635
8636         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8637         unknown char, no real reason we were using a variable. 
8638         Remove gtk_text_unknown_char variable. Fix all the text widget
8639         files accordingly.
8640
8641         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8642         since the Unicode spec seems to prefer that character for our
8643         purposes.
8644
8645 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8646
8647         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8648         value of g_getenv() isn't freeable, so g_strdup it.
8649
8650         * modules/input/inuktitut.c: Inuktitut input method.
8651
8652         * modules/input/Makefile.am: Build this.
8653         
8654 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8655
8656         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8657         of gtk programs.
8658
8659 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8660
8661         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8662         reversed > that was causing Home to go to end of previous line.
8663
8664         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8665         modified-keypresses (leave for bindings.)
8666
8667         * modules/input/Makefile.am: Remove useless -export-dynamic
8668         from module LDFLAGS.
8669
8670 2000-11-14  Havoc Pennington  <hp@redhat.com>
8671
8672         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8673         higher.
8674
8675         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8676         account. Also, render rise, underline, background, etc. for
8677         pixbufs as well as text. Also, draw underlines one pixel higher.
8678
8679         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8680         PangoAttribute for the rise, so it gets drawn properly. Also,
8681         add the GtkTextAppearance attribute for pixbuf/widget segments
8682         as well; we should go ahead and have rise, underline, background,
8683         stipple work for those
8684
8685         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8686         Pango
8687
8688 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8689
8690         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8691
8692         * gtk/gtk.def: Update.
8693
8694         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8695         included.
8696         (gtk_rc_get_im_module_file): Use run-time installation directory
8697         on Win32.
8698
8699         * gdk/win32/rc/gdk.rc: Remove.
8700         * gdk/win32/rc/gdk.rc.in: New file.
8701         * gdk/win32/rc/Makefile.am: New file
8702         * gdk/win32/Makefile.am: Corresponding changes.
8703
8704         * gtk/gtk.rc: Remove.
8705         * gtk/gtk-win32.rc.in: New file.
8706         * gtk/Makefile.am: Corresponding changes.
8707
8708         * configure.in: Corresponding changes.
8709
8710         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8711         has a built gtkcompat.h. Developers using CVS code on Win32 can
8712         hand-edit it from gtkcompat.h.in.
8713
8714         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8715         gtkcompat.h from gtkcompat.h.win32.
8716
8717 2000-11-14  Havoc Pennington  <hp@redhat.com>
8718
8719         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8720         to default to GDK_ACTION_MOVE if the drag is within a single
8721         widget. Defaults to GDK_ACTION_COPY between widgets.
8722
8723 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8724
8725         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8726
8727         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8728
8729         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8730         srcdir != builddir
8731
8732         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8733
8734         * configure.in (GTK_VERSION): Up to 1.3.2
8735
8736         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8737         gtkimcontextxim.h
8738
8739         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8740         missing doc comment.
8741
8742 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8743
8744         * modules/linux-fb/basic.c:
8745         Use the glib iconv wrappers.
8746
8747 2000-11-13  Havoc Pennington  <hp@pobox.com>
8748
8749         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8750         still more bugs.
8751
8752         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8753         scroll the GdkWindows before realization.
8754
8755 2000-11-13  Havoc Pennington  <hp@redhat.com>
8756
8757         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8758         where GC didn't always get updated properly
8759
8760         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8761         of fonts instead of setting the entire font
8762
8763         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8764         setting entire font
8765
8766         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8767
8768         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8769         a bunch of individually-settable font attributes. You can still 
8770         use the "font" and "font_desc" args, they just set all the font
8771         attributes at once.
8772
8773 2000-11-13 Elliot Lee <sopwith@redhat.com>
8774
8775         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8776
8777 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8778
8779         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8780         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8781
8782         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8783         work better.
8784
8785 2000-11-13  Havoc Pennington  <hp@redhat.com>
8786
8787         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8788         the module file.
8789
8790         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8791         dest->language
8792
8793         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8794         settings
8795
8796         * gtk/gtktextview.c: Implement object args and setters/getters for
8797         all the aspects of the GtkTextAttributes that are not set from
8798         GtkWidget attributes. This is spacing, justification, margins,
8799         etc.
8800
8801         (gtk_text_view_set_arg)
8802         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8803         args
8804         (gtk_text_view_class_init): Add args for justify, left_margin,
8805         right_margin, indent, and tabs
8806         
8807
8808         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8809         attribute properly
8810
8811         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8812         replace with indent attribute
8813
8814         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8815         PANGO_SCALE
8816
8817         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8818         rearranging code to do that
8819         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8820         i.e. don't subtract the top_margin first, just to keep
8821         all margin-futzing in one place.
8822
8823         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8824
8825         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8826         special case of last line, Pango now handles this itself.
8827         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8828         Y coordinate
8829         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8830         (find_display_line_above): wasn't moving the byte index as it
8831         iterated over lines, so always returned byte 0. Also, port to use
8832         PangoLayoutIter.
8833         (find_display_line_below): same problem as
8834         find_display_line_above. Also, port to use PangoLayoutIter.
8835
8836 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8837
8838         * gdk/linux-fb/*.[ch]:
8839         Massive reindent to gtk+ standard. My hands hurt.
8840
8841         * gdk/linux-fb/gdkcolor-fb.c:
8842         Move GdkColorPrivateFB from inherited to windowing_data
8843
8844         * gdk/linux-fb/gdkcursor-fb.c:
8845         _gdk_cursor_new_from_pixmap made static
8846
8847         * gdk/linux-fb/gdkdnd-fb.c:
8848         GdkDragContextPrivate moved to windowing_data
8849
8850         * gdk/linux-fb/gdkdrawable-fb2.c:
8851         Removed endian.h, use glib endianness macros instead
8852         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8853         and GDK_DRAWABLE_IMPL_FBDATA
8854
8855         * gdk/linux-fb/gdkfont-fb.c:
8856         Add empty gdk_font_load(). Needed for linking of Gtk+.
8857
8858         * gdk/linux-fb/gdkimage-fb.c:
8859         Removed endian.h, use glib endianness macros instead
8860         Moved GdkImagePrivateFB to windowing_data
8861         gdk_image_new_bitmap didn't always allocate enough
8862         memory.
8863
8864         * gdk/linux-fb/gdkinput-ps2.c:
8865         Added semi-working support for MS serial mice.
8866
8867         * gdk/linux-fb/gdkprivate-fb.h:
8868         s/GdkWindowPrivate/GdkWindowObject/
8869         Removed GdkWindowPrivate typedef
8870         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8871         Removed GDK_DRAWABLE_P
8872         Move GdkColorPrivateFB from inherited to windowing_data
8873         Moved GdkImagePrivateFB to windowing_data
8874
8875         * gdk/linux-fb/gdkvisual-fb.c:
8876         Removed some unused debug code.
8877
8878         * gdk/linux-fb/gdkwindow-fb.c:
8879         Use stock cursors instead of including X headers.
8880         s/GdkWindowPrivate/GdkWindowObject/
8881
8882         * gdk/linux-fb/mitypes.h:
8883         Removed unused types.
8884
8885         * modules/linux-fb/basic.c:
8886         Use the pango fribidi wrappers.
8887
8888 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8889
8890         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8891         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8892         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8893         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8894         GEqualFunc where applicable.
8895         
8896         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8897         pango_font_description_equal as changed in pango.
8898         
8899         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8900
8901         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8902
8903         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8904
8905         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8906
8907         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8908
8909         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8910
8911         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8912         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8913
8914         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8915         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8916
8917 2000-11-12  Havoc Pennington  <hp@pobox.com>
8918
8919         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8920         dir to datadir/gtk+-2.0/demo
8921
8922         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8923         sorts of text widget and Pango font bugs. Urgh.
8924
8925         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8926
8927         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8928         tree that you should double click to see the demo. Fix 
8929         types of variables to reflect changed return values from 
8930         GtkTreeStore and GtkTreeViewColumn constructors.
8931
8932         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8933         newly-created buffer to prepare for GObject semantics
8934
8935         * gtk/testtext.c: don't leak the buffer with GObject semantics
8936
8937         * gtk/testtextbuffer.c: ditto
8938         
8939 2000-11-12  Havoc Pennington  <hp@pobox.com>
8940
8941         Rename this testgtk to gtk-demo to avoid confusion, and 
8942         install it so people can use it as a supplement to 
8943         the documentation.
8944         
8945         * demos/gtk-demo: Moved from demos/testgtk
8946
8947         * demos/testgtk: Removed
8948
8949         * configure.in: make Makefile in gtk-demo
8950         
8951         * demos/gtk-demo/Makefile.am: Install sample source to 
8952         datadir/gtk-demo (maybe there's a better place?), and 
8953         rename the binary to gtk-demo
8954         
8955         * demos/gtk-demo/main.c (load_file): Load installed sample
8956         source if source isn't found in pwd.
8957
8958 2000-11-09  Havoc Pennington  <hp@pobox.com>
8959
8960         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8961         argument to set the char displayed when visibility == FALSE
8962         (gtk_entry_create_layout): If !entry->visible, replace 
8963         all chars with the "invisible char"
8964
8965         * gtk/testgtk.c: Test the invisible_char deal
8966         
8967 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8968
8969         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8970         can't get a native font in the right encoding.
8971
8972 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8973
8974         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8975         respectively.
8976
8977 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8978
8979         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8980         Fix warning when moving between paragraphs.
8981
8982         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8983         delete => delete_from_cursor, insert => insert_at_cursor
8984
8985 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8986
8987         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8988
8989         * modules/input/imthai-broken.c: A Thai input method for use if
8990         Thai keys are really generating Latin1 keysyms.
8991
8992         * modules/input/Makefile.am: Build these.
8993
8994 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8995
8996         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8997         g_filename_{to,from}_utf8 now takes an extra parameter.
8998
8999         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9000         strftime into UTF-8.
9001
9002         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9003         calendars.
9004
9005         (gtk_calendar_paint_day_names): Draw day names in the right 
9006         place.
9007         
9008 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9009
9010         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9011         problem with using result of g_get_charset() backwards -
9012         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9013
9014         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9015         negative min_width/height and max_width/height to
9016         mean "requisition"; this allows setting a window
9017         to be user-resizable in only one direction easily.
9018
9019         * gtk/testgtk.c (create_main_window): Remove hard-coded
9020         usize - set a default size in the vertical direction.
9021
9022 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9023
9024         * gtk/gtkrange.c: Add some missing casts. Support 
9025         2 and 3 button clicks on the arrows to mean 
9026         "move by pages" and "jump to end". (Like gtkspinbutton)
9027
9028 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9029
9030         * gdk/win32/makefile.msc : reflect build module changes
9031
9032         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9033         from GdkPixmap*, cast implementation member instead.
9034
9035         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9036         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9037         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9038         more Gdi functions return value checking. 
9039         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9040         GdkImagePrivateWin32 *.
9041
9042         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9043         menus useable again. Add #pragma message to keep reminded on this issue.
9044         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9045         windows. This allows to enable backing store on Win32!
9046
9047         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9048         in drawable is of impl type. Correct specific type checks appropriate.
9049  
9050         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9051         GDK_WINDOW_DESTROYED before allocating new resources.
9052
9053         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9054
9055         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9056         (gdk_window_foreign_new) initialize parent handle.
9057         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9058
9059         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9060         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9061         problems (e.g. main buttons in testgtk). 
9062
9063 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9064
9065         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9066         gtk_widget_activate for GDK_Return.
9067
9068         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9069         of preedit cursor position.
9070
9071 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9072
9073         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9074         static.
9075
9076 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9077
9078         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9079         out support for multiple locales; that simple doesn't
9080         work reliably with current Xlib
9081
9082         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9083         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9084         Add support for positioning the cursor within the preedit string.
9085
9086 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9087
9088         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9089         at XIM input method module.
9090
9091         * gtk/gtktextview.c: Check for bindings after passing
9092         events to im context filter.
9093
9094 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9095
9096         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9097         empty attribute lists properly.
9098
9099 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9100
9101         * gtk/queryimmodules.c (main): Return non-zero exit
9102         status if errors were encountered querying any
9103         modules.
9104
9105         * modules/input/Makefile.am (moduledir): remove
9106         leftover bin program target.
9107
9108         * docs/make-todo: Fix typo in error message.
9109
9110 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9111
9112         * configure.in: Add modules/input/Makefile
9113
9114 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9115
9116         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9117         don't include gtkthemes.h.
9118
9119         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9120         to point
9121
9122         * gtk/Makefile.am: Add new .c and .h files, build 
9123         gtk-query-immodules and use it to create a gtk.immodules
9124         file for use of test programs.
9125
9126         * gtk/gtkpreview.c: remove extra blank line.
9127
9128 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9129
9130         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9131         Add the ability to add extra tables beyond the default
9132         one, and also the ability to have compose sequences 
9133         that are prefixes of other compose sequences. 
9134
9135         * gtk/gtkimcontextsimple.c: Export a preedit string which
9136         consists of possible candidates for keystrokes that have
9137         been entered but not yet committed.
9138
9139         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9140         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9141
9142         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9143         Add a function to add input-method switching menu items
9144         to a menu.
9145
9146         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9147         when switching input methods.
9148
9149         * gtk/gtkimcontextsimple.[ch]: Change the format of
9150         the compose table to allow compose tables of different
9151         lengths / sequence.
9152
9153 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9154
9155         * gtk/gtkimmodule.[ch]: Support routines for loading
9156         GtkIMContext implementations dynamically at runtime.
9157
9158         * modules/input/imcyrillic-translit.c: A sample input
9159         method (based on GtkIMContextSimple with an extra table),
9160         which demonstrates preedit strings and the module
9161         system for input modules
9162
9163         * gtk/queryimmodules.c: Program to query the available
9164         input modules and write the results into a file.
9165          
9166         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9167         extra config options "im_module_file" (cache file for
9168         input method modules), and "im_module_path" - path
9169         to look for modules when generating cache file.
9170
9171         This doesn't scale.
9172
9173 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9174
9175         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9176         generic code from gtkthemes into a new abstraction
9177         GtkModule which has the logic for implementing
9178         a loadable module which implements a number of 
9179         GObject types.
9180
9181 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9182
9183         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9184         a class into an interface  
9185         
9186         * gtk/gtkoldeditable.[ch]: Move the old editable
9187         implementation into here, so legacy widgets can
9188         still rely on the implemenation. GtkOldEditable
9189         exports GtkEditable. Make selection handling
9190         code use new text conversion functions (and
9191         handle UTF-8 as a side-effect). Use GtkClipboard
9192         for CLIPBOARD.
9193
9194         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9195         Adopt to match above changes.
9196
9197         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9198         avoid GtkOldEditable implementation. Restructure
9199         to reduce number of places that modify state directly.
9200         Move to GtkBindingSet. Display the preedit string.
9201         Queue recomputation of PangoLayout and scroll position
9202         to improve effiency of doing complex changes naively.
9203         Add a menu with cut/copy/paste and input method selection.
9204
9205 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9206
9207         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9208         to set preedit string and attributes; display preedit string by
9209         inserting string and attributes at cursor when creating the
9210         GtkTextLineDisplay.
9211
9212         * gtk/gtktextlayout.c: Move all conversions between byte
9213         positions in PangoLayout and GtkTextIter into new functions
9214         line_display_iter_to_index/index_to_iter that properly
9215         handle the preedit string.
9216
9217         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9218         it to return const char * (eventually will end up
9219         as GCONST char *, most likely.)
9220
9221         * gtk/gtktextview.[ch]: Handle the preedit string, call
9222         gtk_im_context_reset() as necessary, add a menu to switch
9223         input methods.
9224         
9225         * gtk/gtktextlayout.[ch]: Remove useless
9226         gtk_text_layout_get_log_attrs() function.
9227
9228 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9229
9230         * gdk/gdk.def
9231         * gtk/gtk.def: Update.
9232
9233         * gdk/win32/*.c: Add last argument to g_type_register_static()
9234         calls.
9235
9236         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9237
9238         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9239         generated by older wheel mouse drivers. Get the correct y
9240         coordinate from WM_MOUSEWHEEL messages.
9241
9242         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9243         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9244         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9245         Debugging functions.
9246
9247         * gdk/win32/gdkprivate-win32.h: Declare them.
9248
9249         * gdk/win32/gdkinput-win32.h: Add declaration for
9250         gdk_input_window_destroy().
9251
9252         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9253
9254 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9255
9256         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9257         function to help handle keeping things in sync.
9258
9259 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9260
9261         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9262         BOXED marshallers.
9263
9264         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9265         (gtk_list_store_class_init): use the new BOXED marshallers.
9266
9267         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9268         new_with_values to new_with_types.
9269         (gtk_tree_store_get_column_type): add this.
9270         (gtk_tree_store_class_init): use the new BOXED marshallers.
9271
9272         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9273         mirror some POINTER marshallers.
9274
9275 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9276
9277         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9278         allow more interesting iterators.  Also, made the lifecycle of
9279         iterators more explicit.
9280
9281         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9282
9283         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9284         types.
9285
9286 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9287
9288         * demos/testgtk/menus.c:
9289         Changes to make the new testgtk compile after
9290         gtk_menu_append was removed.
9291
9292         * gdk/linux-fb/gdkdrawable-fb2.c
9293         (gdk_fb_get_depth, gdk_fb_get_visual,
9294         gdk_drawable_impl_fb_class_init): Implement
9295         these drawable functions. Now GtkImages work again.
9296
9297         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9298
9299         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9300         
9301         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9302         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9303         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9304         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9305
9306 2000-11-08  Havoc Pennington  <hp@pobox.com>
9307
9308         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9309         visible_set args, don't know where these had gone, I thought they
9310         used to be there
9311
9312         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9313         now we can test the feature and see that it's totally broken.
9314
9315 2000-11-08  Havoc Pennington  <hp@pobox.com>
9316
9317         Make DND copy pixbufs and tags when source and target share a 
9318         tag table.
9319         
9320         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9321         in-process GTK_TEXT_BUFFER_CONTENTS target
9322         (gtk_text_view_drag_data_received): Paste from
9323         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9324
9325 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9326
9327         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9328         API changes.
9329
9330         * gtk/gtkmenu.c: Add support for scrolling menus.
9331         Remove gtk_menu_append/prepend/insert, these have been moved to
9332         gtkcompat.h as #defines.
9333
9334         * gtk/gtkcompat.h.in:
9335         Add compatibility #defines for gtk_menu_append/prepend/insert
9336
9337         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9338         GtkMenuPositionFunc gets an extra argument push_in.
9339         gtk_menu_append/prepend/insert removed.
9340         
9341         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9342         positioning behaviour to fit to scrolling menus.
9343
9344         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9345         into menuitem->submeny. That is wrong, and broke torn
9346         off submenus of torn off menus, since they were unrealized
9347         when the first menu was unrealized.
9348
9349         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9350         gtk_menu_shell_select_item() since these need to be overridden in
9351         GtkMenu.
9352
9353         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9354         positioning behaviour to fit to scrolling menus.
9355         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9356         the current item so that it is prelighted when the menu pops up.
9357         This is a workaround to the fact that the menu doesn't get the
9358         initial enter event (due to grabs).
9359
9360         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9361         s/gtk_menu_append/gtk_menu_shell_append/
9362
9363         * gtk/gtknotebook.c:
9364         s/gtk_menu_insert/gtk_menu_shell_insert/
9365
9366         * gtk/testgtk.c (create_menu, create_menus):
9367         Create the first menu with 50 items so that menu scrolling
9368         can be tested.
9369         
9370         
9371         Patch from Jonathan Blandford  <jrb@redhat.com>
9372
9373         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9374         system to handle size requests.  First, we ask what the size of
9375         the toggle is.  Then, when allocating the size, we allocate the
9376         toggle_size first.  This way we can have multiple menu-item
9377         classes w/o needing a seperate class for each.
9378
9379         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
9380         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
9381
9382         * gtk/gtkcheckmenuitem.c
9383         (gtk_check_menu_item_toggle_size_request): New function to handle
9384         the toggle size-request.
9385
9386 2000-11-07  Havoc Pennington  <hp@redhat.com>
9387
9388         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
9389         Half-ass somewhat fix this function, so that scrolling to the
9390         insertion point works. Pango hacking is in the future to really
9391         fix it.
9392
9393         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
9394         length of data, no longer used.
9395
9396         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
9397         method contents in here, get rid of destroy method
9398         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
9399         that were backward. Remove debug spew.
9400         (cut_or_copy): Make the clipboard work with insert_range to
9401         preserve tags and pixbufs, not just the primary selection.
9402
9403 2000-11-07  Havoc Pennington  <hp@redhat.com>
9404
9405         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9406         to gtk_text_mark_get_visible
9407
9408         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9409         bug that was generating an invalid iterator
9410
9411         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9412         ensure_char_offsets() in front of code placing the iter in an
9413         invalid state.
9414
9415         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9416         make override_location arg const
9417         (paste): Replace the selection if we paste into the 
9418         current selection
9419
9420         * gtk/gtkselection.h: Remove "GtkSelectioData"
9421         (struct _GtkSelectionData): move the definition here.
9422
9423         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9424         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9425
9426         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9427
9428         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9429         (gtk_text_buffer_insert_range_interactive): implement
9430         (gtk_text_buffer_get_tags): Remove, replaced by
9431         gtk_text_iter_get_tags()
9432
9433         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9434         limit parameter, to avoid infinite linear scan.
9435         (gtk_text_iter_backward_search): Add search limit
9436         (gtk_text_iter_forward_find_char): Add search limit
9437         (gtk_text_iter_backward_find_char): Add search limit
9438
9439 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9440
9441         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9442         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9443         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9444         gdk/linux-fb/gdkwindow-fb.c:
9445         use g_object_new() instead of g_type_create_instance() which
9446         is a private function for fundamental type implementations.
9447
9448         * gdk/linux-fb/gdkinput-ps2.c:
9449         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9450         instead just store the current modifier state. Add a (somewhat broken)
9451         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9452         Rename exported function gdk_input_ps2_get_mouseinfo to
9453         gdk_input_get_mouseinfo.
9454
9455         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9456         gdk/linux-fb/gdkwindow-fb.c:
9457         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9458         
9459
9460 2000-11-02  Havoc Pennington  <hp@redhat.com>
9461
9462         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9463         use stock buttons. Should be 100% source compatible, appropriate
9464         filesel fields now point to dialog->vbox and dialog->action_area.
9465         On the bizarre side, dialog->action_area and filesel->action_area
9466         are not the same widget.
9467         (gtk_file_selection_init): Put some padding around the selection
9468         entry, so it isn't touching the GtkDialog separator.    
9469
9470         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9471         use stock buttons, etc. Should also be source compatible.
9472         Set the dialog default title in _init not _new().
9473         
9474         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9475         Use stock buttons; don't put a button box inside the existing
9476         dialog button box. Don't bother with push/pop colormap anymore.
9477
9478         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9479         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9480         for message dialog, and necessary for the font selection and color
9481         selection with help and apply buttons.
9482         
9483         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9484         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9485         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9486         between buttons, put less padding around the action area.
9487         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9488         This will also exit the loop if the widget is hidden.
9489         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9490         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9491         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9492         special-case delete event.
9493
9494         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9495         formatting
9496         
9497 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9498
9499         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9500         button to temporarily disable position recording in the
9501         "saved position" test.
9502
9503 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9504
9505         * gtk/gtkthemes.c: added compat code that temporarily implements
9506         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9507         going to be revamped by owen's upcoming GtkModule patches, but
9508         untill then people want gtk to build, right? ;)
9509
9510 2000-11-04  Havoc Pennington  <hp@pobox.com>
9511
9512         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9513         list
9514
9515         * docs/Changes-2.0.txt: Add note about
9516         gtk_container_get_toplevels()
9517
9518         * gtk/gtktextview.h: formatting
9519         
9520         * gtk/gtktextview.c: don't start descriptions with "Returns",
9521         confuses gtk-doc
9522
9523 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9524
9525         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9526         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9527
9528 2000-11-03  Havoc Pennington  <hp@redhat.com>
9529
9530         * gtk/gtktexttagtable.c: Docs
9531         (gtk_text_tag_table_size): return a signed int
9532
9533         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9534         (gtk_text_tag_event): make the event_object a GObject
9535
9536         * gtk/gtktextview.c: Write API docs for all functions.
9537
9538         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9539         for gtk_text_view_get_window_type() called on one of the private
9540         windows.
9541
9542         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9543         directly, call get_buffer() which demand-creates a default
9544         buffer. So gtk_text_view_new() can be used to create a view with a
9545         default buffer in it, if you just want an empty text box users can
9546         put data in. Useful for GUI builders also.
9547
9548 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9549
9550         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9551         the charset encodign portion MUST be in lowercase.
9552         * gtk/gtkrc.az: added file for Azeri language
9553
9554 2000-11-03  Havoc Pennington  <hp@redhat.com>
9555
9556         Get widgets working on the btree/buffer side. Display of them 
9557         still doesn't work.
9558         
9559         * gtk/gtktextview.c: start implementing child widget stuff
9560
9561         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9562
9563         * gtk/gtktextlayout.c: handle embedded widgets
9564
9565         * gtk/gtktextdisplay.c: handle embedded widgets
9566
9567         * gtk/gtktextchild.c: Implement all the child anchor goo
9568
9569         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9570         function
9571
9572         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9573         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9574         creating a child anchor or a pixbuf segment.
9575         (gtk_text_btree_create_child_anchor): new function
9576         (gtk_text_btree_unregister_child_anchor): new function
9577
9578         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9579         allocate_child signal on GtkTextLayout
9580
9581         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9582         values
9583         (gtk_text_iter_get_child_anchor): new function
9584
9585         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9586         default handler for the changed signal, which calls
9587         gtk_text_buffer_set_modified(), instead of just always emitting
9588         changed then calling set_modified() manually. I guess this is
9589         maybe more flexible. It seems logical.
9590
9591 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9592
9593         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9594         now.
9595
9596         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9597
9598 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9599
9600         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9601         been marked static.
9602
9603 2000-11-02  Havoc Pennington  <hp@redhat.com>
9604
9605         * gtk/testgtk.c (create_labels): had a test backward
9606
9607         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9608         fields, so the dest GC ends up with the correct clip origin, 
9609         etc. Fixes a bug where colored labels didn't redraw 
9610         properly.
9611
9612 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9613
9614         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9615         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9616         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9617         Add last argument to t_type_register_static call.
9618         
9619         * gdk/linux-fb/gdkdrawable-fb2.c:
9620         Add last argument to t_type_register_static call.
9621         export the get_image drawable virtual function.
9622
9623         * gdk/linux-fb/gdkimage-fb.c:
9624         Add last argument to t_type_register_static call.
9625         rename gtk_image_get to _gdk_fb_get_image and
9626         export it for use by gdkdrawable-fb2.
9627
9628         * gdk/linux-fb/gdkprivate-fb.h:
9629         export _gdk_fb_get_image.
9630
9631         * gdk/linux-fb/gdkselection-fb.c:
9632         Add new api call stubs.
9633
9634         * gtk/Makefile.am:
9635         Missing ( in linux-fb part.
9636
9637         * modules/linux-fb/Makefile.am:
9638         Must link with gdk_pixbuf or get unresolved symbol.
9639
9640 2000-11-01  Havoc Pennington  <hp@pobox.com>
9641
9642         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9643         GTK_TYPE_TEXT_ITER and BOXED marshallers
9644
9645         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9646
9647         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9648         
9649         * gtk/gtk-boxed.defs: add GtkTextIter
9650
9651         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9652         properly use OBJECT and BOXED
9653
9654 2000-11-01  Havoc Pennington  <hp@redhat.com>
9655
9656         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9657
9658         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9659         before returning it. 
9660         
9661 2000-11-01  Havoc Pennington  <hp@redhat.com>
9662
9663         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9664         Clip the rectangle to be rendered to the drawable, since
9665         get_from_drawable() requires a region within the drawable
9666
9667 2000-11-01  Havoc Pennington  <hp@redhat.com>
9668
9669         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9670         from coordinates.
9671
9672 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9673
9674         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9675         it isn't NULL.
9676
9677 2000-11-01  Havoc Pennington  <hp@pobox.com>
9678
9679         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9680         on a label
9681         (gtk_label_finalize): unref the attr list if any.
9682
9683         * gtk/testgtk.c (create_get_image): close test on second click
9684         (make_message_dialog): close dialog if it exists
9685
9686         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9687
9688         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9689         gdk-pixbuf
9690
9691         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9692         from Pango markup format
9693         (gtk_label_set_markup_with_accel): ditto but with accelerator
9694         parsing
9695
9696         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9697
9698         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9699         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9700         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9701         call gdk_window_get_origin().
9702
9703         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9704         implement GDK_PIXBUF_ALPHA_FULL
9705         
9706 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9707
9708         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9709         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9710         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9711         multiple handlers respectively, instead of only treating the
9712         first handler found (bug reported by owen).
9713
9714 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9715
9716         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9717
9718         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9719
9720         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9721         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9722         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9723
9724         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9725         widget.  Needs writing someday.
9726
9727         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9728         the docs.
9729
9730 2000-10-30  Havoc Pennington  <hp@redhat.com>
9731
9732         * gtk/gtktextview.h, gtk/gtktextview.c:
9733         Rename delete_at_cursor delete_from_cursor, and 
9734         move to move_cursor.
9735
9736 2000-10-30  Havoc Pennington  <hp@redhat.com>
9737
9738         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9739         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9740         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9741         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9742         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9743         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9744         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9745         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9746         gtktexttypes.h, gtktextview.c, gtktextview.h:
9747
9748         Massive reindentation and reformatting. Arg alignment and comments
9749         still need fixing in various places.
9750
9751 2000-10-30  Havoc Pennington  <hp@redhat.com>
9752
9753         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9754         to be named insert_at_cursor and delete_at_cursor so C++ can
9755         handle them.
9756
9757 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9758
9759         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9760         to get a double directory separator in case the home directory
9761         ends with one. This would cause trouble especially on Windows,
9762         where the path will be confused with the syntax for an an UNC
9763         (network share) path \\server\share\path.
9764         (gtk_rc_add_initial_default_files): Ditto.
9765
9766 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9767
9768         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9769
9770         * gtk/gtktextview.c: Use correct marshallers.
9771
9772 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9773
9774         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9775         use new iter stuff, and added all the appropriate signals et al.
9776
9777         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9778         code is internal to gtk only.
9779
9780 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9781
9782         * gtk/gtk.def
9783         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9784         glib-genmarshal etc.
9785
9786 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9787
9788         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9789         parallel builds.
9790
9791 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9792
9793         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9794
9795 2000-10-27  Robert Brady  <robert@suse.co.uk>
9796
9797         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9798         en_GB (British), ia (Interlingua).
9799
9800 2000-10-26  Havoc Pennington  <hp@redhat.com>
9801
9802         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9803
9804         Fixed output of:
9805         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9806         
9807         * gtk/gtktextsegment.c (char_segment_new): rename
9808         (_char_segment_new_from_two_strings): rename
9809         (_toggle_segment_new): rename
9810         
9811         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9812         (make_clipboard_widget): make it static
9813         (text_get_func): static
9814         (text_clear_func): static
9815
9816         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9817         static
9818         (hex_changed): make it static
9819         (hsv_changed): make it static
9820         (opacity_entry_changed): make it static
9821
9822         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9823         (toggle_segment_check_func): rename with _gtk
9824
9825         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9826         (_widget_segment_new): rename
9827         (_widget_segment_add): rename
9828         (_widget_segment_remove): rename
9829         (_widget_segment_ref): rename
9830         (_widget_segment_unref): rename
9831
9832         * gtk/gtktextmark.c (_mark_segment_new): Rename
9833         _gtk_mark_segment_new   
9834
9835 2000-10-26  Havoc Pennington  <hp@redhat.com>
9836
9837         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9838         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9839         types
9840
9841         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9842         marshaller types
9843
9844         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9845         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9846         license on these files.
9847
9848         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9849         work.
9850
9851         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9852         runtime random number different for each tree, instead of 
9853         a constant I made up.
9854
9855 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9856
9857         * gtk/Makefile.am: buncha cleanups, kludged build sources
9858         dependencies with a Makefile: oldest-source-stamp dependancy
9859         for the moment. automake is really fighting us here, with
9860         intentionally not allowing user-defined rules or dependancies
9861         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9862
9863         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9864         to public headers. tehy have a comment stating that they are
9865         "semi-public" aren't included by gtk.h and if enums popup there,
9866         they can be /*< skip >*/-ed.
9867
9868         * gtk/gtktextlayout.h: 
9869         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9870         added LGPL... <SIGH>
9871
9872 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9873
9874         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9875         GtkTreeIter.  Added iterators everywhere.
9876
9877         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9878
9879         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9880
9881         * gtk/gtktreestore.c: Changed to use the iterators.
9882
9883         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9884         iterators tomorrow.
9885
9886         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9887         iterators tomorrow.
9888
9889         * gtk/treestoretest.c: Changed to use iterators.
9890
9891         * demos/testgtk/main.c: Moved to use the new iterator system.
9892
9893 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9894
9895         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9896         localization misbehaviour.
9897
9898         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9899         a useless type without copy/free.
9900
9901         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9902         of GTK_TYPE_CTREE_NODE.
9903
9904 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9905
9906         * gtk/gtksignal.c:
9907         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9908         applicable.
9909
9910         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9911         gtk_selection_data_copy and gtk_selection_data_free
9912         do GtkSelectionData work as params in signals.
9913
9914 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9915
9916         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9917         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9918         couldn't they at least give it a non-standard name?
9919         
9920         * gtk/gtktextlayout.c: arg! yet another implementation of
9921         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9922
9923         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9924         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9925         home. now i know this _is_ a conspiracy.
9926
9927         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9928         ::state-changed.
9929
9930         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9931         (gtk_accel_group_create_add): marshaller signature fixups.
9932
9933         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9934         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9935
9936         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9937         anymore.
9938
9939 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9940
9941         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9942         due to the signal system changes, it wouldn't build currently. to
9943         be fixed soon.
9944
9945         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9946
9947         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9948         so it needs gtk_marshal_VOID__ENUM() instead of
9949         gtk_marshal_NONE__UINT().
9950
9951         * gdk/gdk*.c: adapted type registration functions.
9952
9953         * gtk/gtkbindings.c:
9954         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9955         gone.
9956
9957         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9958
9959         * gtk/gtkobject.c:
9960         (gtk_object_destroy):
9961         (gtk_object_shutdown): fixed recursion guards. basically we have to
9962         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9963         is called during ::destroy, and avoid recursion there.
9964
9965         * gtk/gtktypeutils.c:
9966         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9967         boxed_copy/boxed_free. this needs a more general solution based on a
9968         publically installed code-generator utility.
9969
9970         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9971         glib's gobject has support for that now.
9972         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9973
9974 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9975
9976         * gtk/gtksignal.[hc]:
9977         * gtk/gtkmarshal.[hc]:
9978         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9979         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9980         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9981         care of that.
9982
9983         * *.c: marshaller name fixups.
9984
9985         * gtk/gtkmarshal.list: added a comment briefing the format.
9986
9987 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9988
9989         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9990         compatibility macros here now. more specifically, most of
9991         the API is preserved (yes, _most_, nonwithstanding the
9992         following exceptions listed, the API is stil lHUGE ;)
9993         things that got removed completely:
9994         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9995         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9996         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9997         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9998         gtk_signal_remove_emission_hook().
9999         non-functional functions variants:
10000         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10001         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10002         not supported anymore.
10003         (gtk_signal_compat_matched): new internal function to aid
10004         implementation of the compatibility macros, it  provides
10005         functionality to block/unblock/disconnect handlers based
10006         on func/data.
10007
10008         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10009
10010         * *.c: adaptions to new type registration API signatures.
10011
10012 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10013
10014         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10015
10016 2000-10-25  Robert Brady  <robert@suse.co.uk>
10017
10018         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10019         gdk_property_delete): If window == NULL, assume the root window.
10020         (restoring the behaviour that was in 1.2).
10021         
10022         * gtk/testtext.c (save_buffer): Allow creation of new files when
10023         saving.
10024
10025         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10026         calls to read().
10027
10028 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10029
10030         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10031
10032         * gdk/win32/gdkdrawable-win32.c
10033         * gdk/win32/gdkimage-win32.c
10034         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10035         X11 backend.
10036
10037         * gdk/win32/gdkcc-win32.c
10038         * gdk/win32/gdkcolor-win32.c
10039         * gdk/win32/gdkfont-win32.c
10040         * gdk/win32/gdkinput-win32.c
10041         * gdk/win32/gdkmain-win32.c
10042         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10043
10044 2000-10-24  Havoc Pennington  <hp@redhat.com>
10045
10046         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10047         it a static function
10048
10049         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10050         redraw text when a tag is applied to it.
10051
10052         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10053         (gtk_text_tag_affects_nonsize_appearance): private functions to
10054         see if a tag requires various kinds of redraw/layout to be queued
10055         up.
10056
10057         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10058
10059         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10060         at the start of the buffer, so search works by default
10061
10062         * gtk/gtktextiter.c (lines_match): init match_start always
10063
10064         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10065         function, get iter at a line + a byte index
10066
10067         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10068         to set byte position within a line
10069         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10070
10071 2000-10-23  Havoc Pennington  <hp@redhat.com>
10072
10073         * gtk/testtext.c: Re-enable the "find" dialog
10074
10075         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10076         
10077         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10078         the arguments to gdk_draw_drawable were in the wrong order
10079         (gdk_window_paint_init_bg): This function was ignoring the
10080         init_region, instead of clipping to it, so the entire backing
10081         pixmap was cleared on every begin_paint()
10082         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10083         was in here again, the loop kept using the same GtkWindowPaint
10084         over and over.
10085         (gdk_window_begin_paint_region): Fix a bug where we had two
10086         x_offset instead of x_offset and y_offset
10087
10088         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10089         before we get the image.
10090         (gdk_draw_drawable): get the composite before we draw the drawable.
10091         (gdk_drawable_real_get_composite_drawable): default
10092         get_composite_drawable implementation that returns the drawable 
10093         itself
10094
10095         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10096         get_composite_drawable virtual function
10097
10098         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10099         list-walking bug
10100
10101         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10102         make this work if the source drawable is a GdkDrawableImplX11
10103         instead of a public drawable type. This is really broken; the
10104         problem is that GdkDrawable needs a virtual method get_xid(), but
10105         of course that doesn't work in practice. Enter RTTI.
10106
10107         Also, improve mismatched depth message.
10108
10109         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10110         GdkPixmap
10111
10112         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10113         install _gdk_x11_get_image as our implementation of get_image
10114         
10115         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10116         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10117
10118         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10119         gdk_drawable_get_image
10120
10121         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10122
10123         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10124         get_image
10125
10126         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10127         trailing semicolon after for loop
10128
10129 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10130
10131         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10132         where font_desc for widget's context lagged widget's font_desc by
10133         one step.
10134
10135 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10136
10137         * gdk/win32/gdkgc-win32.c
10138         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10139
10140         * gtk/makefile.mingw.in
10141         * gtk/gtk.def: Updates.
10142
10143         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10144         library.
10145
10146         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10147
10148         * gtk/makefile.msc: Remove
10149
10150         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10151
10152         * gtk/Makefile.am: Add it.
10153
10154         * configure.in: Generate it.
10155
10156         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10157         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10158         something even if not implemented, to satisfy picky MSVC.
10159
10160         Patches by Hans Breuer:
10161         
10162         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10163         SetBkMode() and SetTextAlign() before calling
10164         pango_win32_render().
10165
10166         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10167         Set hcliprgn to NULL after destroying it.
10168         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10169
10170         * gdk/win32/gdkgeometry-win32.c
10171         (_gdk_windowing_window_queue_antiexpose): More effective
10172         implementation.
10173
10174         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10175         depth as default, not the visual's.
10176
10177         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10178         against empty title.
10179
10180         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10181         IMAGE_PRIVATE_DATA.
10182
10183         * gdk/win32/gdkimage-win32.c: Use it.
10184
10185 2000-10-22  Robert Brady  <robert@suse.co.uk>
10186
10187         * configure.in: Check for bind_textdomain_codeset
10188
10189         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10190         present, make use of it.
10191
10192         Add a translatable string "default:LTR" which, if translated
10193         to "default:RTL", will cause the default direction to be
10194         Right-to-Left.
10195
10196         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10197         direction if marked as flippable.
10198
10199         * gtk/gtkhscale.c: Mark widget as flippable.
10200         
10201 2000-10-04  Havoc Pennington  <hp@redhat.com>
10202
10203         * gtk/testgtk.c (create_buttons): create some stock buttons
10204         with the default accel group
10205         (create_image): test some new GtkImage features
10206         (make_message_dialog): test GtkMessageDialog
10207         (create_modal_window): fix someone's bizzarro indentation
10208
10209         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10210         GTK_WIN_POS_CENTER_ON_PARENT. 
10211         Add "destroy with parent" setting, which means the window goes
10212         away with its transient parent.
10213         (gtk_window_get_default_accel_group): get the default accel group
10214         for the window.
10215         (gtk_window_set_destroy_with_parent): set/unset destroy with
10216         parent flag
10217         (gtk_window_read_rcfiles): invalidate icon set caches
10218         after reloading rcfiles 
10219
10220         * gtk/gtkenums.h (GtkWindowPosition): add
10221         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10222         on its parent window when the dialog is mapped for the first time.
10223
10224         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10225         a simple message dialog class
10226         
10227         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10228         handler to emit response signal, and maybe later it would
10229         honor a hide_on_delete flag - though that isn't there yet.
10230         Set border width on the vbox to 2, so we get some padding.      
10231         Use a button box for the action area.
10232         (gtk_dialog_key_press): synthesize a delete event if Esc
10233         is pressed and the GtkWidget key press handler didn't 
10234         handle the escape key.
10235         (gtk_dialog_new_with_buttons): new function creates a dialog
10236         with some default buttons in it.
10237         (gtk_dialog_add_action_widget): add an activatable widget
10238         as a button in the dialog - you can also add a non-activatable
10239         widget by accessing the action area directly.
10240         (gtk_dialog_add_button): add a simple button - stock ID or 
10241         label - to the action area
10242         (gtk_dialog_response): emit response signal
10243         (gtk_dialog_run): block waiting for the dialog, return 
10244         the response. Override normal delete_event behavior, so that 
10245         delete_event does nothing inside gtk_dialog_run().
10246
10247         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10248         emitted when an action widget is clicked or the dialog gets
10249         delete_event
10250
10251         * gtk/gtk.h: add gtkmessagedialog.h
10252
10253         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10254
10255 2000-10-18  Havoc Pennington  <hp@redhat.com>
10256
10257         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10258         where any number of empty lines would get skipped
10259
10260         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10261         edge.
10262
10263         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10264         warning about invalid iterators (explain more thoroughly)
10265         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10266
10267         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10268         big
10269
10270         * demos/*.c: Add error handling
10271
10272         * gtk/gtktextbuffer.c: don't modify const iterators
10273
10274         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10275
10276         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10277         on file load
10278
10279         * gtk/gtkiconfactory.c: Update to reflect addition of error
10280         handling to gdk-pixbuf loaders
10281
10282 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10283
10284         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10285         move to new modularized testgtk.
10286
10287 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10288
10289         * gtk/gtktreeview.c: Draw the arrows correctly.
10290
10291         * gtk/gtktreemodel.c: Added user docs.
10292
10293         * gtk/gtk.h: remove gtktreedatalist.h.
10294
10295         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10296         parent when generating my type.
10297
10298         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10299         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10300
10301 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10302
10303         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10304         GtkTreeModel from object to interface.
10305
10306 2000-10-16  Havoc Pennington  <hp@redhat.com>
10307
10308         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10309         compilation
10310
10311 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10312
10313         * gtk/gtktreeselection.c: Add API documentation to all public
10314         functions.
10315
10316         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10317         functions.
10318
10319 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10320
10321         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10322         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10323         docs to all public functions.
10324
10325         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10326         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10327         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10328         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10329         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10330         issue.
10331
10332 2000-10-14  Robert Brady  <robert@suse.co.uk>
10333
10334         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10335
10336 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10337
10338         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10339         values other then G_TYPE_STRING.
10340         * gtk/gtktreeselection.c: Minor commenting updates.
10341         * gtk/gtktreeview.c: Format updates.
10342
10343 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10344
10345         * README.win32: Update.
10346
10347         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10348         lines that had been deleted by mistake (?).
10349
10350         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10351         also the case fg==white and bg==black (but still not randomly
10352         coloured cursors). Thanks to Wolfgang Sourdeau.
10353
10354         * gdk/win32/*.c: Silence gcc -Wall.
10355
10356         * gtk/gtk.def: Add missing entry points.
10357
10358         Fixes by Hans Breuer:
10359
10360         * gdk/makefile.msc
10361         * gdk/win32/makefile.msc: Update.
10362
10363         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10364         some MSVC thing, presumably), cause breakpoint on failures. Add
10365         GDK_NOR case. Call g_log_set_always_fatal.
10366
10367         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10368         should be pased by reference.
10369         
10370         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10371         
10372         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10373
10374         * gdk/win32/gdkevents-win32.c
10375         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
10376
10377         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
10378         implementation object.
10379
10380         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
10381         not just windows.
10382         
10383         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
10384         Use the wrapper object.
10385         
10386 2000-10-06  Havoc Pennington  <hp@redhat.com>
10387
10388         * Makefile.am (SRC_SUBDIRS): contrib subdir
10389
10390         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
10391         so it can be used in Xlib version
10392
10393         * demos/testpixbuf.c (update_timeout): error checking from 1.0
10394         tree
10395
10396         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
10397         change from 1.0 tree that returns first frame of animation
10398         if the loaded file is an animation.
10399
10400         * contrib: add new directory to hold stuff that comes with GTK+
10401         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
10402         
10403         * configure.in: add contrib/*
10404
10405 2000-10-05  Havoc Pennington  <hp@redhat.com>
10406
10407         * demos/testpixbuf-save.c: add pixbuf save test
10408
10409         * demos/Makefile.am: add testpixbuf-save.c
10410
10411 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10412
10413         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10414         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10415         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10416         * gtk/gtktreeselection.[ch]: Replaced
10417         "node_selected"/"node_unselected" signal with "selection_changed"
10418         signal.
10419
10420 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10421
10422         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10423         tree widget.
10424
10425 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10426
10427         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10428         drawing.
10429
10430 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10431
10432         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10433         Move list pointer forwards before removing item from
10434         list. (Crash reported by Salmaso Raffaele)
10435
10436         * gdk/gdkwindow.h: Remove spurious trailing ,
10437
10438         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10439         dependencies on uninstalled libraries, sorry folks.
10440
10441 2000-10-04  Havoc Pennington  <hp@redhat.com>
10442
10443         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10444         gtk/gtkiconfactory.c: Fix copyrights    
10445
10446         * demos/testpixbuf.c: add inline pixbuf test
10447         
10448 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10449
10450         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10451         Add gdk_window_iconify.
10452
10453         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10454         (gdk_window_set_geometry_hints): Add win_gravity
10455         to geometry structure.
10456
10457         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10458         Implement _NET_WM_PING.
10459
10460         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10461         Set _NET_WM_PID on the client leader.
10462
10463         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10464         Handle UTF-8 better.
10465
10466         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10467         UTF-8 better, set _NET_WM_NAME as well. Only set
10468         icon name if it hasn't previously been explicitely 
10469         set.
10470
10471 2000-10-03  Havoc Pennington  <hp@redhat.com>
10472
10473         * gtk/testtextbuffer.c: clean up trailing whitespace,
10474         add extensive tests for tag toggle iteration.
10475         
10476         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10477         distance
10478
10479         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10480         optimize case where the tag root is on level 1
10481         (gtk_text_line_previous_could_contain_tag): attempt to implement
10482         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10483         functionality
10484
10485         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10486         Implement this, though not very efficiently.
10487
10488         * gtk/gtktextiterprivate.h: reformat
10489
10490         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10491         iterator
10492
10493         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10494         this to properly revalidate the iterators.
10495
10496         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10497         properly at the end of the line (and therefore on empty lines)
10498
10499         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10500         maybe we should return a value...
10501
10502 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10503
10504         * config.h.win32: Guard definition of alloca(). glib.h now handles
10505         that.
10506
10507         * gdk/gdk.def
10508         * gtk/gtk.def: Add new entry points.
10509
10510         Changes just to make GTK+ build without errors on Win32. No hope
10511         of it working in its current state, though...:
10512         
10513         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10514         some functions from the X11 backend, just to make GTK+ build.
10515
10516         * gdk/makefile.mingw.in
10517         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10518         number. Add new object files.
10519
10520         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10521         GetMessageTime to get timestamp (where on X11 uses
10522         gdk_x11_get_server_time()).
10523
10524 2000-10-02  Havoc Pennington  <hp@pobox.com>
10525
10526         * gtk/gtktextview.c: text_window_* weren't static and should have
10527         been.
10528         Start work on child widgets; not yet complete, syncing to 
10529         office computer.
10530
10531         * gtk/gtktextchild.h: change this to contain a public interface,
10532         starting work on child interfaces.
10533         * gtk/gtktextchildprivate.h: move private interfaces here
10534
10535         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10536
10537         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10538         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10539         gtk/gtktextmark.c: copyright notices
10540
10541         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10542         internal functions      
10543
10544         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10545         internal function
10546
10547         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10548         Reformatting    
10549
10550 2000-09-30  Havoc Pennington  <hp@pobox.com>
10551
10552         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10553         NULL start/end pointers
10554
10555         * gtk/gtktextbuffer.c: Write some docs
10556         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10557         NULL, so you can just check whether there's a selection.        
10558
10559         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10560         cleanup_line or segments_changed ourselves, it gets done 
10561         in unlink_segment
10562
10563         * gtk/gtktextmark.h:
10564         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10565         
10566         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10567
10568         * gtk/gtktextmark.c: delete some more old Tk cruft
10569
10570         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10571         mark before removing it, so we can emit MARK_DELETED with a valid
10572         pointer.
10573         (gtk_text_buffer_mark_set): hold ref across signal emission
10574
10575         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10576         whining about attempts to delete special marks
10577
10578         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10579         underscore, since it's internal.
10580
10581         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10582         now implemented in terms of iterators in gtktextiter.h
10583
10584         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10585         New function, destructively sets contents of buffer. Also 
10586         a convenient way to clear the buffer by setting text to ""
10587
10588         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10589         multiline string literal
10590
10591         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10592         text changes.
10593
10594         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10595         is not dereferenceable
10596         (gtk_text_iter_forward_lines): fix return value
10597
10598 2000-09-29  Havoc Pennington  <hp@redhat.com>
10599
10600         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10601
10602         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10603         that set border window size to have nicer name
10604         (gtk_text_view_mark_set_handler):  Fix this to have the 
10605         right signature.
10606
10607         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10608
10609         * gtk/testtext.c: Update with API changes, put line numbers on 
10610         both sides.
10611         
10612         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10613         with this
10614
10615         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10616         pixbuf; delete a big block of #if 0 Tk code
10617
10618         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10619         insert_pixmap with insert_pixbuf
10620
10621 2000-09-29  Martin Baulig  <baulig@suse.de>
10622
10623         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10624         confusion with the GdkPixbuf of the GNOME 1.x platform.
10625
10626 2000-09-29  Havoc Pennington  <hp@pobox.com>
10627
10628         * gtk/gtktextview.c: Implement the side windows.
10629
10630         * gtk/testtext.c: Implement simple line numbering in the 
10631         left side window; seems to make scrolling sloooow. Oops.
10632         Also, cursor blink is for some reason causing redraws
10633         of the line numbers. Should investigate...
10634
10635 2000-09-28  Havoc Pennington  <hp@redhat.com>
10636
10637         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10638         scrolling child windows, and draw focus rectangle properly.
10639         
10640         (gtk_text_view_buffer_to_window_coords):
10641         Coordinate transformation to deal with all these freaking windows
10642         and offsets
10643         (gtk_text_view_window_to_buffer_coords): transform the other way
10644
10645         * gtk/testtext.c (create_buffer): Update to match Pango API change
10646
10647         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10648         anonymous tags
10649         (foreach_unref): don't emit remove signal from finalize, just
10650         set tag's parent to NULL
10651
10652 2000-09-26  Havoc Pennington  <hp@redhat.com>
10653
10654         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10655         Fix some warnings       
10656
10657 2000-09-26  Havoc Pennington  <hp@redhat.com>
10658
10659         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10660         headers into the private header list
10661
10662         * Makefile.am (pkgconfig_DATA): install pkg-config files
10663
10664         * configure.in: add pkg-config files
10665
10666         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10667
10668         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10669         outstanding icon caches on theme change.
10670
10671         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10672         important types:
10673
10674         (GtkIconSource): Specification for creating a pixbuf 
10675         appropriate for a direction/state/size triplet from 
10676         a source pixbuf or filename
10677
10678         (GtkIconSet): List of GtkIconSource objects that are used to
10679         create the "same" icon (e.g. an OK button icon), and cache for
10680         rendered icons
10681
10682         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10683         up the icon set for a given stock ID.  GTK maintains a stack of
10684         GtkIconFactory to search, and applications or libraries can add
10685         additional icon factories on top of the stack
10686         
10687         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10688         the set of GtkIconSource specified for a given stock ID into 
10689         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10690         RcStyle, under the specified stock ID.
10691
10692         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10693         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10694         This allows people to theme how prelight, insensitive, etc. are
10695         done.
10696
10697         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10698         icon factories for a style, and return the resulting 
10699         icon set if any.
10700
10701         (gtk_style_render_icon): Render an icon using the render_icon 
10702         method in the GtkStyleClass.
10703
10704         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10705         Use the style for a given widget to look up a stock ID, get the
10706         icon set, and render an icon using the render_icon method 
10707         of the style
10708
10709         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10710         (contains information about a stock item), the built-in stock item
10711         IDs, and functions to add/lookup stock items.
10712
10713         * gtk/stock-icons/*: Stock icons that come with GTK
10714
10715         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10716         a button based on a GtkStockItem
10717         (gtk_button_new_accel): Takes a uline string and accel group, and
10718         installs the accelerator.
10719
10720         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10721         image-display widget.
10722
10723 2000-09-25  Havoc Pennington  <hp@redhat.com>
10724
10725         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10726
10727         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10728         Fix a bug when removing node data, we didn't properly 
10729         re-splice the linked list after removing the data.
10730
10731         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10732         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10733
10734         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10735
10736         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10737         for the layout from the GtkTextTag.
10738
10739         * gtk/gtktexttypes.h: delete tab and search cruft, 
10740         remove g_convert() in favor of GLib version
10741
10742         * gtk/gtktexttypes.c: remove tab implementation from here,
10743         move to Pango
10744
10745         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10746         tab stuff using new PangoTabArray from Pango
10747
10748         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10749         unused border_width stuff
10750
10751 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10752
10753         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10754         glib) and now useless utf_to_latin1() latin1_to_utf()
10755
10756         * gtk/gtktextview.[ch]: Change ::move_insert and
10757         ::delete_text action signals to ::move and ::delete;
10758         create the signals with the right enumeration type,
10759         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10760         C-v bindings, change Home, End to move to beginning/end
10761         of line, Add C-Home C-End to move to beginning/end
10762         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10763         combine ::scroll_text into ::move; use new GtkSelectionData
10764         functions to simplify DND text handling.
10765         
10766         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10767         deletion enumerations here, rename enumeration values to 
10768         be consistently plural.
10769
10770         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10771         for cut/copy/paste and primary selection.
10772
10773         * gtk/gtktextbuffer.[ch]: Remove excess time and
10774         'interactive' arguments from cut/copy/paste;
10775         rename cut to cut_clipboard, etc; remove
10776         gtk_text_buffer_get_clipboard_contents().
10777
10778         * gtk/gtktextlayout.[ch]: Add 
10779         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10780         line ends.
10781
10782         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10783         Functions to set or get a UTF-8 string on the selection
10784         data.
10785
10786         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10787         interfaces.
10788
10789         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10790         created widgets - one of these is useless if we don't.
10791
10792         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10793         a public function clear all targets registered for the
10794         widget.
10795
10796         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10797         Never call gtk_widget_realize() - that was just asking
10798         for bizarre side-effects.
10799
10800         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10801         gdk_selection_owner_set even if the widget is the
10802         same so that we reliably update the timestamp on
10803         the server.
10804
10805         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10806         gdk_x11_get_server_time() function.
10807         
10808         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10809         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10810         Add some tricky filtering on serial numbers for
10811         selection clear events to fix up long-standard
10812         race condition FIXME's in gtkselection.c.
10813
10814         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10815         routines to convert from utf8 to compound text or
10816         STRING and from a text property to UTF-8.
10817
10818         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10819         a convenience function gdk_get_current_event_time().
10820
10821         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10822         and free selection_data->data properly
10823
10824 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10825
10826         * gtk/gtkthemes.c: Remove some unecessary includes.
10827
10828 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10829
10830         * gtk/gtktextdisplay.c
10831         * gtk/gtktextlayout.c
10832         * gtk/gtktexttag.c
10833         * gtk/gtktexttag.h
10834         * gtk/testtext.c: Change the overstrike property to strikethrough,
10835         to closer match pango.
10836
10837 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10838
10839         * gtk/gtktextview.c: Fix up visibility so that focus,
10840         cursor_visible and blink interact properly.  Reenable cursor blink
10841         which had been roughly disabled. Make blink and focus
10842         properly per-view.
10843
10844         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10845         Add a flag for whether to display insertion cursor and
10846         a function to set the flag.
10847
10848         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10849         get_line_y() to get_line_yrange(), to be a bit more generally
10850         useful.
10851
10852 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10853
10854         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10855           do stop_navigating_submenu, to clear last timeout properly.
10856           Also in gtk_menu_motion_notify move ignore_enter above
10857           the conditional to make it always happen as suggested by Owen
10858
10859 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10860
10861         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10862
10863         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10864         w32api headers.
10865
10866         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10867         declarations.
10868
10869         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10870         (gdk_win32_get_colormap): A line had been deleted by mistake.
10871
10872         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10873         (gdk_event_translate): Handle more virtual keycodes to be able to
10874         generate GDK events for Control-comma, Control-period, etc.
10875
10876         * gtk/gtk.def: Add some missing entry points.
10877
10878 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10879
10880         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10881         Doc comment fixing. (Mostly non-matching parameter names.)
10882
10883         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10884         comments a little to avoid looking like a doc comment.
10885
10886         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10887         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10888         conversions be changed to GError?)
10889
10890         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10891         Move private #defines into .c file.
10892
10893         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10894         order of argument addition, remove duplicates.
10895
10896         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10897         parent class is FrameClass, not BinClass.
10898
10899         * gtk/gtk.h: Add gtkinvisible, which was missing.
10900         (It's occasionalyl useful for client apps, if seldom.)
10901
10902         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10903         #define.
10904
10905 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10906
10907         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10908         coordinates when creating window, instead of GDK-space
10909         coordinates. (Avoid BadValue on too large windows.)
10910
10911 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10912
10913         * configure.in (use_mmx_asm): Remove conftest* after use along the
10914         lines of AC_TRY_COMPILE.        
10915         
10916         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10917         of g_dirname, which is deprecated.
10918         (gtk_rc_parse_any): Removed calls to
10919         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10920
10921         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10922         Removed calls to g_hash_table_{freeze,thaw}, as they are
10923         deprecated now.
10924
10925         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10926         instead of g_basename.
10927         
10928 2000-09-04 Elliot Lee <sopwith@redhat.com>
10929         
10930         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10931         ANSI warning.
10932
10933 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10934
10935         * gtk/gtkwidget.h:  Add some documenting comments about 
10936           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10937           just as owen said on irc.
10938
10939         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10940           set HAS_DEFAULT.  Only set it if there isn't another window
10941           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10942           it if the widget is not the focused window with RECEIVES_DEFAULT.
10943           This fixes weird double default bugs in dialogs which has things
10944           call gtk_window_set_default at times.
10945
10946 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10947
10948         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10949         Nils Barth and David Santiago to improve submenu
10950         navigation. The patch does this by creating a triangular
10951         region from the point where the pointer leaves the
10952         menu to the submenu.  While the pointer is in
10953         that region and a timeout has not expired, events 
10954         that would cause the active submenu to change are
10955         ignored.
10956
10957 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10958
10959         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10960         moving a toplevel window immediately after sizing it would
10961         result in it being sized back to the old size since 
10962         impl->width, impl->height aren't updated until we hear
10963         back from the server. There is still a (longstanding) bug
10964         here that gdk_window_get_size() will give the wrong size
10965         until we do hear back.
10966
10967 2000-08-31  Havoc Pennington  <hp@redhat.com>
10968
10969         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10970         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10971         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10972         Rename GtkTextStyleValues to GtkTextAttributes
10973
10974 2000-08-31  Havoc Pennington  <hp@pobox.com>
10975
10976         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10977         for rapid testing whether an iterator is the end iterator
10978         (gtk_text_btree_new): init end line cache
10979         (gtk_text_line_is_last): use fast cached line to 
10980         see if we're the last line.
10981         (get_last_line): use cached line here too, should 
10982         speed up some random unrelated code.
10983         
10984 2000-08-30  Havoc Pennington  <hp@pobox.com>
10985
10986         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10987         signals.
10988
10989         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10990         delete_text signals. This allows the signals to be used for
10991         implementing undo.
10992
10993         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10994         provide "interactive" argument when emitting insert_text or
10995         delete_text signal.
10996         
10997 2000-08-30  Havoc Pennington  <hp@pobox.com>
10998
10999         * gtk/gtktextbuffer.c: Docs
11000
11001 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11002
11003         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11004         from switch statements, since Tor removed the enumeration
11005         value.
11006         
11007         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11008         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11009
11010 2000-08-29 Elliot Lee <sopwith@redhat.com>
11011         * */*.h: Use G_GNUC_CONST.
11012
11013 2000-08-27  Havoc Pennington  <hp@pobox.com>
11014
11015         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11016         minor indentation fixes, inserted some FIXME about stuff I
11017         realized was broken while documenting it.
11018         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11019         GTK convention  
11020
11021 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gtk/testgtk.c (create_styles): Fix double free of
11024         font desc.
11025
11026 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11029         
11030         * gtk/testgtk.c (create_styles): Add a test for modifying
11031         the style through gtk_widget_modify_*.
11032
11033         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11034         a function to get the current modifier style.
11035
11036         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11037         of the passed in GtkRcStyle instead of ref'ing it.
11038
11039         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11040
11041 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11042
11043         * gdk/gdkimage.h
11044         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11045         shared memory image+pixmap GdkImage type, or
11046         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11047         I am dropping that.
11048
11049         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11050         actually call gtk_init_abi_check(), passing also
11051         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11052
11053         * gtk/gtk.def
11054         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11055         New functions, used to check that the GTK+-using code has been
11056         compiled using the correct compiler and switches. In particular,
11057         with gcc one has to use the -fnative-struct switch as GTK+ is
11058         compiled with that.
11059
11060 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11061
11062         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11063         ->prev fields when merging lists. (Found simultaneously
11064         by Pawel Salek and Jakub Jelinek)
11065
11066 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11067
11068         * gdk/gdk.def
11069         * gtk/gtk.def: Add missing entries.
11070
11071         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11072         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11073
11074         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11075         function. Dummy implementation at this point.
11076
11077         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11078         rules. Undefine GTK_COMPILATION when compiling the test programs.
11079         
11080         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11081
11082 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11083
11084         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11085         to convert back and forth from UTF-8 and the "system" (or "current
11086         locale") charset when necessary. Indentation/spacing cleanup.
11087
11088 2000-08-10  Havoc Pennington  <hp@redhat.com>
11089
11090         * Makefile.am (snapshot): Change the format of the snapshot
11091         version to match glib
11092
11093         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11094         from EXTRA_DIST since it doesn't seem to exist
11095
11096 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11097
11098         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11099         version of the directory name (not the UTF-8 one) when building
11100         the path name to stat().
11101
11102 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11103
11104         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11105         PANGO_ATTR_SHAPE set.
11106
11107 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11108
11109         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11110         Peter Osterlund to simplify the code while keeping the
11111         functionality the same.
11112
11113 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11114
11115         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11116         is_viewable() test further inside the function, since removing the 
11117         window from the redraw list without clearing ->update_area
11118         was also very broken.
11119
11120 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11121
11122         * configure.in: Check for <unistd.h>.
11123
11124 2000-08-01  Martin Baulig  <baulig@suse.de>
11125
11126         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11127         to display the message that this is a development version of GTK+.
11128
11129 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11130
11131         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11132         was depending on widget->allocation instead of the width of text_area,
11133         which was incorrect for subclasses like GtkSpinButton.
11134
11135         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11136         with width == 1 tests that should be width == -1.
11137
11138 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11139
11140         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11141         (broken, Elliot, every single window blank on X) custom code with call
11142         to gdk_window_is_viewable() which a) prevents code duplicate and
11143         b) works. 
11144
11145 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11146
11147         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11148         to get the GDK_PARENT_ROOT() macro to work.
11149         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11150         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11151         of, windows that aren't shown.
11152         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11153         pointer grab stuff.
11154
11155 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11156
11157         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11158           s/gtk_main_iteration/g_main_iteration/
11159
11160           Did this already in change:
11161                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11162           don't know how it got reverted.
11163
11164 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11165
11166         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11167         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11168
11169         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11170         not gdk_pixbuf.
11171
11172 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11173
11174         * configure.in,po/{sp,sr}.po: Added Serbian files
11175
11176 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11177
11178         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11179
11180         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11181         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11182         GIOChannel implementation.
11183
11184         * gdk/win32/gdkinput.c
11185         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11186
11187         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11188         definition to match prototype.
11189
11190         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11191
11192 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11193
11194         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11195         function, to allow handling image formats that cannot be detected
11196         by looking at content alone.
11197
11198 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11199
11200         * docs/tutorial/*.gif *.jpg *.eps
11201           Update these to the same look-n-feel.
11202           Why does including images in DocBook suck so badly?
11203
11204 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11205
11206         * gtk/gtktable.c: applied patch from Phil Thompson
11207         <phil@river-bank.demon.co.uk> that enables space settings for
11208         the last row/columns as well.
11209
11210 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11211
11212         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11213         updates the license headers to the GNU Lesser General Public License,
11214         as well as updating the copyright year to 2000.
11215
11216 2000-07-26  Robert Brady  <rwb197@zepler.org>
11217
11218         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11219           and po/Makefile, was installing and looking for them under gtk20
11220           and gtk2 respectively.
11221
11222 2000-07-25  Havoc Pennington  <hp@redhat.com>
11223
11224         * gtk/testtext.c: Comment out some stuff that depends on the rest
11225         of my patches.
11226
11227 2000-07-25  Havoc Pennington  <hp@redhat.com>
11228
11229         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11230         buffer
11231
11232 2000-07-25  Havoc Pennington  <hp@redhat.com>
11233
11234         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11235         widget changes.
11236
11237         * gtk/gtktextview.h: To be consistent with usage of "line"
11238         throughout the API to mean "newline-terminated thingy", change
11239         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11240         to MOVEMENT_LINE.
11241
11242         (GtkTextView): Add flags for default editability, and whether to
11243         show the cursor. Add functions to get/set that. Add 
11244
11245         (gtk_text_view_get_iter_location): new function
11246
11247         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11248         gtktextlayout.h
11249         (g_convert): Add g_convert temporarily, will go in glib in a bit
11250         
11251         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11252         GtkTextTagTableForeach instead of brokenly using GHFunc.
11253         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11254
11255         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11256         moved to public header.
11257
11258         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11259         "invisible", since "elide" was a bad name.
11260         (gtk_text_tag_get_priority): Added
11261
11262         (GtkTextStyleValues): put this in public header, along with
11263         functions to use it.
11264
11265         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11266         longer include gtktextbtree.h.
11267
11268         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11269         gtk_text_mark_deleted
11270
11271         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11272         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11273         to make this possible. Now we only need to install
11274         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11275         (However the Makefile.am isn't changed yet because of the
11276         logistics of merging gtk-hp-patches piecemeal)
11277
11278         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11279         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11280         gtk_text_iter_get_line is now used in the public API for a
11281         different purpose.
11282
11283         * gtk/gtktextiter.h: Clean up function names to be more
11284         consistent. Always call char offset "offset" and byte index
11285         "index". A "line" is always a line number. 
11286
11287         (gtk_text_iter_is_last): new function, more efficient than 
11288         the existing way to check
11289         (gtk_text_iter_is_first): new function, also more efficient
11290
11291         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11292
11293         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11294         gtk_text_iter_forward_char, etc.
11295
11296         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11297         forward_find_tag_toggle, since this isn't a linear search
11298
11299         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11300
11301         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11302         New functions, search for a buffer substring.
11303
11304         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11305         interactive and default editable (since we need to store that info
11306         until we receive the selection data).
11307
11308         Remove all the _at_char and at_line etc. versions of functions;
11309         only have iterator versions.
11310
11311         Add _interactive() versions of functions, that consider the
11312         editability of text. (FIXME add interactive flag to the 
11313         insert/delete signals per Darin's suggestion)
11314
11315         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11316         tag table if necessary
11317
11318         Remove declaration of gtk_text_buffer_get_iter_from_string
11319
11320         (_gtk_text_buffer_get_btree): private/internal function, added.
11321         
11322
11323         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11324         (gtk_text_line_is_last): new function
11325
11326 2000-07-25  Havoc Pennington  <hp@redhat.com>
11327
11328         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11329         using GtkProgressBar. See Changes-2.0.txt for details.
11330
11331         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11332         "pulse_step" which are the equivalent of
11333         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11334         Implement new API.
11335         
11336         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11337         (use_text_format) to mark whether text set on the progress bar is
11338         a format string. Deprecate entire GtkProgress interface.
11339
11340         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11341         (gtk_progress_build_string): make this a no-op if use_text_format
11342         is FALSE
11343
11344         * docs/Changes-2.0.txt: Describe progress bar changes.
11345
11346 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11347
11348         * Makefile.am: Include the build directory.
11349
11350         * configure.in: Generate build/Makefile, build/win32/Makefile,
11351         gdk/, gdk/win32/, and gtk/makefile.mingw.
11352
11353         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11354         Add GETTEXT_PACKAGE.
11355         
11356         * gdk/gdk.def
11357         * gtk/gtk.def: Updates.
11358
11359         * gdk/gdkfont.h
11360         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11361         need them any longer.
11362
11363         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11364
11365         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11366         PANGOWIN32_LIBS and gdk_pixbuf.
11367
11368         * gdk/win32: Compiles, but no doubt doesn't work at all.
11369
11370         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11371
11372         * gdk/win32/gdkinput.c: New file, temporarily.
11373         
11374         * gdk/win32/gdkinput-win32.h: New file
11375
11376         * gdk/win32/gdkinputprivate.h: Remove.
11377
11378         * gdk/win32/gdkpango-win32.c: New file.
11379
11380         * gtk/makefile.mingw.in: New file
11381
11382         * gtk/makefile.cygwin: Removed
11383         
11384         * gtk/Makefile.am: Update accordingly.
11385
11386         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
11387         made externally visible.
11388
11389         * gtk/gtkmain.c: Use it.
11390         
11391         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
11392         is enough.
11393
11394         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
11395
11396 2000-07-24 Elliot Lee <sopwith@redhat.com>
11397         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
11398         individual backends already.
11399         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
11400         again. Yes, there really is a good reason for this, if you are using the gdkregion
11401         internals, and if you're not, why do you care?
11402         * gdk/gdkwindow.c: Fix inverted condition
11403         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11404         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11405         * gtk/gtkrange.c: Redraw trough when moving.
11406         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11407         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11408
11409 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11410
11411         * configure.in: Check for mkstemp and sigsetjmp. Output
11412         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11413
11414         More work on GDK for Win32. Still in an intermediate state.
11415
11416         * gdk/makefile.cygwin
11417         * gdk/win32/makefile.cygwin: Removed.
11418         
11419         * gdk/makefile.mingw.in
11420         * gdk/win32/makefile.mingw.in: New files.
11421
11422         * gdk/Makefile.am
11423         * gdk/win32/Makefile.am: Generate and distribute them.
11424
11425         * gdk/win32/gdkwindow-win32.h
11426         * gdk/win32/gdkdrawable-win32.h
11427         * gdk/win32/gdkpixmap-win32.h: New files.
11428
11429         * gdk/win32/gdkcolor-win32.c
11430         * gdk/win32/gdkcursor-win32.c
11431         * gdk/win32/gdkdrawable-win32.c
11432         * gdk/win32/gdkgc-win32.c
11433         * gdk/win32/gdkimage-win32.c
11434         * gdk/win32/gdkprivate-win32.h
11435         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11436         Rename fields and variables called xcursor, xid, etc (these names
11437         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11438
11439 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11440
11441         * gtk/gtkentry.[ch]: Fix some problems with vertical
11442         alignment.
11443
11444         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11445         char/byte confusion.
11446
11447 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11448
11449         * gtk/gtktextview.c (changed_handler): Fix bug where
11450         redraw wasn't being done properly when height of
11451         dirty region changed.
11452
11453         * demos/Makefile.am: Remove various references to
11454         -lgmodule
11455
11456 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11457
11458         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11459         PangoAttrShape to reserve space for pixmaps, add 
11460         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11461         in the display functions.
11462         
11463         * gtk/testgtk.c (create_layout): Set some more exotic
11464         scrolled window options
11465
11466         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11467         Add function to set the shadow type of a window, to allow
11468         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11469         which don't draw their own frame.
11470
11471 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11472
11473         * docs/tutorial/package-db-tutorial.sh: New file for
11474           packaging DocBook format tutorial
11475
11476 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11477
11478         * docs/tutorial/gtk-tut.sgml: Minor updates
11479
11480         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11481
11482 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11483
11484         * gtk/gtksignal.c: Fix C++ comment.
11485
11486         * gtk/gtkimmulticontext.c
11487         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11488         don't return value from void functions.
11489
11490         * gtk/gtk.def: Add gtk_rc_style_unref.
11491
11492 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11493
11494         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11495         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11496         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11497         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11498         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11499         gtk/gtktypeutils.h: Include files outside of the extern "C"
11500         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11501         <vakatov@peony.nlm.nih.gov>.
11502
11503 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11504
11505         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11506           Completes first pass. Hurrah!
11507
11508 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11509
11510         * docs/tutorial/gtk-tut.sgml: More clean ups.
11511
11512 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11513
11514         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11515         paint the background of the text area which was accidentally
11516         removed at some point.
11517
11518         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11519           
11520          - Move most of the functionality from the theme vtable
11521            into GtkRcStyleClass and GtkStyleClass. The moved
11522            vtable functions were changed a bit in the move to
11523            work better in their new home.
11524
11525          - Get rid of the engine and engine_data fields from
11526            GtkRcStyle and GtkStyle; instead the theme
11527            engine derives theme-specific subclasses of GtkRcStyle
11528            and GtkStyle
11529
11530          - Add extra dlsym() found entry point to themes,
11531            theme_create_rc_style().
11532
11533         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11534         in gtk_style_real_copy.
11535
11536         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11537         to register a type associated with an engine. (The engine
11538         won't be unloaded as there is an instance of the type.)
11539
11540
11541 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11542
11543         * docs/tutorial/gtk-tut.sgml: Clean ups.
11544
11545 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11546
11547         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11548           of cleaning up to do.
11549
11550 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11551
11552         * gdk/testgdk.c: New file, quick hack to test backends for
11553         pixel-by-pixel correctness of the most simple graphic operations.
11554
11555 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11556
11557         * Really release 1.3.1
11558         
11559         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11560         include structure.
11561
11562 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11563
11564         * Released 1.3.1
11565
11566 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11567
11568         * gtk/gtktextlayout.c: use FALSE for size_only most
11569         of the time when calling gtk_text_layout_get_line_display()
11570         to avoid causing double reshapes when a redraw follows
11571         immediately after.
11572
11573 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11574
11575         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11576         appropriate region and gdk_window_process_updates() so trough
11577         updating doesn't lag behind the window being scrolled.
11578
11579         * gdk/gdkgc.c: Make parent_class pointer static.
11580          
11581 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11582
11583         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11584         include <string.h>.
11585          
11586         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11587         cut-and-paste error in computing memory offset for 4 channels.
11588
11589 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11590
11591         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11592         gtk_rc_append_default_pixmap_path(), since it wasn't
11593         adding an interesting path and we don't have a meaningful
11594         default for this value.
11595
11596 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11597
11598         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11599         gtk-config to gtk-config-2.0 move gtk_.m4 to
11600         gtk-2.0.m4
11601
11602         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11603         gdk/Makefile.am demos/Makefile.am: Change 
11604         library names to libgtk-1.3.la, etc, so that we
11605         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11606
11607         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11608         gdk/Makefile.am gdk/x11/Makfile.am
11609         Move include files into /usr/include/gtk-2.0, 
11610         /usr/lib/gtk-2.0/include/
11611          
11612         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11613         gtk/gtkintl.h: Change package for gettext from 
11614         gtk+ to gtk20. Put hack in autogen.sh to modify
11615         po/Makefile.in.in after gettextize to make this
11616         possible.
11617
11618         * gtk+.spec: Some updates, not tested.
11619
11620         * gdk-pixbuf/Makefile.am: Move loaders into
11621         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11622
11623         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11624         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11625         to THEMENAME/gtk-2.0/. Move engine directory  to
11626         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11627         
11628 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11629
11630         Win32 changes, still doesn't build though.
11631
11632         * gdk/makefile.cygwin
11633         * gdk/win32/makefile.cygwin
11634         * gtk/makefile.cygwin: Updates.
11635
11636         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11637         default values for fg and bg pixel as X11 does (0 and 1), not
11638         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11639         Use 0 for pen width by default (treated as 1 anyway later, but for
11640         apps that might check the value in the GdkGC).
11641         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11642         interface to gdk_gc_predraw and _postdraw.
11643
11644         * gdk/win32/gdkwin32.h
11645         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11646
11647         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11648         extraneous semicolon.
11649
11650         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11651
11652         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11653         not the Win32 bitspixel value.
11654
11655         * gdk/win32/gdkcc-win32.c:
11656         * gdk/win32/gdkcolor-win32.c 
11657         * gdk/win32/gdkprivate-win32.h
11658         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11659         GDK object structure.
11660
11661 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11662
11663         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11664         * docs/tutorial/gtk_tut_it.sgml (name): 
11665         * docs/tutorial/gtk_tut_fr.sgml (name): 
11666         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11667         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11668
11669 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11670
11671         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11672           small changes.
11673
11674 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11675
11676         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11677         a bug here, never been here and never fixed anything ;(
11678         (don't segfault if tree->root_tree is NULL, which happens prior
11679         to widget realization, but puke instead).
11680
11681 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11682
11683         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11684         add the necessary tokens.
11685
11686         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11687         (gtk_rc_style_to_style): copy thicknesses.
11688         (gtk_rc_init_style): apply thicknesses.
11689         (gtk_rc_parse_style): parse xthickness and ythickness.
11690
11691         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11692
11693         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11694         (gdk_window_new): 
11695         (_gdk_windowing_window_init): 
11696         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11697         (gdk_pixmap_create_from_data): 
11698         (gdk_bitmap_create_from_data): 
11699         (gdk_pixmap_new): 
11700         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11701         (gdk_image_new): 
11702         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11703         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11704         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11705         (gdk_colormap_get_system): 
11706         (gdk_colormap_new): 
11707         * gdk/gdkwindow.c (gdk_window_init): 
11708         * gtk/gtkstyle.c (gtk_style_new):
11709         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11710         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11711         * gtk/gtkrc.c (gtk_rc_style_new):
11712         use g_object_new() instead of g_type_create_instance() which
11713         is a private function for fundamental type implementations.
11714
11715 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11716
11717         * configure.in: Add check for db2html
11718
11719 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11720
11721         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11722         hack to set glib_debug_objects based on gtk_debug_flags.
11723
11724 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11725
11726         * INSTALL.in: Update the Prerequisites section.
11727
11728         * Makefile.am demos/Makefile.am docs/Makefile.am
11729         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11730         gdk/linux-fb/Makefile.am: Dist fixes
11731
11732 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11733
11734         * NEWS: 10,000 foot view of 1.3.1 changes.
11735
11736 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11737
11738         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11739         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11740         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11741         gdk/x11/gdkmain-x11.c: 
11742
11743         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11744         as a return value of gdk_*_grab(). Previously, we just
11745         returned the X11 values directly.
11746
11747 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11748
11749         * gdk/x11/Makefile.am: Patch from George Lebl to 
11750         install all the headers in the right place.
11751
11752 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11753
11754         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11755           initial conversion to DocBook.
11756
11757 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11758
11759         * README.win32: Improve a bit.
11760
11761         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11762         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11763         Alt+0nnn on the numpad (used to enter characters by numeric code
11764         from current DOS or ANSI codepage) working correctly, as in other
11765         Windows apps.
11766
11767         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11768         same argument validity tests as in X11 version.
11769         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11770
11771         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11772         definitions in case missing from headers.
11773
11774         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11775         destroy the window-specific cursor.
11776         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11777         calling GetModuleHandle(NULL).
11778         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11779         with CopyCursor before setting it as the window-specific
11780         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11781         also its Windows cursor) after calling this function. Destroy any
11782         previous window-specific cursor.
11783
11784 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11785
11786         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11787         font charset is iso8859-1, not iso-8859-1.
11788
11789 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11790
11791         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11792         Use g_get_charset() instead of g_get_codeset().
11793
11794         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11795         Comment out some strdup'ing functions to keep timj
11796         happy until we finish fighting this out.
11797
11798 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11799
11800         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11801         <= width or height.
11802
11803         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11804         from 1.2 for parent/child states.
11805
11806         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11807         of typos.
11808
11809         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11810         event structures, replace with a generic axes field. Replace 
11811         deviceid/sourec with GdkDevice *device.
11812
11813         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11814         to extract particular axis use value from event. (Also
11815         can be used for normal X/Y.)
11816
11817         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11818         allow for arbitrary number of axes, namespace everything
11819         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11820         everywhere.
11821
11822         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11823         Get rid of the gdk_input_vtable setup if favor of simply
11824         defining the functions in gdkinput-none/gxi/xfree.c in
11825         a similar fashion to the way that the port structure is 
11826         done.
11827
11828         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11829         for new event structures. 
11830
11831         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11832         new device interfaces.
11833
11834 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11835
11836         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11837         set the initial text.
11838
11839         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11840         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11841         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11842         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11843
11844         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11845         pango_layout_set_font_description to simplify.
11846
11847 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11848
11849         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11850         pango_layout_set_font_description to simplify.
11851
11852 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11853
11854         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11855         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11856         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11857
11858         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11859         PANGO_PIXELS() macro.
11860
11861 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11862
11863         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11864         that returns a PangoContext owned by the widget and updated to
11865         match future changes in the widget. Also, make 
11866         gtk_widget_create_pango_layout() use this context. If we ever
11867         add a ::changed signal to PangoContext, this will make things
11868         much more convenient. 
11869
11870         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11871         in the appropriate places instead of destroying the layouts and
11872         creating new ones.
11873
11874         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11875         in a few strategic places.
11876
11877 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11878
11879         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11880         gtk_widget_size_request() on reparented child, if one. Otherwise,
11881         queue_resize() on the child never results in it getting size-requested
11882         at all.
11883
11884         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11885         in option menus, so that (with luck) people won't copy it into
11886         their apps in the future.
11887
11888         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11889         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11890         a lot of problems with changing the size of the menu's menu
11891         items after adding it to the option menu.
11892
11893         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11894
11895         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11896         the text direction for a widget changes.
11897
11898         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11899         ::direction_changed to get rid of various hacks.
11900
11901 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11902
11903         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11904         name.
11905
11906 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11907
11908         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11909         flag to the structure. Do not call XFreePixmap on pixmaps created
11910         by gdk_pixmap_foreign_new().
11911
11912 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11913
11914         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11915         value using GdkRGB functionality given GdkColormap and GdkColor.
11916         (name not final, waiting for inspiration.)
11917         
11918         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11919         set the foreground/background of a GC using the GC's colormap
11920         and GdkRGB. (name not final, waiting for inspiration.)
11921
11922         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11923         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11924
11925         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11926         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11927         purely a function of the corresponding colormap. Make
11928         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11929
11930         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11931         gdk_pixbuf_*create_from_xpm_* in terms of
11932         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11933         code.
11934
11935         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11936         advantage of the new draw_rgb_32_image_dithalign.
11937
11938         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11939
11940         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11941         on each created GC.
11942
11943         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11944
11945         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11946         which we initialize from the drawable when the GC is created,
11947         if the drawable has a colormap.
11948
11949         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11950
11951         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11952
11953         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11954
11955 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11956
11957         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11958         actually returning expose events, make sure to set
11959         the count field properly.
11960
11961         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11962         accidentally reintroced bug which always cleared
11963         the graphics_exposures value. 
11964
11965 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11966
11967         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11968
11969 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11970
11971         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11972
11973 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11974
11975         * docs/faq/gtk-faq.sgml: Start of Section 6.
11976
11977 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11978
11979         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11980         
11981         (Fixes problem with drawing childless frames. Pointed out
11982         by and a first patch from Anders)
11983         
11984         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11985         compute a child_allocation, even if we don't have a child.
11986
11987         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11988         Always chain to the parent's impl, even if we don't have a child.
11989
11990 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11991
11992         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11993         use multiple parts of it instead of creating a bunch of separate
11994         segments, since the maximum number of segments per system is not
11995         large. (This might be worth backporting to GTK+-1.2.x if we make a
11996         new release )
11997
11998         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11999         structure in preparation for per-colormap GdkRGB.
12000
12001         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12002         to False when we get EINVAL from shmget so that the caller of
12003         gdk_image_new can retry with a smaller segment size.
12004
12005 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12006
12007         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12008
12009 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12010
12011         * configure.in: make the current version number 1.3.1 (binary age 0,
12012         interface age 0).
12013         
12014         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12015         gtkcompat.h is all we want.
12016
12017         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12018         GLib primitive types. fixed g_type_register_fundamental() argument
12019         ordering.
12020
12021         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12022         compiles.
12023
12024         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12025         object code cleanup, comment trigraph fixes, etc...
12026
12027 2000-06-23  Havoc Pennington  <hp@redhat.com>
12028
12029         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12030         instead of making up a bogus name for first_para_mark
12031
12032         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12033         0 as a context ID
12034
12035 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12036
12037         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12038
12039 2000-06-21  Havoc Pennington  <hp@pobox.com>
12040
12041         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12042         we didn't check window->bg_pixmap != GDK_NO_BG.
12043
12044         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12045         gdk-pixbuf
12046
12047 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12048
12049         * docs/faq/gtk-faq.sgm: Move file to here.
12050           TODO: Update Makfile.am 
12051
12052 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12053
12054         * docs/gtk-faq.sgm: Add Section 2
12055
12056 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12057
12058         * docs/gtk-faq.sgm: New file. Start of DocBook
12059           version of the FAQ.
12060
12061 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12062
12063         * configure.in (GDK_PIXBUF_MAJOR): Define version
12064         numbers for GDK_PIXBUF_*, as they get substituted
12065         into a header file. Need to consider versioning
12066         for gdk-pixbuf more carefully later.
12067
12068 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12069
12070         Work with srcdir != builddir.   
12071         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12072         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12073         * demos/testpixbuf.c: Likewise.
12074         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12075         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12076         <gdk/x11/gdkx.h>.
12077         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12078         "gdk-pixbuf.h".
12079         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12080
12081 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12082
12083         * TODO.xml: Change 1.4 version numbers to 2.0.
12084
12085 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12086
12087         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12088         fixups to GTK+ standard.
12089
12090 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12091
12092         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12093         gdk-pixbuf.
12094
12095         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12096         fixups for GObject.
12097
12098         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12099         gdk-pixbuf with GDK dependencies moved into GDK.
12100         
12101         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12102         move gdk-pixbuf-loader here until GObject has signals.
12103
12104         * demos/: New directory of demos. Move demos from
12105         gdk-pixbuf here.
12106
12107         * demos/pixbuf-init.c: Small bit of code to check for
12108         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12109         set GDK_PIXBUF_MODULEDIR appropriately.
12110
12111         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12112         define which no longer makes sense.
12113
12114 2000-06-21  Havoc Pennington  <hp@redhat.com>
12115
12116         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12117         gtk_get_default_language
12118
12119         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12120         new function to get the default language
12121
12122         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12123         s/gtk_text_view_style_values/gtk_text_style_values/
12124
12125         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12126         Add a "language" field to tags.
12127
12128         (gtk_text_tag_set_arg): Fix bug in setting
12129         "bg_full_height_set" tag.
12130
12131 2000-06-21  Havoc Pennington  <hp@redhat.com>
12132
12133         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12134         in the interfaces
12135
12136         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12137         stuff instead when possible.
12138
12139         * gtk/gtktexttypes.h: Delete some unused constants
12140
12141         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12142         testtextbuffer.c: use glib instead of custom unicode routines
12143
12144 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12145
12146         * docs/es/: Removed mistakenly added generated sgml
12147
12148         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12149         Remove outdated info files.
12150
12151         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12152         Moved tutorial files into subdir
12153
12154         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12155         subdir.
12156
12157         * docs/man/gtk_button.pod: Remove. (contents will be
12158         integrated into gtk-reference button page.)
12159
12160         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12161         docs/faq/Makefile.am: Adjust for new organization
12162
12163 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12164
12165         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12166         not $(MKINSTALLDIRS)
12167
12168 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12169
12170         * gtk/testgtk.c (create_text): Finish the job Elliot started
12171         of removing font setting test for text widget. (Since text widget
12172         and GdkFont are not deprecated, and cause portability problems.)
12173
12174 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12175
12176         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12177         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12178         Remove use of libunicode in favor of new GLib functions.
12179
12180         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12181         nano-x, framebuffer. The X11 include is just a hack until we get
12182         the necessary functions in gdkcolor.h, so there is no reason to
12183         add other includes of platforms.
12184
12185         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12186         window bigger than the screen change.
12187
12188         * gtk/testgtk.c: Revert some random changes from Elliot
12189         that had no particular point and were causing testgtkrc
12190         not to function correctly.
12191         
12192         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12193         because GdkSegment and GdkRegionBox have the same fields,
12194         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12195         results in clearer code.
12196
12197         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12198         gdk_input_translate_coordinates): Fix missed GdkObjectification
12199
12200 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12201
12202         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12203         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12204
12205 2000-06-20  Havoc Pennington  <hp@redhat.com>
12206
12207         * modules/linux-fb/Makefile.am: Make this compile
12208         without framebuffer enabled
12209
12210         * gdk/linux-fb/Makefile.am: Add conditional to not build
12211         framebuffer unless specified in configure
12212
12213         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12214         the size of the target instead of source if -1 was passed for
12215         width/height
12216
12217         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12218         width/height confusion.
12219
12220 2000-06-19  Havoc Pennington  <hp@redhat.com>
12221
12222         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12223         GDK_DRAWABLE_XID. In the future, we probably want to make it
12224         faster with G_DISABLE_CHECKS turned on.
12225
12226 2000-06-14  Havoc Pennington  <hp@redhat.com>
12227
12228         * gdk/Makefile.am: add gdkpixmap.c
12229
12230         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12231         s/gdk_image_init/_gdk_windowing_image_init
12232
12233         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12234         ref/unref
12235
12236         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12237
12238         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12239         GdkWindowType is now non-deprecated; 
12240         change gdk_window_get_type() compat to be
12241         gdk_window_get_window_type().
12242
12243         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12244
12245         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12246         virtual GObject. Make all functions call into the vtable.
12247         Move gdk_image_put() guts in here. Remove GdkDrawableType
12248         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12249         draw_image, get_depth, get_size, set_colormap, get_colormap,
12250         get_visual added to the vtable.
12251         
12252         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12253         GObject. Virtualize everything. 
12254         (gdk_gc_new_with_values): remove check for destroyed window,
12255         because now GdkWindow::create_gc will check this.
12256         (gdk_gc_set_values): New function to set GC values, this 
12257         was already implemented but wasn't in the header
12258
12259         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12260
12261         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12262         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12263         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12264         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12265         _gdk_windowing_window_init, rename gdk_image_init to
12266         _gdk_windowing_image_init.
12267         
12268         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12269         (gdk_draw_layout): Remove check for destroyed window, 
12270         because all the drawable methods already check it.
12271         
12272         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12273         Add gdkpixmap.c which contains implementation of GdkDrawable
12274         virtual table (by chaining to a platform-specific implementation
12275         object).
12276         
12277         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12278         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12279         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12280         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12281         GdkColormapPrivate. 
12282
12283         * gdk/gdktypes.h: #include <glib-object.h>
12284
12285         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12286         Move most functionality to platform-specific implementation
12287         object. GdkWindow itself now handles the backing store, then
12288         chains to the platform-specific implementation.
12289         (gdk_window_get_window_type): return GdkWindowType of the window.
12290         (gdk_window_peek_children): New routine, returns the children of 
12291         a GdkWindow
12292         (gdk_window_get_children): Was in X11-specific code and did 
12293         XQueryTree. Changed to simply return a copy of window->children; 
12294         so it can go in cross-platform code.
12295         
12296         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12297
12298         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12299         GdkColormap; just changed to use the new private data instead
12300         of casting to GdkColormapPrivate.
12301
12302         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12303         gdk_cursor_new().
12304
12305         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12306         (private data member in the GObject). 
12307         (xdnd_manager_source_filter): Function had broken 
12308         error handling, fix it (use gdk_error_trap_push).
12309
12310         * gdk/x11/gdkdrawable-x11.c: This file now implements
12311         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12312         base class is purely for the convenience of the X port,
12313         and not part of the interface to cross-platform GDK.
12314
12315         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12316         
12317         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12318         specific to X, and returned by the create_gc virtual method
12319         of GdkDrawableImplX11. 
12320         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12321         rather than gchar, this was also changed in the GdkGC vtable.
12322         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12323         mask is 0, return immediately, instead of checking every flag.
12324         This is faster, and keeps us from segfaulting if values is NULL
12325         and the mask contains some nonzero flags.
12326
12327         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12328         GdkWindow.
12329
12330         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12331         GdkWindowPrivate is gone.
12332
12333         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12334
12335         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12336         remove the image_put stuff that got transferred to GdkDrawable.
12337         
12338         * gdk/x11/gdkinput.c: renamings
12339
12340         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12341
12342         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12343
12344         * gdk/x11/gdkprivate-x11.h: indentation fixes
12345
12346         * gdk/x11/gdkproperty-x11.c: renamings
12347
12348         * gdk/x11/gdkselection-x11.c: renamings
12349
12350         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12351         implements the platform-specific "impl" object.
12352         Moved gdk_window_get_children to gdk/gdkwindow.c
12353
12354         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12355         that no longer exist. Add declaration of GdkGCX11 object here.
12356         Fix all the macros to still work. 
12357
12358         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12359         GdkDragContext from the boxed types since they are now GObjects.
12360
12361         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12362         moved xthickness/ythickness into the instance. GtkStyleClass
12363         functions are now in the standard vtable for GtkStyle, so you have
12364         to create a GObject subclass to write a theme engine.
12365         (gtk_style_copy): fixed a leaked PangoFontDescription
12366         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12367         can be the standard GObject function.
12368         
12369         * Throughout GTK:
12370         s/style->klass->[xy]thickness/style->[xy]thickness
12371         s/pango_layout_unref/g_object_unref/
12372
12373         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12374         
12375         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
12376         accessing GDK internals.
12377
12378         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
12379         accessing GDK internals.
12380
12381 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12382
12383         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
12384
12385         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
12386         problem by calculating event position relative to the trough
12387         rather than the slider.
12388         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
12389
12390         * gdk/gdkgc.h: Add GDK_NOR.
12391
12392         * configure.in, Makefile.am: Add modules top level dir
12393         * configure.in: Only use pangox library if building x11 target.
12394         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
12395
12396 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12397
12398         * gtk/gtkcolorsel.c: Change private class member to be named
12399         private_data throughout the file.
12400
12401         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
12402         private_data to avoid clashing with keyword.
12403
12404 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12405
12406         * gdk/gdkdnd.h: Add comment to remove warning.
12407
12408 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12409
12410         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12411         Byelorussian language; changed the Makefile and file names 
12412         to reflect that.
12413
12414 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12415
12416         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12417         rather than gdk_window_hide; this makes things work
12418         correctly if the window is programmatically hidden while
12419         iconified.
12420
12421 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12422
12423         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12424         cut and paste typo where wrong pixmap was being
12425         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12426
12427 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12428
12429         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12430         Add helper function to compute format / bytes 
12431         relationship. Use in a couple places to fix up
12432         errors which assume 8 * format.
12433
12434         * gtk/gtkselection.c (gtk_selection_request): Use 32
12435         rather than 8 * sizeof (GdkAtom), to work correctly
12436         on Alpha.
12437
12438 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12439
12440         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12441         libgtk.la
12442         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12443         versions
12444
12445         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12446         checking macros return NULL since the function has a return value.
12447
12448 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12449
12450         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12451         GTK+ from building at all.
12452
12453         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12454
12455 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12456
12457         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12458         gtk/Makefile.am: make it possible to configure gtk for different
12459         targets on the same platform. The library name is now 
12460         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12461         flag. Only the x11 target compiles right now.
12462         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12463         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12464         * gdk/nanox/gdk*generic*: delete generic region code.
12465         * gdk/linux-fb/gdk*generic*: delete generic region code.
12466         * README.nanox: update information.
12467         
12468 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12469
12470         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12471         prepend not append. (Pointed out by Brett Hall.)
12472
12473 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12474
12475         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12476
12477 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12478
12479         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12480         need this later, and this makes sure that the atexit for
12481         glib gets called after that for GDK, so atexits are
12482         properly ordered for object leak checking.
12483
12484         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12485
12486         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12487         pango_x_shutdown_display()
12488
12489         * gtk/simple.c (main): Close window on destroy.
12490
12491 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12492
12493         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12494         to treat initial creation different from setting with 
12495         regards to the graphics-exposures parameter, so add a parameter
12496         indicating whether this is initial or not.
12497
12498 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12499
12500         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12501         to sort of work by adding an extra return_exposes arg
12502         to gdk_event_translate() - it might be better to simply
12503         deprecate the function altogether and force people to rewrite
12504         without it. gdk_window_scroll() handles most of it, and where
12505         gdk_window_scroll() doesn't work, simply redrawing more does.
12506
12507         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12508         assertion.
12509
12510         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12511
12512         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12513         bunch of pretty much useless /* Print debugging info */ comments 
12514         which had drifted away from the code they were commenting.
12515
12516 2000-06-02  Havoc Pennington  <hp@pobox.com>
12517
12518         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12519         is in working order.
12520         
12521         * gtk/testtext.c: Change to reflect anonymous mark API
12522
12523         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12524
12525         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12526         field, which was unused.
12527
12528         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12529         saves some typing.
12530
12531         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12532
12533         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12534         flag on the insertion point and selection bound
12535
12536         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12537         make mark-manipulation functions take a GtkTextMark* instead of a
12538         mark name.
12539         
12540         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12541         GtkTextMarkBody; will be used to detect attempts to delete
12542         the permanent marks (insert and selection bound)
12543
12544         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12545
12546 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12547
12548         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12549         flag to on.
12550
12551         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12552         Honor DOUBLE_BUFFRED_FLAG
12553
12554         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12555         function to set the DOUBLE_BUFFERED flag.
12556
12557         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12558         or not exposes done on the widget should be double-buffered.
12559
12560         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12561         to be what would be expected. (Fixes problem with a
12562         g_return_if_fail() validating a TextDirection enumeration)
12563
12564 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12565
12566         * gtk/gtkwidget.c: Remove all references to 
12567         offscreen flag which was no longer used.
12568
12569         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12570
12571         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12572         for non-null label_widget->parent.
12573
12574         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12575         which no longer was used.
12576
12577         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12578
12579         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12580         for null arguments.
12581
12582         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12583         check for destroyed windows.
12584
12585 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12586
12587         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12588         the slave context there.
12589
12590         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12591         identical to GtkWindow.
12592
12593 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12594
12595         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12596         pangox to here, so we can write them independent of rendering
12597         system, using GDK primitives.
12598
12599         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12600         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12601         since we have a rendering-system independent implementation in
12602         terms of draw_glyphs().
12603         
12604         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12605         function to render a single line.
12606
12607         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12608         into ../gdkpango.c, which simplifies things, since we
12609         don't have to deal with raw X gc's.
12610
12611 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12612
12613         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12614         get the logical attributes for a given GtkTextLine.
12615
12616 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12617
12618         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12619         g_locale_get_codeset() to g_get_codeset() change.
12620
12621 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12622
12623         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12624         descriptions.
12625
12626         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12627         the entry.
12628
12629         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12630         redoing (vastly simplifying) for Pango. Still needs quite
12631         a bit of work. (Size selection is currently poor. List of 
12632         predefined sizes is not a good idea, since all of these
12633         sizes won't necessarily be distinct.)
12634
12635 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12636
12637         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12638         CODESET results for LANG=C.
12639
12640 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12641
12642         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12643         which takes a stringized pango font description;
12644         ignore the older 'font' and 'fontset' declarations.
12645
12646         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12647         field with a GdkFont derived via gdk_font_from_description(),
12648         for compatibility. (Should we just remove it entirely?
12649         Probably too much compatibility breakage, but people
12650         should be migrating to the new Pango stuff as quickly
12651         as possible.)
12652
12653 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12654
12655         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12656
12657 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12658
12659         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12660         redoing; there are some bugs in size allocation right
12661         now, the semi-existant distinction between header / day
12662         fonts was removed, but, with Pango, could actually
12663         be made functional in a nice way.
12664         
12665         * gtk/testcalender: Move calender from examples into this
12666         directory as a test program. (We really need to restrcture
12667         testgtk into a whole directory full of tests for every
12668         widget or functionality group, separated into multiple .c
12669         files.)
12670
12671 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12672
12673         * gtk/testgtk.c (file_exists): Fix stupid typo that
12674         was keeping RC file from being loaded.
12675
12676         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12677         RC file font code.
12678
12679 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12680
12681         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12682         Add function to load a GdkFont from a PangoFontDescription.
12683
12684 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12685
12686         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12687         variable should be of type GdkEventPrivate.
12688
12689 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12690
12691         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12692         to have any widget for the label, use a GtkLabel widget
12693         to display the text. (Based partially on a patch from
12694         Anders Carlson.)
12695
12696         (Quite a bit of code reorganization - strip 90% of the
12697         guts out of gtkaspectframe and add a single virtual
12698         func to GtkFrameClass - compute_child_allocation.)
12699
12700 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12701
12702         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12703         (Removed clist->row_center_offset field because caching
12704         it wasn't saving time or code, added private function
12705         _gtk_clist_create_cell_layout()).
12706
12707 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12708
12709         * gtk/gtkaccellabel.c: Pangoized.
12710
12711         * gtk/[hv]ruler.c: Pangoized
12712
12713 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12714
12715         * gtk/gtkfilesel.c (gtk_file_selection_init):
12716         Use gtk_clist_set_column_auto_resize() to remove need
12717         need for manual column width computations.
12718
12719 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12720
12721         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12722         ensuring Pango correctness, and considerably simplifying the
12723         code.
12724         
12725         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12726
12727         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12728         getting of numbers of lines.
12729
12730         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12731         to the actual requested width of the lable, not to the wrap
12732         width we set.
12733
12734         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12735
12736         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12737           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12738
12739         * gtk/gtktextview.c: Fix structure inheritance.
12740
12741         * gtk/gtkprogressbar.c: Pangoize.
12742
12743 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12744
12745         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12746         in a function.
12747
12748         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12749         bug with computing line tops.
12750
12751         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12752
12753 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12754
12755         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12756         and y_offset coordinates to do what we need now. (The offset between
12757         buffer and layout coordinates has been reintroduced, but is a 
12758         bit different than before.)
12759
12760         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12761         handle the adjustments ourselves, and scroll as necessary using
12762         the new gdk_window_scroll().
12763         
12764         The advantage of this is that when we are incrementally revalidating,
12765         we are essentially rearranging things around the visible portion
12766         of the screen. With the old setup, the visible portion of the
12767         screen was moved around in the layout, so scrolling and redrawing
12768         to track that caused jumping of the display. Since we now
12769         control the scrolling ourselves, we can suppress this and
12770         only redraw when things actually change.
12771
12772 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12773
12774         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12775         the region not just redisplay it after-all, since we store the
12776         cursors in the LineDisplay. (Ugly interactions here between
12777         GtkLayout and GtkTextBTree here.)
12778         
12779         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12780
12781 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12782
12783         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12784         Added function to scroll contents of a window while keeping the
12785         window constant. Works by XCopyArea or guffaw-scrolling depending
12786         on the details of how the window is set up. (guffaw-scrolling
12787         still needs to be filled in.)
12788
12789 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12790
12791         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12792         move the debugging that was tied to a global variable
12793         to that.
12794
12795         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12796
12797         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12798         validated flag, in line data instead of setting height/width to
12799         -1. This allows us to perform operations with partially invalid
12800         buffer (using the old size for invalid lines) and thus to do
12801         incremental vaidation. Keep height/width aggregates up to date
12802         when deleting text and rebalancing the tree.
12803
12804         * gtk/gtktextbtree.[ch]: Add functions validate a line
12805         (gtk_text_btree_validate_line), and to validate up
12806         to a number of pixels (gtk_text_btree_validate).
12807
12808         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12809         that indicates that something is changed and a revalidation
12810         pass is needed. Change ::need_repaint to ::changed, and
12811         make it take old and new yranges instead of a rectangle.
12812
12813         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12814         the line_data_destroy() function from 
12815         gtk_text_btree_add_view() to a virtual function in 
12816         GtkTextLayout
12817
12818         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12819         since we are handling partial repaints in a different fashion
12820         now.
12821
12822         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12823         of the selection instead of queueing a repaint on the
12824         entire widget.
12825
12826         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12827         get_selection_bounds() down to btree, make the function
12828         in buffer a wrapper around the btree function.
12829
12830         * gtk/gtktextlayout.[ch]: Add functions to check if the
12831         layout is valid and to recompute either a range of pixels
12832         aroudn a line or a certain total number of pixels.
12833
12834         * gtk/gtktextlayout.[ch]: Cache a single line display;
12835         now that we only redraw the needed portions, the hit rate
12836         for this cache is quite high.
12837         
12838         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12839         on the screen so that when re-laying-out the buffer, we can
12840         keep the same place. This requires connecting to ::value_changed
12841         on the adjustments
12842
12843         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12844         the buffer after we receive an ::invalidated signal.
12845         
12846 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12847
12848         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12849         to max of allocation and layout size, not just to the
12850         layout size.
12851
12852         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12853         Invalidate window so it gets redrawn properly.
12854
12855         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12856         to mean the entire window.
12857
12858         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12859         into public header.
12860
12861 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12862
12863         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12864         to get the name of a mark.
12865
12866         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12867         to find the paragraph from a y position.
12868
12869 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12870
12871         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12872         nodes have width/height >= 0, not > 0.
12873
12874 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12875
12876         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12877         Add a size_only flag, so when we only need the size, we don't create
12878         useless appearance attributes.
12879
12880         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12881         duplicate setting of font description.
12882
12883         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12884
12885 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12886
12887         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12888         EXTRA_DIST. It does not work well when the file that
12889         everything depends on is not in the tarball.
12890
12891 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12892
12893         * gtk/testgtk.c: Some hacks and fixes so that it basically
12894         works when not sitting in the GTK+ build tree.
12895
12896 2000-05-03  Havoc Pennington  <hp@redhat.com>
12897
12898         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12899         Properly determine the ordering of the tag root and the current
12900         line within the tree. Previous algorithm only worked if the tag
12901         root's immediate parent was the common root of both the current
12902         line and the tag root.
12903
12904 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12905
12906         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12907         alignment.
12908
12909         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12910         the widget text directional dynamically.
12911
12912         * gtk/gtktextview.[ch]: Added functions to get and set default
12913         wrap mode.
12914
12915 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12916
12917         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12918         in cursor location computation.
12919
12920 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12921
12922         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12923         vadjusment values properly when layout gets smaller.
12924
12925         * gtk/gtktextview.c (need_repaint_handler): Areas being
12926         passed in are far completely inaccurate, and sometimes
12927         too small, so, for now, just queue a redraw on the
12928         whole visible region.
12929
12930 2000-04-25  Havoc Pennington  <hp@redhat.com>
12931
12932         * gtk/gtktextbtree.c (summary_destroy): new function to 
12933         destroy tag summary nodes
12934         (gtk_text_line_next_could_contain_tag): this function was 
12935         totally broken if the line passed in wasn't below the tag
12936         root. Fix it.
12937         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12938         "wildcard" case, we have to do a linear scan. Blah.
12939         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12940         we have to do the linear scan
12941         (tag_removed_cb): When a tag is removed from the tag table, 
12942         remove the GtkTextTagInfo node from the btree.
12943         (gtk_text_btree_spew): Implement the spew function, for 
12944         our debugging pleasure.
12945
12946 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12947
12948         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12949         a problem with referring to the wrong buffer.
12950
12951         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12952
12953         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12954         font description to gtk_style_new() - otherwise things
12955         don't work without a .gtkrc file.
12956
12957         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12958         tags table if we create it ourself, too.
12959
12960         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12961         it was conflicting with XKB modifiers.
12962
12963         * gtk/gtktextview.[ch]: Add simple support for 
12964         GtkIMContext.
12965
12966 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12967
12968         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12969         with deletion from last commit.
12970
12971 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12972
12973         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12974         in the context from the current locale.
12975         
12976         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12977         context, not hardcoded value.
12978
12979         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12980         not logical.
12981
12982 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12983
12984         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12985         attributes - that doesn't handle partial-glyph selection
12986         properly. Instead use new pango_layout_line_get_x_ranges()
12987         functionality to draw the selection.
12988
12989         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12990         now properly handles out-of-range coordinates.
12991
12992         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12993
12994         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12995         public.
12996
12997         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12998         for paragraphs opposite to the base direction of the widget.
12999
13000         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13001
13002         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13003         causes Arabic words to reshape as you cursor through.
13004
13005         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13006         cursor position when moving vertically with the arrow keys and
13007         scrolling with page-up/page-down. (Arrow keys save only the X,
13008         scrolling saves both X and Y.)
13009
13010         This means you can line-up / line-down or page-up / page-down
13011         without losing your place, and also that moving vertically
13012         with the cursor keys keeps the same X position, not the same
13013         character count:
13014
13015         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13016         arrow keys move by display lines, not paragraphs.
13017
13018 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13019
13020         * gtk/gtklayout.c: Make sure that the bin window is at least
13021         as big as the allocation. (Should we also make sure that the
13022         bin window is big enough to completely cover widget->window?)
13023
13024         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13025         function to get the onscreen rectangle.
13026
13027         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13028         for offsets in window coordinates.
13029
13030 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13031
13032         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13033         confusion.
13034
13035         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13036         from the widget direction.
13037
13038         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13039         Add a "direction" attribute.
13040
13041         * gtk/gtktextview.c: global s/tkxt/text_view/.
13042
13043         * gtk/testtext.c: Added long block of text in Arabic, to test out
13044         the direction attributes. (Some problems with the shaping system
13045         for arabic become obvious - like the fact the cursor splits words
13046         into unjoined pieces.)
13047
13048 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13049
13050         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13051
13052         * gtk/gtktextlayout.c: Fix up alignment.
13053
13054         * gtk/testtext.c: Add some tests for centering, wrapping.
13055
13056 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13057
13058         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13059         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13060         If we wrote GTK+-specific layout-render function this could just replace
13061         the draw_layout() operation in the vtable.
13062
13063         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13064         pango_layout_get_cursor_pos() and use that function.
13065
13066         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13067         is a non-static symbol.
13068
13069         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13070         with gtk_text_btree_find_line_by_y()
13071
13072         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13073         renderer that handles GtkTextAppearance attributes.
13074
13075         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13076
13077           - Move the values in the style that don't affect geometry into a
13078             GtkTextAppearance structure.
13079           - Change underline to take a PangoUnderline and "font" a string
13080             representation of a font description
13081           - Add a "font_desc" attribute which takes a FontDescription structure.
13082
13083         * gtk/gtktextlayout.[ch]:
13084
13085           - Get rid of the display-line list per each line. Instead, we
13086             generate, on demand, a GtkTextLineDisplay structure which]
13087             contains a PangoLayout * and other necesary information
13088             (offsets, cursor locations) for displaying a paragraph.
13089           - Get rid of the code to wrap lines, create display chunks,
13090             etc. Instead, we just go through a paragraph and convert
13091             it into the necessary inputs to a PangoLayout.
13092           - Implement a new attribute type, GtkTextAttrAppearance. This
13093             holds a GtkTextAppearance, and is used to pass colors, 
13094             stipple, etc, through from the layout to the display without
13095             having to use lots and lots of individual attributes.
13096           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13097             in terms of PangoLayout functions.
13098         
13099         * gtk/gtktextview.c: 
13100          
13101           - Handle passing the necessary PangoContext to the layout
13102           - Some fixups in painting to deal with the automatic backing store
13103             and offsetting of GTK+-1.4
13104           - Add a style_set handler so that the default style reacts
13105             properly to theme changes.
13106         
13107         * gtk/gtktext?*.[ch]: Random code-style fixes.
13108
13109         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13110
13111 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13112
13113         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13114         in original form preparatory to Pango-ization and gdkimcontext-ization.
13115
13116 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13117
13118         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13119         so that we can derive from gtkimcontext in language bindings properly.
13120
13121 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13122
13123         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13124         Add a compose table including (almost) all the compose combinations
13125         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13126         data in the XIM implementation.
13127
13128         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13129         Moved functions to convert keyvalues from and to unicode here from
13130         the win32 port and made them public.
13131
13132 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13133
13134         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13135
13136 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13137
13138         * gtk/gtkimcontext.[ch]: Base class for new input context system
13139
13140         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13141         the real input context implementation to be loaded from modules
13142         and switched on the fly.
13143
13144         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13145         context that just does direct keysymbol => unicode translation.
13146
13147         * gtk/gtkentry.[ch]: Start switching editing over to using
13148         GtkInputContext. (No handling of preedit yet.)
13149
13150 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13151
13152         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13153         many substitutions. (klass should not be subsituted.)
13154
13155 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13156
13157         * configure.in: Add checks for Pango
13158
13159         * configure.in docs/Makefile.am: Add test for sgml2html
13160         and allow 'make dist' without building html, but print out
13161         warnings in that case. (For making snapshots)
13162
13163         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13164         Add Pango libraries and C flags
13165
13166         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13167         Add function (gdk_draw_layout) to draw a pango layout.
13168
13169         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13170         for getting Pango contexts for GDK.
13171
13172         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13173
13174         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13175         editing.
13176
13177         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13178         keysym => unicode translations. More languages can be added
13179         here, but real input-method support is needed.
13180
13181         * docs/Changes-1.4.txt: Added note about entry behavior.
13182         
13183         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13184         to set the reading direction for a widget and the global direction.
13185         Add test which allows toggling the global direction. Two private
13186         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13187
13188         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13189           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13190
13191         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13192
13193         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13194         underlining now handled by Pango.
13195
13196         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13197         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13198         is temporary.)
13199
13200         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13201         convenience functions for creating contexts and layouts for widgets.
13202
13203         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13204
13205 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13206
13207         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13208         titles to be active, even if they aren't visible.
13209         (gtk_clist_column_titles_passive):  Ditto.
13210
13211 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13212
13213         * gtkmenu.c:
13214         * gtkmenu.h:
13215         * gtktypeutils.h: Spelling/grammar fixes in comments.
13216
13217 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13218
13219         * gdk/nanox/*.h: add missing header files.
13220
13221 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13222
13223         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13224         send_event to TRUE.
13225         (gtk_drawing_area_size): queue a resize.
13226
13227 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13228
13229         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13230         the handlers, also invalidate them. bug nailed down by Karl Nelson
13231         <kenelson@ece.ucdavis.edu>.
13232
13233 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13234
13235         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13236         "(nil)" foundries, patch from Grigorios Magklis.
13237
13238         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13239         on non-available fonts, based on a patch by Grigorios Magklis
13240         <maglis@cs.rochester.edu>.
13241
13242 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13243
13244         * gdk/x11/gdkregion-generic.c: If a region does not have any
13245         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13246         instead of GDK_OVERLAP_RECTANGLE_IN.
13247
13248 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13249
13250         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13251         OFFSCREEN, as it is no longer necessary.
13252
13253 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gtk/gtkcolorsel.c: Patch from David Santiago
13256         <mrcooger@cyberverse.com> to change things so that the 
13257         indicator of the active palette entry is done independently,
13258         not via the focus, since it should always be visible.
13259
13260 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13261
13262         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13263         refcount leaks as in the X11 backend.
13264
13265         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13266         cosmetics.
13267
13268         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13269         backend. Add _gdk_windowing_window_destroy().
13270
13271         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13272         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13273         either, but these probably do exist on nanox?)
13274         
13275         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13276         which isn't necessarily defined by <math.h>.
13277
13278         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13279         ancestry past GtkObject.
13280
13281         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13282         from DLL on Win32.
13283
13284         * gtk/gtk.def: Update corresponding to recent changes.
13285
13286         * gtk/makefile.{cygwin,msc}: Updates.
13287
13288 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13289
13290         * docs/Changes-1.4.txt: A bit of editing.
13291
13292         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13293         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13294         to clear the update area for the window, and clear it
13295         when hiding a window.
13296
13297         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13298         if window destroyed.
13299
13300         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13301
13302         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13303         gdk_window_destroy() to the generic code, since there was a lot of 
13304         window-system-independent logic it in. Add a function:
13305         
13306          _gdk_window_destroy() 
13307
13308         to the internal API to destroy a window without unreferencing it.
13309         Add a function:
13310
13311          _gdk_windowing_window_destroy()
13312
13313         That does the windowing-system-dependent part of destroying 
13314         the window.
13315
13316 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13317
13318         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13319
13320 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13321
13322         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13323         Make gtk_widget_shape_combine_mask() keep a reference count on
13324         the pixmap since it keeps it around.
13325
13326 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13327
13328         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13329         leak.
13330
13331         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13332         leak with event filters.
13333
13334 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13335
13336         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13337         signal handlers with the right data arguments. (Fixes
13338         some warnings when a widget was repeatedly set as a drag
13339         destination.)
13340
13341         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13342         window so we can avoid avoid setting the DND properties on the
13343         toplevel window repeatedly.
13344
13345 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13346
13347         * gdk/win32/gdkwin32.h: Define more message types missing from
13348         mingw headers.
13349
13350         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13351         call gdk_window_destroy_notify(). It was never called. This
13352         probably meant that the GdkWindow was never freed. Thanks Owen for
13353         noticing (!).
13354
13355         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13356         window as destroyed before calling DestroyWindow(). DestroyWindow()
13357         causes a call to the window procedure (gdk_WindowProc), which
13358         calls gdk_event_translate(), which calls
13359         gdk_window_destroy_notify(), which gets confused unless the window
13360         is set as destroyed.
13361
13362         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13363         this function to indicate it's win32 only. Put inside #ifdef
13364         G_ENABLE_DEBUG.
13365
13366         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13367         debugging function. (gdk_event_translate:) Add a default branch
13368         that uses the above function to print debug messages with all
13369         Windows messages symbolically.
13370
13371         * gdk/win32/gdkprivate-win32.h: Declare it, and
13372         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13373
13374 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13375
13376         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
13377         public header file.
13378
13379 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
13380
13381         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
13382
13383         * gtk/gtktext.c: made the adjustments no-construct args, simply
13384         provide default adjustments.
13385         (gtk_text_destroy): release adjustments.
13386
13387         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
13388         adjustment argument non-construct.
13389
13390         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
13391         instead of in finalize.
13392         (gtk_progress_get_text_from_value): 
13393         (gtk_progress_get_current_text): 
13394         (gtk_progress_set_value): 
13395         (gtk_progress_get_percentage_from_value): 
13396         (gtk_progress_get_current_percentage): 
13397         (gtk_progress_set_percentage): 
13398         (gtk_progress_configure): ensure an adjustment is present.
13399
13400 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
13401
13402         * gtk/gtkcolorsel.[hc]:
13403         * gtk/gtkcolorseldialog.[hc]:
13404         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13405         their parent implementation, use bit fields for boolean values, don't
13406         create unused widgets, usage of glib types, braces go on their own
13407         lines, function argument alignment, #include directives etc. etc. etc..
13408
13409         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13410
13411 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13412
13413         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13414
13415         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13416         of NULL.
13417
13418         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13419         to freed data.
13420         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13421
13422         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13423         to NULL when the toplevel is getting destroyed.
13424         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13425         (gtk_menu_destroy): 
13426         (gtk_menu_init): store the information of whether we have to
13427         readd the initial child ref_count during destruction in a new
13428         GtkMenu field needs_destruction_ref_count.
13429
13430         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13431         here, those reading: learn from my mistake! ;)
13432         in order for set_?adjustment to support a default adjustemnt if
13433         invoked with an adjustment pointer of NULL, the code read (pseudo):
13434         if (v->adjustment) unref (v->adjustment);
13435         if (!adjustment) adjustment = adjustment_new ();
13436         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13437         now imagine the first unref to actually free the old adjustment and
13438         adjustment_new() creating a new adjustment from the very same memory
13439         portion. here, the latter comparision will unintendedly fail, and
13440         all hell breaks loose.
13441         (gtk_viewport_set_hadjustment):
13442         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13443         after unreferencing it.
13444
13445         * gtk/gtkcontainer.[hc]: removed toplevel registration
13446         functions: gtk_container_register_toplevel(),
13447         gtk_container_unregister_toplevel() and
13448         gtk_container_get_toplevels() which had wrong semantics
13449         anyways: it didn't reference and copy the list.
13450
13451         * gtk/gtkwindow.c: we take over the container toplevel registration
13452         bussiness now. windows are registered across multiple destructions,
13453         untill they are finalized. the initial implicit reference count
13454         users are holding on windows is removed with the first destruction
13455         though.
13456         (gtk_window_init): ref & sink and set has_user_ref_count, got
13457         rid of gtk_container_register_toplevel() call. add window to
13458         toplevel_list.
13459         (gtk_window_destroy): unref the window if has_user_ref_count
13460         is still set, got rid of call to
13461         gtk_container_unregister_toplevel().
13462         (gtk_window_finalize): remove window from toplevel list.
13463         (gtk_window_list_toplevels): new function to return a newly
13464         created list with referenced toplevels.
13465         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13466
13467         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13468         adjustment a non-construct arg.
13469         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13470         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13471         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13472
13473         * gtk/gtkrange.c: added some realized checks.
13474         (gtk_range_destroy): get rid of the h/v adjustments in the
13475         destroy handler instead of finalize. remove timer.
13476         (gtk_range_get_adjustment): demand create adjustment.
13477
13478         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13479         we simply create them on demand now and get rid of them in
13480         the destroy handler.
13481         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13482         destroy handler instead of finalize.
13483         (gtk_viewport_get_hadjustment): 
13484         (gtk_viewport_get_vadjustment): 
13485         (gtk_viewport_size_allocate): demand create h/v adjustment
13486         if required.
13487
13488         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13489         gtk_widget_real_destroy () functionality.
13490         (gtk_widget_real_destroy): reinitialize with a new style, instead
13491         of setting widget->style to NULL.
13492
13493 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13494
13495         * gtk/gtkcalendar.c:
13496         * gtk/gtkbutton.c: ported _get_type() implementation over to
13497         GType, either to preserve memchunks allocation facilities,
13498         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13499
13500         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13501         over. prepare for ::destroy to be emitted multiple times.
13502         removed reference tracer magic. chain into GObjectClass.shutdown()
13503         to emit ::destroy signal.
13504
13505         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13506         fundamental.
13507
13508         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13509         cludge.
13510
13511         * gtk/gtksocket.c:
13512         * gtk/gtkplug.c:
13513         * gtk/gtklayout.c:
13514         * gtk/gtklabel.c:
13515         * gtk/gtkargcollector.c:
13516         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13517         not being a fundamental anymore, and to work with the new
13518         type system (nuked fundamental type varargs clutter).
13519
13520         * gtk/*.c: install finalize handlers in the GObjectClass
13521         part of the class structure.
13522         changed direct GTK_OBJECT()->klass accesses to
13523         GTK_*_GET_CLASS().
13524         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13525
13526         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13527         GType. made most of the GTK_*() type macros and Gtk* typedefs
13528         simple wrappers around macros and types provided by GType.
13529         most notably, a significant portion of the old API vanished:
13530         GTK_TYPE_MAKE(),
13531         GTK_TYPE_SEQNO(),
13532         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13533         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13534         GTK_TYPE_ARGS,
13535         GTK_TYPE_CALLBACK,
13536         GTK_TYPE_C_CALLBACK,
13537         GTK_TYPE_FOREIGN,
13538         GtkTypeQuery,
13539         gtk_type_query(),
13540         gtk_type_set_varargs_type(),
13541         gtk_type_get_varargs_type(),
13542         gtk_type_check_object_cast(),
13543         gtk_type_check_class_cast(),
13544         gtk_type_describe_tree(),
13545         gtk_type_describe_heritage(),
13546         gtk_type_free(),
13547         gtk_type_children_types(),
13548         gtk_type_set_chunk_alloc(),
13549         gtk_type_register_enum(),
13550         gtk_type_register_flags(),
13551         gtk_type_parent_class().
13552         replacements, where available are described in ../docs/Changes-1.4.txt.
13553         implemented compatibility functions for the remaining API.
13554
13555         * configure.in: depend on glib 1.3.1, use gobject module.
13556
13557 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13558
13559         * TODO.xml: Various updates to current status.
13560
13561 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13562
13563         * gtk.m4: Print out version when test succeeds.
13564
13565 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13566
13567         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13568         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13569         
13570         (Original triangle color selector from Simon Budig
13571         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13572         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13573         Santiago <mrcooger@cyberverse.com>)
13574
13575         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13576         out into a separate widget.
13577
13578         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13579         and opacity controls.
13580
13581 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13582
13583         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13584         snuck in prematurely.
13585
13586 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13587
13588         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13589         had deleted a ! operator by mistake, which caused
13590         GDK_SELECTION_CLEAR events never to be generated, which caused
13591         only the first copy to the clipboard from an gtkeditable to
13592         actually cause a copy to the Windows clipboard.
13593
13594 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13595
13596         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13597         compilation, too. Current mingw gcc distributions include the
13598         necessary headers. Also the necessary IIDs are now in mingw
13599         headers/libraries, and own definitions unnecessary.
13600
13601         More hacking on OLE2 DND, still doesn't work though, and thus
13602         ifdeffed out.
13603
13604         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13605         here, too.
13606
13607 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13608
13609         * gdk/nanox/*: nano-X port work in progress.
13610         * gdk/simple.c: simple test for Gdk.
13611         * README.nanox: notes about the port: read this first!
13612         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13613         with nano-X.
13614
13615 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13616
13617         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13618         gdk_window_clear() into common code, implement in terms of
13619         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13620         not redirected to the backing rectangle.
13621
13622 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13623
13624         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13625         EXTRA_DIST. It does not work well when the file that
13626         everything depends on is not in the tarball.
13627
13628 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13629
13630         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13631         with recursion where process_updates() is called from
13632         an expose handler. (GtkTextView is highly broken in
13633         doing this, but it should work, so it is a nice test
13634         case.)
13635
13636 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13637
13638         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13639         handle the case where updates are queued during processing of
13640         updates.
13641
13642 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13643
13644         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13645         window is on gdk_display - use that instead of segfaulting.
13646
13647 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13648
13649         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13650         broken and require an empty arg, give it to them.
13651
13652 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13653
13654         * gtk/gtklabel.h: indentation fixes.
13655
13656 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13657
13658         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13659         draw too narrow or too low arcs, they seem to fail, at least with
13660         some display drivers.
13661
13662         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13663
13664         Large changes to the Win32 backend, partially made necessary by
13665         the changes to the backend-independent internal
13666         structures. Attempts to implement similar backing store stuff as
13667         on X11. The current (CVS) version of the Win32 backend is *not* as
13668         stable as it was before the no-flicker branch was merged. A
13669         zipfile with that version is available from
13670         http://www.gimp.org/win32/. That should be use by "production"
13671         code until this CVS version is usable. (But note, the Win32
13672         backend has never been claimed to be "production quality".)
13673
13674         * README.win32: Add the above comment about versions.
13675
13676         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13677
13678         * gdk/gdk.def: Update.
13679
13680         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13681         presumably be replaced by some more better mechanism as 1.4 gets
13682         closer to release shape.
13683
13684         * gdk/makefile.{cygwin,msc}: Update.
13685
13686         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13687         internal headers. Change code according to changes in these. Use
13688         gdk_drawable_*, not gdk_window_* where necessary.
13689
13690         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13691         our old DND.
13692
13693         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13694         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13695         Use correct function name in warning messages.
13696
13697         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13698         GSourceFuncs gdk_event_prepare and gdk_event_check.
13699         (gdk_event_get_graphics_expose): Do implement, use
13700         PeekMessage. Thanks to Hans Breuer.
13701         (event_mask_string): Debugging function to print an GdkEventMask.
13702         (gdk_pointer_grab): Use it.
13703
13704         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13705         (old) book I used claimed was Hangul actually is CJK Unified
13706         Ideographs Extension A. Also, Hangul Syllables were missing.
13707         Improve logging.
13708
13709         * gdk/win32/gdkgc-win32.c: Largish changes.
13710
13711         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13712         g_win32_getlocale() from GLib, and not setlocale() to get current
13713         locale name.
13714
13715         * gdk/win32/gdkprivate-win32.h
13716         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13717         gdkwin32.h, similarily as in the X11 backend.
13718
13719         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13720         assignment was used instead of equals in if test. Thanks to Hans
13721         Breuer.
13722
13723         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13724         the X11 version.
13725
13726         * gdk/win32/makefile.{cygwin,msc}
13727         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13728         path to the Win32 headers that works also with the mingw compiler.
13729
13730         * gtk/gtkstyle.c: Include <string.h>.
13731
13732 2000-04-26  Havoc Pennington  <hp@redhat.com>
13733
13734         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13735         replacing the broken gtk_label_get ()
13736
13737 2000-04-15  Havoc Pennington  <hp@pobox.com>
13738
13739         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13740         this keeps scanner scripts from getting confused.
13741
13742         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13743         data, rather than void
13744
13745 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13746
13747         * gtk/gtkclist.c (gtk_clist_motion)
13748         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13749         with is_hint FALSE, get x and y from the event. They used to be
13750         used uninitialised. The Win32 backend never sends motion events
13751         marked as hints. This for instance fixes the annoying file and
13752         font selector behaviour in the Win32 version.
13753
13754 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13755
13756         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13757         gtk_private_n_signals variables, they are used by some software,
13758         sigh.
13759
13760         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13761         installation directory from the Registry, where the installer
13762         should have put it.
13763
13764 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13765
13766         * gdk/x11/Makefile.am: Fix problem with installation directory for
13767         gdkx.h
13768
13769         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13770         <mrcooger@cyberverse.com> so that when selecting menus with the
13771         mouse, the first item will not be selected, but when selecting
13772         with an accelerator, or navigating left-right on a menubar with
13773         the menus popped up, the first item will be selected.
13774
13775 2000-04-05  Dan Damian  <dand@dnttm.ro>
13776
13777         * configure.in: Added "ro" to ALL_LINGUAS.
13778
13779 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13780
13781         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13782         indentation.
13783
13784         * Makefile.am (EXTRA_DIST): Fix typo.
13785
13786         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13787         to catch gdkconfig.h
13788
13789         * gtk/gtkitemfactory.c: Added FIXME.
13790
13791 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13792
13793         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13794         s/return_if_fail/return_val_if_fail/g and add a return value.
13795
13796 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13797
13798         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13799         merge slipup.
13800
13801         * gdk/gdkinput.h: Fix missing line from merge.
13802
13803 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13804
13805         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13806         instead of gdkprivate.h.
13807
13808 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13809
13810         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13811         parent class to correctly be GtkDialogClass.
13812
13813 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13814
13815         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13816         toplevel windows and their immediate children by their parents,
13817         since the size of toplevel windows is out of our immediate
13818         control and we don't get any real benefit from trying to track
13819         this size for clipping.
13820
13821         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13822         for input_only windows.
13823
13824         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13825         to fix some hacks and make sure that we don't try to set the
13826         background of input only windows.
13827
13828 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13829
13830         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13831         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13832         stuff that we've traditionally exposed.
13833
13834         * gdk/**.c: Use gdkinternals.h where appropriate.
13835
13836         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13837         not include gdkprivate-x11.h, move all stuff of conceivable public
13838         interest into gdkx.h; keep all really private stuff in
13839         uninstalled header gdkprivate-x11.h.
13840
13841         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13842         image->image_put on windows through a new function _gdk_window_draw_image()
13843         to allow us to do backing store for images. (Sort of ugly)
13844
13845         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13846         contexts locally so that we can offset them properly when drawing 
13847         onto backing pixmaps.
13848
13849         * gdk/gdkinput.h: Reindented
13850
13851         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13852         pixmap or color for the window, so we can properly initialize
13853         our double-buffer pixmaps, and also so that we temporarily set
13854         a background of None while scrolling.
13855
13856         * gdk/gdkregion.h: Revise region boolean operators to have an
13857         interface that is actually convenient - switch from creating new
13858         regions on every op, to "methods" that modify existing regions
13859         (A = A OP B). 3 argument forms which allow dest == src, would also
13860         be possible, but the current interfaces seem to map nicely
13861         onto what needs to be done. (There is quite a lot of region
13862         code in GDK now.)
13863
13864         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13865         operator.
13866
13867         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13868         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13869         to 32 bit coordinates, modify it to be mostly GTK+ style
13870         and to have interfaces that match gdkregion.h.
13871
13872         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13873         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13874         create a backing pixmap and redirect all drawing to
13875         that backing pixmap until a matching gdk_window_end_paint().
13876
13877         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13878         Create a special drawable class for GtkWindow's that 
13879         redirects the drawing to the backing pixmap as necessary
13880         and then calls the real operations in _gdk_windowing_window_class.
13881
13882         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13883         Store invalid region for each window. Generate expose events for invalid
13884         region in an idle. This replaces both the expose compression
13885         and the redrawing queuing in GTK+. It is both more efficient and
13886         simpler than either one individually and far more so then the
13887         combination.
13888
13889         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13890         Emulate 32 bit coordinates for windows with 16 bit coordinates
13891         by offsetting drawing, guffaw scrolling techniques and
13892         mapping/unmapping child windows as necessary.
13893
13894         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13895         where, when invalid regions are processed, the region is stored,
13896         and if expose events come in that are detectably duplicate
13897         the processed exposes (by comparison of event serial numbers),
13898         the stored region is subtracted out of those exposes.
13899
13900         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13901         regions newly exposed when scrolling or resizing windows.
13902         This, combined with forcing processesing of queued invalidated
13903         regions, gives nice flicker-free scrolling.
13904
13905         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13906         invalidated regions after every scroll.
13907
13908         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13909         emulation in GDK. Its, for all practical purposes just a
13910         GtkViewport/GtkFixed hybrid now.
13911
13912         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13913         (16-bit) structures as necessary instead of just casting.
13914
13915         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13916         in terms of the structures from gdkregion-generic.c, using appropriate
13917         offsets from GDK to X11 coordinates. Cache clip mask and
13918         origin and ts origin locally and only flush to the server
13919         when drawing, to avoid constantly setting and resetting these
13920         values when offsetting GC's for scrolling and backing pixmaps.
13921
13922         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13923
13924         * gtk/gtkcontainer.c: Call process_all_updates at end
13925         of resizing to reduce flicker. (Avoids having redraw
13926         lag arbitrarily behind resize under some circumstances)
13927
13928         * gtk/gtkentry.c: Remove old backing store code, and simply take
13929         advantage of the new backing store capabilities of GDK.
13930
13931         * gtk/gtkmain.c: Simple implementation of widget backing
13932         store - simply push a paint while handling each expose.
13933         (Should really be configurable widget for widget.)
13934         
13935         * gtk/gtkwidget.c: Remove all the old complicated redraw
13936         code, and simply invalidate the GDK windows from
13937         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13938         debugged complexity ... gone to the winds.)
13939
13940         Remove all the code for suppressing expose events while
13941         resizes are pending; this isn't needed since the invalid
13942         areas won't be processed until after the resizes are
13943         processed, since they are in a lower priority idle.
13944
13945 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13946
13947         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13948         and height of dest rectangle for non-intersecting rectangles.
13949
13950 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13951
13952         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13953         for GdkRectangle.
13954
13955 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13956
13957         * gdk/gdk{events,image,private,types,window}.h
13958          gdk/x11/gdkinputprivate.h: Change all coordinates
13959          from int16 to int. Also, Change width and height from
13960          unsigned to signed to avoid all the stupid C 
13961          signedness bugs.
13962
13963 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13964
13965         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13966         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13967         Add some more detailed checking.
13968
13969         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13970         New function to retrieve the depth of a drawable.
13971
13972         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13973         field, reorder fields to save memory. 
13974
13975 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13976
13977         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13978         of the background image instead of scaling the background down to
13979         a line.
13980
13981         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13982         which temporarily set slider to wrong size.
13983
13984         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13985         queue_clear().
13986
13987 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13988
13989 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13990
13991         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13992
13993 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13994
13995         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13996         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13997
13998         * gdk/win32/gdkfont-win32.c
13999         * gdk/win32/gdkproperty-win32.c
14000         * gdk/win32/gdkselection-win32.c
14001         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14002         now declared such.
14003
14004 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14005
14006         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14007
14008 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14009
14010         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14011         is called without trapping X errors.
14012
14013 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14014
14015         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14016         way into the fontset lists.
14017
14018 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14019
14020         * gtk/gtkthemes.h: add extern "C" scope.
14021
14022 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14023
14024         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14025         to make appends to the list constant. (gtk-guy-990901-0.patch)
14026
14027 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14028
14029         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14030         for the typename hash table.
14031
14032 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14033
14034         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14035         to make sure we never divide by zero. 
14036         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14037
14038 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14039
14040         * gtk/gtkfontsel.c: Apply patch from
14041         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14042         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14043
14044         Also, some cleanups in atom handling.
14045
14046 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14047
14048         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14049         not GtkWidget.
14050
14051 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14052
14053         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14054         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14055         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14056         more guint wrap-around bugs before going to bed.
14057
14058 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14059
14060         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14061         guint wrap arounds in allocation.width.
14062
14063         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14064         process untill we fit the allocation given.
14065
14066 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14067
14068         * gtk/gtkwidget.c:
14069         (gtk_widget_unrealize): guard widget access with ref/unref
14070         around signal emission.
14071         (gtk_widget_hide): same here, but also check its destroyed
14072         state before queueing a resize.
14073
14074 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14075
14076         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14077         of gtk_default_insensitive_bg as insensitive base color.
14078
14079         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14080         to the widget's state.
14081         (gtk_text_realize): same here.
14082         (gtk_text_state_changed): same here.
14083         (draw_bg_rect): compare background color against base[] from
14084         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14085
14086 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14087
14088         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14089         grabs are active, unless a delete event is send to the toplevel
14090         of the currently grab holding widget.
14091
14092 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14093
14094         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14095         debugging g_print's.
14096
14097 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14098
14099         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14100         ever make the scrolled-window requisition ever depend on the 
14101         visibility state of the scrollbars for the AUTOMATIC policy. 
14102         This breaks the GTK+ requisition model, and causes loops.
14103
14104 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14105
14106         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14107         the default font to avoid problems with XFree86-4.0 where the
14108         default charset is iso10646-1, not iso8859-1.
14109
14110 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14111
14112         * acinclude.m4
14113         * config.guess
14114         * config.sub
14115         * ltconfig
14116         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14117
14118         * gtk/Makefile.am: minor cosmetic consistency tweak
14119
14120 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14121
14122         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14123         the activate_time to 0, so that we handle a quick
14124         press/release press/release properly and don't suppress
14125         the second release. (Red Hat bug #7545)
14126
14127 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14128
14129         * gtk/gtkctree.c (row_delete):
14130         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14131         bugs with destruction notifier, *always* update internal
14132         structures *before* calling user code.
14133
14134 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14135
14136         A few more fixes for bug #5487, #2051, #2677.
14137         * gtk/gtkclist.c : 
14138         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14139         not GDK_BUTTON_PRESS.
14140         (resync_selection): resync only if selection_mode is
14141         GTK_SELECTION_EXTENDED
14142         * gtk/gtkctree.c (resync_selection): same here
14143
14144 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14145
14146         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14147         gdk_drag_get_selection() and gtk_menu_detach().
14148
14149         [ From Jeroen Ruigrok/Asmodai ]
14150
14151 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14152
14153         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14154         page->tab_label can be NULL.
14155
14156 2000-01-25  Havoc Pennington  <hp@pobox.com>
14157         
14158         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14159         arg is boolean
14160
14161         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14162
14163         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14164
14165         * gdk/gdkproperty.c (gdk_property_get): return boolean
14166
14167         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14168
14169         * gdk/gdkim.c (gdk_im_ready): return boolean
14170
14171         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14172
14173         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14174         glib clash, should fix glib)
14175
14176         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14177         (gdk_get_show_events): return gboolean, and canonicalize 
14178         to TRUE/FALSE
14179
14180         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14181         colormap is private
14182         (gdk_colors_alloc): gboolean whether to be contiguous
14183         (gdk_color_equal): return gboolean since we are a predicate
14184         and not a qsort() (this looks semi-wrong due to glib breakage,
14185         IMO glib should be fixed)
14186         
14187         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14188         (gdk_get_use_xshm): return gboolean
14189         (gdk_pointer_is_grabbed): return gboolean
14190
14191         * gdk/gdk.h: Change prototypes to match all the above changes,
14192         and re-run egtk-format-protos as required.
14193
14194 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14195
14196         * gtk/gtkctree.c (resync_selection): 
14197         * gtk/gtkclist.c (resync_selection):
14198
14199         Return immediately if clist->drag_pos < 0. This is a workaround
14200         for the corrupt state that the clist gets into when a
14201         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14202
14203         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14204         
14205         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14206         variable from recent commit.
14207
14208 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14209
14210         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14211
14212 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14213
14214         * gtk/Makefile.am: prefix all autogenerated source that get build in
14215         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14216         in builddir. since we subsequently cd into srcdir for autogeneration,
14217         the paths have to be stripped from the target file names, thusly we
14218         use $(@F) as target names now.
14219         put a comment about configure.in's --disable-rebuilds option,
14220         which can be used for non-writable source directories, for development
14221         setups though, srcdir has to be *writable*.
14222
14223 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14224
14225         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14226           Finish the job of allowing event to be NULL.
14227           (Fixes bug #4283, reported by Chris Blizzard)
14228
14229         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14230           things so that the cursor appears on screen, properly
14231           take into account INNER_BORDER.
14232           (Fixes bug #4754, reported by Antonio Campos)
14233
14234 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14235
14236         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14237           show the tab_label unless it itself is visible.
14238
14239           gtk/gtknotebook.c (gtk_notebook_size_request):
14240           Do a better job of making sure that the visibility
14241           of the tab label corresponds to whether it should
14242           be mapped or not.
14243
14244 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14245
14246         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14247           Use the requisition, not the allocation, since the
14248           allocation has not necessarily been computed yet.
14249           (Pointed out by Eugene Osintsev)
14250
14251 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14252
14253         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14254           style/base[GTK_STATE_INSENSITIVE] both to
14255           gtk_default_insensitive_bg!
14256           (Bug #2187, reported by Jonathan Blandford)
14257
14258         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14259           Add Alt_L, Alt_R to list of invalid accelerators.
14260           (Bug #3736, reported by Vlad Harchev)
14261
14262 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14263
14264         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14265         bugs which occured after an attempt to open 
14266         invalid home directory left cmpl_state->reference_dir == NULL.
14267
14268          - completion on files in home directory didn't work
14269          - completion on an empty string caused  segfault
14270
14271          (Bug #3678, reported by Steve Ratcliffe)
14272
14273         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14274         cut and paste error that was causing scales to
14275         be incorrectly positioned.
14276         (Bug #2956,
14277          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14278
14279 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14280
14281         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14282         when checking for dcgettext, if we've found we needed
14283         it for dgettext.
14284 +
14285 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14286
14287         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14288         queue_clear on NO_WINDOW widgets during a reparent,
14289         since at that point the window and widget heirarchies
14290         are out of sync. This stops crashing in some cases
14291         (the scrolled window reparent test, for instance), and
14292         _probably_ won't cause drawing errors.
14293
14294         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14295         test do what it was supposed to do and be robust against
14296         window closings, etc. (Bug #2443)
14297
14298 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14299
14300         * gtk/gtkentry.c: Fix return values on mouse events.
14301         (Bug #2686, Sky <seb_sky@yahoo.com>)
14302
14303         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14304         (pointed out by George Lebl)
14305
14306         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14307         (From Ettore Perazzoli  <ettore@helixcode.com>)
14308  
14309 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14310
14311         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14312         clicks between rows or outside calender area correctly.
14313         (Patch from Damon Chaplin)
14314
14315         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14316         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14317           Call destroy function when overwriting existing data. 
14318           (Pointed out by Damon Chaplin)
14319
14320 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14321
14322         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14323           which was causing problems on various systems with Xmu.
14324           This hasn't been needed for a very long time.
14325           (Fixes #1185 3167)
14326
14327 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14328
14329         * gdk/gdki18n.h: Include <ctype.h> when defining
14330           gdk_isw* in terms of is* as a fallback.
14331           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14332
14333 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14334
14335         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14336           realize the widget when it is size allocated!
14337           (old, old bug)
14338
14339         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14340           Removed unused call to gdk_window_get_size() that
14341           showed up when the above was fixed.
14342
14343 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14344
14345         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14346           fix up widget->window when the widget is a
14347           NO_WINDOW container widget.
14348
14349 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14350
14351         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14352           to account for the fact that feof() does _not_ 
14353           return TRUE on errors, and thus avoid infinite loops
14354           when trying to use gdk_pixmap_create_from_xpm()
14355           on unreadable values.
14356
14357 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14358
14359         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14360
14361 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14362
14363         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14364           gdk_gc_set_dashes to take gint8 instead of gchar to
14365           make it clearer that it is _not_ a NULL terminated string.
14366
14367         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14368           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14369           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14370           arguments.
14371
14372 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14373
14374         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14375         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
14376         background size relative to our allocation, guard against small
14377         allocations, we may have not yet been size allocated.
14378
14379 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
14380
14381         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
14382         not just version == 3. We implement all 3 + most of 4 - 
14383         (we don't support matching text/plain;charset=iso-8859-1
14384         to a dest that expects text/plain). We'll still advertise
14385         3 to be safe, but any client implementing version >= 3
14386         must interoperate with 3.
14387         
14388 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14389
14390         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
14391         background and gc members, add a warning in gtk_tooltips_set_color()
14392         indicating that this function is deprecated.
14393
14394 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
14395
14396         * docs/gtkfaq.sgml: FAQ Update:
14397           - Minor cleanups (Emmanuel, me)
14398           - New questions:
14399                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
14400                 How can I retrieve the text from a GtkMenuItem? (timj)
14401                 How do I validate/limit/filter the input to a GtkEntry? (me)
14402                 Memory does not seem to be released when I free the list
14403                         nodes I've allocated (timj)
14404
14405 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14406
14407         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14408         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14409         for which it is no use to call GetLastError onWin9x.
14410         (gdk_other_api_failed) New function, for general error
14411         reporting without calling GetLastError.
14412         (gdk_win32_api_failed) OTOH, this function always calls
14413         GetLastError. (gdk_win32_last_error_string) Remove this function,
14414         GLib has the equivalent now.
14415
14416         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14417         call them with function name, file name and line number in the
14418         arguments.
14419
14420         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14421         functions.
14422         
14423         * gtk/gtk.def: Add some missing entry points.
14424
14425         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14426         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14427         
14428         Fixes by Hans Breuer:
14429
14430         * gdk/makefile.msc: Update for debugging.
14431
14432         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14433         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14434         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14435         in the dash_list.
14436
14437         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14438         the x11 backend.
14439
14440         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14441
14442         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14443
14444 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14445
14446         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14447         just pixel value of background colour.
14448
14449         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14450         containing code snippet previously duplicated in a couple of
14451         places.
14452         
14453         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14454         gdk_colormap_color.
14455
14456         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14457         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14458         events for autorepeated Shift, Control and Alt keys. Use
14459         gdk_colormap_color.
14460
14461         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14462         pointer is inside the window the cursor of which we are setting,
14463         call SetCursor immediately.
14464
14465         * gdk/win32/makefile.cygwin
14466         * gtk/makefile.cygwin: If we don't have the build number stamp
14467         file, use zero.
14468
14469         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14470         gtk_paned_set_gutter_size as empty.
14471
14472         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14473         
14474 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14475
14476         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14477           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14478           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14479           docs/gtk_tut.sgml docs/gtk.texi TODO:
14480
14481           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14482
14483 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14484
14485         * gtk/gtkcalendar.c: Implement num_marked_dates,
14486           and don't emit mutiple day_selected signals on
14487           month_prev.
14488
14489 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14490
14491         * docs/make-todo (lineno): let title and logo be configurable so
14492         that GNOME can use this script too.
14493
14494         * TODO.xml: added logourl and a title
14495
14496 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14497
14498         * TODO.xml: Added some UI items, and an explanatory
14499         comment at the top of the file.
14500
14501 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14502
14503         * TODO.xml: some updates, added abunch of new entries.
14504         a note for those fiddeling with this file, when done
14505         with it, invoke:
14506         $ ./docs/make-todo TODO.xml >/dev/null
14507         and correct output errors before comitting changes.
14508
14509 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14510
14511         * TODO.xml: Added XML-structured TODO file.
14512         * docs/make-todo: python script to turn TODO.xml into
14513           pretty XML output. 
14514
14515 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14516
14517         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14518         the function to let it draw the seven dots, instead of the old,
14519         much maligned, method.
14520         (draw_dot): New function to draw a dot.
14521
14522         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14523         to draw the handle inside the border width as opposed to outside.
14524         Use paint function instead of gdk_draw_point.
14525
14526         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14527         to draw the handle inside the border width as opposed to outside.
14528         Use paint function instead of gdk_draw_point.
14529
14530         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14531         Change indenting to be more GTK like.
14532
14533 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14534
14535         * docs/gtk_tut.sgml: New section on GtkCalendar
14536         * examples/calendar: Update example code
14537
14538 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14539
14540         * docs/gtkfaq.sgml: FAQ Update
14541
14542 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14543
14544         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14545         to prevent the scroll event to be propagated upwards.
14546
14547 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14548
14549         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14550         OwnerGrabButtonMask from button entries for
14551         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14552
14553         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14554         to the event mask (which will result in button/press release
14555         being added to the event mask on Unix) so scrolling works
14556         for layouts in scroll windows.
14557
14558         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14559
14560         Patch from Anders Carlsson  <andersca@gnu.org> to add
14561         a scroll event.
14562
14563         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14564         scrolling to the "Test Scrolling" part of testgtk.
14565  
14566         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14567  
14568         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14569         it against GDK_SCROLL.
14570  
14571         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14572         way of mouse wheel scrolling.
14573  
14574         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14575  
14576         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14577  
14578         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14579  
14580         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14581         gdk_event_mask_table.
14582  
14583         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14584         GdkEventScroll handler.
14585  
14586         * gdk/gdkevents.h: Added GdkEventScroll structure.
14587  
14588 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14589
14590         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14591         and Anders Carlsson to change the Paned widgets so that they
14592         can be dragged from anywhere along the length. Also change
14593         the way that this is drawn to make this apparent.
14594
14595         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14596         from George Lebl to check that option_menu->menu is present
14597         before getting history.
14598
14599 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14600
14601         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14602         before the assertion for non-NULL segment list.
14603
14604         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14605         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14606         machine, but it might be display driver dependent. Sigh, so make
14607         sure the stipple is that size. Does Windows suck or what?
14608
14609         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14610         places.
14611
14612 2000-02-13  Havoc Pennington  <hp@pobox.com>
14613
14614         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14615         refcount to 1
14616         (gdk_cursor_new): init refcount to 1
14617
14618         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14619
14620 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14621
14622         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14623         so that we don't have to do unnecessary settings to the HDC.
14624
14625         * gdk/win32/gdkdrawable-win32.c
14626         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14627         gdk_gc_predraw.
14628
14629         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14630         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14631         GDI paths, call WidenPath to get the outline of the stroken path,
14632         and then fill the outline (with the brush that was built from the
14633         stipple).
14634
14635         * gdk/win32/gdkgc-win32.c: Factor out common code from
14636         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14637         gdk_win32_gc_values_to_win32values. Use correct colour for
14638         SetBkColor() (Until now the code actually used a random colour in
14639         the call to SetBkColor()... but that didn't show up as not many
14640         GDI APIs use the background colour. Pattern (opaque stippled)
14641         brushes do.)
14642
14643         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14644         gdk_win32_api_failed): New functions for error logging.
14645
14646         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14647         WIN32_API_FAILED to call them, passing function or file name and
14648         line number.
14649
14650         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14651
14652         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14653         GdkColor for foreground and background in GdkGCWin32Data.
14654
14655         * gdk/makefile.cygwin: Link in the resource object separately.
14656
14657         * gdk/win32/rc/gdk.rc
14658         * gtk/gtk.rc (New file)
14659         * gdk/win32/makefile.cygwin
14660         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14661         as in GLib.
14662
14663 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14664
14665         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14666         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14667         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14668         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14669         parameters given and cursor->ref_count. coding style fixups.
14670
14671         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14672         not GtkWidget.
14673         
14674         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14675         fix up widget macros and add _GET_CLASS() variant.
14676         
14677         * gtk/*.c: some GtkType fixups.
14678
14679 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14680
14681         * gdk/win32/gdkproperty-win32.c
14682         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14683         were reversed.
14684
14685 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14686
14687         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14688         g_filename_to_utf8 to convert the font names Windows gives us from
14689         whatever is the default codepage to UTF-8.
14690         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14691         in the other direction.
14692
14693         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14694         error in debugging output.
14695
14696 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14697
14698         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14699         and height parameters to gdk_window_clear_area(). Not minus one.
14700
14701 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14702
14703         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14704         checks if the widget passed to gtk_drag_get_data() was not the
14705         dest widget.
14706
14707 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14708
14709         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14710         g_filename_from_utf8 functions (which were added a moment ago to
14711         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14712         size buffers.
14713
14714         gtk_file_selection_get_filename returns the filename in the C
14715         runtime encoding. It calls g_filename_from_utf8, but copies the
14716         returned string to a static buffer, which is returned. I think
14717         this is better than returning the result from g_filename_from_utf8
14718         directly, which would mean all apps that use it would have to free
14719         the return value. Or should this function care about this issue at
14720         all? Maybe a new function with clearly defined semantics.
14721
14722         * gtk/gtkfilesel.h: Add comment about
14723         gtk_file_selection_get_filename returning the filename in the C
14724         runtime's encoding.
14725
14726         * README.win32
14727         * gdk/gdk.def
14728         * gdk/makefile.{cygwin,msc}
14729         * gtk/gtk.def: Updates.
14730
14731         * gdk/gdkcursor-win32.c: Initialise refcount.
14732
14733 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14734
14735         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14736
14737 2000-01-30  Havoc Pennington  <hp@pobox.com>
14738
14739         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14740         destroy
14741
14742         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14743
14744         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14745         implemented in platform-specific code
14746
14747         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14748
14749         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14750         underscore in front
14751
14752         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14753         put an underscore in front
14754
14755         * gdk/gdkcursor.c: new file, implements
14756         gdk_cursor_ref/gdk_cursor_unref
14757
14758         * gdk/gdkcursor.h: Refcount GdkCursor
14759
14760         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14761
14762 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14763
14764         * gdk/gdkwindow.h
14765         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14766
14767 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14768
14769         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14770         structures to properly inherit from GtkWidget not GtkBin.
14771
14772 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14773
14774         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14775         (bug #5178 - Peter Wainright)
14776         
14777         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14778         so that it will be installed.
14779         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14780
14781 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14782
14783         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14784         for the GtkStyleClass vtable const.
14785
14786         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14787         take a const string argument like GtkTranslateFunc. This will
14788         require changes in use code.
14789
14790 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14791
14792         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14793         semantics (to mimic the X11 backend, which just calls XClearArea)
14794         is to check for zero width (and height), and in that case use the
14795         window's width minus x (height minus y). This fixes for instance
14796         some redraw problems with gtkclist, which were easily noticeable
14797         in the gtk file selection widget.
14798
14799         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14800         windows.
14801
14802 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14803
14804         * configure.in
14805         * gdk/Makefile.am
14806         * gdk/x11/Makefile.am
14807         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14808         (bug #5177).
14809         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14810         out later.
14811
14812 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14813
14814         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14815         WM_MOVE for iconified or invisible windows. This fixes various
14816         problems when minimising windows. Thanks to Bernd Herd.
14817
14818 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14819
14820         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14821         backend's draw_lines method, not draw_points.
14822
14823 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14824
14825         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14826         before Owen's reorganisation: Don't have queued_events and
14827         queued_tail statics in this file, but use gdk_queued_events and
14828         gdk_queued_tail. This makes exposure event compression work again.
14829
14830         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14831         seem to be needed?
14832
14833 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14834
14835         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14836         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14837         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14838         doesn't do anything.
14839
14840         * gdk/gdk.def: Add gdk_xid_table_insert.
14841
14842         * gdk/win32/gdkprivate-win32.h
14843         * gdk/win32/gdkevents-win32.c
14844         * gdk/win32/gdkinput-win32.c
14845         
14846         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14847         extension_events field in the GdkWindowWin32Data struct. Use only
14848         the extension_events field in GdkWindowPrivate. Previously one was
14849         set, and the other one tested, which broke tablet
14850         functionality. Thanks to Keishi Suenaga for pointing this out.
14851
14852 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14853
14854         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14855         When handling a single character (text length == 1), don't handle
14856         it as if it was UTF-8.
14857
14858 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14859
14860         * Makefile.am: Distribute README.win32.
14861         
14862         * gdk/Makefile.am
14863         * gdk/win32/Makefile.am: Distribute Win32 files.
14864
14865         * gdk/makefile.msc: New file.
14866
14867         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14868         after label).
14869
14870         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14871         gdk_error_code as GDKVAR, as they are referred outside GDK.
14872
14873         * gdk/win32/makefile.msc: Update.
14874
14875         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14876         tweaks. Check only if at least one of those Unicode subrange bits
14877         we care for is set. If no code page bits are set, guess (wildly)
14878         based on the charset.
14879
14880         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14881
14882         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14883         non-NULL.
14884
14885         * gtk/gtkdnd.c
14886         * gtk/gtklayout.c
14887         * gtk/gtkplug.c
14888         * gtk/gtkselection.c
14889         * gtk/gtksocket.c
14890         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14891         appropriate. There must be a cleaner way to handle this?
14892
14893         * gtk/gtkrc.c: Must include windows.h on Win32.
14894
14895         * gtk/testgtk.c: No need to include gdkx.h.
14896
14897         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14898
14899 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14900
14901         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14902         the rbearing is set to the same as the width, but this should be
14903         fixed.
14904
14905 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14906
14907         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14908         function. If Windows doesn't tell us what Unicode subranges a font
14909         covers, guesstimate based on the codepages it covers. This will
14910         hopefully help those Windows versions or fonts that don't give us
14911         any useful Unicode subrange information with GetTextCharsetInfo.
14912         Call this function in gdk_font_load_internal.
14913
14914         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14915         minor changes.
14916
14917 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14918
14919         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14920         New function, long needed.
14921
14922 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14923
14924         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14925         only_if_exists argument of gdk_atom_intern to
14926         bool.
14927
14928 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14929
14930         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14931         Fix two copy&paste errors.
14932
14933         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14934         win32 has changed.
14935
14936         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14937         GdkWin32SingleFont struct.
14938
14939         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14940         subranges of loaded fonts. Clear font signature first, in case
14941         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14942         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14943
14944         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14945         Unoffset clip region.
14946
14947 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14948
14949         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14950         event->any.window before calling filter functions.
14951
14952 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14953
14954         * gtk/gtkgamma.h: Adapt cast macros to standard.
14955
14956 [ Merges from 1.2 ]
14957
14958 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14959
14960         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14961         If translation does not include a '/', use entire
14962         translation instead of crashing.
14963
14964 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14965
14966         * docs/gtk_tut.sgml:
14967         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14968
14969 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14970
14971         * gtk/gtkselection.c (gtk_target_list_remove): Use
14972         g_list_remove_link, not g_list_remove.
14973
14974         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14975         
14976 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14977
14978         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14979         statement upon unselection (how the heck did that slip in?).
14980
14981 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14982
14983         * gtk/gtktext.c (gtk_text_freeze): 
14984         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14985         in frozen state (and aparently crashes). patch provided by Anders
14986         Melchiorsen <and@kampsax.dtu.dk>.
14987
14988 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14989
14990         * fix insensitive default/focus widget activation,
14991         reported by Matt Goodall <mgg@isotek.co.uk>.
14992
14993         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14994         (gtk_window_activate_default):
14995         (gtk_window_activate_focus):
14996         return handled=FALSE for actiavtion of insensitive default
14997         widgets. return handled=TRUE for activation of insensitive
14998         focus widgets. don't activate in either case.
14999
15000 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15001
15002         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15003         and $glib_cflags to match library order and in the
15004         theory that an old version of GLib is more likely to
15005         be in the include directory for X then vice-versa.
15006         (Bug #2776)
15007
15008 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15009
15010         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15011         to determine the locale for fontsets, not LC_MESSAGES;
15012         the user may want English messages with a handling
15013         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15014         will still be broken) (Bug #2891)
15015
15016 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15017
15018         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15019
15020 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15021
15022         * gtk/gtkrc.ko: Changed the Korean default fontset.
15023
15024 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15025
15026         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15027         where when scrolling to the left or top double exposes
15028         were done, causing major slowdowns.
15029
15030 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15031
15032         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15033         names to lowercase and alphanumeric, before looking
15034         them up.
15035
15036         * gtk/Makefile.am: Install codeset variant gtkrc files
15037         with normalized names.
15038
15039 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15040
15041         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15042         popup menus when the menu is already visible, but its parent
15043         is still hidden, (happens after tornoff window got hidden).
15044
15045 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15046
15047         * gtk/Makefile.am (install-data-local): Fix
15048         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15049         deleted, causing error messages on install.
15050
15051 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15052
15053         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15054         the handle as well, since we now sometimes ignore
15055         exposes on the handle while resizing.
15056
15057 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15058
15059         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15060         extra g_free introduced in one of the last one or two 
15061         commits.
15062
15063 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15064
15065         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15066         consistent, put each style that a gtkrc.* file creates
15067         in a unique namespace, remove old files before installing.
15068
15069 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15070
15071         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15072         gtk_rc_init is called multiple times. (Yes, people who
15073         do that have bugs in their code.)
15074
15075 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15076
15077         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15078         Remove it since it's generated by the Makefile anyway
15079
15080 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15081
15082         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15083         device->info.axes for core pointer.
15084
15085 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15086
15087         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15088         idle_id, to deal with obsolete, broken C libraries.
15089
15090 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15091
15092         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15093         allocation->x/y twice!
15094
15095         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15096         consistent with gtk_vscale_pos_trough().
15097
15098 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15099
15100         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15101         be queueing a resize on a toplevel container between
15102         the time we show it and when we map it. So, we need
15103         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15104         use GTK_WIDGET_DRAWABLE() for child windows.
15105
15106 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15107
15108         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15109         (fixes bug #2144)
15110
15111 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15112
15113         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15114         container DRAWABLE (instead of VISIBLE), so we don't queue
15115         resizes on non-toplevel containers.
15116
15117 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15118
15119         * gtk/gtkselection.[ch]: Make the data argument
15120         const guchar *.
15121
15122 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15123
15124         * gtk/gtkwindow.c: Try to behave sensibly if 
15125         the focus widget is the window itself. (Should
15126         we allow this at all?)
15127
15128 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15129
15130         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15131         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15132         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15133         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15134         in prototypes and implementations consistent (Tomas Ogren).
15135
15136         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15137         before the widget is unparented (reported by damon).
15138
15139         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15140         since we provide unsigned data anyways.
15141
15142 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15143
15144         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15145         the call to gtk_tooltips_layout_text() until later.
15146
15147         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15148         Call gtk_widget_ensure_style() before using the style.
15149
15150 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15151
15152         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15153         for old widgets that don't propagate draws to all
15154         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15155
15156 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15157
15158         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15159         for a redraw but just the widget that requested the resize.
15160
15161 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15162
15163         * gtk/gtkcontainer.c: added new widget level method
15164         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15165         reallocate_redraws : 1 to reflect the setting, exported this through
15166         the argument system as a boolean ::reallocate_redraws.
15167
15168         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15169         on the widget because the allocation changes, do so as well for
15170         widget->parent if the parent has reallocate_redraws set to TRUE.
15171         with that containers requesting reallocation redraws get automatically
15172         redrawn if their children changed allocation (this unfortunately
15173         affects also other children that didn't change allocation, but we
15174         cannot work around that before 1.3).
15175
15176 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15177
15178         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15179         _and_ height are >0 (not _or_).
15180
15181         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15182         instead of gtk_container_queue_resize(), which is a core gtk internal
15183         function (must have been on crack when i queued that).
15184
15185         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15186         we can check more reliably if we want to discard expose events.
15187         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15188         flag.
15189         
15190         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15191         we simply trust these events. for deciding whether to discard exposes,
15192         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15193         
15194 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15195
15196         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15197         queues of areas that are completely off screen.
15198
15199         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15200         logic for handleboxes.
15201
15202         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15203         check on width/height.
15204
15205 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15206
15207         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15208         we are fine with using $@ the way we do (if we actually encounter
15209         brokeness with $@ in VPATH builds because of additional path prefixes,
15210         we need to use $(@F) actually).
15211
15212 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15213
15214         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15215         short lived bugs, that would allow language bindings to do surgeries
15216         to our guts.
15217
15218 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15219
15220         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15221         where comparison was being done against an uninitialized
15222         value causing intermittant results depending on
15223         compiler flags. Also make it clearer that we aren't
15224         ever initializing the child as 0x0 (though this will
15225         be caught in gtk_widget_size_allocate())
15226
15227 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15228
15229         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15230         gtk_window_unset_transient_for() call after we do checks
15231         involving the old transient parent.
15232         [ From Lance Capser <lmc@cyberhighway.net> ]
15233
15234 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15235
15236         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15237         an empty file.
15238
15239 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15240
15241         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15242         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15243
15244 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15245
15246         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15247         `$@' is valid only in the build dir, not after we've done 
15248         `cd $srcdir'.  Also use `test -f' instead of less portable
15249         `test -e'.
15250
15251 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15252
15253         * gtk/gtktext.c (correct_cache_insert): Rewrite
15254          for simplicity, and hopefully correctness.
15255          (Fixes bug #1322, which was a segfault when
15256           on some insertions with the properties around
15257           the insertion set up just wrong.)
15258
15259         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15260          a "changed" signal, clamp the new value to the adjustment
15261          bounds to avoid segfaulting if someone tries to change
15262          the adjustment to a bogus value. (Bug #1795)
15263
15264 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15265
15266         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15267         for children, for toplevel windows handle them
15268         like delete_event.
15269
15270         * gtk/gtkplug.c: Add an unrealize handler so that
15271         we unref plug->socket_window when we are done
15272         with it.
15273
15274 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15275
15276         * gtk/gtktext.c (clear_area): Fix stupid signedness
15277          problem that was causing background to sometimes
15278          be misaligned.
15279
15280 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15281
15282         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15283         
15284         * gtk/gtkmenu.c (gtk_menu_position): Make
15285          sure we never position menus with negative x, y,
15286          since gtk_widget_set_uposition() can't handle that.
15287
15288         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15289          Modify the positioning code a bit so that we always
15290          put the top-left corner onscreen. (This is for
15291          UI reasons, gtk_menu_position() now takes care of
15292          gtk_widet_set_uposition() brokeness.)
15293
15294 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15295
15296         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15297
15298 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15299
15300         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15301           RC style that is passed in. The lack of the ref
15302           before was a bug. If people worked around this
15303           bug, this will introduce a slight memory leak
15304           in their code. The code should typically look like:
15305
15306             rc_style = gtk_rc_style_new ();
15307             [...]
15308             gtk_widget_modify_style (widget, rc_style);
15309             gtk_rc_style_unref (rc_style);
15310
15311         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15312           the style if it was already set.
15313
15314         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15315           style if it was set before.
15316
15317 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15318
15319         * gtk/testgtk.c (main): Add a check to see if we
15320           are being run from the correct directory and
15321           to quit nicely if we are not.
15322
15323         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15324           static.
15325
15326 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15327
15328         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15329
15330         * gtk/gtkwindow.c:
15331         queue resizes unconditionally (gtk_widget_queue_resize will figure
15332         what to do if the window is not realized).
15333         (gtk_window_move_resize): only recenter the window
15334         for GTK_WIN_POS_CENTER_ALWAYS.
15335         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15336         the same way as GTK_WIN_POS_CENTER.
15337
15338 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15339
15340         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15341         with (!(info->last_flags & GDK_HINT_POS)) instead of
15342         (!info->last_flags & GDK_HINT_POS).
15343
15344         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15345         new_height unconditionally, because we use these values even if
15346         !default_size_changed && !hints_changed.
15347         comented the (default_size_changed || hints_changed) case with
15348         respect to resize rejects from the window manager.
15349
15350         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15351         in the zvt condition hack, since this includes the window hints, set
15352         the hints after the handling_resize case.
15353
15354         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15355         window is initially shown with to the geometry.
15356
15357 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15358
15359         * gtk/gtkwindow.c (gtk_window_move_resize):
15360         s/size_changed/default_size_changed/g so i know what's
15361         really going on (frying brain on smaller flame now).
15362
15363 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15364
15365         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15366         we have size_changed upon handling_resize. this is a gross
15367         workaround for the broken zvt widget and should be removed in
15368         1.3 again (search for FIXME).
15369         Owen provided an accurate comment for this:
15370
15371         /* We could be here for two reasons
15372          *  1) We coincidentally got a resize while handling
15373          *     another resize.
15374          *  2) Our computation of size_changed was completely
15375          *     screwed up, probably because one of our children
15376          *     is broken. It's probably a zvt widget.
15377          *
15378          * For 1), we could just go ahead and ask for the
15379          * new size right now, but doing that for 2)
15380          * might well be fighting the user (and can even
15381          * trigger a loop). Since we really don't want to
15382          * do that, we requeue a resize in hopes that
15383          * by the time it gets handled, the child has seen
15384          * the light and is willing to go along with the
15385          * new size. (this happens for the zvt widget, since
15386          * the size_allocate() above will have stored the
15387          * requisition corresponding to the new size in the
15388          * zvt widget)
15389          *
15390          * This doesn't buy us anything for 1), but it shouldn't
15391          * hurt us too badly, since it is what would have
15392          * happened if we had gotten the configure event before
15393          * the new size had been set.
15394          */
15395
15396 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
15397
15398         * gtk/gtkrc.c: deal properly with the fact that RC
15399           style lists may include rc styles more than once.
15400
15401         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
15402           unused static function.
15403
15404         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15405           stack of directories of RC files currently being
15406           parsed and implicitely add them to pixmap path.
15407           
15408           This fixes a bug where the directory would get
15409           appended then overwritten by pixmap_path declarations.
15410
15411           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15412
15413         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15414           theme's exit function. (Patch from Peter Wainwright,
15415           bug #1454)
15416
15417         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15418           Add a destroy() handler to take care of removing
15419           group for menu item. (Fixes bug #1197)
15420
15421         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15422           in warning message.
15423
15424 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15425
15426         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15427         roundtrip to figure window's width and height, since we know that
15428         anyways from widget->allocation.
15429
15430 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15431
15432         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15433           the hints after we request the new size.
15434
15435 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15436
15437         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15438           GTK_WIDGET_REALIZED() assertion - we can compute the
15439           hints before we are realized.
15440
15441         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15442           hint changing so that we have a value of hints_changed
15443           when we decide whether to constrain the window size.
15444
15445         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15446
15447         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15448         change back to G_MAXINT.
15449
15450 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15451
15452         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15453         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15454         contain uncluttered values.
15455         (gtk_window_compute_hints): simply assert that window is realized
15456         and that geometry_info is valid, since we rely on this anyways.
15457         (gtk_window_constrain_size): major cleanups to the code.
15458         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15459         for the base size, instead of the minimums. use 32767 as max width
15460         and height (like in gtkwindow.c) instead of G_MAXINT.
15461
15462 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15463
15464         * cleaned up the GtkContainer.need_resize flag handling mess, we
15465         only need to force resize requests when we were prematurely
15466         realized, or our widget tree was modified when we were temporarily
15467         hidden. handling these cases directly upon showing the window (i.e.
15468         while the GdkWindow is still unmapped) avoids the need to wait for
15469         a configure event response and therefore makes the GUI more snappier
15470         and avoids blank windows during the roundtrip.
15471
15472         * gtk/gtkwidget.c:
15473         (gtk_widget_hide): 
15474         (gtk_widget_show): don't queue resizes on toplevels, they know how
15475         to deal with matters.
15476
15477         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15478         flag directly for not visible resize containers and spare us unecessary
15479         signal emissions.
15480
15481         * gtk/gtkwindow.c:
15482         (gtk_window_realize): if we need to enforce premature size allocation,
15483         queue a container resize so we are correctly resized later on.
15484         (gtk_window_init):
15485         (gtk_window_size_request):
15486         don't freak around with the ->need_resize flag,
15487         gtk_container_queue_resize() will care about that.
15488         (gtk_window_show):
15489         handle initial resizing issues here, we can handle matters better in
15490         this place, especially since we know that our GdkWindow is still
15491         unmapped.
15492         (gtk_window_move_resize):
15493         don't care about ->need_resize at all.
15494         handle size changes properly that occoured while we waited for a
15495         configure event.
15496
15497 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15498
15499         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15500         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15501         Move the hint setting code from gtk_widget_set_uposition
15502         to here; set the hints so that we respect any previously
15503         set geometry hints.
15504
15505         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15506         change the window hints here or move the window here,
15507         let that happen in gtk_window_move_resize().
15508
15509 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15510
15511         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15512         to already queued resizes (and therefore redraws) on a widget, check
15513         its anchestry as well.
15514
15515         * gtk/gtkcontainer.c:
15516         (gtk_container_queue_resize): clear resize widgets for resize
15517         containers before aborting prematurely. this is especially important
15518         for toplevels which may need imemdiate processing or their resize
15519         handler to be queued.
15520         (gtk_container_dequeue_resize_handler): added new internal function for
15521         gtkwindow.c.
15522
15523         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15524         configure event, take possible changes in window position into account
15525         as well.
15526         if we request a new window size, queue up a resize handler that will
15527         last until the configure event response arrives.
15528         combined the ->need_resize case (initial show) with the general size
15529         (hints) changed case and added even more comments.
15530         if !auto_shrink, only revert to the old allocation if the new size
15531         is smaller than the current allocation.
15532
15533 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15534
15535         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15536                            gtk_window_set_geometry_hints
15537                            gtk_window_set_default_size):
15538         When hints are set, queue a resize so that the hints will
15539         be eventually reset on the toplevel.
15540
15541         * gtk/gtkwindow.c (gtk_window_show): Use
15542         gtk_window_compute_default_size(). Clear the need_resize flag
15543         on the initail map so that we don't unnecessarily trigger the
15544         resize code.
15545
15546         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15547         into separate functions. Compare the hints we are setting
15548         with what we set last time so that we can accurately
15549         tell when we need to reset the hints.
15550
15551         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15552         function to figure out the size from requisition
15553         and default_size.
15554
15555         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15556         from fvwm to constrain a size to the geometry hints.
15557
15558         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15559         to compare two sets of geometry hints.
15560
15561         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15562         from gtk_window_set_hints(), just compute the hints,
15563         don't set them.
15564
15565         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15566         code from gtk_window_move_resize() to separate function,
15567         rationalize a bit.
15568
15569 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15570
15571         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15572         structure into a new private structure.
15573
15574         * gtkrc.c: Split GtkRcStyle into public/private.
15575         In the private part, add a list of pointers to the
15576         RcStyle lists this RcStyle participates in.
15577
15578         * gtkrc.c: When a RcStyle is free, remove all
15579         lists referencing it from the 
15580         realized_style_ht hash, and free those lists.
15581         
15582         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15583         gtk_rc_init(), since that adds the default styles
15584         to the list of parsed RC files again.
15585
15586         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15587         
15588 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15589
15590         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15591         checks that ensure that a widget's allocation is at least 1 in width
15592         and height. (GNOME note: this doesn't affect old panel code anymore,
15593         because GtkSocket will request width and height of at least 1 since
15594         Fri Jul 23).
15595
15596         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15597         allocated yet (happens if the user realizes the window prematurely),
15598         size request and allocate it.
15599         (gtk_window_size_allocate): guard against guint underflows.
15600
15601 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15602
15603         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15604         in gtk_built_sources, so gtk.defs gets built prior to all other
15605         sources.
15606
15607 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15608
15609         * gtk/Makefile.am:
15610         invoke indent on gtkmarshal.*. 
15611         rewrote source generation rules, use COPYING as oldest source tag for
15612         a piggyback rule to generate all sources from (don't touch it ;).
15613         major cleanups, strip spaces on build rules for GNU Make.
15614
15615         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15616         source and target files from commandline arguments. don't invoke indent.
15617
15618 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15619
15620         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15621         notebook after switch to avoid drawing problems.
15622         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15623         
15624         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15625         show them instead. 
15626         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15627
15628 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15629
15630         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15631         notebook after switch to avoid drawing problems.
15632         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15633         
15634         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15635         show them instead. 
15636         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15637
15638 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15639
15640         * gtk/gtkwindow.c:
15641         we use window->need_resize from configure_event now, to indicate that
15642         the gtkwindow should keep its allocation (e.g. because the user resized
15643         the window through window manager handles). resize_count is now reliably
15644         used to figure whether we got the allocation we requested from the
15645         window manager.
15646         configure events get queued as resizes now, the real stuff (size
15647         computation and allocation) now only goes on in gtk_window_move_resize().
15648         GtkWindow's requisition now contains its *real* requisition (like all
15649         other widgets), *not* taking usize into account.
15650         geometry_info->last_{width|height} is now updated from set_hints() only
15651         so it always contains the last hints we set for the window manager.
15652         made some event handlers return TRUE instead of FALSE.
15653         the overall code should be much more straight forward now, and the
15654         significant code portions are accompanied by comments now.
15655         (gtk_window_set_hints):
15656         removed requisition argument and made it
15657         fetch the requisition through gtk_widget_get_child_requisition.
15658         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15659         does that now.
15660         (gtk_window_show):
15661         ensure that the widget is realized before calling 
15662         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15663         ensure that we got properly size requested and allocated before
15664         realization.
15665         (gtk_window_configure_event):
15666         ignore plain window moves, or reallocate the widget tree through the
15667         resize queue otherwise.
15668         (gtk_window_move_resize):
15669         mostly rewrote this function to figure window manager hints more
15670         reliably, coalesce window moves and resizes to reduce configure events
15671         and do actuall size allocations.
15672
15673 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15674
15675         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15676         that have a resize pending, because a redraw is already queued for them.
15677
15678         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15679         hack to clear resize_widgets.
15680
15681         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15682         for resize containers prior to size allocation. (this is also a bit
15683         ugly, but avoids side effects for stopped emissions and is thus more
15684         reliable).
15685         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15686
15687         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15688         function from gtk_tooltips_expose, as we connect to ::expose_event
15689         *and* ::draw now.
15690
15691 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15692
15693         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15694         checks.
15695         (gtk_target_list_unref): Likewise.
15696
15697         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15698
15699 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15700
15701         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15702         guard against division by zero. (Fixes bug #1339)
15703
15704 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15705
15706         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15707         Prevent the trivial leak of information of allowing
15708         word motion when the entry is not visible.
15709
15710 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15711
15712         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15713         modality to error dialog as well as confirmation dialogs.
15714         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15715
15716 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15717
15718         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15719         tree->view_lines.
15720         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15721
15722         * gtk/Makefile.am (install-data-local): Solaris apparently
15723         has various troubles with ln -f; use rm first instead.
15724         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15725
15726 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15727
15728         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15729         use `cp' followed by `rm' (the `rm' was already there).
15730
15731 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15732         
15733         * configure.in: Fix autoconf warnings about cross compilation by
15734         trying to provide sane defaults for AC_TRY_RUN.
15735         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15736         put them into $(srcdir) when generated. Also add a dependency of
15737         gtksignal.h on gtkmarshal.h for -j builds. 
15738         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15739
15740 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15741
15742         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15743         GDK_THREADS_{LEAVE,ENTER} pair.
15744         (From Paul Fisher <pnfisher@redhat.com>)
15745
15746 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15747
15748         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15749         width and height are always >0 (owen).
15750
15751 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15752
15753         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15754         change that assured that a widget's allocated with and height are
15755         always >1, since this breaks *buggy* panel code. unfortunately this
15756         back-breaks the gimp's color selector.
15757
15758         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15759         allocation is always >0 in width and height, before sending the
15760         configure event; this is a *gross* hack to get the gimp back to work.
15761         
15762         * marked both cases with TODO-1.3
15763
15764 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15765
15766         * gtk/gtktext.c: Don't display wrap indicators when
15767         text is not editable and word wrap is on.
15768
15769 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15770
15771         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15772         option menus here as they are not derived from menu shell, assure that
15773         the option menu has a menu we can add items to.
15774
15775 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15776
15777         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15778         width/height to (gint) before calculations and check against < 0 to
15779         avoid guint wraparounds.
15780
15781 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15782
15783         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15784         width and height is never zero. sanity check both dimensions against
15785         32767 and issue a warning if the allocation is greater than that.
15786
15787 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15788
15789         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15790         to g_main_pending() as well.
15791
15792 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15793
15794         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15795         call to g_main_iteration() - since that will regrab
15796         GTK+ lock to process events.
15797
15798 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15799
15800         * gtk/gtkwindow.c
15801         - Regularize with the rest of GTK+ by making widget->requisition
15802           not reflect the set_usize()
15803         - Always recompute geometry hints, then check if they
15804           changed before sending them to the X server. The
15805           previous checks for changes would fail in a number
15806           of circumstances. 
15807
15808 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15809
15810         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15811
15812 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15813
15814         * gtk/gtkdnd.c:
15815         - Code cleanups
15816         - Instantaneously update on modifier key presses
15817         - Allow cancellation of the drag with Escape.
15818
15819 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15820
15821         * gtk/testgtk.c (create_handle_box): Set the policy
15822         to auto_shrink - otherwise the appearance is rather
15823         strange when flipping between horizontal and vertical.
15824
15825 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15826
15827         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15828         (gtk_window_set_default_size): don't change a value if it's < 0.
15829         queue a resize.
15830
15831 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15832
15833         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15834
15835 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15836
15837         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15838         add an extra "/" when concating "/" + filename.
15839         (From Matt Grossman <mattg@oz.net>)
15840
15841 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15842
15843         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15844         for fg_gc if we set it for drawing pixmap.
15845
15846 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15847
15848         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15849         
15850         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15851         already set, call old engine's destroy function and
15852         unref the old engine.
15853
15854 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15855
15856         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15857
15858 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15859
15860         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15861
15862 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15863
15864         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15865         expand behaviour changed.
15866
15867         * gtk/gtklabel.c (gtk_label_set_pattern):
15868         (gtk_label_set_justify):
15869         (gtk_label_set_line_wrap):
15870         don't bother invoking queue_clear, the reallocation does
15871         that for us, always free_words so the upcoming resize will
15872         relayout the label's contents.
15873
15874 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15875
15876         * applied argument implementation patches from Elena Devdariani
15877         <elena@cogent.ca>.
15878
15879         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15880         ::space_style, ::relief
15881         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15882         * gtk/gtkpreview.c: ::expand
15883         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15884         * gtk/gtknotebook.c: ::homogeneous
15885         * gtk/gtklabel.c: ::wrap
15886         * gtk/gtklist.c: ::selection_mode
15887         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15888         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15889         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15890         * gtk/gtkclist.c: ::sort_type
15891         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15892         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15893
15894 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15895
15896         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15897         comment.
15898
15899 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15900
15901         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15902         counting right when we have to attach a new style
15903         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15904
15905         * gtk/gtkstyle.c: Documented the refcounting
15906         peculularities of gtk_style_attach.
15907
15908 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15909
15910         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15911         window types.
15912
15913         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15914         of GTK_TOPLEVEL for creating the window.
15915
15916 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15917
15918         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15919         the last argument (reported by Per Winkvist).
15920         
15921 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15922
15923         Fixes for invisible XOR lines (Frank Loemker
15924         <floemker@TechFak.Uni-Bielefeld.DE>)
15925         
15926         * gtk/gtkclist.c (gtk_clist_realize): Always use
15927         a non-zero pixel for GDK_XOR.
15928
15929         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15930         Use GDK_INVERT instead of GDK_XOR.
15931
15932 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15933
15934         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15935         signals if h/voffsets differ from adjustment values.
15936         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15937
15938 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15939
15940         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15941         ::selection-done emissions up to the topmost menu shell.
15942
15943 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15944
15945         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15946         the user data on the window before destroying it.
15947
15948         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15949         unrealize handler to take care of destroying 
15950         notebook->panel properly. 
15951         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15952
15953         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15954         of g_new and g_realloc to stop memory leak. (Actually,
15955         we could just use g_realloc(), but I'm not 100% sure
15956         that is portable).
15957         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15958
15959 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15960
15961         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15962
15963         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15964         for fontsets.
15965
15966         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15967         with bin/button confusion.
15968
15969 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15970
15971         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15972         and show how preselection of radio items is done.
15973
15974 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15975
15976         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15977         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15978         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15979         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15980         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15981         * gtk/gtktable.c (gtk_table_attach): 
15982         * gtk/gtklist.c (gtk_list_insert_items): 
15983         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15984         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15985         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15986         * gtk/gtkbin.c (gtk_bin_add): 
15987         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15988         * gtk/gtkfixed.c (gtk_fixed_put): 
15989         * gtk/gtklayout.c (gtk_layout_put):
15990         general fixups to container_add logic. always realize child if
15991         child->parent is realized, only map the child and queue a resize
15992         if child and child->parent are both visible.
15993
15994 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15995
15996         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15997         instead of gtk_container_foreach to walk and unrealize children, so
15998         composite children get also unrealized.
15999         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16000         (gtk_widget_map): assert that the widget is visible (basic constrain).
16001         (gtk_widget_real_map): assert that the widget is realized (basic
16002         constrain).
16003
16004 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16005
16006         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16007
16008 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16009
16010         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16011         file for iso-8859-2 locales.
16012
16013         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16014
16015 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16016
16017         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16018          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16019          Remove some suspicious and useless lines. 
16020
16021 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16022
16023         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16024         width,height = 0, 0 to mean - here to edge of window,
16025         instead of -1, -1, since the former is all we support.
16026
16027 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16028
16029         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16030         when removing from quit_functions list.
16031
16032 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16033
16034         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16035
16036 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16037
16038         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16039          When redrawing characters on non-visible entry, use appropriate
16040          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16041
16042 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16043
16044         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16045         from drag coordinates.
16046         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16047         use drag_dest_cell.
16048
16049         * gtk/gtktree (drag_dest_cell)
16050         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16051         (Bug #1129)
16052
16053 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16054
16055         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16056         translate_* fields.
16057         (gtk_item_factory_finalize): invoke translate_notify independant from
16058         translate_data.
16059         (gtk_item_factory_set_translate_func): likewise.
16060         (gtk_item_factory_destroy): only remove ifactory pointer from those
16061         widgets that belong to us (stupid me).
16062
16063 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16064
16065         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16066         rc_style list when lookup succeeeds.
16067
16068 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16069
16070         * gtk/gtkctree.c (resync_selection): 
16071         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16072         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16073         bug.
16074
16075 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16076
16077         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16078         Add some missing GDK_THREADS_ENTER()/LEAVE around
16079         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16080
16081 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16082
16083         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16084         rather than emit_by_name.
16085
16086         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16087         on the widget across multiple signal emissions.
16088         (gtk_editable_delete_text): same here.
16089         (gtk_editable_class_init): set widget_class->activate_signal after
16090         editable_signals[ACTIVATE] has been created.
16091
16092 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16093
16094         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16095         position here prematurely -- we might not have the
16096         right ->min_position and ->max_position yet.
16097
16098 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16099
16100         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16101         Add error traps so if the other end of the connection
16102         dies, we survive.
16103
16104         * gtk/gtkselection.c (gtk_selection_notify): Clean
16105         up properly when selection property retrieval fails.
16106         
16107         * gtk/gtkselection.c (gtk_selection_request): Correctly
16108         reject SelectionRequest notifies where the handler
16109         returns no data.
16110
16111 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16112
16113         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16114         when we've previously highlighted.
16115
16116         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16117         emit two "drag_leave" signals for Motif drops.
16118
16119         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16120         back the correct status messages when dropping from
16121         Motif onto a proxy window that is rejecting the
16122         drop.
16123
16124 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16125
16126         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16127         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16128         to compare two argument values. added gtk_arg_to_valueloc() to set a
16129         variable from an arg through its location (pointer).
16130
16131         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16132         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16133         as gfloat*, uchars are collected as guchar*, ints are collected as
16134         gint*, etc...
16135
16136 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16137
16138         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16139         Include <string.h> instead of <strings.h>.
16140
16141         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16142         (actually, a lot more duplicate includes occur if
16143          you trace through the sequence of #include's)
16144         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16145         
16146 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16147
16148         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16149         gtk-a-higuti-990322-[0-3]
16150
16151         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16152         that was causing -DX_LOCALE not to work.
16153
16154         * gtk/gtkrc.c (gtk_rc_init):
16155         X_LOCALE will never have LC_MESSAGES defined
16156
16157 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16158
16159         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16160         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16161
16162         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16163         left/right as well (gtk-michael-980726-0.patch.gz).
16164
16165         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16166         for pointer values, use gchar instead of char. fixed uline allocation
16167         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16168         chunks instead of G_ALLOC_ONLY.
16169         (gtk_label_size_request): always alter requisition as passed and leave
16170         widget->requisition alone.
16171         (gtk_label_set_text): allow NULL strings.
16172         (gtk_label_new): likewise.
16173
16174 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16175
16176         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16177
16178 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16179
16180         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16181         *and* mapped (i.e. drawable).
16182         (gtk_bin_expose): only send exposes to drawable children.
16183
16184         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16185         (gtk_box_expose): only send exposes to drawable children.
16186
16187         * gtk/gtkhscale.c (gtk_hscale_draw): 
16188         * gtk/gtkvscale.c (gtk_vscale_draw):
16189         hm, this is an ugly one. we first compute the size of our trough area
16190         here (window relative) and then check intersection with the draw_area
16191         which is parent relative because we're a NO_WINDOW widget, so we need
16192         to offset the trough area by allocation.x and allocation.y before the
16193         check. (this must not be done for the background area though, since
16194         that's already computed parent relative).
16195
16196 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16197
16198         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16199         unrealize title buttons.
16200
16201 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16202
16203         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16204         (gtk_clist_column_title_active): 
16205         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16206
16207         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16208         zero initialize event, removed superfluous gdk_window_get_pointer call
16209
16210         * gtk/gtklist.c (gtk_list_vertical_timeout)
16211         (gtk_list_horizontal_timeout): removed superfluous
16212         gdk_window_get_pointer call
16213
16214 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16215
16216         * plugging problems reported by "Bruce Mitchener, Jr."
16217         <bruce@puremagic.com> due to a purify session.
16218
16219         * gtk/gtkstyle.c:
16220         (gtk_style_ref): 
16221         (gtk_style_unref): assert ref_count to be > 0.
16222
16223         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16224         the requisition.
16225         (gtk_clist_set_shift): likewise.
16226
16227         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16228         adjustments.
16229
16230         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16231         event before sending it and set send_event to TRUE (which needs to
16232         be done for *all* synthesized events).
16233         (gtk_list_vertical_timeout): likewise.
16234
16235         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16236         leaks.
16237
16238         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16239         to TRUE when synthesizing events.
16240
16241 [ *** end of merges from 1.2 *** ]      
16242         
16243 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16244
16245         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16246         (or copied from gdkconfig.h.win32 on Win32, sigh).
16247
16248         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16249
16250         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16251
16252         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16253
16254         * gdk/gdkconfig.h.win32: New file.
16255
16256         * gdk/win32/makefile.cygwin: Build just a static archive here.
16257
16258         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16259         for the DLL from the static archive built above.
16260
16261         * gdk/gdk.def: Moved here from the win32 subdirectory.
16262
16263         * gdk/win32/*: Adapt for the changed private struct organisation.
16264
16265         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16266
16267 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16268
16269         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16270         for wheel mice (buttons 4 and 5).
16271
16272 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16273
16274         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16275         drawables use just the pixel field in the foreground and
16276         background GdkColor of the GdkGC.
16277
16278         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16279         GdkColors containing uninitialized (red,green,blue) fields, and
16280         just the pixel field filled in, and furthermore in the
16281         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16282         It thus turns out that we really don't need to have the full
16283         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16284         it later to have just the pixel values.
16285
16286 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16287
16288         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16289
16290 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16291
16292         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16293         New question on GtkLabel background colors.
16294
16295         * docs/gtk_tut.sgml:
16296           - Correct the example code callback
16297             function definitions.
16298           - Update the gtkdial example code, from Frans van Schaik.
16299           - Update setselection.c to current API.
16300
16301         * examples/Makefile examples/*/*.c: Update to code
16302         listed in tutorial.
16303
16304 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16305
16306         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16307         subrange table (from the "Developing International Software for
16308         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16309         block... Get the loaded font's charset correctly.
16310
16311         (Note that this, and the other *-win32.c files, still really are
16312         the old ones, the win32 subdirectory is not ready for compilation
16313         yet after the reorg.)
16314
16315 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16316
16317         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16318         check.
16319
16320 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16321
16322         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16323         on results of XQueryDeviceState().
16324
16325 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16326
16327         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16328         we need to accesss only ->children. We need an accessor
16329         for the children.
16330
16331         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16332         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16333         to get rid of gdkx.h include.
16334         
16335         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16336         and random references to 'None'.
16337
16338         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16339         Get rid of unused #include <gdk/gdkx.h>
16340
16341         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16342         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16343         gdkconfig.h.
16344
16345 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16346
16347         * gdk/win32/gdkdraw.c
16348         * gdk/win32/gdkfont.c
16349         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16350         following yesterday's changes. (Unrelated to Owen's reorg.)
16351
16352 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16353
16354         * gdk/x11/gdkinput-gxi.c: Add missing include,
16355           fix GdkWindowPrivate => GdkDrawablePrivate.
16356
16357         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16358
16359         * gdk/x11/Makefile.am (xinput_sources): Add missing
16360         backslash to fix building with --with-xinput=none
16361
16362 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16363
16364         Move all X specific code into the x11/ directory.
16365         Aside from shuffling things around, did the following:
16366
16367        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16368          gdk_arg_context_* - a simple argument parsing system
16369          in the style of popt.
16370
16371        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16372          gdk/x11/gdkprivate-x11.h:
16373          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16374          add ->klass and ->klass_data fields. The klass_data
16375          field points to an auxilliary structure that is
16376          windowing system dependent.
16377
16378        * gdk/gdkfont.c: Make most of the measurement functions
16379          simply wrappers around gdk_text_extents().
16380
16381        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
16382          _gdk_font_strlen() function that hides the weird
16383          behavior in gtk+-1.[02] where a string is interpreted
16384          differently for 8-bit and 16-bit fonts.
16385
16386        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
16387          to store common code for synthesizing double/triple
16388          press events.
16389         
16390        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
16391          Make all the function that modify an existing GC
16392          simply wrappers around gdk_gc_set_values().
16393          
16394        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
16395          for throwing out later.
16396
16397        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
16398          GdkImagePrivate and GdkColormapPrivate to have a
16399          windowing system dependent part (GdkFontPrivateX etc.)
16400          that "derives" from the system-independent part.
16401
16402        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
16403          Got rid of the included-source-files for XInput in
16404          favor of automake conditionals. (Which didn't exist
16405          when XInput support was originally added.)
16406
16407        * gdk/gdkrgb.c: Remove the visual id from the debugging
16408          statements since that is X11 specific; print out
16409          type/depth info instead.
16410          
16411
16412 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16413
16414         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16415         loading duplicates of hashed fonts.
16416
16417         * gdk/gdk.c (gdk_keysym_convert_case): rename
16418         gdk_XConvertCase to gdk_keysym_convert_case, allow
16419         results to be NULL in the GTK+ style.
16420
16421         * gdk/gdkcompat.h: Started compatibility header
16422         for renames.
16423
16424 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16425
16426         * gdk/win32/gdkprivate.h: New font private structures, related to
16427         fontsets.
16428
16429         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16430         gdk_font_list_free(). On X11, will just be wrappers to
16431         XListFonts() and XFreeFontNames(). On Win32, the code previously
16432         in gtkfontsel.c is now here.
16433
16434         New function gdk_font_xlfd_create(). On X11 will get the FONT
16435         property of the font (for GDK_FONT_FONTs), or call
16436         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16437         builds a XLFD style name from the font information in the LOGFONT
16438         struct(s).
16439
16440         New function gdk_font_xlfd_free(), which correspondingly frees the
16441         string returned by gdk_font_xlfd_create().
16442
16443         Implement fontsets on Win32. Add a function that iterates over a
16444         wide char string and calls a callback function for each substring
16445         of wide chars from the same Unicode subrange (and thus probably
16446         available in the same real font).
16447
16448         Improve the XLFD emulation a bit.
16449
16450         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16451
16452         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16453         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16454         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16455         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16456         ImmGetCompositionStringW() to get the composed Unicode chars.
16457
16458         * gdk/win32/gdkgc.c
16459         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16460         struct changes.
16461
16462         * gdk/win32/gdk.def: Add the new functions.
16463
16464 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16465
16466         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16467         get the Platform SDK to get <dimm.h>.
16468
16469         * gdk/win32/gdkevents.c: More event handling fixes and
16470         simplification. Never generate motion events with is_hint true. We
16471         used to do that on bogus grounds earlier. Windows sends
16472         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16473         moved, ignore these.
16474
16475         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16476
16477         * gdk/win32/gdkglobals.c
16478         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16479         the TrackMouseEvent function, and use it.
16480
16481         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16482         char before calling WideCharToMultiByte in order to get a string
16483         for the window title.
16484
16485         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16486
16487         * gdk/win32/gdk.def: Remove obsolete functions.
16488
16489         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16490         /nodefaultlib and /defaultlib switches.
16491
16492         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16493
16494 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16495
16496         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16497         EuroSign).
16498
16499         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16500         same type as GdkWChar, especially on Win32.
16501
16502         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16503
16504         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16505         before passing to Windows GDI for drawing etc. Convert to the
16506         system default codepage before passing to Windows as window
16507         titles.
16508
16509         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16510         support changing input locale on the fly.
16511
16512         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16513         on-the-fly changes. Convert incoming characters from the current
16514         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16515         on the current input language. Use keysym<->Unicode mapping tables
16516         and functions borrowed from xterm sources.
16517
16518         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16519         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16520         Manager) if available. IMEs and the Active IMM are available under
16521         the disguise of Chinese, Korean and Japanese support for IE and
16522         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16523         support is present in all editions (as long as you install it).
16524
16525         Call DispatchMessage from gdk_events_queue() (and thus
16526         gdk_WindowProc()), instead of duplicating the code in
16527         gdk_WindowProc().
16528
16529         Reworked the grab handling and propagation code, factored out
16530         duplicated code snippets into separate functions. Other cleanups,
16531         too.
16532
16533         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16534         the <dimm.h> header describing the Active IMM.
16535
16536         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16537         just do the same as for "single" fonts.
16538
16539         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16540         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16541         the new keysyms from gdkkeysyms.h.
16542
16543         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16544         fontset, so that gtkentry uses wide characters.
16545
16546         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16547         GTk+'s system directory "gtk+", not "gtk".
16548
16549 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16550
16551         * docs/gtkfaq.sgml: FAQ update
16552
16553 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16554
16555         * gdk/win32/gdkprivate.h: Add more font private data.
16556
16557         * gdk/win32/gdkfont.c
16558         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16559         fonts and strings. Now works much better. You still have to
16560         have a correct font selected, though. No fontset emulation yet.
16561
16562 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16563
16564         * gtk/maketypes.awk: Use G_OS_WIN32.
16565
16566         * gtk/gtk.def: Add some missing entry points. Also some non-public
16567         ones, but PyGTK porter claims to need them.
16568
16569         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16570         built-in type generation.
16571
16572 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16573
16574         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16575         GDK_FONT_FONT fonts (which is all we have for now, we don't
16576         emulate fontsets). The X11 version uses plain XDrawString in that
16577         case, too. The string passed to gdk_draw_text_wc seems to be in
16578         fact (at least, when used by gtkentry and gtktext) either in a
16579         single-byte charset, or a DBCS. Not Unicode.
16580
16581         This fixes the problem in gtkfontsel, where even if you had
16582         selected a font with a non-Latin1 charset (windows-greek, for
16583         instance), the preview still used Latin-1 glyphs.
16584
16585         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16586         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16587         (gdk_font_load): Recognize the demibold etc weights, even if we
16588         don't have the corresponding constants in the headers.
16589         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16590         version. Should save font resources a bit, when we don't have
16591         multiple HFONTs for the same font.
16592
16593         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16594         version.
16595
16596 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16597
16598         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16599         X values
16600
16601 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16602
16603         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16604         layout support (as mentioned on
16605         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16606
16607 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16608
16609         * gtk/fnmatch.c
16610         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16611
16612 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16613
16614         * configure.in (ALL_LINGUAS): Added Galician (gl)
16615
16616 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16617
16618         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16619
16620         * gdk/win32/gdkcompat.c: New file, actually provide an
16621         implementation for the deprecated functions. (Just temporarily.)
16622
16623         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16624
16625         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16626
16627         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16628
16629 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16630
16631         * configure.in: Added "uk" to ALL_LINGUAS.
16632         
16633 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16634
16635         * configure.in: correct checking for BeOS check
16636
16637         * gdk/gdktypes.h
16638         * gtk/fnmatch.c
16639         * gtk/gtkfilesel.c
16640         * gtk/gtkitemfactory.c
16641         * gtk/gtkmain.[ch]
16642         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16643
16644 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16645
16646         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16647         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16648         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16649         by Bulgarian). 
16650
16651 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16652
16653         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16654         Fix a reference to window_private->destroyed.   
16655
16656         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16657         (ugly) setting of an internal GdkWindow member to use
16658         a _slightly_ cleaner macro.
16659
16660         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16661         GdkDrawablePrivate and GdkWindowPrivate.
16662         Add extra macros for accessing GDK_DRAWABLE_ components.
16663
16664         * *.[ch]: Massive adjustments for the above, use the
16665         new macros in a lot of places.
16666
16667 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16668
16669         * gdk/gdktypes.h: Make GdkDrawable the base type,
16670         not GdkWindow.
16671
16672 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16673
16674         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16675
16676 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16677
16678         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16679
16680 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16681
16682         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16683         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16684
16685         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16686
16687         * docs/gtk-config.1: Now autogenerated.
16688         * docs/Changes-1.4.txt: started
16689         
16690 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16691
16692         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16693         to #ifdef also here.
16694
16695         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16696         Owen did to the X11 backend.
16697
16698         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16699         ScrollWindowEx when blitting inside a window, it can't be correct
16700         in the general case.
16701
16702         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16703         WM_GETMINMAXINFO is easier.
16704
16705         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16706         depth equal to the bitspixel value, not the visual's depth.
16707
16708         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16709         to 24 even if the bitspixel value is 32.
16710
16711         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16712         need to check for depth==32 when bpp==32, depth will always be 24.
16713
16714 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16715
16716         * docs/Changes-1.4.txt: Started
16717         
16718         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16719
16720         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16721         
16722         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16723         into C file.
16724         
16725         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16726         header to gdkinputprivate.h.
16727
16728         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16729         unused since before 1.2.
16730
16731 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16732
16733         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16734         expand possible hex escapes in the font family (put there by
16735         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16736         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16737         On Win32, add hex escapes here, too.
16738
16739 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16740
16741         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16742         to #ifdef GDK_WINDOWING_X11.
16743
16744 [ Merges from gtk-1-2 ]
16745
16746 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16747
16748         * configure.in: fixed "GNU Make" check to pass with new make version
16749         3.77.95.
16750
16751 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16752
16753         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16754         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16755         AM_PATH_GTK() macros don't get confused by the -pre1.
16756
16757 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16758
16759         * configure.in (REBUILD): Change check for perl5
16760           to check explicitely for v >= 5.002. (5.001
16761           does not work with our scripts.)
16762
16763 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16764
16765         * configure.in: evaluate $PERL for the perl version check. added
16766         --disable-rebuilds to give the user an option to completely disable
16767         any source autogeneration rules.
16768
16769 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16770
16771         * configure.in: evaluate $ac_make when checking for GNU Make.
16772
16773 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16774
16775         * docs/Makefile.am: added generation.txt.
16776
16777         * Makefile.am: require automake 1.4, build README from README.in and
16778         INSTALL from INSTALL.in in dist-hook.
16779         
16780         * README.in:
16781         * INSTALL.in: new files to autogenerate README and INSTALL from.
16782
16783         * configure.in: figure whether we have GNU Make
16784
16785         * docs/generation.txt: minor additions/corrections.
16786
16787 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16788
16789         * docs/gtkfaq.sgml: FAQ Update
16790
16791 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16792         
16793         * configure.in: Fix autoconf warnings about cross compilation by
16794         trying to provide sane defaults for AC_TRY_RUN.
16795
16796 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16797
16798         * ltconfig
16799         * ltmain.sh: upgrade to libtool 1.3.3
16800
16801 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16802
16803         * INSTALL: Indicate that the --with-glib= configure
16804         time flag is unsupported.
16805
16806 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16807
16808         * docs/generation.txt: Added a file that gives
16809         documenation about the autogeneration process for
16810         various autogenerated files.
16811         
16812 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16813
16814         * configure.in (LIBS): Look for libgmodule in the
16815         right location.
16816
16817 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16818
16819         * docs/gtk_tut.sgml: Removed references to
16820         code examples in my directory on gtk.org as
16821         they should all be in the tutorial now.
16822
16823         * docs/gtk_tut.sgml: Added sources for dial-test
16824         and scribble-xinput programs that were previously
16825         missing.
16826
16827 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16828
16829         * TODO: Added entry about menu keyboard navigation, removed
16830         some finished items.
16831
16832 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16833
16834         * acinclude.m4: Standardize on func_dgettext
16835         not func_gettext, so that the checks for dgettext
16836         actually are paid attention to.
16837
16838 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16839
16840         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16841         directly, rather than repeating the checks for
16842         gettext.
16843
16844         * INSTALL: Added information about gettext and
16845         NLS support.
16846
16847         * acinclude.m4 (LIBM): Check for dgettext, not
16848         just gettext. This should hopefully fix things wrt
16849         systems with old versions of GNU gettext installed.
16850
16851 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16852
16853         * configure.in (LIBS): Look for libgmodule in the
16854         right location.
16855
16856 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16857
16858         * autogen.sh: add --enable-maintainer-mode
16859
16860         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16861
16862 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16863
16864         * docs/gtk-config.1.in:
16865           docs/Makefile.am:
16866           configure.in: gtk-config is now generated.
16867
16868         * docs/gtk-config.1: Removed, now generated.
16869
16870 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16871
16872         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16873         handle CreateNotify itself, still put out a debuging message for
16874         --gdk-debug=events. made the ReparentNotify debugging message more
16875         verbose.
16876         wrap xcoords translation for ConfigureEvents into an error trap,
16877         a destroy event may already be pending, and in that case, the
16878         actuall coordinate values are not at all critical.
16879
16880 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16881
16882         * gdk/gdkcc.c: Stop leaking the color_hash all over
16883         the place. Simplify and improve the logic.
16884
16885 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16886
16887         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16888         for prototypes and function implementations consistent (reported
16889         by Tomas Ogren).
16890
16891 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16892
16893         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16894         send_event set in debugging output.
16895         (gdk_compress_exposures): default initialize the event so we don't
16896         operate on bogus values (namely send_event).
16897
16898 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16899
16900         * gdk/gdkwindow.c: When we receive an unexpected
16901         destroy notify on one of our windows, don't just
16902         warn about it, also mark our windows as destroyed.
16903
16904 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16905
16906         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16907           name => font and name => fontset hashes. The 
16908           name => fontset hash is a _big_ win since we
16909           weren't previously caching fontsets at all and loading
16910           fontsets is expensive. The name => font hash
16911           is less of a win, but it does save us from doing
16912           repeated XQueryFont calls on the same font.
16913
16914         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16915           list so we can remove font/fontset from hash.
16916
16917 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16918
16919         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16920           and slightly confusing test. [ XInternAtom (,,TRUE)
16921           will never return None ].
16922
16923 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16924
16925         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16926           gdk/gdkwindow.c (gdk_window_set_hints):
16927
16928         Don't omit setting the properties if flags == 0 -
16929         there may be an existing set of properties there
16930         already. (Very old bug. Would it be better to
16931         delete the property instead?)
16932
16933         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16934           spelling error in comment.
16935
16936 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16937
16938         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16939           to avoid stomping over gdk_error_warnings.
16940
16941         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16942           as (bits_per_pixel + 7) / 8. This gives the same
16943           result as before for multiples of 8, but actually
16944           a "reasonable" value for 1bit or 4bit displays.
16945
16946 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16947
16948         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16949         GNU Make.
16950
16951 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16952
16953         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16954         discarding configure events.
16955
16956 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16957
16958         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16959         refcount is greater than zero.
16960
16961         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16962
16963         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16964
16965         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16966
16967         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16968
16969 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16970
16971         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16972         that format 32 => sizeof(item) == 4. It really is
16973         sizeof(long).
16974
16975 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16976
16977         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16978         core dump at all on X IO errors, only core dump
16979         if --enable-debug for X errors.
16980
16981 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16982
16983         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16984         unknown window:" message. disabled ConfigureNotify discarding code,
16985         because it led to events being processed out of order.
16986
16987 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16988
16989         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16990
16991         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16992         we export this function, supress error warnings and don't reset the
16993         error code in the first half of this function.
16994
16995         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16996         code (instead of just -1) so gdk_error_trap_pop() reveals something
16997         actually informative about the error that happened.
16998
16999         * gdk/*.c:
17000         don't rely on gdk_error_code being -1 if an error occoured, but just
17001         gdk_error_code != 0.
17002
17003 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17004
17005         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17006         pointer *before* invoking the filter function, so we at least don't
17007         crash if a filter is removed that is currently executed. window filters
17008         *really* need to be made truely reentrant at some point.
17009
17010 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17011
17012         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17013         PropertyNotify debug messages.
17014
17015 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17016         
17017         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17018         
17019         * gdk/gdkim.c: Fix cut-and-paste errors for 
17020         x/y and PreeditAttributes/StatusAttributes.
17021
17022 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17023
17024         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17025         G_MAXINT to 2^16 to alleviate overflow problems in
17026         various window managers.
17027
17028 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17029
17030         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17031         for fontsets.
17032
17033 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17034
17035         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17036         Initialize size_hints.x and size_hints.y because kwm
17037         brokenly pays attention to them.
17038         (Bug #1181 -  Lars Heete <hel@admin.de>)
17039
17040 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17041
17042         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17043         return value of gdk_list_visuals(). 
17044         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17045
17046 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17047
17048         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17049         XSetIMValues to (void *) when comparing to NULL, to workaround
17050         the problem of some compilers barfing since older X headers don't
17051         have the prototype for it.
17052
17053 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17054
17055         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17056         for pseudocolor where colormap->colors was double
17057         allocated.
17058
17059         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17060         color value in the hash table with the pixel filled
17061         in so when we do later hash table lookups, the color
17062         value is correct.
17063         
17064 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17065
17066         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17067         making the call
17068
17069 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17070
17071         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17072         pointed out by Morten Welinder <terra@diku.dk>.
17073
17074 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17075
17076         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17077           default filter from the list
17078
17079 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17080
17081         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17082           default filter from the list
17083
17084 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17085
17086         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17087
17088         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17089         g_strdup_printf instead of calcing the length separately
17090
17091 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17092
17093         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17094         that we don't do in many other places. (Fixing duplicate 
17095         #include of config.h)
17096
17097         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17098         Otherwise, #ifndef XINPUT_NONE check in the latter
17099         doesn't work. (Bug #546)
17100
17101 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17102
17103         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17104         "None" case insensitive.
17105
17106 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17107
17108         * gdk/gdkselection.c: 
17109         Add error traps so if the other end of the connection
17110         dies, we survive.
17111
17112 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17113
17114         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17115         dest_xid field into two fields - one for the window
17116         to send in messages, one to indicate the last looked
17117         up window for caching purposes. This is needed, so
17118         that Leave messages get the correct window.
17119
17120 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17121
17122         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17123         Fix warning created by people mucking around
17124         with the gsource API.
17125
17126         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17127         Change mapping between GIOCondition and GdkInputCondition
17128         to match the way the Linux kernel does it. This should
17129         fix problems where closed pipes were no longer signalling
17130         GDK_INPUT_READ on systems with a native poll().
17131
17132 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17133
17134         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17135         explicitly for the string "None" - it is in the XPM
17136         spec and some servers treat unknown colors in odd ways
17137         (like asking the user!)
17138
17139 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17140
17141         * gdk/gdkevents.c: made "->" into a "." of previous change so
17142         it compiles
17143
17144 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17145
17146         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17147         window field of the event structure before calling
17148         user filters.
17149
17150 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17151
17152         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17153         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17154
17155 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17156
17157         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17158         intermediate text property - prevents major memory
17159         leak when gdk_use_mb.
17160         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17161
17162 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17163
17164         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17165         gtk-a-higuti-990322-[0-3]
17166
17167         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17168         sizeof(wchar_t) != sizeof (GdkWChar)
17169
17170         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17171         that was causing -DX_LOCALE not to work.
17172
17173         * gtk/gtkrc.c (gtk_rc_init):
17174         X_LOCALE will never have LC_MESSAGES defined
17175
17176         * gdk/gdk.c (gdk_init_check):
17177         Remove --xim-preedit and --xim-status from argv properly.
17178
17179         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17180         that the client window is present on the X server
17181         before we pass it to the input method.
17182
17183 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17184
17185         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17186         if --display is specified on the command line, than
17187         the drag window will not be created on that display.
17188         
17189 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17190
17191         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17192         lookups with only_if_exists == TRUE were inserting
17193         bogus values into the atom cache.
17194
17195 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17196
17197         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17198         then reset it to NULL.
17199
17200         * gdk/gdkcolor.c:
17201         (gdk_colors_free): 
17202         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17203         key for g_hash_table_remove() in both functions, this prevents us
17204         from accessing possibly uninitialized portions of a GdkColor structure
17205         where we are only interested in its pixel value.
17206
17207 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17208
17209         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17210         font hash table, if we have a GdkFontPrivate entry for this font
17211         already, simply increment its reference count, provided by Olaf Dietsche
17212         <olaf.dietsche+list.gtk@netcologne.de>.
17213
17214 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17215
17216         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17217         just to be sure.
17218
17219         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17220         unused variables, leftovers from the X11 version.
17221
17222         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17223
17224         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17225         downcase fields on X11.
17226
17227 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17228         
17229         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17230         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17231
17232 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17233
17234         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17235
17236         * gtk/makefile.msc: Correct path to libintl.
17237
17238         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17239         use of gint vs. int, and gint vs. gboolean in headers and
17240         definitions. Use GtkType for the *_get_type functions. Note that
17241         these changes preserve binary compatibility.
17242
17243         * gdk/gdk.c
17244         * gdk/win32/gdk.c
17245         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17246
17247         * gtk/gtkmain.c
17248         * gtk/gtkclist.c
17249         * gtk/gtkmenufactory.c
17250         * gtk/gtknotebook.c
17251         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17252         vs. gboolean.
17253
17254         * gtk/gtkcolorsel.[ch]
17255         * gtk/gtkcombo.[ch]
17256         * gtk/gtkdrawingarea.[ch]
17257         * gtk/gtkgamma.[ch]
17258         * gtk/gtkhandlebox.[ch]
17259         * gtk/gtkhpaned.[ch]
17260         * gtk/gtkhruler.[ch]
17261         * gtk/gtkplug.[ch]
17262         * gtk/gtkpreview.[ch]
17263         * gtk/gtkruler.[ch]
17264         * gtk/gtksocket.[ch]
17265         * gtk/gtkstatusbar.[ch]
17266         * gtk/gtktoolbar.[ch]
17267         * gtk/gtkvbbox.[ch]
17268         * gtk/gtkvpaned.[ch]
17269         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17270         functions.
17271
17272         * gtk/gtkgamma.h: Fix bug, missing () in call of
17273         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17274
17275 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17276
17277         * gdk/gdkcolor.c (gdk_colormap_new)
17278         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17279         colormap->colors was allocated twice.
17280
17281         * gdk/win32/gdk.c: Remove some unused stuff.
17282
17283         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17284         colormap.
17285
17286         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17287         * gtk/gtklabel.h (gtk_label_get_type)
17288         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17289         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17290         in a couple of places, not guint.
17291
17292 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17293
17294         * configure.in,po/et.po: added Estonian language file
17295
17296 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17297
17298         * configure.in,po/da.po: added Danish file
17299
17300 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17301
17302         * docs/gtkfaq.sgml: Minor FAQ Update
17303
17304 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17305
17306         * docs/gtkfaq.sgml: FAQ update
17307
17308 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17309
17310         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17311         way to get window contents continually refreshed while resizing. I
17312         didn't like the effects myself, so it's not on by default.
17313
17314         * gdk/win32/gdkprivate.h: New flag variable
17315         gdk_event_func_from_window_proc, FALSE by default.
17316
17317         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17318         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17319         are passed --gdk-event-func-from-window-proc.
17320
17321         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17322         and we have am event_func, call it instead of enqueing the event.
17323
17324 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17325
17326         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17327         Kelley: Set expose_count in GdkEventExposes correctly.
17328
17329         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17330         MULTIPLE_WINDOW_CLASSES).
17331
17332         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17333         for bug in NT, apparently NT *does* draw the end pixel, too, in
17334         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17335
17336 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17337
17338         Improvements by Hans Breuer: 
17339
17340         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17341
17342         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17343         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17344         window contents while dragging" is turned on. Allocate at least
17345         one unique class for every GdkWindowType. If support for single
17346         window-specific icons is ever needed (eg. Dialog specific), every
17347         such window should get its own class.
17348
17349 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17350
17351         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17352         error that caused crashes.
17353
17354 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17355
17356         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17357         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17358         bugs when for instance part of the window was outside the
17359         display. Thanks to Philippe Colantoni for finding and fixing this.
17360
17361 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17362
17363         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17364         endpoint calculations which were totally wrong. (A little RTFMing
17365         helps a lot ;-)
17366
17367         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17368         from a separate directory, not from gettext, because of licensing
17369         issues (we want to use the LGPL version).
17370
17371         * README.win32: Mention the intl from glibc vs from gettext issue.
17372
17373 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17374
17375         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
17376         in the key event handling: Now AltGr chars work again. Also,
17377         now Alt-digits are passed up as well as Control-digits.
17378         Pass keypad plus and minus as normal plus and minus.
17379
17380 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17381
17382         * docs/gtkfaq.sgml: FAQ Update
17383
17384 1999-07-25  Tor Lillqvist  <tml@iki.fi>
17385
17386         * README.win32
17387         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
17388         the Wintab SDK.
17389
17390         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
17391         OK, but getting closer. Guard against bogus tilt data from Wacom
17392         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
17393         enable easier building without Wintab.
17394
17395         * gdk/win32/gdkinput.h
17396         * gdk/win32/gdkevents.c 
17397         * gdk/win32/gdkwindow.c: Minor changes related related to above.
17398         
17399         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
17400         code. As we have just one visual on Win32, no sense to have it in a
17401         table, and no need for the hash table.
17402
17403         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17404         better on white background.
17405
17406 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17407
17408         * README.win32: Update gcc build instructions. Mention gettext is
17409         GPL.
17410
17411         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17412         supported cursor size with GetSystemMetrics.
17413
17414         * gdk/win32/gdkfont.c
17415         * gtk/gtkfontsel.c: Guard against some font weight and charset
17416         symbols being undefined (in mingw32 headers).
17417
17418         * gdk/win32/makefile.cygwin
17419         * gtk/makefile.cygwin
17420         * gtk/gtkthemes.c: No longer need to have differently named
17421         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17422
17423 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17424
17425         * docs/gtkfaq.sgml: Long awaited FAQ update.
17426
17427 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17428
17429         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17430         it. Obscure bit manipulation needed.
17431
17432         * gdk/win32/gdkevents.c: Logging.
17433         
17434         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17435         style (file name include compiler name) for theme engines.
17436
17437 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17438
17439         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17440
17441         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17442         events. The key.string wasn't zero-terminated, still we strdup'ed
17443         it in gdk_event_copy(). Synthesize crossing events for button
17444         events before possible propagation.
17445
17446         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17447
17448         * gdk/win32/makefile.cygwin
17449         * gtk/makefile.cygwin: Use new DLL naming style for the
17450         GCC-compiled ones.
17451
17452         * gdk/win32/makefile.msc
17453         * gtk/makefile.msc: Cosmetics mostly.
17454
17455         * gtk/gtk.def: Add missing entry points.
17456
17457         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17458
17459 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17460
17461         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17462         or height is zero. Don't print a warning if Pie or Arc fails, they
17463         always fail (?) for very narrow ellipses.
17464
17465         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17466         the part or the destination window corresponding to source area
17467         outside of the source drawable's boundary.
17468
17469         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17470         anything if less than two points.
17471
17472         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17473         return NULL. Gtk cut-and-paste inside a single program works
17474         better this way. (It always gets the clipboard contents from
17475         Windows, not from its own copy, which is cleared anyway. I can't
17476         say I fully understand what happens... Emulating the X selection
17477         and property stuff is a bit of a mess.)
17478
17479         * gdk/win32/gdkevents.c
17480         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17481
17482         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17483         that never got deleted). Revamp gdk_region_shrink.
17484
17485         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17486         after use.
17487
17488         * gtk/gtk.def: Add some missing entry points.
17489
17490         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17491         component.
17492
17493 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17494
17495         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17496         Control-digits specially.
17497
17498 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17499
17500         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17501
17502 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17503
17504         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17505         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17506         finding this.)
17507
17508 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17509
17510         * gtk+.spec.in: Corrected some typos in files section.
17511         
17512 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17513
17514         * README.win32: Mention using GNU gettext.
17515         * config.h.win32: Enable NLS stuff.
17516         * gtk/makefile.msc: Use GNU gettext.
17517         * gdk/win32/gdkdnd.c: Minor header reorg.
17518         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17519         cosmetics.
17520         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17521         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17522
17523 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17524
17525         * acinclude.m4
17526         * config.guess
17527         * config.status
17528         * ltconfig
17529         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17530
17531 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17532
17533         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17534         SafeAdjustWindowRectEx. Don't override all calls to
17535         AdjustWindowRectEx by it, but use it only in two places: When
17536         creating a new top-level window and when moving a top-level
17537         window.
17538
17539         Use screen coordinate rectangle, not client rectangle, in
17540         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17541         when we try to place a window so that the decoration (mainly,
17542         title bar) isn't visible.
17543
17544         These changes fix the bug that showed up for instance as the
17545         GIMP's saved top-level windows moving right and down (by an amount
17546         equal to the window decoration) for each session. This bug showed
17547         up also in testgtk's "Saved Position".
17548
17549         gdk_window_resize also redone a bit.
17550
17551 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17552
17553         * gtk/testgtkrc: Add (commented out) Windows-style theme
17554         include line.
17555
17556         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17557
17558 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17559
17560         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17561         gdkx.h to a gdk subdirectory, so that applications can include
17562         these with <gdk/*.h> without trouble.
17563
17564         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17565         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17566         have their bitmap destroyed.
17567
17568         * gdk/win32/gdk.def: Add gdk_root_parent.
17569
17570 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17571
17572         * configure.in
17573           gtk-config.in
17574           ltconfig
17575           ltmain.sh     
17576           gtk/Makefile.am: changes to compile nicely (with xlib) 
17577           on BeOS
17578
17579 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17580
17581         * acinclude.m4
17582         * config.guess
17583         * config.sub
17584         * ltconfig
17585         * ltmain.sh: upgrade to libtool 1.3
17586
17587 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17588
17589         * gtk/gtkclist.c:
17590         * gtk/gtkctree.c: merges from gtk-1-2
17591
17592 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17593
17594         Support added for building using a GNU toolchain on Win32,
17595         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17596
17597         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17598         * config.h.win32: Changes for gcc.
17599         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17600         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17601         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17602         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17603         Protect shl stuff unavaiilable with mingw32 headers.
17604         * gdk/win32/gdkevents.c: Fix typo.
17605         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17606         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17607         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17608         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17609         the mingw32 headers.
17610         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17611         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17612         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17613         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17614         Test for NATIVE_WIN32, not _MSC_VER.
17615         * gtk/gtkmain.c: No use warning about developer version on Win32,
17616         there aren't any non-developer versions anyhow.
17617         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17618         * gtk/makefile.msc: Use pthread from another directory. Minor other
17619         changes. 
17620
17621 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17622
17623         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17624           default filter from the list
17625
17626 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17627
17628         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17629          when gtk_widget_grab_default() is called for a widget that
17630          is not within a GtkWindow.
17631
17632 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17633
17634         * docs/gtk_tut.sgml, examples/clist.c: use a
17635           scrolled window in the clist example. Minor
17636           tutorial fixes.
17637
17638 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17639
17640         * docs/gtk_tut.sgml: Style check from David King
17641           <dking@youvegotmail.net>
17642
17643 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17644
17645         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17646         compile with unknown value of GDK_WINDOWING
17647
17648 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17649
17650         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17651         after the rule is fired.
17652         (install-exec-local): Install gdkconfig.h only if the contents are
17653         different from the currently installed gdkconfig.h.
17654
17655 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17656
17657         * gdk/Makefile.am (configexecincludedir): Rename from 
17658         configincludedir so that gdkconfig.h will be installed 
17659         as part of `make install-exec'. 
17660
17661 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17662
17663         * acinclude.m4
17664         * config.guess
17665         * config.sub
17666         * ltconfig
17667         * ltmain.sh: upgrade to libtool 1.2f
17668
17669         * autogen.sh: libtool is not required to autogen gtk+
17670
17671         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17672         needed)
17673
17674 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17675
17676         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17677         declaring gdk variables exported/imported from the DLL. New image
17678         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17679         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17680         GDK_DRAG_PROTO_OLE2.
17681
17682         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17683         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17684         declared only for the Win32 version, but could be in the X11
17685         version as well. (Needed for a Xlib-less gdk_imlib.)
17686         gdk_color_hash should have only one parameter. Declare
17687         gdk_threads_mutex with GDKVAR.
17688         
17689         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17690         just one parameter.
17691
17692         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17693         per pixel, not bits.
17694
17695         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17696         Fetch bpp (which means bits-per-pixel here) from another place on
17697         Win32. Accept also depth==32 (which we might get on Win32) with
17698         bpp==32.
17699
17700         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17701         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17702         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17703         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17704         in the backend-dependent directory, not in the common gdk
17705         directory.
17706
17707         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17708         headers.
17709
17710 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17711
17712         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17713         want to use the Gtk+ devel version (which is true, and yes - even i am
17714         currently working with the 1.2.x branch). so everyone reading this, you
17715         probably want to issue
17716         cvs checkout -r glib-1-2 glib
17717         and
17718         cvs checkout -r gtk-1-2 gtk+
17719         as your next two comands.
17720
17721 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17722
17723         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17724         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17725
17726         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17727         file. strongly deprecated the GTK_HAVE_* macros, we provide
17728         GTK_CHECK_VERSION() for people that need to check for certain
17729         Gtk+ versions.
17730
17731         * gtk/gtkcompat.h: removed this from CVS.
17732         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17733         idea right from the start, it just didn't seem like that back then.
17734
17735 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17736
17737         * merges from gtk-1-2:
17738
17739 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17740
17741         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17742         item factory class has been created.
17743         (gtk_item_factory_parse_rc): likewise.
17744
17745         * gtk/gtkmenu.c:
17746         keep proper references for old_active_menu_item.
17747         (gtk_menu_reparent): unset the usize of the new parent,
17748         so the menu can sanely be size requested and we don't get nasty screen
17749         artefacts upon next reparentation.
17750         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17751         enter notify. only synthesize enter notifies if the pointer really is
17752         inside the event window.
17753         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17754         (gtk_menu_popup): move the background setting stuff into
17755         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17756
17757         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17758         gtk_menu_shell_select_item() to select the new item.
17759         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17760         do the right thing for deselection as well.
17761
17762 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17763
17764         * gtk/gtkwidget.[hc]:
17765         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17766         are locked.
17767
17768         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17769         existing accelerators if the widget's accelerators are locked.
17770
17771 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17772
17773         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17774
17775         * gtk/gtkmenu.c: truely forward key press and key release events to
17776         the menu widget from the toplevel or tearoff window. we can't simply
17777         connect to that, we need to stop further processing of the events as
17778         well.
17779
17780 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17781
17782         * gtk/gtkmenu.c:
17783         (gtk_menu_key_press): pass event->keyval, event->state to
17784         gtk_accelerator_valid, instead of event->keyval twice.
17785         refuse to install single letter accelerators for menus that use
17786         single letter shortcuts.
17787
17788         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17789         gtk_menu_ensure_uline_accel_group().
17790
17791         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17792         which will always return an uline accel group, made
17793         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17794         yet created.
17795
17796 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17797
17798         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17799
17800         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17801         Leave button sensitive, trap  button_press, button_release,
17802         motion_notify, enter_notify and leave_notify events instead.
17803         (gtk_clist_column_title_active): disconnect event handler.
17804         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17805         Guillaume Laurent <glaurent@worldnet.fr>
17806
17807 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17808
17809         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17810         width/height mixups.
17811
17812         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17813         if needed.
17814
17815 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17816
17817         * gtk/testgtk.c (create_item_factory): unref the item factory after
17818         window's destruction.
17819
17820         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17821         count on the menu shell around the menu item's activation, since the
17822         signal emission may cause menu shell destruction.
17823
17824         * gtk/gtkitemfactory.c:
17825         the previous code leaked one accel group per menu. we use
17826         gtk_menu_get_uline_accel_group() now to fix that, and with that
17827         also create the underline accelerator group of the menus only if
17828         required (i.e. an underline accelerator has been specified).
17829         (gtk_item_factory_construct):
17830         (gtk_item_factory_create_item): removed code that would create an
17831         extra accel group for the menu (and leak references).
17832         (gtk_item_factory_create_item): adapted the underline accelerator
17833         installation code to properly feature gtk_menu_get_uline_accel_group().
17834
17835         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17836         menu->accel_group, this may return NULL if the accelerator group
17837         hasn't been set yet.
17838         added gtk_menu_get_uline_accel_group() to retrive the underline
17839         accelerator group of the menu, this will be created on demand
17840         and proper care is taken about its reference count.
17841
17842         * gtk/gtkitemfactory.h:
17843         * gtk/gtkitemfactory.c:
17844         dumped the approach of keeping a widgets by action list on the
17845         factory since the factory<->widget destroy negotiation didn't work
17846         and would be hard to get going at all. instead we keep a list of
17847         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17848         persistant throughout a program's life time).
17849         also, i removed the static const gchar *key_* variables, and made
17850         them inline strings (they weren't actually used anyways).
17851         (gtk_item_factory_add_item): update ifactory->items.
17852         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17853         the item factory pointer from the remaining ifactory widgets).
17854         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17855         list to find the widget.
17856         (gtk_item_factory_get_item): new function that works around
17857         gtk_item_factory_get_widget() limitations, this function will only
17858         return menu items, even for <Branch> entries.
17859
17860 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17861
17862         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17863         font hash table, if we have a GdkFontPrivate entry for this font
17864         already, simply increment its reference count, provided by Olaf Dietsche
17865         <olaf.dietsche+list.gtk@netcologne.de>.
17866
17867         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17868         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17869
17870 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17871
17872         * gtk/gtkcontainer.c:
17873         (gtk_container_add_with_args):
17874         (gtk_container_addv):
17875         (gtk_container_add): before adding a child to a conatiner, make sure
17876         it is (default) constructed, this is neccessary because under certain
17877         circumstances the child will get relized and mapped immediatedly, in
17878         which case it has to be constructed already.
17879
17880 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17881
17882         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17883         values > 1 as TRUE also.
17884
17885 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17886
17887         * README.win32: New file.
17888                 
17889         * configure.in: Check for lstat.
17890
17891         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17892         completeness.
17893
17894         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17895
17896         * gtk/gtk.def: Removed CRs.
17897
17898         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17899         ..\gdk\win32).
17900
17901         * gdk/win32/makefile.msc: Correct upwards relative paths.
17902         
17903 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17904
17905         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17906           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17907           it was connecting a void function to expose_event and the int
17908           returning function to the draw signal
17909
17910 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17911
17912         * configure.in:
17913         Use correct path to libgmodule.la when ref'ing uninstalled copy
17914         of glib.  (Already in stable branch, Bug #417)
17915
17916 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17917
17918         Win32 merge and general portability stuff:
17919                 
17920         * acconfig.h,configure.in: Check for <sys/time.h>.
17921
17922         * gdk/win32: New directory (actually, been there for a while).
17923         
17924         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17925         NATIVE_WIN32, and use these. Always case fold on Win32. No
17926         backslashed escapes on native Win32.
17927
17928         * gtk/{gtk.def,makefile.msc}: New files.
17929
17930         * gtk/Makefile.am: Add above new files.
17931         
17932         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17933         instead of <strings.h>.
17934
17935         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17936         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17937         <unistd.h> appropriately.
17938
17939         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17940         Use ABS() (from <glib.h>) instead of abs().
17941         
17942         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17943         of gtk (and thus glib) headers, so that WIN32 will be
17944         defined. With MS C, include <direct.h> for mkdir prototype.
17945
17946         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17947         some casts, needed by MS C.
17948
17949         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17950         implemented).
17951
17952         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17953         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17954         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17955
17956         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17957                 
17958         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17959         the event is not a hint, or its window is not the slider. Needed
17960         on Win32, at least.
17961
17962         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17963         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17964         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17965         a subdirectory of the Windows directory as gtk system
17966         configuration directory.
17967
17968         * gtk/gtkselection.c: No chunks on Win32.
17969
17970         * gtk/gtksocket.c: Not implemented on Win32.
17971
17972         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17973
17974         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17975
17976         * gtk/maketypes.awk: Declare variables with a macro that expands to
17977         necessary export/import magic in the case of Win32.
17978                 
17979         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17980
17981 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17982
17983         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17984         since those were meant only for gdki18n.h.  
17985         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17986         for widechar tests.
17987         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17988
17989 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17990
17991         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17992         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17993
17994         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17995         installed) to CFLAGS.
17996
17997         * gdk/Makefile.am: Add rules for gdkconfig.h.
17998
17999         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18000         APIs.
18001
18002         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18003         gdkx.h anyway when compiling for X11.
18004         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18005         general): Merge in Win32 version.
18006         
18007         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18008         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18009         expansion (if we don't have HAVE_PWD_H), allow for drive
18010         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18011         included code from Craig Setera's port to Win32 (the one that uses
18012         X11, and the cygwin dll), even if it probably will be abandoned.
18013
18014         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18015         the user entered one herself.  This way one can complete *.h and
18016         don't get matches on any .help files, for instance.
18017         
18018 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18019
18020         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18021         font hash table, if we have a GdkFontPrivate entry for this font
18022         already, simply increment its reference count, provided by Olaf Dietsche
18023         <olaf.dietsche+list.gtk@netcologne.de>.
18024
18025         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18026         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18027
18028 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18029
18030         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18031         the number of calls to gdk_draw_point() (and thus to X) by
18032         clipping the points by hand.
18033
18034         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18035         the clip parameter.
18036         (gtk_handle_box_paint): Only paint the handle if the expose area
18037         intersects it.
18038
18039 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18040
18041         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18042
18043 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18044
18045         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18046         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18047
18048 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18049
18050         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18051          textmode (O_TEXT) for OS/2 version.
18052
18053 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18054
18055         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18056         GtkSpinButton, "input" and "output", to make the output more flexible.
18057         The user has to provide a mapping between adjustment->value and the
18058         output string (and vice versa, if the spin button is editable). 
18059         See testgtk for examples.
18060
18061 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18062
18063         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18064         new one.
18065         
18066         * configure.in: set gtk+ version to 1.3.0.