]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2
3         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
4         fail if iter is NULL. (#58347)
5
6 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
7
8         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
9         some off-by-one issues, fixing selection of line-ends. (#50323)
10
11 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
12
13         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
14         functions in order to make mouse operation work again in the
15         color wheel. (#58604)
16
17 2001-08-07  James Henstridge  <james@daa.com.au>
18
19         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
20         the accelerator when the accel object is changed.  Fixes bug
21         #58628.
22
23 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
24
25         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
26         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
27         (gnome bugzilla #58202)
28
29 2001-08-06  Havoc Pennington  <hp@pobox.com>
30  
31         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
32         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
33         it was expecting a GdkWindow, not a GdkWindowImplX11.
34  
35         Also, we were getting the window rect in screen coords 
36         and the screen rect in window coords then intersecting 
37         them; instead, get window rect in window coords.
38  
39         Finally, there were codepaths that resulted in a stuck server grab
40         (when the window was fully onscreen, or on gdk_image_new()
41         failure); make the server ungrab thing a bit more
42         robust/consistent.
43
44 2001-08-06  Sven Neumann  <sven@gimp.org>
45
46         * gdk/gdkpango.c (gdk_pango_context_destroy): 
47         check if info->colormap != NULL before unref'ing it. It might have
48         been set to NULL using gdk_pango_context_set_colormap().
49
50 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
51
52         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
53         Fix conversion from float to int so that we don't get
54         skew in the int => float => int roundtrip. 
55         (#58120, reported by Vitaly Tishkov). Also fix problem
56         where if no alpha was set, the returned alpha
57         from (say) set_current_alpha() was returned as 1, not 65535.
58
59 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
60
61         * gtk/gtklist.c (gtk_list_clear_items): Fix
62         problem with selecting a new focus child.
63
64         * gtk/gtklist.c (gtk_list_clear_items): Clear 
65         list->undo/list_focus_child after unparenting
66         child, since unparenting the child can result
67         in list->last_focus_child being set. (#58024)
68
69         * Makefile.am (SUBDIRS): Add target specific pc
70         files to DISTCLEANFILES.
71
72         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
73         (58327, Matthias Clasen)
74
75 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
76
77         * tests/testgtk.c: Patch from Hans (with various modifications),
78         to add the ability to use testgtk as a rough-and-ready
79         benchmark. Try, 'testgtk --bench all:5' (if you want decent
80         numbers, run without a window manager)
81
82 2001-08-04 Alexander Larsson <alexl@redhat.com>
83
84         * gdk/win32/gdkinput.c:
85         Add #ifdef HAVE_WINTAB around wintab.h include.
86
87         * gtk/gtk.def:
88         Removed marshals that have been moved to glib.
89         Commented out plug and socket. They didn't compile for me 
90         on win32.
91
92 2001-08-04  Hans Breuer  <hans@breuer.org>
93
94         * gtk/stocks-icons/makefile.msc : new file
95         * gtk/makefile.msc.in : use it
96
97         * gtk/gtkstyle.c : not all platforms do provide M_PI and
98         friends, but luckily there is G_PI
99
100         * gtk/gtk.def : updated
101
102         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
103         windows WS_POPUP, but only those without a parent. This fixes the 
104         mis-alignment between the selectable (temp, input only) window and 
105         the window text of GtkLabel.
106
107         (gdk_window_show) : respect private->state when actually showing
108         the window.
109
110         (gdk_window_set_transient_for) : Implementation from Wolfgang 
111         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
112         error handling. Should fix #50586.
113
114         * gdk/win32/gdkevents-win32.c : beautify log output
115
116 2001-08-04  Michael Natterer  <mitch@gimp.org>
117
118         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
119         Need to show the image after adding it to the GtkImageMenuItem.
120         This used to work without in testgtk because of the
121         gtk_widget_show_all() at the end of the function.
122         (Closes #54978).
123
124 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
125
126         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
127         (gtk_notebook_set_child_property): fix finding of child's page,
128         since we have to validly deal with labels and menus here as well.
129         (gtk_notebook_get_child_property): fix warning.
130         (gtk_notebook_class_init): property tab_pack is of type
131         GTK_TYPE_PACK_TYPE (enum) not boolean.
132         (gtk_notebook_find_child): don't always warn, we might be looking
133         for a label or menu child.
134         (gtk_notebook_map): fix mapping of panel.
135
136         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
137         widget's mapped state, regardless of the value being set equals
138         old settings, since things like REALIZED(parent) or MAPPED(parent)
139         may have changed since the old value was set. make it an error to
140         invoke this function on a toplevel widget.
141
142 2001-07-31  Darin Adler  <darin@bentspoon.com>
143
144         * gdk/gdkprivate.h:
145         * gdk/x11/gdkx.h:
146         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
147
148         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
149         GTK_OBJECT.
150
151 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
152
153         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
154         scoping error pointed out by matthiasc@poet.de.
155
156 2001-07-31  Sven Neumann  <sven@gimp.org>
157
158         * demos/gtk-demo/appwindow.c
159         * demos/gtk-demo/item_factory.c
160         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
161
162 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
163
164         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
165         argument order for g_signal_has_handler_pending.
166
167 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
168
169         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
170         instead of long deprecated g_scanner_stat_mode().
171
172 2001-07-29  Hans Breuer  <hans@breuer.org>
173
174         * gdk/makefile.msc : build in the backend dir after
175         auto-generating files
176
177         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
178         with code from win32-production-branch.
179
180         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
181         before calling DestroyWindow, which indirectly calls 
182         gdk_window_destroy_notify ()
183
184         (performance patch merged from win32-production-branch)
185         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
186         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
187         R2_COPYPEN rop). It is claimed to be much faster.
188
189 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
190
191         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
192         add an "attributes" property to the text renderer for ATK.
193
194 2001-07-26  Alex Larsson  <alexl@redhat.com>
195
196         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
197         Initialize image->bits_per_pixel from the drawable, not from
198         the root window.
199
200         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
201         Fix cast. argument is an IMPL already.
202
203 2001-07-15  James Henstridge  <james@daa.com.au>
204
205         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
206         (gtk_window_remove_accel_group): same here.
207         (gtk_window_key_press_event): same here.
208
209         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
210         (gtk_widget_remove_accelerator): same here.
211         (gtk_widget_remove_accelerators): same here.
212
213         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
214
215         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
216         instead of GtkObject.
217
218         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
219         now takes GObjects.
220
221         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
222         pass a GObject to gtk_accel_group_entries_from_object.
223         (gtk_item_factory_create_item): s/accel_widget/accel_object/
224
225         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
226
227         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
228
229         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
230         GObjects can have accelerators set now.  Add compatibility
231         defines.
232
233         * gtk/gtkmarshal.list: add missing marshallers.
234
235         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
236         accelerators on plain GObjects.  gtk_accel_group_object_destroy
237         has been converted into a weak reference, and
238         gtk_accel_group_delete_entries is now a destroy notify for that
239         piece of data.
240
241 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
242
243         * gdk/gdkdraw.c: Added a check on the colormap depth to
244         gdk_drawable_set_colormap()
245         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
246         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
247         for pixmaps without visuals (more specifically, bitmaps)
248         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
249         doesn't set a colormap with the wrong depth
250
251
252 2001-07-22  Anders Carlsson  <andersca@gnome.org>
253
254         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
255         expander_height and expander_width properties with a single
256         property, expander_size.
257         (gtk_tree_view_init): Set the tab_offset to expander_size
258         plus some padding.
259         (gtk_tree_view_unrealize): Remove the expand/collapse
260         timeout if it exists.
261         (coords_are_over_arrow): Fix a small bug.
262         (gtk_tree_view_motion_draw_column_motion_arrow): Use
263         expander_size.
264         (gtk_tree_view_draw_focus): Use "treeview" instead of
265         "add-mode" as detail when drawing the focus.
266         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
267         instead of "add-mode" as detail when drawing the focus.
268         (gtk_tree_view_deleted): If we have a node currently being
269         expanded or collapsed, remove the timeout and set the node 
270         to NULL.
271         (gtk_tree_view_queue_draw_arrow): New function that just
272         redraws the arrow of a node.
273         (gtk_tree_view_draw_arrow): Use expander_size instead of
274         expander_width/expander_height, also pass a different
275         expander_style to gtk_paint_expander depending on the 
276         state of the node being drawn.
277         (expand_collapse_timeout): New function for expanding 
278         or collapsing a node depending on the previous state.
279         (gtk_tree_view_real_expand_row): Add timeout and set 
280         correct state for node being expanded.
281         (gtk_tree_view_real_collapse_row): Add timeout and set
282         correct state for node being collapsed.
283
284         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
285         information about the node currently being expanded or
286         collapsed, and also a timeout id.
287
288         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
289         with expander_style for draw_expander.
290
291         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
292         expander_style.
293         (create_expander_affine): New function for creating an 
294         expander affine.
295         (apply_affine_on_point): New function for applying an 
296         affine to a point.
297         (gtk_default_draw_expander): Modified to take expander_style
298         instead of is_open, and to draw the rectangle rotated differently
299         depending on the expander style.
300         (gtk_paint_expander): Replace is_open with expander_style.
301
302         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
303
304         * gtk/gtkenums.h: Add expander style enum.
305
306 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
307
308         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
309         value from gtk_tree_model_get_iter, the model might be empty.
310
311 2001-07-20  Hans Breuer  <hans@breuer.org>
312
313         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
314         gdk/gdkinput.c like the other backends
315
316         * gdk/win32/gdkinput-win32.h :
317         * gdk/win32/gdkinput.c :
318         * gdk/win32/gdkvisual-win32.c :
319         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
320         GdkVisual GObjectification. UNTESTED for pen-devices because
321         I simply have none.
322
323         * gdk/gdk.def :
324         * gtk/gtk.def : updated externals
325
326         * gtk/gtkiconfactory.c :
327         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
328         before passing &error to functions to avoid strange crashes
329         
330         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
331
332         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
333
334         * gtk/makefile.msc.in : updated
335
336 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
337
338         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
339         Add property support. (#51858)
340
341 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
342
343         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
344         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
345         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
346
347 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
348
349         * gtk/gtkcolorsel.c: Add propery support (roughly
350         based on patch from Lee Mallabone, #51014)
351
352         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
353         deprecated, since we already g_warning() on it.
354
355 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
356
357         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
358         typo that sometimes caused selection not to work properly.
359
360         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
361         entry when tabbing in. (#57743)
362         
363         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
364         user drags up above or down below the entry, move
365         to the end or the beginning of the entry. (Suggestion
366         from Jay Cox, #50940)
367
368         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
369         a current selection, then when moving by chars or
370         words, move to the end of the selection rather than
371         from entry->current_pos. (Suggestion from Jay Cox,
372         #50942)
373         
374 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
375
376         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
377         set window->decorated. (Patch from Hidetoshi Tajima,
378         #55846)
379
380 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
381
382         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
383         the widget/child realization/mapping invariants.
384
385         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
386         gtk_widget_[get/set]_child_visible() to control
387         whether visible children of a mapped window are
388         mapped.
389
390         * docs/widget_system.txt: Updated for changes in
391         container contract, and addition of GTK_CHILD_VISIBLE.
392
393         * gtk/gtkcontainer.c: Add generic map()/unmap()
394         functions that work for almost all containers.
395
396         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
397         gtk_widget_set_child_visible() where necessary.
398
399         * gtk/*.c: Remove excess map(), unmap(), and 
400         realization/mapping invariant enforcing code
401         from many containers.
402
403 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
404
405         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
406         Get the foreground color from 'text', nor 'fg'. (#57568)
407
408 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
409
410         * gtk/*.c: Patch from Matthias Clasen to remove remove
411         all instances of g_return_if_fail (foo != NULL); that are
412         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
413         since the second check catches the NULL anyways.
414
415 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
416
417         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
418         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
419         GDK_THREADS_ENTER()/LEAVE() pairs.
420
421         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
422         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
423         pairs. (Problem found by M. Meeks)
424
425 2001-07-18  Darin Adler  <darin@bentspoon.com>
426
427         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
428         that we don't get a g_warning message every time we register a new
429         icon size.
430
431         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
432         using pixel variable of the correct type.
433         
434 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
435
436         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
437         so that using X functions on a GdkWindow is possible, if
438         a little hairy.
439
440         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
441         and ts_origin of a GC, so that external parties can offset/restore
442         a GC, when using gdk_window_get_internal_paint_info().
443
444 2001-07-17  Darin Adler  <darin@bentspoon.com>
445
446         * .cvsignore: Ignore the sgml directory made by gtkdoc.
447         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
448         instead of the deprecated gtk_window_set_policy.
449         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
450         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
451         function to get rid of warning and some code too.
452         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
453         missing const.
454         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
455         unused local.
456         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
457         const.
458         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
459         (gdk_utf8_to_compound_text): Add missing const.
460         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
461         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
462         cast and get rid of an unnecessary one.
463         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
464         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
465         local.
466         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
467         Remove unused local.
468         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
469         missing const.
470         * tests/testsocket.c: (add_child): Add cast so the printf format
471         doesn't make us implicitly depend on what integer type
472         gtk_socket_get_id returns.
473         * tests/testtextbuffer.c: Add missing const.
474         * tests/testtreefocus.c: (main): Remove unused local.
475         * tests/treestoretest.c: (iter_remove): Remove unused local.
476         (uppercase_value): Remove unused function.
477         (make_window): Add statement to quiet the compiler's uninitialized
478         variable warning.
479
480 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
481
482         * gtk/gtkrange.c:
483         (second_timeout): 
484         (initial_timeout): 
485         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
486         (gtk_range_calc_layout): compute the new layout based on an
487         adjustment->value being passed in as argument.
488         (gtk_range_button_press): for button2 slider warps, first recalc
489         the layout, then adjust the value. also, use update_slider_position()
490         for adjusting the value, so we keep pixel quantisation at which we
491         usually operate (upon motion or button releases). the reason for this
492         is that, we can't change the adjustment upon button2 presses to a non
493         quantised value and upon button2 release re-quantise the value since
494         that'd alter the value even if we didn't get any motion events (causing
495         unexpected scroll area warps upon release and/or slider pixel-jitter).
496         (gtk_range_motion_notify): update the slider position from queried
497         coordinates, not event coordinates.
498
499 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
500
501         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
502         the default gc values are: width=0, CapBut, JoinMiter.
503
504 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
505
506         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
507         into account the xpad and ypad when calculating the width and the
508         height of the pixbuf cel.
509
510 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
511
512         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
513         Rename to gtk_radio_menu_item_get_group(), add deprecated
514         alias. (#57044)
515
516         * gtk/gtkfilesel.c: Indentation fix.
517
518 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
519
520         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
521         Hasselmann to fix warnings in compat macros. 
522         (#56773)
523
524         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
525         stupid wrong cast added in last patch.
526
527 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
528
529         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
530         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
531
532 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
533
534         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
535         missing cast.
536
537         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
538         NULL/FALSE return value confusion.
539
540         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
541         problem when scrollbar completely fills range. (Patch
542         from  Matthias Clasen, #57047)
543
544 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
545
546         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
547         clean up when handling events for move-resize emulation.
548         (Problem traced down by Matthias Clasen, #57271)
549
550 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
551
552         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
553           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
554           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
555           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
556           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
557           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
558           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
559         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
560
561 2001-07-09  Peter Williams  <peterw@ximian.com>
562
563         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
564         for when srcdir != builddir
565
566 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
567
568         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
569         gtk_tree_model_get_iter_root.
570
571         * gtk/gtkliststore.c: Add a bunch of g_return statements.
572         (gtk_list_store_iter_n_children): Fix up.
573
574         * gtk/gtktreestore.c: Add a bunch of g_return statements.
575
576 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
577
578         * gtk/gtkwidget.c (gtk_widget_class_init):
579         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
580         restore some workingness.
581
582         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
583         handle of window type for input-only windows.
584
585 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
586
587         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
588         Patch from Gregory Merchan to add 
589         gtk_button_box_set_secondary(), which separates
590         the child into a separate group from the normal
591         buttons. (#56331)
592
593         * gtk/gtkdialog.c: Make help buttons secondary by
594         default.
595
596         * gtk/gtkbbox.c: Added a child property "secondary".
597
598         * gtk/testgtk.c: Turn on the help button for the 
599         color selector to check that it properly appears
600         as secondary.
601
602 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
603  
604         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
605         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
606         Add gdk_set_pointer_hooks() to allow pointer-querying to
607         be hooked by an event record/playback system like GERD.
608         (#56914)
609         
610 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
611
612         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
613         in the right value of initial_emission to
614         gtk_widget_set_style_internal (#57091)
615
616 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
617
618         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
619         Make compile.
620
621         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
622         with calling gtk_widget_set_style_internal() with
623         the old style, not the new style. (#56989)
624
625 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
626
627         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
628           gtk/gtkwidget.c:
629         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
630         not GTK_WIDGET_GET_ANCESTOR ... see 
631         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
632         Indicate the best practice in the docs for gtk_widget_get_toplevel().
633
634         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
635         so GtkPlug can give the correct signals when transforming
636         from a child to a toplevel.
637         
638         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
639         reparentation correctly.
640
641         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
642         Propagate the previous_toplevel argument down properly.
643
644         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
645         of wrong atr list.
646
647         * gtk/gtkplug.[ch]: Add an "embedded" signal.
648
649         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
650         signals.
651
652         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
653         functions gtk_plug_get_id(), gtk_socket_get_id(),
654         to avoid the user having to worry about realization,
655         and gdkx.h.
656
657         * tests/testsocket.c: Extend to try out the new signals
658         and gtk_plug/socket_get_id().
659
660         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
661         setting of underline attributes.
662
663         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
664         DestroyNotify events from SubstructureNotifyMask
665
666         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
667         Switch GDK_WINDOW_TYPE (window) as needed.
668
669         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
670         allow creation of toplevel windows as children of
671         foreign windows.
672
673         * gtk/gtkplug.c: Remove hacks involving changing private
674         fields of GdkWindow.
675
676         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
677         exactly the same signals and notification
678         be emitted for local embedding as for inter-process
679         embedding.
680
681 2001-07-04  James Henstridge  <james@daa.com.au>
682
683         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
684
685 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
686
687         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
688         XEMBED embedding add a _XEMBED_INFO property to the
689         client with version number and a "mapped" flags.
690         Use the mapped flag instead of the racy MapRequestEvent
691
692         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
693         code to reliably set things (when the child is a passive
694         embedder participating in the XEMBED protocol) intead
695         of just being a hack for embedding non-participating
696         programs. Fix various bugs and race conditions.
697         
698         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
699         work by simply making the GtkSocket the gtk parent
700         of the GtkPlug. Set a flag in this case and make
701         the GtkPlug work like a normal container by overriding
702         methods such as check_resize and "chaining past" GtkWindow
703         to GtkBin.
704
705         * gtk/gtkentry.c (gtk_entry_real_activate)
706           gtk/gtkmain.c (gtk_propagate_event): 
707         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
708         
709         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
710         gtk_widget_get_ancestor):
711         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
712         might not give the expected result and recommend
713         an alternative.
714
715         * tests/testsocket.c tests/testsocket_child.c
716         tests/testsocket_common.c tests/Makefile.am: Extended
717         to test different type of adding plugs to sockets
718         (local,active,passive), and to test mapping/unmapping
719         the plug.
720
721         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
722         mark the window as destroyed until after we
723         called _gdk_windowing_window_destroy().
724         (_gdk_windowing_window_destroy() may use GDK functions
725         on the window.)
726
727         * gdk/x11/gdkinput.c: Remove the check for finalization - 
728         devices can be finalized under some circumnstances.
729  
730         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
731         small problem with GDK_TYPE_DEVICE.
732  
733 2001-07-02  Havoc Pennington  <hp@pobox.com>
734
735         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
736         use constants not atoms.
737
738 2001-07-02  James Henstridge  <james@daa.com.au>
739
740         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
741         PANGO_TYPE_TAB_ARRAY.
742
743         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
744         for PANGO_TYPE_TAB_ARRAY.
745
746         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
747         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
748
749         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
750         the file.  Remove Pango types from defs -- they are now defined in
751         libpango.
752
753 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
754
755         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
756
757         * gtk/gtkobject.c (gtk_object_destroy): invoke
758         g_object_run_dispose().
759
760         * gtk/gtkwindow.c: 
761         * gtk/gtkwidget.c: 
762         * gtk/gtkobject.c:
763         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
764         method.
765
766 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
767
768         * gtk/gtktypeutils.c (gtk_type_class): Remove
769         change check for GTK_TYPE_OBJECT derivation to
770         G_TYPE_OBJECTS - it's Tim-approved to use this 
771         for arbitary objects.
772
773         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
774         prefix gtk_container_dequeue_resize_handler().
775
776         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
777         to the hierarachy_changed signal, since you otherwise
778         have to always keep that around.
779
780         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
781         for extra argument to hierarchy_changed.
782
783 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
784
785         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
786         for style to mean "revert to default style"
787
788         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
789           gtk_widget_restore_default_style): Make this functions
790         deprecated aliases for gtk_widget_set_style (widget, NULL).
791
792         * gtk/gtkwidget.[ch]: Remove:
793            gtk_widget_set_default_style ()
794            gtk_widget_push_style ()
795            gtk_widget_pop_style ()
796         These functions interact are overriden by RC files, and
797         thus virtually useless, and complicated.
798
799 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
800
801         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
802         most of the previous global variables in gtkrc.c. This is
803         in preparation for multi-head, since each screen can
804         have different GtkSettings and RC information.
805
806         * gtk/gtkrc.[ch]: 
807
808         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
809         GtkSettings parameter to GtkRcStyle::parse.
810
811         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
812         Add two new settings gtk-theme-name, gtk-key-theme-name,
813         for RC files that are loaded by name after reading
814         the default RC files.
815         
816         * gtk/gtkrc.c: Allow priorities for styles, as wll as
817         bindings.
818
819         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
820         and use it by default for RC files loaded via 
821         gtk-theme-name, gtk-key-theme-name.
822
823         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
824         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
825         tests/testgtkrc: Require pathnames to be absolute.
826
827         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
828         the source when parsing, since the operation of looking up a
829         pixmap from an RC file depends on the parsing context.
830
831         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
832         reset RC styles on all widgets when files are reparsed.
833
834         * tests/testgtk.c (create_rc_file) 
835           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
836         Simplify, now that gtk_rc_reparse_all() resets styles on
837         all widgets itself.
838
839         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
840         return value.
841
842         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
843         GtkSettings argument.
844
845         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
846         gtk_settings_get_global().
847
848         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
849         to get the appropriate GtkSettings for a widget. (For now,
850         just gets the default GtkSetttings.) 
851
852         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
853           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
854         changes.
855
856         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
857         getting a style for a path without actually having a widget.
858         (Allows using a style for a subpart of a widget, for
859         example.)
860
861         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
862         the RC files to be reloaded for just one GtkSettings
863         (not sure how useful this really is.)
864
865         * gtk/gtkrc.h: Deprecate
866         gtk_rc_add_widget_name/widget_class/class_style
867
868 2001-06-30  Alex Larsson  <alexl@redhat.com>
869
870         * gdk/linux-fb/gdkinput-none.c:
871         * gdk/linux-fb/gdkinput.c:
872         * gdk/linux-fb/gdkinputprivate.h:
873         Convert GdkDevice to a GObject.
874
875         * linux-fb/gdkprivate-fb.h:
876         * linux-fb/gdkvisual-fb.c:
877         Convert GdkVisual to a GObject.
878
879 2001-06-29  Alex Larsson  <alexl@redhat.com>
880
881         * gdk/gdkvisual.h:
882         * gdk/gdkcolor.c:
883         * gdk/x11/gdkx.h:
884         * gdk/x11/gdkvisual-x11.c:
885         Convert GdkVisual to a GObject.
886
887         * gdk/gdkinput.h:
888         * gdk/gdkevents.c:
889         * gdk/x11/gdkinputprivate.h:
890         * gdk/x11/gdkinput-gxi.c:
891         * gdk/x11/gdkinput-none.c:
892         * gdk/x11/gdkinput-x11.c:
893         * gdk/x11/gdkinput-xfree.c:
894         * gdk/x11/gdkinput.c:
895         Convert GdkDevice to a GObject.
896
897 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
898
899         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
900         to just plain new, fixing the number of columns, and column types
901         at creation time.
902
903         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
904
905         * gtk/gtkcellrenderertext.c
906         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
907         height to a specific font.
908
909         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
910
911         * tests/*c: change to work with new store models.
912
913 2001-06-29  Havoc Pennington  <hp@redhat.com>
914
915        * Throughout: fixes to compile with G_DISABLE_COMPAT
916         (s/g_signal_connectc/g_signal_connect/,
917         s/g_signal_newc/g_signal_new/,
918         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
919
920 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
921
922         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
923         add path argument to selection callbacks.
924
925 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
926
927         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
928         walk through a model in a depth first manner, with the option to
929         break out.
930
931 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
932
933         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
934         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
935         column and follow it when draged, rather than a location in the
936         view. "expander_column" property and drawing functions changed
937         accordingly.  Fixes bug #55942.
938
939         (gtk_tree_view_{set,get}_expander_column): Now works with a
940         GtkTreeViewColumn* instead of int.
941
942 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
943
944         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
945
946 2001-06-28  Havoc Pennington  <hp@pobox.com>
947
948         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
949         image data to the screen, using a server grab to avoid race
950         conditions.
951
952         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
953         check for NULL return from gtk_image_new_from_stock(), it never
954         returns NULL.
955         (gtk_item_factory_create_item): fix bug where we parsed the stock
956         ID as an inline pixbuf
957
958         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
959
960         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
961         support (should be using binding set here)
962
963         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
964         support (should be using binding set here)
965
966         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
967         support
968
969         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
970
971         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
972
973         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
974
975         * gtk/gtkimcontextsimple.c
976         (gtk_im_context_simple_filter_keypress): keypad
977
978         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
979
980         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
981
982         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
983
984         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
985         should be binding-setted)
986
987         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
988
989         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
990
991         * gtk/gtkcalendar.c: numeric keypad fixes
992
993         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
994         support
995
996         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
997         screwup
998
999         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
1000         clip the render area to the drawable's clip region in advance,
1001         so we don't get data from the server that we don't need.
1002
1003         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1004         check return value of gdk_pixbuf_get_from_drawable(), fall back 
1005         to bilevel alpha if we can't get the pixbuf to composite against.
1006
1007         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
1008
1009         * gdk/gdkimage.c (gdk_image_get_colormap): add
1010         gdk_image_set_colormap, gdk_image_get_colormap
1011
1012         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
1013         take a region of the image, instead of converting the entire
1014         image.
1015
1016         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
1017         keybinding signal. Add default bindings for it. Add default
1018         handler for show_help that shows the tooltip for the widget.
1019
1020         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
1021         "close" keybinding signal, remove key press handler.
1022
1023         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
1024         it's not our usual practice to leave a deprecated function around
1025         with a runtime warning, plus we don't want it to appear in docs,
1026         plus if we make them yellow no one will want to change them
1027         anyhow.
1028
1029 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
1030
1031         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
1032         GTK_WIDGET_REALIZE() for resize queueing.
1033
1034         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
1035         GTK_WIDGET_REALIZE() for post event delivery destruction upon
1036         GDK_DESTROY.
1037         
1038         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
1039         sompensate for former (pre-2.0) connect_after() facility.
1040         (gtk_widget_send_expose): 
1041         (gtk_widget_event): assert the widget is realized, since event delivery
1042         to non-realized widgets is essentially a bug. event handlers should
1043         be able to unconditionally rely on widget->window (unless they
1044         emit events on their own which can trigger widget destruction).
1045         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
1046         logic. event delivery happens as follows:
1047         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
1048         b) if !was_handled in (a) and the widget is still realized, emit event-
1049            specific signal (RUN_LAST handler). returns was_handled.
1050         c) emission of GtkWidget::event-after for notification if the widget is
1051            still realized (regardless of was_handled from previous stages, no
1052            class handler). no return value.
1053         d) was_handled gets passed on to caller, to determine further
1054            propagation. if the widget got unrealized meanwhile, was_handled
1055            is returned as TRUE.
1056
1057         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
1058         gdk_event_get_coords().
1059
1060 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
1061
1062         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
1063         age 0, binary age 0. depend on glib 1.3.7.
1064
1065         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
1066
1067         * gtk/gtkmenubar.c: same here.
1068         
1069         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
1070
1071         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
1072
1073         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
1074         
1075         * gtk/gtkmenubar.c (add_to_window): likewise.
1076         
1077         * gtk/gtktextbtree.c: and here...
1078         
1079         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
1080         
1081         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
1082         
1083         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
1084         
1085         * gtk/gtktreeviewcolumn.c:
1086         (_gtk_tree_view_column_set_tree_view): yet again.
1087
1088         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
1089         signal connections without g_signal_connect_data().
1090         
1091         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
1092         demo of the matter.
1093         
1094         * demos/testpixbuf.c (main): running out of equality phrases for the
1095         ChangeLog, but had to adapt connections here as well.
1096         
1097         * demos/testanimation.c (progressive_timeout): and for the fun of it,
1098         tackled this the same way.
1099         
1100         * tests/testtext.c (create_view): ok, it's becoming a pain at this
1101         point, but had enough enery for one more fix.
1102
1103         * tests/testtreecolumns.c (main): stand up man, do your work!
1104
1105         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
1106         fix, either that's been all of it or CVS gtk is broken yet again.
1107         
1108 2001-06-29  James Henstridge  <james@daa.com.au>
1109
1110         The following changes correspond to bug #56812
1111
1112         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
1113         code for GdkDevice.
1114
1115         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
1116         GdkCursor.
1117
1118 2001-06-19  Havoc Pennington  <hp@pobox.com>
1119
1120         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
1121         for mapping a window without fooling with stacking order, but
1122         updating the "withdrawn" flag
1123
1124         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
1125         filtering as soon as possible, moving move resize and wmspec_check
1126         handling after the event filter.  Make default filter apply to all
1127         events, not just those with no GdkWindow wrapped around the X
1128         window. Fix a FIXME about how the window could be a pixmap using 
1129         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
1130
1131         Also, be robust against events not on a known GdkWindow.
1132
1133         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
1134         gdk_x11_ungrab_server): export reference-counted server grabs, so
1135         other people can grab server over a GDK function that also does
1136         so.
1137
1138 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
1139
1140         * gtk/gtktreeviewcolumn.c
1141         (gtk_tree_view_column_pack_start_cell_renderer): New function to
1142         reflect that you can (hypothetically) pack cell renderers into a
1143         column.
1144         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
1145         (gtk_tree_view_column_cell_is_visible): Move more functionality to
1146         the column.
1147         (gtk_tree_view_column_cell_can_focus): Move more functionality to
1148         the column.
1149
1150         * gtk/gtktreeview.c: Move to use new column-packing code.
1151         (gtk_tree_view_real_expand_row): remove totally braindead code.
1152         (gtk_tree_view_real_collapse_row): ditto.
1153
1154 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1155
1156         * gtk/gtktreeviewcolumn.c: Fix a typo.
1157         
1158 2001-06-26  Joel Becker  <jlbec@evilplan.org>
1159
1160         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
1161           at the end of the file
1162
1163 2001-06-26  Havoc Pennington  <hp@redhat.com>
1164
1165         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
1166
1167 2001-06-26  Havoc Pennington  <hp@redhat.com>
1168
1169         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
1170         property
1171
1172 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
1173
1174         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
1175         stupid missing statement
1176
1177         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
1178         private function for ATK.  It notifies you of how many _visible_
1179         children are deleted when a node is deleted.  Should be used by
1180         atk only.
1181
1182 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
1183
1184         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
1185         Use new pango_context_get_metrics() to fix problems
1186         with font lists in descriptions. (#56184, reported by
1187         Jonas Borgström)
1188
1189 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
1190
1191         * gtk/gtkiconfactory.c:
1192         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
1193         item factory so inlined pixbufs actually work.
1194
1195 2001-06-25  Havoc Pennington  <hp@redhat.com>
1196
1197         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
1198         s/RESIZEABLE/RESIZABLE/
1199
1200         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
1201
1202 2001-06-25  Alexander Larsson  <alexl@redhat.com>
1203
1204         * configure.in:
1205         Added --enable-fbmanager. This is some experimental code
1206         that lets several GtkFB apps coordinate their access to the
1207         framebuffer.
1208         
1209         * acconfig.h:
1210         Added ENABLE_FB_MANAGER.
1211
1212         * gdk/linux-fb/Makefile.am:
1213         Added gdkfbmanager and gdkfbswitch.
1214
1215         * gdk/linux-fb/gdkkeyboard-fb.c:
1216         * gdk/linux-fb/gdkmouse-fb.c:
1217         * gdk/linux-fb/gdkprivate-fb.h:
1218         Split device init and open so that
1219         they can be opened and closed while switched
1220         away.
1221
1222         * gdk/linux-fb/gdkmain-fb.c:
1223         Add the basic manager communication.
1224
1225         * gdk/linux-fb/gdkrender-fb.c:
1226         Don't update to the shadow fb if we're
1227         blocked by the fb manager.
1228
1229 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1230
1231         * docs/Changes-2.0.txt: Add note about child property
1232         changes.
1233
1234 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
1235
1236         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
1237         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
1238
1239         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
1240         with un'reffing wrong list reported by Jeff Franks.
1241
1242         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
1243
1244         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
1245         for the default icon. Remove inline XPM.
1246
1247         * gtk/gtkstock.h gtk/gtkiconfactory.c:
1248         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
1249         is used for GTK_STOCK_DND, but it is a bit too small.)
1250
1251         * gtk/stock-icons/stock_dnd_multiple.png
1252         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
1253
1254         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
1255         TRUE when starting a drag. In other cases, we are
1256         just observing. (#52995)
1257
1258         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
1259         function to set the icon for a drag from a GdkPixbuf
1260         or stock ID.
1261
1262         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
1263         Likewise, for drag sources.
1264
1265         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
1266         (Now should be done using the stock system.)
1267
1268 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
1269
1270         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
1271         Removed - didn't work and not particularly useful anyways
1272         if it did. 
1273
1274 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
1275
1276         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
1277         introduced last night that was making things decidedly not work.
1278
1279         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
1280         so that we have getter/setter pairing everywhere it makes
1281         sense. (#55767)
1282
1283         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
1284         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
1285         deprecated compat macro. (#55516)
1286
1287         * gtk/gtklabel.[ch]: Add functions
1288         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
1289         gtk_label_set_label(), which mirror the property API for GtkLabel.
1290         Make gtk_label_get_attributes() only reflect the attributes
1291         set by gtk_label_set_attributes.
1292
1293         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
1294         from gtk_notebook_set_page().
1295
1296 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
1297
1298         * configure.in: Fix tests for XShm.h.
1299
1300         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
1301         gdk_image_new() by use of goto, properly use g_object_unref().
1302
1303 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
1304
1305         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
1306         calls, as GdkImage is an object. these should be g_obejct_unref()
1307         instead but that won't work because of the g_error() statement
1308         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
1309         to spot these places.
1310
1311 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
1312
1313         * modules/input/gtkimcontextxim.c: Fixup some problems with 
1314         text length handling in error cases.
1315
1316         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
1317         a bit to make test actually warn on attempt to allocation
1318         a negative size. (#56101, Matthias Clasen)
1319
1320 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
1321
1322         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1323         noticed by Brian Cameron.
1324         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
1325         Cameron.
1326
1327 2001-06-22  Hans Breuer  <hans@breuer.org>
1328
1329         * gdk/gdk.def : updated externals
1330
1331         * gdk/win32/gdkdrawable-win32.c : corrected some casts
1332         in GDK_NOTEs
1333
1334         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
1335         to translate coordinates to the internal > 16 bit system
1336         Try to handle WM_WINDOWPOSCHANGED to get better performance for
1337         when moving/resizing
1338
1339         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
1340         and gdk_keymap_get_direction (). The latter is untested for
1341         the RTL case
1342
1343         * gtk/gtk.def : updated externals
1344
1345         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
1346         from pango_language_from_string (), not an already freed pointer
1347
1348         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
1349         binary (-kb) to be useable on windoze
1350  
1351 2001-06-21  Alexander Larsson  <alexl@redhat.com>
1352
1353         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
1354         Update to new PangoLanguage changes.
1355         
1356         * gtk/gtkwindow-decorate.c:
1357         * gtk/gtkwindow.[ch]:
1358         Added setting argument to gtk_window_set_has_frame ()
1359         
1360 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
1361
1362         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
1363         the case without XKB properly.
1364
1365         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
1366         unused gtk_rc_auto_parse variable.
1367
1368         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
1369         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
1370         longer needed with GdkPixbuf.
1371
1372         * gtk/gtkrc.c (_gtk_rc_init): Make private.
1373
1374 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
1375
1376         * gtk/gtkentry.h: Mark deprecated functions with
1377         GTK_DISABLE_DEPRECATED.
1378
1379 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1380
1381         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
1382
1383         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
1384
1385         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
1386           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
1387           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
1388           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
1389           to recent changes in Pango.
1390
1391         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
1392           to test whether the basic engine honors them.
1393
1394 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
1395
1396         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
1397         gtk_container_child_get_property().
1398
1399 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
1400
1401         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
1402         (gtk_tree_view_move_cursor_page_up_down): implement.
1403
1404 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
1405
1406         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
1407         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
1408         don't use automatic fixed size buffer for printf-ing floats, doubles
1409         can expand to really _huge_ strings, use g_strdup_printf() instead.
1410
1411 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
1412
1413         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
1414         construct property in 1.2 and still needs to be.
1415
1416         * gtk/gtkwidget.c: "composite_child" is not a settable property.
1417
1418 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
1419
1420         * gtk/gtkliststore.c (gtk_list_store_clear): 
1421         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
1422         clear a model.
1423
1424 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1425
1426         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
1427
1428         * gtk/Makefile.am:
1429         * gtk/gtk.h: disabled GtkPacker compilation.
1430
1431         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
1432
1433         * gtk/gtknotebook.c:
1434         * gtk/gtktable.c:
1435         * gtk/gtkbox.c: ported this over to child properties.
1436
1437         * gtk/gtksettings.c: fetch class properties via
1438         g_object_class_list_properties().
1439
1440         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
1441         child arg interface. use gobjectnotifyqueue.c for child property
1442         notification.
1443
1444         * gtk/gtkwidget.[hc]: provide necessary means for container child
1445         properties, i.e. ::child_notify signal,
1446         gtk_widget_freeze_child_notify(),
1447         gtk_widget_child_notify(),
1448         gtk_widget_thaw_child_notify().
1449
1450         * tests/testgtk.c: removed inferior property handling code, for
1451         property editing, a generic module should be used, and GLE
1452         coincidentally fullfills that purpose.
1453
1454         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
1455         needs to be adapted to g_object_class_list_properties() before this
1456         builds again.
1457
1458 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
1459
1460         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
1461         test if a node is expanded.
1462
1463 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
1464
1465         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1466         where collapsing a selected row would result in the cursor/anchor
1467         getting screwed up.
1468
1469 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1470
1471         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
1472         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
1473         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
1474         Now I can really reorder/sort all Store widgets.  treesorttest
1475         seems to just work now.
1476         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
1477         testtreesort worked through a big coincidence all this time.
1478         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
1479         code.
1480         * tests/testtreecolumns.c: Big 'ol warning at the top letting
1481         people know that this code should never ever ever be copied.
1482
1483 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
1484
1485         * gtk/gtkwindow.h: Fixed a small typo, it should be
1486         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
1487         on line 134.
1488
1489 2001-06-14  Havoc Pennington  <hp@redhat.com>
1490
1491         Docs fixups, and:
1492         
1493         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
1494         GTK_DISABLE_DEPRECATED
1495
1496 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
1497
1498         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
1499         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
1500         finish it off tonight, though it basically works now when it's a
1501         list.  Also, I have a sinking feeling neither GtkTreeStore or
1502         GtkListStore actually resort when adding a new item.  I'll look
1503         into it.
1504
1505 2001-06-14  Havoc Pennington  <hp@redhat.com>
1506
1507         * demos/gtk-demo/main.c (load_file): fix bug identified by
1508         warnings I just added to gtktextbuffer
1509
1510 2001-06-14  Havoc Pennington  <hp@redhat.com>
1511
1512         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1513
1514         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1515
1516         * gtk/gtktextbtree.c: don't leak node data all over the place.
1517
1518         * demos/gtk-demo/main.c (main): create fontify tags for the right
1519         buffer
1520
1521         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1522         to mention tags in the same table can't have the same name,
1523         suggested by Skip Montanaro
1524
1525 2001-06-11  Havoc Pennington  <hp@redhat.com>
1526
1527         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1528         for trying to add two tags with same name to the tag table
1529
1530         * demos/gtk-demo/main.c (main): fix colors ;-)
1531
1532 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1533
1534         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1535         that allows grouping together multiple windows so that grabs
1536         within that set of windows only affect those windows.
1537
1538         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1539         signal for notification when a widget becomes shadowed
1540         by a grab or is no longer shadowed by a grab.
1541
1542         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1543           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1544         insenstive widgets to maintain a grab.
1545
1546 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1547
1548         * docs/README.linux-fb:
1549         Add some example config files that can be used with the URW fonts.
1550         
1551         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1552         Set up the color ramps for DirectColor mode.
1553
1554 2001-06-11  Havoc Pennington  <hp@redhat.com>
1555
1556         * Release 1.3.6
1557          
1558 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1559
1560         * gdk/linux-fb/gdkwindow-fb.c:
1561         Unify shaped window code and make it repaint the area that used
1562         to be part of the shape, but isn't anymore.
1563
1564 2001-06-11  Havoc Pennington  <hp@redhat.com>
1565
1566         * NEWS: Updates
1567
1568         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1569
1570         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1571         
1572 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1573
1574         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1575         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1576         passes zero instead, so do we.
1577         
1578 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1579
1580         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1581         Deep copy dash_list too.
1582         (_gdk_fb_gc_new): Set default cap_style before
1583         setting values.
1584
1585 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1586
1587         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1588         gdk_keymap_get_direction): New functions.
1589
1590 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1591
1592         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1593         gtk_tree_model_get_flags by adding a second flag for atk.
1594
1595         * gtk/gtktreemodel.c: make cursor behavior interact better with
1596         mouse presses.
1597
1598 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1599
1600         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1601         expand_row/collapse_row to be 2 signals each -- test_expand_row
1602         and row_expanded as well as test_collapse_row and row_collapsed.
1603
1604 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1605
1606         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1607         signal name to be changed instead of selection_changed.
1608
1609 2001-06-08  Havoc Pennington  <hp@redhat.com>
1610
1611         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1612         "scroll_offset" property for notification when the layout offsets
1613         may have changed
1614         (gtk_entry_adjust_scroll): add notify for scroll_offset
1615         (gtk_entry_layout_index_to_text_index): function to compensate for
1616         preedit string when doing coordinate stuff on the entry's layout
1617         (gtk_entry_text_index_to_layout_index): inverse function
1618         (gtk_entry_get_layout_offsets): hook to get current position of
1619         the layout      
1620         (gtk_entry_get_layout): hook to get the layout itself.
1621
1622         * gtk/gtklabel.c (gtk_label_get_layout): new function
1623
1624 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1625
1626         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1627         keybinding.
1628         (gtk_tree_view_focus): Fix merge conflict.
1629
1630 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1631
1632         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1633         clean up cursor handling.
1634
1635 2001-06-08  Havoc Pennington  <hp@redhat.com>
1636
1637         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1638         function
1639
1640         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1641         this function
1642
1643 2001-06-08  Alex Larsson  <alexl@redhat.com>
1644
1645         * gtk/gtkcompat.h.in:
1646         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1647         Fixes bug #52892
1648
1649 2001-06-08  Havoc Pennington  <hp@redhat.com>
1650         
1651         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1652         parent still
1653
1654 2001-06-08  Havoc Pennington  <hp@redhat.com>
1655
1656         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1657         don't call g_list funcs on GSList
1658
1659         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1660         gtk_container_focus(), since some widgets have focusable locations
1661         which are not other widgets. These widgets should not have to be 
1662         containers just to manage the focus. For example, GtkHSV is
1663         currently a container for no good reason. Also, this cleans
1664         up the "if (is_container && is_sensitive && is_drawable)
1665         container_focus ()" mess in widget implementations.
1666
1667         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1668         function, and have it just call gtk_widget_child_focus().
1669
1670         * gtk/gtkhsv.c: derive from widget not container
1671         
1672         Throughout: fix to reflect GtkContainer::focus change
1673         
1674 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1675
1676         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1677         range.  Fix bug #55921
1678
1679         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1680         (#55920).
1681
1682 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1683
1684         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1685         and gdk_keymap_get_current_direction().
1686
1687         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1688           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1689         the current locked group, use it to set the keymap
1690         direction.
1691
1692         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1693         to determine whether we draw a split cursor or use
1694         a jumping cursor based on the current direction.
1695
1696         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1697         Obey the split cursor setting. 
1698
1699 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1700
1701         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1702         when toggling on, not when toggling off... (#55906)
1703
1704 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1705
1706         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1707         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1708         in docs. (#55812, Vitaly Tishkov)
1709
1710 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1711
1712         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1713         selection_changed to changed in signal connection to GtkTreeSelection,
1714         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1715
1716 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1717
1718         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1719         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1720         the GtkTreeSelection::changed signal.
1721
1722         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1723         object.
1724
1725         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1726         object.
1727
1728 2001-06-07  Havoc Pennington  <hp@redhat.com>
1729
1730         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1731
1732 2001-06-07  Havoc Pennington  <hp@redhat.com>
1733         
1734         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1735         (not tested yet because with absolute path to srcdir I can't build
1736         atk, but it was broken anyway so this may help) 
1737
1738 2001-06-07  Havoc Pennington  <hp@redhat.com>
1739
1740         * configure.in: output m4macros/Makefile
1741         
1742 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1743
1744         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1745         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1746
1747 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1748
1749         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1750         expansion/collapsing so it only happens in one place.
1751         (gtk_tree_view_real_expand_row): ditto.
1752
1753 2001-06-07  Havoc Pennington  <hp@redhat.com>
1754
1755         * tests/Makefile.am: add missing -I flag
1756
1757         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1758
1759         * configure.in: use pkg-config to see if GModule is
1760         supported; fix to properly turn on included loaders 
1761         when GModule isn't supported; don't use AC_CHECK_LIB 
1762         when libs are not installed yet
1763
1764         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1765
1766         * Makefile.am (SUBDIRS): add m4macros subdir
1767
1768         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1769         dependencies also.
1770
1771 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1772
1773         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1774         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1775
1776 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1777
1778         * gtk/gtktreeview.c
1779         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1780         bindings to expand and collapse rows.
1781         (gtk_tree_view_real_select_cursor_parent): New key binding.
1782         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1783
1784         * gtk/gtkmarshal.list: new
1785         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1786
1787 2001-06-06  Havoc Pennington  <hp@redhat.com>
1788
1789         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1790
1791         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1792         Down to move visually rather than logically, since it confuses 
1793         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1794
1795 2001-06-06  Alex Larsson  <alexl@redhat.com>
1796
1797         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1798         Fix up error messages.
1799
1800 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1801
1802         * gtk/gtktooltips.h: Include gtkwidget.h 
1803         (#55798, Karl Nelson)
1804
1805         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1806         a valid latin-1 character. (Marc Lehmann, #35467)
1807
1808         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1809         (Marc Lehmann, #35467)
1810         
1811 2001-06-05  Alex Larsson  <alexl@redhat.com>
1812
1813         * demos/gtk-demo/appwindow.c (do_appwindow):
1814         Don't swap the order of the args to gtk_widget_destroyed.
1815
1816         * tests/testgtk.c (destroy_properties):
1817         Don't crash when the properties window is destroyed.
1818
1819         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1820         Use with_mnemonics to handle the case of stock items with
1821         underscores in them.
1822
1823 2001-06-05  Havoc Pennington  <hp@redhat.com>
1824
1825         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1826         gtk_text_iter_reorder
1827
1828 2001-06-05  Havoc Pennington  <hp@redhat.com>
1829
1830         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1831
1832 2001-06-05  Havoc Pennington  <hp@redhat.com>
1833
1834         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1835         to the range that was set
1836
1837         * gtk/gtkrange.c: add value_changed signal, primarily 
1838         intended for use with GtkScale
1839         (gtk_range_set_increments): new function
1840         (gtk_range_set_range): new function with weird name
1841         (gtk_range_set_value): new function
1842         (gtk_range_get_value): new function
1843
1844         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1845         from gtk_spin_button_get_value_as_float(). Compat #define
1846         added for get_value_as_float.
1847
1848         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1849
1850         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1851
1852 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1853
1854         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1855
1856 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1857
1858         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1859
1860         * tests/testgtk.c (create_tooltips): Remove usage of
1861         gtk_widget_set().
1862
1863 2001-06-05  Havoc Pennington  <hp@redhat.com>
1864
1865         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1866
1867         Applying patch from Jeff Franks, with function docs added.
1868         
1869         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1870         remove call to set_mnemonic_widget, change docs a bit.  
1871
1872         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1873         new function
1874
1875         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1876         new function
1877
1878         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1879
1880         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1881         function
1882         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1883
1884         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1885         new function
1886
1887         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1888         function        
1889
1890         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1891         auto-selection of mnemonic widget.
1892
1893 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1894
1895         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1896         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1897         (gtk_tree_view_column_set_min_width): ditto.
1898
1899 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1900
1901         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1902         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1903
1904 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1905
1906         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1907         gtk_clist_thaw().
1908
1909 2001-06-04  Havoc Pennington  <hp@pobox.com>
1910
1911         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1912         releases for buttons 6, 7
1913
1914 2001-06-04  Havoc Pennington  <hp@redhat.com>
1915
1916         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1917         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1918         #55562
1919
1920 2001-06-04  Havoc Pennington  <hp@redhat.com>
1921
1922         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1923         where text_view->layout == NULL by assuming its size is 0, 
1924         i.e. same as if we haven't done any reflow. Reported by 
1925         Hidetoshi Tajima #55448 
1926
1927 2001-06-04  Havoc Pennington  <hp@redhat.com>
1928
1929         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1930         and 7 for scroll left/right, from Thomas Broyer
1931
1932 2001-05-10  Havoc Pennington  <hp@redhat.com>
1933
1934         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1935         we need to parse the xsetting as if it were an RC file string.
1936
1937         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1938         value of palette from settings, not from static variable
1939
1940         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1941         xsettings translation table
1942
1943         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1944         hardcoding the toolbar style conflicts with new customizable 
1945         toolbar style philosophy
1946         (gtk_toolbar_class_init): add settings for default toolbar style;
1947         these are used unless the app specifically forces a toolbar style
1948
1949         * gtk/gtksettings.c (settings_install_property_parser): only
1950         return at the start if we warn and parser == NULL
1951
1952         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1953         palette changed handler so we don't notify dead color selections
1954
1955         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1956         xthickness/ythickness of 0 or 1 properly 
1957         (gtk_default_draw_resize_grip): clear the background behind the
1958         resize grips, and align to bottom right if we square the 
1959         area to be drawn.
1960
1961         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1962         statusbar label to 1, so it doesn't make toplevels resize oddly
1963         (gtk_statusbar_size_request): add grip size to request
1964         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1965         the grip size in the request
1966
1967         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1968         bug where showing all on a toplevel makes the toolbar 
1969         button text appear despite the toolbar mode
1970
1971         * gtk/gtkmenubar.c: add internal padding style property
1972
1973         * gtk/gtktoolbar.c: Add internal padding style property; add
1974         shadow type style property
1975
1976         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1977         state; and put Container::border_width outside the frame
1978
1979         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1980         interior focus mode, we just use blinking cursor
1981
1982 2001-06-04  Havoc Pennington  <hp@redhat.com>
1983
1984         * configure.in: Make gdk-pixbuf have same version number as GTK
1985
1986 2001-06-04  Havoc Pennington  <hp@redhat.com>
1987
1988         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1989         digits greater than 6. If there actually are limits (which there
1990         likely aren't), should clamp to them not warn.
1991         (gtk_spin_button_new_with_range): don't take log of 0
1992         (gtk_spin_button_size_request): use digits to compute size
1993         request, rather than step increment.
1994
1995         * tests/testgtk.c (create_spins): test larger values of digits
1996         
1997         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
1998         font on map not expose, so we don't get weirdness during scrolling
1999
2000 2001-06-04  Havoc Pennington  <hp@redhat.com>
2001
2002         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
2003         Sam Solon, bug #54577, update value even if not drawable.
2004
2005 2001-06-04  Havoc Pennington  <hp@redhat.com>
2006
2007         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
2008         SCROLL_LEFT, reported by Thomas Broyer.
2009
2010 2001-06-04  Havoc Pennington  <hp@redhat.com>
2011
2012         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
2013         Process updates immediately, to prevent funny lag effect
2014         when scrolling, at some mild potential efficiency cost.
2015
2016 2001-06-04  Havoc Pennington  <hp@redhat.com>
2017
2018         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
2019         slider on the click.
2020
2021 2001-06-03  Havoc Pennington  <hp@pobox.com>
2022
2023         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
2024         hscale/vscale details, so we can use it for scrollbar as well.
2025
2026         * tests/testgtk.c (reformat_value): honor digits from GtkScale
2027
2028         * gtk/gtkenums.h (GtkTroughType): Remove this enum
2029         (GtkScrollType): add START and END from GtkTroughType
2030
2031         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
2032         its x/y arguments
2033
2034         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
2035         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
2036         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
2037         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
2038         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
2039
2040         Notable changes in the process:
2041          
2042         - stepper_size style property is the height for vertical 
2043           ranges, width for horizontal; the other dimension matches
2044           the trough size
2045         - add ability to do NeXT-style steppers (and several other styles
2046           that don't make any sense)
2047         - added min_slider_length, fixed_slider_length properties to
2048           GtkScrollbar
2049         - cleaned some private (or at least useless) functions out of
2050           gtkscale.h    
2051         - moved bindings to GtkScale from subclasses, even arrow keys,
2052           since blind users don't know scale orientation.
2053         - change move_slider action signal to use new GtkScrollType,
2054           remove GtkTroughType argument
2055         - digits rounds the values a range will input to the given 
2056           number of decimals, but will not try to force adjustment 
2057           values set by other controllers. That is, we no longer
2058           modify adjustment->value inside a value_changed handler.
2059         - added getters for GtkScale setters
2060         - middle-click begins a slider drag
2061         
2062 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
2063
2064         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
2065         getting the focus code to work.
2066         (gtk_tree_view_class_init): Add a bunch of keybindings.
2067
2068         * gtk/gtktreeviewcolumn.c
2069         (gtk_tree_view_column_set_cell_data_func):
2070         s/GtkCellDataFunc/GtkTreeCellDataFunc.
2071         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
2072         of "properties_changed" to help justify the death of the latter
2073         signal. (-:
2074
2075         * tests/testtreefocus.c (main): Let some columns be focussable to
2076         test focus better.
2077
2078 2001-06-01  Havoc Pennington  <hp@redhat.com>
2079
2080         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
2081         
2082         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
2083         overwrite in overwrite mode if we already deleted the selection
2084         and replaced it with new text.  
2085
2086         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
2087         selection to an empty range, clear the clipboard if we owned it.
2088         (gtk_label_set_selectable): give up selection if we become
2089         unselectable.
2090         (gtk_label_state_changed): override state changed to unselect text
2091         when insensitive
2092         (get_text_callback): add paranoia check that indexes aren't
2093         outside of label->text
2094         (gtk_label_select_region): make -1 for start_offset mean "end of
2095         label," for consistency with GtkEditable
2096
2097         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
2098         GTK_DIALOG_NO_SEPARATOR flag
2099
2100 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
2101
2102         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
2103         notifications on non-existant "enable_arrow_keys".
2104         (#53753, Skip Montanaro)
2105
2106 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
2107
2108         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
2109         GDK_TYPE_RECTANGLE.
2110
2111         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
2112         of allocation argument be GDK_TYPE_RECTANGLE.
2113
2114 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gtk/gtkoptionmenu.c: Account for the fact that the border
2117         width is _outside_ the window. (Fixes #54585, bug found
2118         by Bastien Nocera.)
2119
2120 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
2121
2122         * gtk/gtksettings.c (gtk_settings_get_property): Validate
2123         value from GDK settings against parameter spec.
2124
2125         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
2126         to temporary values and use g_value_transform(), since
2127         thinking that GValue was going to be easy or efficient
2128         to use was, of course, a mistake.
2129
2130         * gtk/gtksettings.c: Add cursor blink setting.
2131         
2132         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
2133
2134         * gtk/gtkentry.c: Add cursor blinking.
2135
2136         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
2137         cursor blink global settings.
2138
2139         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
2140         for :text_position in places where it is missing.
2141
2142 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
2143
2144         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
2145
2146 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
2147
2148         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
2149         not pkg-config. (#51032)
2150
2151         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
2152         (fixes #51952, James Henstridge)
2153         
2154 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
2155
2156         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
2157         Rename to the more correct gtk-go-up.
2158
2159         * gtk/stock-icons/stock_menu_sort_ascending.png:
2160         Added new file.
2161         
2162         * gtk/stock-icons/stock_menu_sort_descending.png:
2163         Changed to show descending instead of ascending.
2164
2165         * gtk/gtkiconfactory.c:
2166         Added menu size icon to sort ascending.
2167
2168         * gtk/stock-icons/Makefile.am:
2169         Added stock_menu_sort_ascending.png.
2170         
2171         * gtk/gtkseparatormenuitem.c:
2172         Use correct typenames.
2173
2174 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
2175
2176         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
2177         gulong as in GSignal.
2178
2179 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
2180
2181         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
2182         instances of GtkCellRenderer in code (all but dnd icon code).
2183         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
2184         there, and I can do multiple Cells per column.
2185
2186         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
2187
2188         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
2189         when model was unreffed prior to removing the row reference.
2190
2191 2001-05-25  Havoc Pennington  <hp@redhat.com>
2192
2193         * gtk/gtkiconfactory.c: fix so that default icons are created if 
2194         you call gtk_stock_list_ids()
2195
2196         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
2197         in list
2198
2199 2001-05-25  Havoc Pennington  <hp@redhat.com>
2200
2201         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
2202         set can render without falling back to missing image icon
2203
2204         * gtk/gtktextview.c (gtk_text_view_size_request): request full
2205         size of text, instead of random values
2206
2207         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
2208         size of tree view, instead of random values
2209
2210         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
2211         image in an appropriate size
2212
2213         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
2214         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
2215
2216         Throughout: fix GTK_STOCK_BUTTON_ instances
2217         
2218         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
2219         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
2220         Add a bunch of new stock items/icons
2221
2222         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
2223         new function, convenience for inserting columns with a data func
2224
2225         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
2226         (_gtk_icon_factory_list_ids): use list of all factories to
2227         generate a list of all known IDs
2228
2229         * gtk/gtkstock.c (gtk_stock_list_ids): replace
2230         gtk_stock_list_items() with a function that returns all IDs known
2231         including those for GtkIconFactory.
2232
2233 2001-05-25  Hans Breuer  <hans@breuer.org>
2234
2235         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
2236         work -> check boxes and radio buttons are drawn now, even on win9x.
2237         Improved line settings a bit, still no clue how to get really dotted
2238         lines on win9x, on NT it's PS_ALTERNATE.
2239
2240         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
2241         GDK_HINT_MIN_SIZE as well
2242
2243         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
2244
2245         * gtk/gtk.def : updated
2246
2247         * gtk/gtktreeprivate.h : change column_drop_func to be a function
2248         pointer not a function pointer pointer
2249
2250         * tests/testdnd.c : include <stdlib.h> for putenv prototype
2251
2252         * tests/testsocket.c : made it compile on win32 again
2253
2254         * tests/makefile.msc : one more test-app uses prop-editor.obj
2255
2256 2001-05-22  Havoc Pennington  <hp@pobox.com>
2257
2258         * gtk/gtkbin.c (gtk_bin_get_child): New function
2259
2260 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
2261
2262         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
2263         to ignore when doing compose processing.
2264
2265 2001-05-22  Joe Shaw  <joe@ximian.com>
2266
2267         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
2268         Simplify as suggested by Havoc. Just get the last iter and work
2269         backward to the tag instead of getting a line and working back from
2270         there. Fixes passing in an invalid offset to
2271         iter_init_from_byte_offset().
2272
2273 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
2274
2275         * gtk/gtktreeview*.h: 
2276         * gtk/gtkcell*.h:
2277         * gtk/gtk*store.h:
2278         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
2279         macros to all objects.
2280
2281 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
2282
2283         * gtk/gtkcellrenderertext.c
2284         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
2285         with very large (TM) amounts of text.  May be moved to
2286         GtkCellRenderer in the future, though I'm not sure it wants to be
2287         this accessible.
2288
2289         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
2290         More sanity brought to this class.  I like it.
2291
2292         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
2293         case.  Kids, don't try this at home.
2294
2295         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
2296         convenience function.
2297
2298         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
2299
2300 2001-05-21  Alexander Larsson  <alexl@redhat.com>
2301
2302         * gtk/gtkfontsel.c:
2303         Added properties. Based on patch by Lee Mallabone.
2304
2305         * gtk/gtkruler.c:
2306         * gtk/gtkhruler.c:
2307         * gtk/gtkvruler.c:
2308         * gtk/gtktext.c:
2309         * gtk/gtktextview.c:
2310         Converted GtkArg to GParam. Based on patches by John Margaglione.
2311
2312         * tests/Makefile.am:
2313         * tests/testtext.c:
2314         Add a property editor to testtext.
2315         
2316 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
2317
2318         * gtk/gtk{h,v,}paned.c: Only show the separator if 
2319
2320         * configure.in: Fixed reversed conditional causing all image
2321         libraries to be linked in.
2322
2323 2001-05-21  Joe Shaw  <joe@ximian.com>
2324
2325         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
2326         that top_y needs to be >= 0.
2327
2328 2001-05-11  Havoc Pennington  <hp@pobox.com>
2329         
2330         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
2331         losing connection to the X server.
2332
2333 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
2334
2335         * configure.in: Start checks for X from pangox/pangoxft
2336         CFLAGS to avoid duplicate libraries.
2337
2338         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
2339
2340         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
2341         to include gobject.
2342         
2343 2001-05-18  Alexander Larsson  <alexl@redhat.com>
2344
2345         * gtk/gtkspinbutton.c:
2346         Convert GtkArgs to GParams. Based on patch by John Margaglione.
2347         Also do size request reasonable for MAXDOUBLE. Previously it printed
2348         the limits to a buffer and overran it. Instead do it using log10() and
2349         limit the width to 10 digits.
2350         
2351         * gtk/gtkwidget.c (gtk_widget_get_property):
2352         Correctly handle setting the parent property to NULL.
2353
2354 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
2355
2356         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
2357         style attributes even if the widget isn't realized.
2358
2359         * demos/gtk-demo/main.c: Use a slightly smaller font.
2360
2361 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
2362
2363         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
2364         This is something that only a widget writer would ever want
2365         to change.
2366
2367         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
2368         gtk_signal_emit_by_name().
2369
2370         * gtk/gtkviewport.c: Fix some warnings.
2371
2372         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
2373         allowing the requisitions of multiple widgets to be grouped
2374         together.
2375
2376         * tests/testgtk.c: Add GtkSizeGroup test
2377
2378         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
2379
2380         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
2381         warnings.
2382
2383         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2384
2385 2001-04-28  Martin Baulig  <baulig@suse.de>
2386
2387         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
2388         to gtk_image_menu_item_set_icon() and made it work if there's already
2389         an image.
2390         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
2391         (gtk_image_menu_item_new_with_label): New function.
2392
2393 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
2394
2395         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
2396         highlighting code!!!!  The result is okay so long as you don't try
2397         to stress it.  It also highlights a bug in the TextView so it's in
2398         an unproportional font right now until it's fixed.
2399
2400         *demos/gtk-demo/*.c: Clean up code a bit to make it
2401         ugly-parser(TM) friendly. (-:
2402
2403 2001-05-17  Joe Shaw  <joe@ximian.com>
2404
2405         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
2406         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
2407         if it is only partially onscreen.
2408
2409 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
2410
2411         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
2412         not by characters.
2413
2414         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
2415         are not zero or one; that is, when graphemes of multiple characters
2416         are involved.
2417
2418         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
2419         FIXME.
2420
2421 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
2422         
2423         * gtk/gtkbbox.c:
2424         Add properties, based on patch by Lee Mallabone.
2425
2426         * gtk/gtknotebook.c:
2427         * gtk/gtktoolbar.c:
2428         Convert from GtkArg to GParam, based on patch by John Margaglione.
2429         
2430         * gtk/gtkhscale.c:
2431         * gtk/gtkvscale.c:
2432         * gtk/gtkhscrollbar.c:
2433         * gtk/gtkvscrollbar.c:
2434         * gtk/gtkrange.c:
2435         Move adjustment property to GtkRange.
2436
2437         * gtk/gtklabel.c:
2438         Setup mnemonics on property changes
2439
2440         * gtk/gtkwidget.c (gtk_widget_get_property):
2441         GdkExtensionMode is an enum, not a flag. Set it with
2442         g_value_set_enum ().
2443
2444         * tests/prop-editor.c:
2445         Better propery editor.
2446
2447         * tests/testgtk.c:
2448         Add new property test. Pass zero to the property editor to
2449         get properties from all derived types.
2450         
2451 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
2452
2453         * autogen.sh (have_automake): Require libtool-1.4,
2454         automake-1.4p1.
2455
2456         * acinclude.m4: Remove libtool macros.
2457
2458         * gdk-pixbuf/Makefile.am: Add dependencies to loade
2459         modules.
2460
2461         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
2462         for libgdk.
2463
2464         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
2465         libgdk.la for libgtk.
2466
2467         * modules/input/Makefile.am: Make modules have full
2468         dependencies.
2469
2470 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
2471
2472         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
2473         #54699 where paths weren't being checked for correctness.
2474
2475 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2476
2477         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
2478         in any order you wan, whether or not the column is added to the
2479         tree, or the tree is realized.  Yay!
2480
2481         * gtk/gtktreeviewcolumn.c
2482         (gtk_tree_view_column_setup_sort_column_id_callback): handle
2483         sorting columns a lot saner
2484
2485         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
2486         new function to actually set wether or not a column is
2487         reorderable.
2488
2489         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
2490         if we have 'em.
2491
2492         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
2493         Fix nasty bug where we were showing the button just before
2494         realizing it.  As a result, the parent window was
2495         tree_view->window instead of tree_view->priv->header_window.
2496
2497         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
2498         to let you easily reorder a list or tree.
2499
2500 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
2501
2502         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
2503         from args to properties.
2504
2505 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
2506
2507         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
2508         from args to properties. (#51957)
2509
2510         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2511         calls to after ->set_property call.
2512
2513 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2514
2515         * tests/prop-editor.c: Block against redundant changes.
2516
2517         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2518         properties.
2519
2520 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2521
2522         * gdk/gdkpixmap.h: Remove creative formatting.
2523
2524 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2525
2526         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2527         property API. (#51669)
2528
2529         * gtk/gtkscale.c: Patch from John Margaglione converting to
2530         property API. (#51891)
2531
2532         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2533         to property API. (#50985)
2534
2535 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2536
2537         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2538         buffering state across expose event, so we still call end_paint().
2539
2540 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2541
2542         * gtk/gtkhsv.c (paint_triangle):
2543         Expose the ring in the triangle at the correct place when
2544         exposing just a part of the triangle.
2545
2546         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2547         Return FALSE, or window focusing will not work.
2548
2549 2001-05-11  Havoc Pennington  <hp@pobox.com>
2550
2551         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2552         #54144
2553
2554         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2555         bug #54330
2556
2557 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2558
2559         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2560         propagate exposes to NULL child.
2561
2562         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2563         against not having one of the scrollbars.
2564
2565         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2566         we don't keep a mnemonic window if we have no mnemonic installed.
2567
2568 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2569
2570         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2571         it has the _important_ side effect of initializing a class.
2572
2573 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2574
2575         * gdk/linux-fb/gdkprivate-fb.h:
2576         Make sure you can compile out the implementation/wrapper assert
2577         macros.
2578
2579         * gdk/linux-fb/gdkdrawable-fb2.c:
2580         Check implementation/wrappers, initialize type for pixmap dummys.
2581
2582         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2583         Hide the cursor if reading from the screen.
2584
2585         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2586         Fix sign bug in tiling code.
2587
2588         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2589         Handle background pixmaps.
2590
2591 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2592
2593         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2594         function to let user control where columns are dragged.
2595
2596         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2597         Escape is pressed.
2598
2599 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2600
2601         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2602         "columns_changed" signal.
2603         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2604         motion code to draw arrows to the side if indicator is outside the
2605         widget.
2606         (gtk_tree_view_map_expanded_rows): Implement.
2607
2608 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2609
2610         * demos/testpixbuf-save.c: 
2611         * demos/testpixbuf-drawable.c:
2612         Include gdkfb.h on linux-fb.
2613
2614 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2615
2616         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2617         New function for getting toplevel window at position.
2618         (gdk_drag_find_window): Use get_toplevel_window () instead
2619         of gdk_window_get_pointer(). (gdk_drag_status): Use
2620         correct context for getting window.
2621
2622         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2623         g_strdup the atom name.
2624
2625         * gdk/linux-fb/gdkwindow-fb.c:
2626         Costmetic fix.
2627
2628         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2629         Add code for changing cursor on linux-fb backend (same as
2630         win32).
2631
2632 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2633
2634         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2635         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2636         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2637         report was not for the development branch of GTK+, but it applies
2638         anyways).
2639
2640 2001-05-04  Havoc Pennington  <hp@redhat.com>
2641
2642         * configure.in: fix some shell typos
2643
2644         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2645
2646         * gtk/gtkimage.c: handle animations
2647
2648         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2649         border_width * 2, not just border_width
2650
2651         * gtk/gtkscale.c: add "format_value" signal to allow people
2652         to override the way values are drawn.
2653         (gtk_scale_get_value_size): fix width/height mistake,
2654         and compute size from actual displayed text, not 
2655         from made-up text.
2656
2657         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2658         signal registration
2659
2660         * tests/testtext.c: Add "Remove all tags" menu item for testing
2661
2662         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2663
2664         * demos/gtk-demo/main.c (main): add hack so we can find modules
2665         without installing gtk
2666
2667         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2668
2669         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2670         factor)
2671         (gtk_cell_renderer_text_set_property): remove some bogus
2672         g_object_notify
2673
2674         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2675         factor
2676
2677         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2678         to layout
2679
2680         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2681         gtk_text_iter_is_first
2682
2683 2001-01-06  Hans Breuer  <hans@breuer.org>
2684
2685         * gdk/gdk.def : updated exports
2686
2687         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2688         gdk won't compile anymore
2689  
2690         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2691         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2692         Improved gdk_flush () to not only do pending drawing operations
2693         but also process all currently pending events. This should make
2694         the behaviour more similar to the X11 version.  
2695
2696         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2697         option needs to be set even if there is no GDK_GC_BACKGROUND.
2698         (gdk_win32_hdc_get) : use predraw_set_background () independent
2699         of value_mask. This allows to draw dashed lines leaving the original
2700         background intact.
2701
2702         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2703         after processing, because we can't reuse it as the X11 version does.
2704
2705         * gtk/gtk.def : updated exports
2706
2707         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2708         would like to get rid of this file again, and use straight
2709         makefile.msc again, as the other Gtk+ subdirs do)
2710
2711         * test/makefile.msc (new file) : build the test apps here
2712
2713 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2714
2715         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2716         strike-through setting
2717         (gdk_draw_layout_line_with_colors): Render strike-through
2718
2719 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2720
2721         * Release 1.3.5
2722
2723         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2724
2725         * NEWS: Updated
2726
2727         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2728         Makefile breakage.
2729
2730 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2731
2732         * demos/gtk-demo/images.c (progressive_timeout): Fix
2733         typo in filename.
2734
2735         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2736         out FIXME warning; just too annoying.
2737
2738 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2739
2740         * gdk/linux-fb/gdkcolor-fb.c:
2741         Better error messages.
2742
2743         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2744         Initialize abs_x and abs_y.
2745         
2746         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2747         Correct handling of stipple offset.
2748
2749         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2750         Treat directcolor framebuffers as truecolor.
2751         
2752 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2753
2754         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2755         dependency on Atk for accessibility support.
2756
2757         * configure.in **/Makefile.am: Major reworking of substituted
2758         variables for CFLAGS/LIBS to make a lot more sane and 
2759         keep the the compile/link lines a bit shorter.
2760
2761         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2762
2763 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2764
2765         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2766         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2767         use _gtk_boolean_handled_accumulator.
2768
2769 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2770
2771         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2772         to fix things so clicking inside selection leaves cursor
2773         at point where clicked. (#50324)
2774
2775         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2776         sane value for default double click time.
2777
2778         * tests/testtext.c (test_init): Really path to input modules.
2779
2780 2001-05-03  Sven Neumann  <sven@convergence.de>
2781
2782         * demos/testpixbuf-save.c: include target-specific headers as
2783         done in testpixbuf-drawable.c
2784
2785 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2786
2787         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2788         new_text_length appropriately when we run into the 
2789         size limit for the entry. (#53445, reported by Jeff Franks)
2790
2791         * tests/testgtk.c (create_entry): Remove most of the
2792         property toggle buttons. Replace with a "Props" button
2793         that brings up a property editor.
2794
2795         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2796         Split the property editor code out for reuse, improve.
2797
2798 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2799
2800         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2801         trap errors around calls to XSetInputFocus since we have
2802         no way of knowing reliably whether we are viewable or
2803         not. (#53947)
2804
2805 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2806
2807         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2808         fix bug in dropping columns.  Moving columns now basically works
2809         modula some fine tuning.
2810
2811 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2812
2813         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2814         autoscroll support.  It mostly works, but could use some fine
2815         tuning.
2816         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2817         Actually move the column.
2818
2819 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2820
2821         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2822           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2823           New default theme! A slighly improved version of the 2.0 Raleigh
2824           theme, with Windows-esque focus/drawing default. 
2825           (GtkWidget::interior_focus defaults to TRUE.)
2826
2827         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2828
2829 2001-04-30  Havoc Pennington  <hp@pobox.com>
2830
2831         * tests/testtext.c (line_numbers_expose): fix to work with
2832         gtk_paint_layout change
2833
2834 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2835
2836         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2837           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2838           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2839           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2840
2841         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2842           with GtkWidget::interior_focus = TRUE better.
2843
2844         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2845         ::default_outside_border for more flexibility.
2846
2847         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2848         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2849         change that had to be made with g_object_get.
2850
2851 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2852
2853         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2854         (gtk_tree_view_move_column_after): Clean up interface. 
2855
2856 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2857
2858         * gtk/gtkpacker.h:
2859         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2860          to gtkenum.h.
2861
2862         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2863         handled in switch).
2864
2865         * gtk/Makefile.am:
2866         (gtk.defs): generate enum portions with  glib-mkenums.
2867         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2868         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2869         
2870         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2871         addition.
2872
2873         * docs/Changes-2.0.txt: keep a note on signal handlers now
2874         not getting emitted during the emission they were connected within.
2875
2876 2001-04-28  Havoc Pennington  <hp@pobox.com>
2877
2878         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2879
2880 2001-04-24  Havoc Pennington  <hp@redhat.com>
2881
2882         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2883         (gtk_text_layout_move_iter_to_next_line): fix these two for
2884         invisible text, lots of other stuff still hosed.
2885
2886         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2887         new function, replaces the get/set palette stuff. This function 
2888         is intended for use by libgnomeui which should set the hook to a
2889         thing which sets the palette in GConf, and we need the
2890         GConf-to-xsettings proxy which will result in the change being
2891         propagated back to the GTK app.
2892
2893         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2894         about unusable signals that it may be because the signal has 
2895         parameters.
2896
2897         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2898         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2899         it.
2900         (gtk_widget_modify_color_component): call
2901         gtk_widget_modify_style() so the rc style will get copied.
2902         (gtk_widget_modify_font): ditto
2903
2904         * gtk/gtkrc.c: make a couple variables static
2905
2906         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2907         help button by default, since it does nothing
2908
2909         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2910         around with UI
2911
2912         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2913         so we can have tooltips
2914
2915         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2916         can have tooltips
2917
2918         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2919         GDK_ENABLE_BROKEN, because its memory behavior is completely
2920         hosed.
2921
2922         * gtk/gtknotebook.c: remove key press handler, replace with
2923         binding set, add numeric keypad support
2924
2925         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2926
2927         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2928
2929         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2930         addition to plain Delete
2931
2932         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2933         GDK_KP_Enter in addition to GDK_Return
2934
2935         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2936         activate on entry instead of key press
2937         (gtk_font_selection_on_clist_key_press): get
2938         rid of this signal handler, not needed with new font sel.
2939
2940         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2941         no-longer-needed emit_stop_by_name(), just return TRUE
2942
2943         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2944         cruft, this widget is no longer focusable.
2945
2946         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2947         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2948         move_slider action signal, add binding set for vscale/hscale, in
2949         the process support numeric keypad
2950
2951         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2952         make GDK_Return and GDK_KP_Enter activate the entry via 
2953         binding set, instead of hardcoded.
2954
2955 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2956
2957         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2958         code.  Some documentation added.
2959
2960 2001-04-27  Havoc Pennington  <hp@redhat.com>
2961
2962         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2963
2964         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2965
2966         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2967         line/para separators
2968         (gtk_entry_create_layout): set single paragraph mode on the layout
2969
2970         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2971         spacing between the image and label; instead, inside a button box 
2972         the button will get extra space that will go there, but if people 
2973         configure button box for 0 chubbiness, then there's no spacing.
2974
2975         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2976         and min/max size style properties, so people can tune their
2977         chubbiness.
2978
2979         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2980         functions
2981
2982         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2983         space_style, and button_relief into style properties, remove
2984         functions for setting them
2985         
2986         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2987         it back down
2988
2989         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2990         types from gtk_widget_style_get
2991
2992         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
2993         with a style property.
2994
2995         * gdk/x11/gdkevents-x11.c: namespace the settings
2996
2997         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
2998
2999         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
3000         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
3001         be used. Also, translate doc strings for settings. Also, namespace
3002         the double-click-time property. Also, remove bell properties crap.
3003
3004 2001-04-27  Sven Neumann  <sven@gimp.org>
3005
3006         * Makefile.am: before creating links, check if pkg-config files
3007         exist for the default target. Otherwise link to the pkg-config files
3008         that got installed with this build.
3009
3010 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
3011
3012         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
3013         dragging code.  Revealed some (potential) GdkWindow bugs.
3014
3015         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
3016         _gdk_window_init_position to the end of reparent to fix the case
3017         of reparenting when new_x != old_x and new_y != old_y.
3018
3019 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
3020
3021         * gtk/gtkentry.c (strstr_len): Fix optimization that
3022         was correct for the use here, but completely incorrect
3023         in general.
3024
3025 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
3026
3027         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
3028         until patch adding gtk_window_set_size() is recommitted. 
3029
3030         * **Makefile.am configure.in gdk/x11/gdkim-11.c
3031           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
3032           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
3033           (#10784)
3034
3035 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
3036
3037         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
3038         window == NULL in a number of cases.
3039
3040         * tests/testdnd.c: Set module path for gdk-pixbuf.
3041
3042 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
3043
3044         * gtk/Makefile.am xembed.h: File containing #defines
3045         for XEMBED protocol.
3046
3047         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
3048
3049         - Change protocol from old plug/socket specific protocol
3050           to XEMBED draft
3051         - Various fixes to work with GTK+-2.0
3052
3053         Still quite a bit of work to do here to handle initiation
3054         from the socket side (as specified by XEMBED), to handle
3055         the more advanced features of XEMBED, and to figure out
3056         a good way to handle same-app embedding with less overhead
3057         than using full XEMBED.
3058
3059 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
3060
3061         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
3062         track of whether the toplevel has the focus; only send
3063         focus-in events to the focus widget when the window
3064         actually has the focus.
3065
3066 2001-04-25  Havoc Pennington  <hp@pobox.com>
3067
3068         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
3069         were still in the header
3070
3071 2001-04-24  Alexander Larsson  <alexl@redhat.com>
3072
3073         * gtk/gtkclist.[ch]:
3074         * gtk/gtkctree.c:
3075         When there is a row highlighted for D'n'D it must alse
3076         be painted hightlighted on exposes. Otherwise exposes from
3077         the icon being dragged will mess up the hightlight.
3078
3079         * gtk/gtkfontsel.c:
3080         Don't recenter selected font when exposing the font family
3081         clist. This means you can now actually scroll the font family
3082         list.
3083
3084         * gtk/gtknotebook.c:
3085         Fix focus movement on scrolling tabs that are placed on the left
3086         and right.
3087
3088 2001-04-21  Havoc Pennington  <hp@pobox.com>
3089
3090         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
3091         empty/invisible lines.
3092
3093         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
3094         (gtk_text_iter_set_visible_line_index): new functions to set
3095         indexes excluding invisible text
3096
3097         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
3098         index
3099
3100         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
3101         (gtk_text_iter_get_visible_line_offset): new functions to 
3102         get indexes excluding invisible text
3103
3104         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
3105         bunch of extra padding that served no purpose
3106
3107         * gtk/gtkdialog.c: Make all the spacings configurable via style
3108         properties, for chubbiness configuration in themes
3109
3110         * tests/testtext.c: fix path to the immodules.
3111         
3112 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
3113
3114         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
3115         got munched by #endif.
3116
3117         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
3118
3119         * gtk/gtktreeview.c: Refactored code to clean up a number of
3120         events.
3121
3122         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
3123         values to make consistent with other functions.  Spotted by Jeff
3124         Franks <jcf@tpg.com.au>.
3125
3126         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
3127         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
3128
3129 2001-04-23  Sven Neumann  <sven@gimp.org>
3130
3131         * gtk/Makefile.am
3132         * gtk/gtkplug.c
3133         * gtk/gtksocket.c: on request of Owen, reverted my last change 
3134         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
3135
3136 2001-04-23  Sven Neumann  <sven@gimp.org>
3137
3138         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
3139         compile for non-X11 targets again
3140
3141 2001-04-20  Alexander Larsson  <alexl@redhat.com>
3142
3143         * gtk/gtkcolorsel.[ch]:
3144         API Change. Take GdkColor arguments instead of gdouble *.
3145         Leave the old gtk_color_selection_set_color for compatibility,
3146         but marked deprecated.
3147         Do correct rounding when converting RGB <-> HSV.
3148         
3149         * gtk/gtkcolorseldialog.c:
3150         * tests/testgtk.c:
3151         Use new GtkColorSelection API.
3152
3153         * gtk/gtkhsv.c:
3154         Fix problem selecting colors in triangle when Hue is 330.
3155         Fix some black dots around the HSB triangle.
3156         
3157         * gtk/gtkfilesel.c:
3158         return FALSE from the focus_in_event handler to fix focus problems.
3159
3160 2001-04-18  Havoc Pennington  <hp@redhat.com>
3161
3162         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
3163         set, so keybindings are configurable    
3164         (gtk_window_activate_default): Change to activate the focus widget
3165         instead if there's a focus widget, to be consistent with the
3166         behavior that previously existed in key_press_event
3167
3168 2001-04-18  Havoc Pennington  <hp@redhat.com>
3169
3170         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
3171
3172 2001-04-18  Havoc Pennington  <hp@redhat.com>
3173
3174         Close bug #50615:
3175         
3176         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
3177         the layout
3178
3179         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
3180
3181         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
3182
3183         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
3184         
3185         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
3186         to blue for base, in addition to bg
3187         
3188 2001-04-18  Havoc Pennington  <hp@redhat.com>
3189
3190         * tests/testgtk.c (create_image): allow shrinking the image window
3191         to test that we clip to allocation.
3192
3193         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
3194         #9845
3195
3196         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
3197
3198 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
3199
3200         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
3201         mode on shm segments to 0600. We'll see who complains.
3202
3203         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
3204         _gdk_windowing_window_destroy() AFTER recursing through
3205         children.
3206
3207         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
3208         testsocket_child on X.
3209
3210         * tests/testsocket[_child].c: Fix uses of
3211         gtk_window_get_default_accel_group().
3212
3213         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
3214
3215         * gdk/gdkimage.c: (gdk_image_get):
3216         Deal with the possibility that XGetImage() might return NULL.
3217         Allocate the GdkImagePrivate structure only after XGetImage()
3218         succeeds in order not to dereference a NULL ximage pointer.  This
3219         prevents a core dump when XGetImage() fails - which is unlikely,
3220         but can happen due to race conditions accessing the geometries of
3221         drawables.  An x error will still be triggered, but the gdk image
3222         wrapper at least wont seg fault.
3223         
3224 2001-04-18  Havoc Pennington  <hp@redhat.com>
3225
3226         * gtk/gtkimage.c: fix to properly queue resizes when the image is
3227         set
3228
3229         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
3230         if the insertion point isn't editable
3231
3232         * demos/gtk-demo/images.c: Added a GtkImage demo
3233
3234         * demos/gtk-demo/drawingarea.c: drawing area demo
3235         
3236         * demos/gtk-demo/menus.c (create_menu): cleanups
3237
3238 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
3239
3240         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
3241           gdk/x11/gdkevents-x11.c: Introduce an extra child
3242         of toplevel windows that serves to hold the focus to
3243         avoid events being delivered to embedded windows.
3244
3245         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
3246         some extra variables to clean up code and reduce the
3247         number of casts.
3248
3249         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
3250         guint for 1 bit bit fields, not gboolean.
3251
3252 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
3253
3254         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
3255         not TRUE. (Fixes #52925)
3256
3257 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
3258
3259         * Released 1.3.4
3260
3261         * NEWS: Updated
3262
3263         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
3264         use GTK_TYPE_ENUM.
3265
3266 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
3267
3268         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3269
3270         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
3271         names to compatibility #defines so docs work.
3272
3273         * gtk/gtkenums.h: Remove GtkMenuFactoryType
3274
3275         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
3276
3277         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3278
3279         * tests/testgtkrc: No magenta cursors, please.
3280
3281         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
3282
3283         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
3284         
3285 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
3286
3287         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
3288         grabs, since they are no longer necessary.
3289
3290         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
3291         by signal_connect() and call gtk_button_pressed() rather
3292         than signal_connect_after().
3293
3294         * tests/testgtk.c: Restore radio menu items to combos 
3295         since they'll look OK with Raleigh, and it is easier
3296         than finishing the process of removing them that was
3297         started earlier.
3298
3299 2001-04-16  Hans Breuer  <hans@breuer.org>
3300
3301         * gdk/gdk.def :
3302         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
3303
3304         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
3305         we are interested in the functions return value not the function address
3306         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
3307
3308         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
3309
3310 2001-04-14  Hans Breuer  <hans@breuer.org>
3311
3312         * gdk/gdk.def :
3313         * gdk/makefile.msc : updated
3314
3315         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
3316         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
3317         (the testgtk::text backgound pixmap is drawn again)
3318         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
3319         Win32 Pango change
3320         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
3321
3322         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
3323         Not sure if the returned settings have the right unit, because I couldn't
3324         find any docs for the X version ...
3325
3326         * gtk/gtk.def :
3327         * gtk/makefile.msc.in : updated
3328
3329 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
3330
3331         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
3332         wording problems. (Compared to version from Johannes Stezenbach to
3333         check correctness.)
3334
3335 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
3336
3337         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
3338         this to compile.
3339
3340 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
3341
3342         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
3343         not pixbufpos.
3344
3345         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
3346
3347         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
3348         are unsigned insts, therefore use g_value_set_uint.
3349         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
3350
3351 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
3352
3353         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
3354
3355         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
3356         GTK_TYPE_STRING.
3357
3358         * gtk/gtktreeview.c: New functions to allow initial column
3359         dragging work.
3360
3361         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
3362
3363         * tests/testtreefocus.c: give dave some love.
3364
3365         * tests/testtreesort.c: Modify test to check really long samples.
3366
3367 2001-04-11  Alexander Larsson  <alexl@redhat.com>
3368
3369         * gtk-2.0.m4: Pass pkg-config options
3370         before the other args so it works even if
3371         POSIXLY_CORRECT is set.
3372
3373 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
3374
3375         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
3376         0, interface 0).
3377
3378 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
3379
3380         * gtk/gtkcalendar.c (gtk_calendar_button_press):
3381         check for action_func != NULL
3382
3383 2001-04-04  Sven Neumann  <sven@gimp.org>
3384
3385         * tests/testgtk.c (test_init): corrected path to gtk.immodules
3386
3387 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
3388
3389         * Released Gtk+-1.3.3.
3390
3391 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
3392
3393         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
3394
3395 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
3396
3397         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
3398         files to/from source dir. (if we don't stay in builddir, we
3399         can't reach make-inline-pixbuf.
3400
3401         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
3402         deps.
3403
3404         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
3405         ages 0).
3406
3407 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
3408
3409         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
3410         moved to the GtkTreeSortable interface.
3411
3412         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3413         Make more efficient (fixes #50262).
3414
3415 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
3416
3417         * NEWS: Updated.
3418
3419         * configure.in: Remove support for uninstalled glib.
3420
3421         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
3422         so as not to stop emission.
3423
3424         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3425         is no longer supported.
3426
3427         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
3428         into tests, change build order to build modules before
3429         gtk/.
3430
3431         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
3432         to here.
3433
3434 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
3435
3436         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
3437         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
3438         GPatternSpec. this is actually unlikely to cause breakage in
3439         third-party apps since except for gle, pretty much ever caller
3440         passes NULL here.
3441
3442         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
3443
3444         * *.c: use g_pattern_*() API.
3445
3446         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
3447
3448         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
3449         directions aren't passed in.
3450
3451         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
3452         functionality to be usable from gtkstyle.c as well, give precedence
3453         for conversion to user-supplied parsers.
3454         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
3455
3456         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
3457         _gtk_settings_parse_convert() for rcporperty value conversion.
3458
3459 2001-04-03  Alexander Larsson  <alexl@redhat.com>
3460
3461         * gdk/linux-fb/gdkevents-fb.c:
3462         Add empty gdk_setting_get().
3463
3464 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
3465
3466         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
3467         variable names.
3468         
3469         * gtk/makeenums.pl: touch this so enum files get remade.
3470
3471 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
3472
3473         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
3474         work again when not sorted.
3475
3476         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
3477         and "expand_row" signal, closing bug 52578.
3478
3479         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
3480         support.
3481
3482         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
3483         support.
3484
3485 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3486
3487         * gdk/gdkevents.h: Add GdkEventSetting event for notification
3488         of changes to system settings, gdk_setting_get() to retrieve
3489         a single system setting.
3490
3491         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
3492         to the draft XSETTINGS mechanism.
3493
3494         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
3495         XSETTINGS.
3496
3497         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
3498         of GDK settings changes to the GtkSettings object.
3499
3500         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
3501         double-click-timeout property to GDK.
3502
3503         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
3504         Define GDK boxed types here.
3505
3506         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
3507         gdk/gdkenumtypes.[ch] for enum definitions.
3508
3509         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3510         * gtk/gtk-boxed.defs: Comment out GDK types
3511         * gtk/gtktypeutils.h: Remove GDK types
3512         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3513
3514 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3515
3516         * Applied patch from Ron Steinke to add signal accumulators
3517         so that signals with the convention 'TRUE return means
3518         handled' stop emission on a TRUE return.
3519
3520         * gtk/gtkmain.[ch]: Add private accumulator 
3521         _gtk_boolean_handled_accumulator, used throughout GTK+.
3522         
3523         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3524
3525         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3526         
3527         * gtk/gtkwidget.c: Add accumulators for event signals,
3528         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3529         for ::mnemonic-activate.
3530
3531         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3532
3533 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3534
3535         * gtk/gtkwidget.c: Add missing include.
3536
3537 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3538
3539         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3540         marshaller.
3541
3542         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3543         "changed" signal to "range_changed".
3544
3545         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3546         removing a tree from one model would remove all trees from that
3547         model.
3548         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3549         changed signal instead.
3550
3551 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3552
3553         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3554         chaining up to parent impl, since we have a INPUT_ONLY
3555         window.
3556
3557         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3558         foreground color for the cursor.
3559
3560 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3561
3562         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3563         param spec when caching property values, since we unref it
3564         later when we free the style.
3565
3566         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3567         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3568
3569 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3570
3571         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3572         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3573         stupidity.
3574
3575 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3576
3577         [ First pass at adding style properties. Still needs some definite
3578         fine-tuning. ]
3579
3580         * gtk/gtkbutton.c: Add ::default_spacing style property.
3581          
3582         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3583         ::indicator_spacing style properties.
3584
3585         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3586         style properties.
3587
3588         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3589         rather than a normal property.
3590
3591         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3592         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3593
3594         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3595         Honor ::interior_focus.
3596         
3597         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3598         TRUE.
3599
3600         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3601         Add ::slider_width, ::trough_border, ::stepper_size,
3602         ::stepper_spacing style properties.
3603
3604         * gtk/gtkscale.[ch] Add ::slider-length style property.
3605
3606 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3607
3608         * gdk/linux-fb/gdkwindow-fb.c:
3609         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3610         warnings that were spewed on startup.
3611
3612         * gtk/gtkwindow-decorate.c:
3613         gtk_window_reposition -> _gtk_window_reposition
3614
3615 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3616
3617         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3618         Add boxed type for GtkRequistion. Use it for ::size-request.
3619
3620         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3621         Add a new GtkBorder structure useful for geometry properties
3622         for widgets. Add corresponding GTK_TYPE_BORDER.
3623         
3624         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3625         Support automatic parser selection like
3626         gtk_settings_install_property_parser().
3627
3628         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3629         functionality for use by gtk_widget_class_install_style_property.
3630         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3631
3632 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3633
3634         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3635         g_param_spec_unichar(). 
3636
3637 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3638
3639         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3640         _NET window managers.
3641
3642         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3643
3644 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3645
3646         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3647         bad needs to be nuked, not just deprecated.
3648
3649         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3650         gtk_widget_popup().
3651
3652         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3653         
3654         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3655         widget.
3656         
3657         * docs/Changes-2.0.txt: updates.
3658         
3659 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3660
3661         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3662         for (i = 0; i < 100; i ++)
3663           g_print ("I will confirm it compile before committing\n");
3664
3665 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3666
3667         * gtk/gtktreestore.c: Initial work on implementing the
3668         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3669
3670 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3671
3672         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3673         reference counts around emissions where the widget is used afterwards.
3674         added freeze/thaws around multiple properties being notified.
3675         (_gtk_widget_get_aux_info): cleanups.
3676         
3677         * gtk/gtksettings.c (gtk_settings_install_property): provide
3678         default parsing functions for gdkcolor, enums and flags.
3679
3680         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3681         applied by owen.
3682         backed out gtk_window_get_location(), gtk_window_set_location(),
3683         gtk_window_get_size() and gtk_window_set_size(), these
3684         have to be sorted out wrg x/y/width/height/default_with/default_height
3685         properties.
3686         kept a flag in GtkWindowGeometryInfo to handle user
3687         resetting default sizes.
3688         cleaned up ZVT comments.
3689         bunch of assorted bug fixes, notification fixes.
3690         (_gtk_window_reposition): make this a really internal function.
3691         
3692         * gtk/testgtk.c: fixups.
3693         
3694 2001-03-31  Hans Breuer  <hans@breuer.org>
3695
3696         * config.h.win32.in : disable USE_MMX for msvc build cause
3697         the assembler doesn't fit and is out of my scope. Disable
3698         USE_GMODULE for msvc build as wel. The right way to share
3699         binaries on win32 would be to use libtiff.dll etc. To reduce
3700         installation hassles IMO it's better to include all fileformats
3701         builtin to gdk-pixbuf
3702
3703         * gdk-pixbuf/makefile.msc : new file
3704
3705         * gdk/gdk.def : updated
3706
3707         * gdk/win32/gdkevents-win32.c : don't erase the background if
3708         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3709         buttons
3710         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3711
3712         * gdk/win32/gdkwindow-win32.c : added three new functions like
3713         the X version. Only one is implemented, because the other two
3714         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3715         be default behaviour on win32 anyway ...
3716
3717         * gtk/gtk.def : updated
3718
3719         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3720         from where it was built and add an additional rule to automagically
3721         build gtkmarshal.[hc]
3722
3723         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3724         before array access for the current entry isn't finished
3725
3726         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3727         use g_return_val_if_fail
3728
3729         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3730         for the static array, but let the compiler calculate it. It
3731         makes me wonder if gcc isn't capable to catch bugs like this ...
3732
3733 2001-03-31  James Henstridge  <james@daa.com.au>
3734
3735         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3736         constant "-1" in the aux info structure.
3737
3738 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3739
3740         * gtk/gtkbutton.c (gtk_button_get_property):
3741         * gtk/gtklabel.c:
3742         Remove leaks.
3743         
3744         * gtk/gtkcontainer.c:
3745         * gtk/gtkhscale.c:
3746         * gtk/gtkhscrollbar.c:
3747         * gtk/gtklayout.c:
3748         * gtk/gtkmisc.c:
3749         * gtk/gtkprogress.c:
3750         * gtk/gtkprogressbar.c:
3751         * gtk/gtkrange.c:
3752         * gtk/gtktable.c:
3753         * gtk/gtkviewport.c:
3754         * gtk/gtkvscale.c:
3755         * gtk/gtkvscrollbar.c:
3756         * gtk/gtkwidget.c:
3757         Property patches, based on patches from John Margaglione and Lee Mallabone.
3758
3759 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3760
3761         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3762         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3763         inline API function docs.
3764         (gtk_spin_button_new_with_range): New convenience constructor.
3765         (gtk_spin_button_set_increments): New adjustment helper.
3766         (gtk_spin_button_set_range): New adjustment helper.
3767
3768         * gtk/testgtk.c : added test of the new convenince constructor and
3769         value_changed signals.
3770
3771 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3772
3773         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3774         listen to the reorder signal.
3775
3776 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3777
3778         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3779         to get the aux info structure fo the widget.
3780
3781         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3782         above function.
3783
3784         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3785
3786         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3787         to get the size of the window manager frame, basically the same
3788         code that gdk_window_get_root_origin() had
3789         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3790
3791         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3792         gdk_window_resize() if the window is realized and resizeable
3793
3794         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3795         typo so that setting gravity works
3796
3797         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3798         allocation if auto_shrink is on, even if the default size
3799         has not changed.
3800
3801         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3802         g_return_if_fail
3803
3804 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3805
3806         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3807         reordering/sorting work.  Now pretty much works.
3808
3809         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3810         reorder mostly work.  Still need to get the parity correct.
3811
3812         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3813         signal, so I can listen for the sort_column_changed signal so I
3814         can change my "sort_indicator" property.  Cool.
3815
3816 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3817
3818         [ Patch from Havoc Pennington, hp@redhat.com ]
3819
3820         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3821         Add functions gdk_window_begin_resize_drag/begin_move_drag
3822         to start resizing or moving a toplevel window. This
3823         is done either using the _NET_WM_MOVERESIZE protocol,
3824         or, if that isn't present, by emulation.
3825
3826         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3827         to export the above to GTK+-land.
3828
3829         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3830         
3831         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3832         Move this function into gdkwindow, since we need it
3833         when implementing fallback resizing.
3834
3835         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3836         Fix typo when setting gravity.
3837
3838         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3839         Add an optional (but on by default) resize grip for resizing 
3840         the parent window.
3841
3842 01-03-29  Alexander Larsson  <alexl@redhat.com>
3843
3844         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3845         Don't return TRUE from the event handler, that blocks all
3846         event signals on the tooltip widget. Now you can press buttons
3847         in toolbars again.
3848
3849 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3850
3851         * gtk/testtext.c (create_buffer): Add missing NULL on
3852         valist.
3853
3854         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3855         c-n-p problem with INCONSISTENT property.
3856
3857         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3858
3859         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3860         hook.
3861
3862         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3863         signal as a hook for extending the default popup menu
3864
3865         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3866         use radio menu items for the input method menuitems
3867
3868         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3869         inserted unicode from Ctrl-Shift-hex input method
3870
3871         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3872         validatation here, already done at GtkTextBuffer level.
3873
3874         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3875         popup_menu run action signal and Shift+F10 and Menu keybindings.
3876
3877         * gtk/gtkentry.c: implement a default handler for popup_menu
3878
3879         * gtk/gtktextview.c: implement a default handler for popup_menu
3880
3881         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3882         from a key event
3883         
3884         * gtk/gtklabel.c: remove "trailer" cruft
3885
3886 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3887
3888         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3889         handle reordering of trees.  Seems to mostly work w/ the exception
3890         of the parity flag.
3891
3892         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3893         signal.
3894
3895 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3896
3897         * gtk/gtkwidget.h: c++ fixes.
3898
3899 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3900
3901         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3902         memory.
3903
3904 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3905
3906         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3907         Nils Barth fixing event return values. (#51041)
3908
3909         * gtk/gtkwidget.c: Fix some return values for default
3910         functions.
3911
3912         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3913         return values for trough_keys functions.
3914
3915         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3916         value for add_accelerator (shoudl have been a void
3917         return.)
3918
3919         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3920         Fix return type of EVENT.
3921
3922         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3923         signal return a boolean.
3924
3925 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3926
3927         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3928         reordered signal.
3929
3930         * tests/testtreesort.c (main): fix spelling.
3931
3932 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3933
3934         * gtk/gtkliststore.c: More work on implementing sortable
3935         interface.
3936
3937 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3938
3939         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3940         reference the widgets in the resulting list. (#11821)
3941         This makes this consistent with gtk_container_children.
3942
3943         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3944         uses of gtk_window_list_toplevels.
3945
3946 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3947
3948         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3949         a virtual function to set whether the IM context should use 
3950         the preedit string. (#51922)
3951         
3952 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3953
3954         * gdk/gdkpango.h: Remove stale FIXME comment.
3955
3956 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3957
3958         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3959         Fixed bug that returned NULL if a filename was selected.
3960
3961 2001-03-24  Havoc Pennington  <hp@pobox.com>
3962
3963         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3964         to contain the word "theme"
3965
3966 2001-03-24  Havoc Pennington  <hp@pobox.com>
3967
3968         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3969         slower but finer-grained
3970         (gtk_hsv_focus): get initial focus on the ring or triangle 
3971         according to tab direction
3972
3973         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3974
3975 2001-03-23  Havoc Pennington  <hp@pobox.com>
3976
3977         * gtk/gtkhsv.c: make this somewhat key-navigable
3978
3979         * gtk/gtkfontsel.c: mnemonics
3980
3981         * gtk/gtkgamma.c: mnemonics
3982
3983         * gtk/gtkcolorsel.c: add mnemonics to labels
3984
3985 2001-03-22  Havoc Pennington  <hp@pobox.com>
3986
3987         Applied big patch from Seth Lytle to fix event handler return
3988         values, slightly modified.
3989
3990         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3991         handled.
3992         (gtk_calendar_key_press): return TRUE for GDK_space triggers
3993         select_day
3994
3995         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
3996         (gtk_clist_button_release): return TRUE if handled
3997
3998         * gtk/gtkcolorsel.c (mouse_release):
3999         (palette_activate): 
4000         (palette_press): 
4001         (palette_new): 
4002         (mouse_press): 
4003         (get_screen_color): 
4004         fixed return type (void to gboolean), return TRUE,
4005         added GTK_SIGNAL_FUNC cast
4006
4007         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
4008         (void to gboolean), and return TRUE
4009         (gtk_combo_button_release): changed return value to TRUE after
4010         gtk_grab_add on combo->popwin
4011
4012         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
4013         collapse or expand
4014
4015         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
4016         button/motion
4017
4018         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
4019         press/release and motion that trigger act
4020
4021         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
4022
4023         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
4024         for GDK_Return
4025         
4026         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
4027         (gtk_list_button_release): return TRUE if selection
4028
4029         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
4030         press
4031
4032         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
4033         (gtk_menu_shell_button_release): chain parent_menu_shell retval
4034
4035         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
4036         nothing triggered
4037         (gtk_notebook_button_release): return TRUE if we do anything
4038
4039         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
4040         (gtk_spin_button_button_release): return TRUE or chained retval
4041
4042         * gtk/gtktext.c (gtk_text_button_press): 
4043         (gtk_text_button_release): return TRUE
4044         (gtk_text_key_press): remove redundant retval code
4045         
4046         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
4047         and sensitive
4048         (gtk_tree_item_subtree_button_click): changed type to gint, and return
4049         TRUE if sensitive
4050
4051         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
4052         return TRUE
4053
4054 2001-03-23  Havoc Pennington  <hp@redhat.com>
4055
4056         * gtk/testgtk.c: fix warnings
4057
4058         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
4059
4060         * gtk/gtktextview.c: fix warnings
4061
4062         * gtk/gtktext.c (find_cursor_at_line): fix warning
4063
4064         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
4065
4066         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
4067         of this function
4068
4069         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4070         fix warning
4071
4072         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
4073
4074         * gtk/gtkfontsel.c: fix warning
4075
4076         * gtk/gtkcolorsel.c: fix warnings
4077
4078 2001-03-23  Havoc Pennington  <hp@redhat.com>
4079
4080         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
4081
4082         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
4083
4084         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
4085         and deprecated gtk_check_menu_item_set_show_toggle().
4086         
4087         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
4088
4089         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
4090
4091         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
4092
4093 2001-03-23  Havoc Pennington  <hp@redhat.com>
4094
4095         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4096         some docs
4097
4098 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
4099
4100         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
4101         this.
4102
4103         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
4104         set_cell to set_value
4105
4106         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
4107         set_cell to set_value
4108
4109 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
4110
4111         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4112         fix braino.
4113         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
4114         support.
4115
4116         * gtk/gtktreeview.c: Addition of initial sortable support.
4117
4118         * gtk/gtktreestore.c: Addition of initial sortable support.
4119
4120         * gtk/gtkliststore.c: Addition of initial sortable support.
4121
4122         * gtk/gtkmarshal.list: yet another marshaller.
4123
4124         * gtk/gtktreedatallist.[ch]: shared code between the store models
4125         for handling sorting headers.
4126
4127 2001-03-22  Havoc Pennington  <hp@redhat.com>
4128
4129         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4130         (gtk_container_unset_focus_chain): Add ability to override the 
4131         focus chain for a container explicitly
4132
4133 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
4134
4135         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
4136         added PROP_MNEMONIC_WIDGET.
4137
4138         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
4139         (gtk_window_remove_mnemonic): 
4140         (gtk_window_add_mnemonic): fixed assertions.
4141         (gtk_window_activate_mnemonic): constrain modifier checks to those
4142         permitted by gtk_accelerator_get_default_mod_mask().
4143         got rid of gtk_window_get_default_accel_group().
4144
4145         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
4146         activatable widgets either by focussing or a warning.
4147         added a signal accumulator to ::activate_mnemonic which stops the
4148         emission once a handler returned TRUE.
4149
4150 2001-03-22  Havoc Pennington  <hp@pobox.com>
4151
4152         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
4153         the stock item label
4154
4155         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
4156
4157         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
4158
4159         * demos/gtk-demo/*.c: Add mnemonics all over the place
4160
4161         * gtk/gtklabel.h: mark parse_uline deprecated
4162
4163 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4164
4165         * gtk/gtkitemfactory.[ch]:
4166         Add support for stock and normal imagemenuitems.
4167         
4168         * gtk/testgtk.c:
4169         Add some tests for mnemonics, stock toolbars, stock
4170         and image menuitems in itemfactory and gdk_window_scroll.
4171
4172 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4173
4174         * gtk/gtkbutton.[ch]:
4175         * gtk/gtkdialog.c:
4176         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
4177         removed accel_group argument. Renamed gtk_button_new_accel() to
4178         gtk_button_new_with_mnemonic() and removed accel_group argument.
4179
4180         * gtk/gtkcheckbutton.[ch]:
4181         New function gtk_check_button_new_with_mnemonic().
4182
4183         * gtk/gtkentry.c:
4184         Override activate_mnemonic and just grab focus.
4185
4186         * gtk/gtkitemfactory.c:
4187         Don't add menu uline accel group, instead use mnemonics support.
4188
4189         * gtk/gtklabel.[ch]:
4190         New support for mnemonics.
4191
4192         * gtk/gtkmarshal.list:
4193         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
4194
4195         * gtk/gtkmenu.[c]:
4196         * gtkmenushell.c:
4197         Use mnemonics instead of accel groups for uline
4198         support in menu items.
4199         Removed gtk_menu_get_uline_accel_group() and
4200         gtk_menu_ensure_uline_accel_group().
4201
4202         * gtk/gtkmenuitem.c:
4203         Override activate_mnemonic to handle switching between
4204         menu items if there are collisions.
4205         
4206         * gtk/gtknotebook.c:
4207         Connect to activate_mnemonic on the tab_label, so that
4208         activating it switches to that notebook page.
4209
4210         * gtk/gtkwidget.[ch]:
4211         Add activate_mnemonic signal. New function
4212         gtk_widget_activate_mnemonic() to emit it.
4213         Default implementation does activate/grab_focus.
4214
4215         * gtk/gtkwindow.[ch]:
4216         Add support for mnemonics in windows.
4217         New functions:
4218         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
4219         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
4220
4221         * gtk/testgtk.c:
4222         Update to function name changes.
4223         
4224 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4225
4226         * gtk/gtkimagemenuitem.[c]:
4227         Add gtk_image_menu_item_new_from_stock()
4228
4229 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
4230
4231         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4232         Fix buglet in meeting.
4233
4234 2001-03-19  Havoc Pennington  <hp@redhat.com>
4235
4236         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
4237         add a bunch of accessor functions. This is because we have
4238         reasonable expectations of extending what fields it contains in
4239         the future.
4240
4241         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
4242         changes
4243
4244         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
4245         GtkIconSource   
4246
4247 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
4248
4249         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
4250         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
4251
4252         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
4253           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
4254           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
4255           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
4256         Change float to double everywhere with the exception of 0<->1.0 alignment
4257         and GtkCurve.
4258
4259 2001-03-19  Tor Lillqvist  <tml@iki.fi>
4260
4261         * gdk/win32/gdkdrawable-win32.c
4262         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
4263         output.
4264
4265         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
4266         gdkwin32.h.
4267
4268 2001-03-18  Tor Lillqvist  <tml@iki.fi>
4269
4270         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
4271         print_event_state, print_event): Use preprocessor macro to make
4272         code more compact. Print also GDK_WINDOW_STATE events.
4273         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
4274         
4275         * gtk/gtk.def
4276         * gtk/makefile.mingw.in: Update.
4277
4278         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
4279         to catch also Cygwin.
4280
4281 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
4282
4283         * gtk/gtkspinbutton.[hc]: added rc-style argument
4284         GtkSpinButton::shadow_type.
4285         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
4286         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
4287         rc-style settings.
4288
4289         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
4290
4291         * gtk/gtkwidget.c: quark cleanups.
4292
4293         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
4294         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
4295         to create_rc_style() (we don't do cloning in standard OO sense).
4296         added per rc style properties.
4297         
4298         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
4299         property values and for caching those. some cleanups.
4300         
4301         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
4302         
4303         * gtk/gtksettings.[hc]: new file for global rc-file properties
4304         (at least currently, should get extended to support X properties
4305         and other communication mechanisms).
4306         
4307         * gtk/gtkwidget.[hc]: added style property support:
4308         (gtk_widget_class_install_style_property_parser): install style
4309         property pspec with parser function for rc-file values other
4310         than LONG, DOUBLE or STRING.
4311         (gtk_widget_class_install_style_property): same as above without
4312         parser (parsers are going to be needed quite infrequently).
4313         (gtk_widget_style_get_property): retrive style property value.
4314         (gtk_widget_style_get_valist): same as above with varargs support,
4315         has NOCOPY semantics.
4316         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
4317
4318 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
4319
4320         * demos/gtk-demo/main.c (row_activated_cb): modified to use
4321         "row_activated" signal.
4322
4323         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
4324         stupidity.  Lets actually pass in the row with this signal...
4325
4326 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
4327
4328         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
4329
4330         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
4331
4332         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
4333         everything into the ::destroy function, and freed a lot more.
4334
4335 2001-03-16  Havoc Pennington  <hp@redhat.com>
4336
4337         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
4338         instead of gint16, to avoid overflow issues, since sizes > 16-bit
4339         are now allowed.
4340
4341 2001-03-16  Havoc Pennington  <hp@redhat.com>
4342
4343         * Applied patch from Nils Barth (bug # 51041) to 
4344         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
4345         in various places.
4346
4347 2001-03-15  Havoc Pennington  <hp@redhat.com>
4348         
4349         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
4350         for properties to set on the tag.
4351
4352         * gtk/testtext.c: fixups to reflect create_tag change
4353         
4354         * gtk/gtktexttag.c (gtk_text_tag_set_property):
4355         background/foreground stipple are objects, not boxed.
4356
4357         * demos/gtk-demo/textview.c: intellihancing
4358
4359 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
4360
4361         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
4362         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
4363
4364 2001-03-16  Alexander Larsson  <alexl@redhat.com>
4365
4366         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
4367         Fix sign error with queued region translations.
4368
4369 2001-03-15  HideToshi Tajima  <tajima@happy>
4370
4371         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
4372         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
4373         * gtk/gtkentry.c (update_im_cursor_location): 
4374         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
4375         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
4376         set_cursor_pos to set_cursor_location in GtkInputContext class
4377
4378 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
4379
4380         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
4381         the location of the cell relative to its area.
4382         * gtk/gtkcell*: modified for above change
4383         * gtk/gtktreeview.c: modified for above change.
4384
4385 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
4386
4387         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
4388          (gtk_tree_view_finalize): actually unref the model.  Thanks to
4389         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
4390
4391 2001-03-14  Havoc Pennington  <hp@redhat.com>
4392
4393         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
4394         
4395         * gtk/gtk.h: remove gtkdata.h
4396
4397         * gtk/Makefile.am: remove gtkdata
4398         
4399         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
4400         not "disconnect" on the adjustments.
4401         
4402         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
4403         GtkData
4404
4405         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
4406         not GtkData
4407
4408         * configure.in: handle case where X render exists, but Pango lacks
4409         Xft support.
4410
4411 2001-03-15 Alexander Larsson  <alexl@redhat.com>
4412
4413         * gtk/gtktoolbar.[ch]:
4414         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
4415         to add stock items to toolbars.
4416
4417         * gtk/Makefile.am:
4418         Remove ../gdk/gdkim.h from gdk_headers.
4419
4420 2001-03-15  Sven Neumann  <sven@gimp.org>
4421
4422         * gdk/gdkim.h: removed
4423         
4424         * gdk/gdkprivate.h
4425         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4426
4427 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
4428
4429         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
4430         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
4431         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
4432         set_cursor_pos() virtual method
4433
4434         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
4435         (gtk_im_context_xim_set_cursor_pos): add implementation for
4436         set_cursor_pos() method
4437
4438         * gtk/gtkentry.c (recompute_idle_func): set current cursor
4439         position to input methods
4440
4441 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
4442
4443         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
4444         code a lot.
4445
4446         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
4447         g_mem_chunk.
4448         (_gtk_tree_data_list_alloc): use g_mem_chunk.
4449         (_gtk_tree_data_list_node_to_value): Fix to switch on
4450         G_TYPE_FUNDAMENTAL.
4451         (_gtk_tree_data_list_value_to_node): Fix to switch on
4452         G_TYPE_FUNDAMENTAL.
4453         (_gtk_tree_data_list_node_copy): Fix to switch on
4454         G_TYPE_FUNDAMENTAL.
4455
4456 2001-03-12  Havoc Pennington  <hp@redhat.com>
4457
4458         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4459         to convert to new property API. Also, change default_width and
4460         default_height get_property to return 0 as the flag value for
4461         "unset"; -1 is not a valid value for these fields.
4462
4463 2001-03-12  Havoc Pennington  <hp@redhat.com>
4464
4465         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
4466         enum with registration for icon sizes, instead of strings.
4467
4468         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
4469         gtkwidget.c: Fix to reflect GtkIconSize
4470         
4471 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4472
4473         Make GtkFB compile and link.
4474         
4475         * gdk/linux-fb/gdkdrawable-fb2.c:
4476         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4477         
4478         * gdk/linux-fb/gdkwindow-fb.c:
4479         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4480         Added gdk_window_shape_combine_region.
4481         Added assorted placeholders for unimplemented new GdkWindow API calls.
4482
4483 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4484
4485         * gtk/gtkfilesel.c:
4486         Add more test when converting filenames from/to utf-8.
4487         Don't allow entering text in the filename entry which isn't allowed in
4488         a filename. Just beep instead.
4489
4490 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4491
4492         * gtk/gtkclist.c:
4493         Scroll using gdk_window_scroll(). Don't wait for exposes.
4494         Move the column headers in an order that makes them flash less.
4495
4496 2001-03-10  Hans Breuer  <hans@breuer.org>
4497
4498         * gdk/gdk.def : updated
4499
4500         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
4501         to offseting the clip_mask at the right place
4502
4503         * gdk/win32/gdkwindow-win32.c : don't create background brushes
4504         for all the gdkClasses, especially not for the input_only case.
4505         Otherwise flickering wont be avoidable, because we don't get
4506         WM_ERASEBKGND message for these windows.
4507
4508         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4509         and fixed massive redraw problems apparently triggered by Alexanders 
4510         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4511         but it seems to work quite well :-)
4512
4513         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4514         prototype
4515
4516 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4517
4518         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4519         (gtk_list_store_set_cell): Fix a stupid typo.
4520
4521 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4522
4523         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4524         select_all not work if you're in SINGLE mode (it doesn't make that
4525         much sense, anyway.)
4526
4527         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4528         handle types more sanely.
4529         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4530         (_gtk_tree_data_list_node_copy): handle types more sanely.
4531
4532         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4533         GValue better. Converts the type as well.
4534
4535         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4536         GValue better. Converts the type as well.
4537
4538 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4539
4540         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4541         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4542         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4543         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4544
4545         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4546         gdk_im/gdk_ic.
4547
4548 2001-03-09  Hans Breuer  <hans@breuer.org>
4549
4550         * gdk/gdk.def : updated
4551
4552         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4553         for their palette
4554
4555         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4556         removing
4557
4558         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4559         removing and implemented Havoc's GdkWindow state functions; 
4560         stick/unstick only as no-op, cause I don't know how to emulate 
4561         on win32 ...
4562
4563         * gtk/gtk.def : updated
4564
4565         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4566
4567         * gtk/gtktypeutils.c : #include <string.h>
4568
4569         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4570
4571 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4572
4573         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4574         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4575         not a boxed.
4576
4577 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4578
4579         * docs/Changes-2.0.txt:
4580         Document expose event->region change and that gtk_widget_event
4581         doesn't allow passing expose events.
4582
4583         * gdk/gdkevents.h:
4584         Add region to expose event.
4585         
4586         * gdk/gdkevents.c:
4587         Handle event->region in gdk_event_copy() and gdk_event_free().
4588
4589         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4590         Generate expose_event->region when creating expose events.
4591
4592         * gdk/x11/gdkevents-x11.c:
4593         Generate expose events with regions when translating X events.
4594
4595         * gtk/gtkcontainer.[ch]:
4596         Default expose handler that propagates expose events to NO_WINDOW
4597         children. New function gtk_container_propagate_expose()
4598
4599         * gtk/gtkwidget.[ch]:
4600         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4601         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4602         expose events. New function gtk_widget_send_expose() to send expose
4603         events. New function gtk_widget_region_intersect() to calculate
4604         window/region intersections.
4605         
4606         * gtk/gtkmain.c (gtk_main_do_event):
4607         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4608         Use gtk_widget_send_expose() to send expose events.
4609         
4610         * gtk/gtkbin.c:
4611         * gtk/gtkbox.c:
4612         * gtk/gtkfixed.c:
4613         * gtk/gtkimagemenuitem.c:
4614         * gtk/gtklist.c:
4615         * gtk/gtkpacker.c:
4616         * gtk/gtktable.c:
4617         * gtk/gtktree.c:
4618         Remove expose handler, using the default container implementation
4619         instead.
4620         
4621         * gtk/gtkbutton.c:
4622         * gtk/gtkcheckbutton.c:
4623         * gtk/gtkeventbox.c:
4624         * gtk/gtkfixed.c:
4625         * gtk/gtkhandlebox.c:
4626         * gtk/gtklayout.c:
4627         * gtk/gtklistitem.c:
4628         * gtk/gtkmenu.c:
4629         * gtk/gtkmenubar.c:
4630         * gtk/gtkmenuitem.c:
4631         * gtk/gtknotebook.c:
4632         * gtk/gtkoptionmenu.c:
4633         * gtk/gtkpaned.c:
4634         * gtk/gtkscrolledwindow.c:
4635         * gtk/gtktogglebutton.c:
4636         * gtk/gtktoolbar.c:
4637         * gtk/gtktreeitem.c:
4638         * gtk/gtkviewport.c:
4639         Chain expose handler to parent class handler. Use
4640         gtk_container_propagate_expose() to propagate exposes.
4641
4642         * gtk/gtkclist.c (check_exposures):
4643         * gtk/gtktext.c (process_exposes):
4644         Use gtk_widget_send_expose instead of gtk_widget_event.
4645
4646 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4647
4648         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4649
4650 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4651
4652         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4653         unref the nodes.   Fixes bug #50058.
4654
4655         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4656         "::ref_iter" to "::ref_node".
4657         (gtk_tree_model_unref_node): change "::unref_iter" to
4658         "::unref_node". Fixes bug #50064.
4659
4660 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4661
4662         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4663         support for invisible cells.
4664          (gtk_tree_view_bin_expose): ditto
4665
4666 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4667
4668         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4669         on gobjects.
4670
4671         * tests/testtreefocus.c (main): New test file.
4672
4673         * tests/testtreeview.c: update to latest glib changes.
4674
4675         * tests/testtreecolumns.c: update to latest glib changes.
4676
4677 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4678
4679         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4680
4681 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4682
4683         * *.c: added accumulator data argument to g_signal_newc()
4684         functions.
4685
4686         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4687         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4688         * gtk/treestoretest.c (make_window):
4689         s/g_signal_connect/g_signal_connectc/.
4690
4691         * gtk/gtktextbuffer.c: completed signal arg fixups,
4692         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4693
4694 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4695
4696         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4697         G_CONST_RETURN.
4698
4699         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4700         ::hierarchy-changed signal when a widget changes
4701         from anchored to unanchored or vice versa.
4702         (anchored means 
4703          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4704         Use a private flag to keep track of this efficiently.
4705
4706 2001-03-07  Havoc Pennington  <hp@redhat.com>
4707
4708         * gtk/testgtk.c (create_spins): uglify so that size request gets
4709         tested.
4710
4711         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4712         request on values for upper/lower, completes #6152
4713
4714 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4715
4716         * Makefile.am: Remove gtk-config-2.0 again.
4717         (Grrrr, pkg-config. And stops make loops.)
4718
4719 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4720
4721         * gtk/gtksignal.[hc]: removed old emission hook API.
4722         
4723         * docs/Changes-2.0.txt: fixed sections.
4724         
4725         * gtk/gtktextbuffer.c: signal arg fixups.
4726
4727 2001-03-07  Havoc Pennington  <hp@redhat.com>
4728
4729         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4730
4731         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4732         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4733         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4734         validation and the redraw which is higher priority than the
4735         validation.
4736
4737 2001-03-07  Havoc Pennington  <hp@redhat.com>
4738
4739         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4740         (gtk_entry_set_property): remove trailer
4741
4742         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4743         (gtk_entry_get_width_chars): new functions, to set size request to 
4744         a given number of characters
4745
4746         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4747
4748         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4749         (gtk_dialog_get_has_separator): new function
4750         (run_delete_handler): fix to not emit "response" signal
4751         because we already did in the delete event handler installed
4752         at dialog creation time.
4753         
4754         * gtk/gtkdialog.h: add a has_separator property,
4755         add GTK_DIALOG_NO_SEPARATOR flag
4756
4757 2001-03-07  Havoc Pennington  <hp@redhat.com>
4758
4759         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4760         off decorations for a window.
4761
4762         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4763         changes
4764
4765         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4766         to get location of PangoLayout inside the label, closes #51198
4767
4768         * gtk/testgtk.c (create_bbox): fix up button box usage
4769
4770         * gtk/testcalendar.c (create_calendar): fix up button box usage
4771
4772         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4773
4774         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4775
4776         * gtk/gtkhbbox.h: deprecations
4777
4778         * gtk/gtkvbbox.h: deprecations
4779
4780         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4781         emulate deprecated gtk_button_box_get_spacing
4782
4783         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4784         the "set global default" functions
4785         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4786         GtkBox base class
4787
4788         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4789
4790         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4791         render the icon, return the missing image icon.
4792
4793         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4794         image icon if the load fails.   
4795
4796         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4797         when no image is found; should be the Netscape "missing image"
4798         icon eventually but for now is a random image
4799
4800         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4801         role for the session manager
4802
4803         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4804
4805         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4806         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4807
4808         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4809
4810 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4811
4812         * gtk/*.c: marshaller fixes.
4813         
4814         * gtk/gtkmarshal.list: extreme cleanup.
4815
4816         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4817         param spec for now.
4818
4819         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4820         where appliable.
4821
4822         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4823         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4824         which are not reference counted:
4825         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4826         PangoFontDescription, GtkTreeIter and GtkTreePath.
4827
4828 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4829
4830         * gtk/gtktreeselection.h: 
4831         * gtk/gtktreemodel.c:
4832         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4833         file should be included directly, and gobject/gmarshal.h
4834         as well as gtk/gtkmarshal.h even can't be included directly.
4835
4836         * Makefile.am: grr, install gtk-config-2.0.
4837
4838         * gtk/testgtk.c:
4839         * gtk/simple.c:
4840         * gtk/gtkmenu.c:
4841         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4842         passing "*signal*::*" args to gtk_widget_set().
4843         
4844         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4845         
4846         * gtk/*.c: removed trailer arg from property setters and getters.
4847         macro fixups.
4848
4849 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4850
4851         * gtk/gtklabel.c (set_markup): Removed warning
4852
4853 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4854
4855         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4856         field to allow you to hide cell renderers.
4857
4858         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4859
4860         * gtk/gtktreeview.c: Add support for invisible cells.
4861
4862 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4863
4864         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4865         Add "clicked" signal back to columns.
4866
4867         * ChangeLog: remove conflict markers.
4868
4869 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4870
4871         * gtk/gtkbutton.c: Add animation of activation by, on 
4872         activate, pressing the button, and adding a timeout that 
4873         releases the button after 250ms or on key release and
4874         emits ::clicked. (#51501)
4875
4876         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4877         action area, we connect to ::clicked instead of ::activate
4878         so the dialog stays up through the animation.
4879
4880 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4881
4882         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4883         check the ignore_enter flag for the menu shell that
4884         the item is actually a child of, not for attached
4885         submenus. (#51536)
4886
4887 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4888
4889         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4890         special key-press grab handling for widgets within
4891         GtkWindows. Otherwise, fall through to normal case.
4892
4893         This prevents key events being sent twice to GtkInvisible
4894         widgets, which can cause all sorts of mischief.
4895
4896 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4897
4898         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4899         widget is in effect, give the grab widget a first
4900         crack at KEY_PRESS/RELEASE events. (#424)
4901
4902 2001-03-06  James Henstridge  <james@daa.com.au>
4903
4904         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4905         offset for the window_state_event to point at window_state_event
4906         rather than no_expose_event.
4907
4908 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4909
4910         * gtk/gtkimmodule.h: fix busted /* comment */
4911
4912 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4913
4914         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4915         object properties.
4916
4917 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4918
4919         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4920         add object properties.
4921
4922         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4923         to add object properties.
4924
4925         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4926         object properties.
4927
4928         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4929         add object properties.
4930
4931         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4932         object properties.
4933
4934 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4935
4936         * gtk/gtktreemodel.c: renamed "child_toggled" to
4937         "has_child_toggled".
4938
4939         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4940         handle new signal name.
4941
4942         * gtk/gtktreestore.c: Updated to handle new signal name.
4943         * gtk/gtklisttore.c: Updated to handle new signal name.
4944         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4945
4946 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4947
4948         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4949         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4950
4951 2001-03-05  Michael Natterer  <mitch@gimp.org>
4952
4953         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4954         pixbuf-engine coincidentially also failed to make one of it's
4955         parent_class pointers static, causing overwriting of GtkLabel's
4956         parent_class pointer in pixbuf_style_class_init().
4957         (Will commit the fix to the pixbuf-engine too).
4958
4959 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4960
4961         * gdk/gdkwindow.h:
4962         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4963         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4964         gdk_window_set_icon_list for net wmspec functionality.
4965
4966         * gdk/x11/gdkwindow-x11.c:
4967         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4968         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4969         gdk_window_set_icon_list.
4970         Added gdk_wmspec_change_state helper function and used it in the code.
4971         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4972
4973         * gtk/gtkdialog.c (gtk_dialog_init):
4974         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4975
4976         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4977         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4978
4979         * gtk/gtkwindow.c:
4980         new function gtk_window_set_type_hint.
4981         On realize, set type hint and modal hint.
4982
4983         * gtk/gtkwindow.h:
4984         Added type_hint field and gtk_window_set_type_hint.
4985
4986 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4987
4988         * gtk/gtklabel.[ch]:
4989         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4990         New function gtk_label_get_accel_keyval () to get the underline accelerator
4991         of the label. Setting the label pattern overrides other attributes.
4992
4993 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
4994
4995         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
4996         Added missing initializers to gtk_rc_style_init().
4997
4998 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
4999
5000         * gtk/gtktextview.c: fixed bug #51097 about setting 
5001         gtk_text_view_set_border_window_size() if the widget is 
5002         already realized.
5003
5004 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
5005
5006         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
5007
5008         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
5009         comment. Won't do to have duplicated doc comments between
5010         the platform subdirs.
5011
5012 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
5013
5014         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
5015           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
5016
5017         Detectable auto-repeat - make a repeating key generate
5018         press/press/press/release instead of press/release pairs.
5019
5020         If we have Xkb and XkbSetDectableAutoRepeat supports
5021         that, we do it that way. Otherwise, when we get
5022         a release event, we check ahead with XPending to see
5023         if the next key is a KeyPress with the same keycode
5024         and timestamp. (Not 100% reliable, but pretty close.)
5025           
5026 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5027         
5028         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5029         special key-press grab handling for widgets within
5030         GtkWindows. Otherwise, fall through to normal case.
5031  
5032         This prevents key events being sent twice to GtkInvisible
5033         widgets, which can cause all sorts of mischief.
5034  
5035 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5036  
5037         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5038         widget is in effect, give the grab widget a first
5039         crack at KEY_PRESS/RELEASE events. (#424)
5040  
5041 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
5042
5043         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
5044         to extend the selection. (Roughly based on patch
5045         from Jay Cox, #50939)
5046
5047         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
5048         to properly handle previous GDK_BUTTON_PRESS. 
5049         (Patch from Jay Cox, #50938)
5050
5051         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
5052         '\0' back along with the deleted text. (#51148)
5053
5054 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
5055
5056         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
5057         the group when extracting it from the X keyboard event.
5058
5059         * modules/input/Makefile.am modules/input/imipa.c: 
5060         Simple module for entering IPA. (Do we need a 
5061         gtk-stupid-input-tricks CVS module?)
5062
5063 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
5064
5065         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
5066         const.
5067
5068         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
5069
5070         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
5071         is no focus widget for the dialog currently, grab the focus as well
5072         as the default.
5073
5074         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
5075         the action area's children to iterate through, not the
5076         dialog's children.
5077
5078 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
5079
5080         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
5081         Add plug-socket tests. (Won't work worth a darn until I commit
5082         the rest of the plug-socket changes, but no reason these
5083         can't go into CVS now.)
5084
5085 2001-03-02  Havoc Pennington  <hp@redhat.com>
5086
5087         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
5088         _gdk_region_get_xrectangles()
5089
5090         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
5091
5092         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
5093
5094         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
5095         function, contributed by Ron Steinke    
5096
5097         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
5098         gdk_net_wm_supports
5099
5100         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
5101         New function, contributed by Ron Steinke
5102
5103         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
5104         used to line up the text in the entry when using the entry for
5105         editable sheet cell hacks
5106
5107         * gtk/testgtk.c (create_entry): test the activate_default setting
5108         on GtkEntry
5109
5110         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
5111         cause the entry to activate the default button for a dialog when 
5112         activated
5113         (gtk_entry_get_activates_default): new function
5114
5115 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
5116
5117         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
5118         Hwang to move call to sync_selection() up a few lines
5119         to before the row list is modified, to fix crash when
5120         removing rows in the undo_selection list.
5121
5122         (Test case provided by Daniel Elstner:
5123
5124         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
5125
5126 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
5127
5128         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
5129         of tree->root_tree in parent_set rather than _map(), 
5130         fixing #50892 in a bit better manner.
5131
5132 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
5133
5134         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
5135
5136 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
5137
5138         * gtk/gtkstyle.c : Remove duplicate fwd decl for
5139         gtk_default_draw_shadow.
5140
5141 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
5142
5143         * gdk/gdkimage.c (gdk_image_new): Remove excess 
5144         warning, make warnings more verbose, treat a error
5145         in shmat as permanent, and don't try again.
5146         (#51163, Ed Randall.)
5147
5148 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
5149
5150         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
5151         delay for the first click before starting to scroll.
5152         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
5153
5154         * gtk/gtktext.c: GtkText should have I-beam cursor. 
5155         (based on gtk-enf-990513-1.patch, Eric Fisher.)
5156
5157 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
5158
5159         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
5160         cleanup to remove some references to unused
5161         ->xoffset, ->yoffset.
5162
5163 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
5164
5165         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
5166         mask. (#51039, fix from Martin Maierhofer)
5167
5168 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
5169
5170         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
5171         for unshifted + and shifted = for non-us keyboards.
5172         Make <Control>+ and <Control>- work as well as 
5173         <Control>KP_Plus, <Control>KP_Minus for recursive
5174         open/close.  (#2682, René Seindal)
5175
5176 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
5177
5178         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
5179         the active menu item before deactivating the menu,
5180         so gtk_menu_popdown doesn't change the history. (#50964)
5181         
5182 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
5183
5184         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
5185         draw lines with text_gc rather than black_gc.
5186         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
5187
5188 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
5189
5190         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5191         Move handling of buttons fully in gtktreeviewcolumn.  This code is
5192         less interrelated then it was, but it still requires the
5193         GtkTreeView to map it.
5194
5195         * test/testtreecolumn.c: Now I can add a column to one view,
5196         remove it, add it to the another view, remove it, then re-add it
5197         to the first.  Nifty.
5198
5199 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
5200
5201         * docs/tutorial/gtk-tut.sgml: Minor corrections
5202
5203 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
5204
5205         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
5206         GtkRowReference.
5207
5208 2001-02-28  Havoc Pennington  <hp@redhat.com>
5209
5210         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
5211         draw_default
5212         (gtk_widget_draw_focus): remove this function; we could instead
5213         make it just gtk_widget_draw(), but in most cases I think the
5214         result would be broken user code, so think it's better to have
5215         that code not compile and get fixed
5216         (gtk_widget_draw_default): ditto
5217
5218         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
5219         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
5220         
5221         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
5222         widgets lose/get the default, instead of calling draw_default
5223         
5224         * docs/Changes-2.0.txt: note about all this
5225
5226         Then fixed every widget in GTK, I won't list all the filenames.
5227
5228 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
5229
5230         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
5231         _gtk_tree_row_reference_deleted.
5232         (inserted_callback): Proxy out to
5233         _gtk_tree_row_reference_inserted.
5234         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
5235         get around signal emission ordering problem.
5236
5237         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5238         fix to work with SINGLE 
5239         (_gtk_tree_selection_internal_select_node): Major sanitization on
5240         selections.  SINGLE now seems to work.
5241
5242         * tests/Makefile.am: add testtreecolumn.c:
5243
5244         * tests/testtreecolumn.c: New test.  Mostly points out selection
5245         bugs currently, but will test columns later.
5246
5247         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
5248         selection bug.  I hate touching this code -- it's scary.
5249
5250 2001-02-26  Havoc Pennington  <hp@redhat.com>
5251
5252         * gtk/testgtk.c: test the window state stuff
5253
5254         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
5255         window come to the user's attention as if it were just created
5256         (gtk_window_iconify): new function
5257         (gtk_window_deiconify): new function
5258         (gtk_window_stick): new function
5259         (gtk_window_unstick): new function
5260         (gtk_window_maximize): new function
5261         (gtk_window_unmaximize): new function
5262
5263         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
5264
5265         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
5266
5267         * gdk/x11/gdkevents-x11.c: create window state events when
5268         appropriate
5269         (gdk_wmspec_supported): new function
5270
5271         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
5272         iconification before showing the window
5273         (gdk_window_deiconify): new function
5274         (gdk_window_stick): new function
5275         (gdk_window_unstick): new function
5276         (gdk_window_maximize): new function
5277         (gdk_window_unmaximize): new function
5278
5279         * gdk/gdkwindow.c: store the window state in the window; 
5280         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
5281         window->mapped.
5282         (gdk_window_get_state): return the current window state
5283
5284         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
5285         (gdk_event_get_state): handle GDK_WINDOW_STATE
5286         (gdk_synthesize_window_state): function to create the window state
5287         events
5288
5289         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
5290         event, for changes to "window state" such as maximized, sticky, 
5291         etc.
5292         
5293         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
5294         focuses a window
5295
5296         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
5297         finds out if we support a given WM spec hint
5298
5299 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
5300
5301         * docs/faq/gtk-faq.sgml: New question re memory leaks.
5302
5303 2001-02-25  Hans Breuer  <hans@breuer.org>
5304
5305         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
5306         cause we want to loose those prototypes only in the latter case
5307
5308         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
5309         GdkPixmapImplWin32 because it itsn't derived from it. Use the
5310         impl member variable instead
5311
5312         * gtk/gtk.def : updated
5313
5314         * gtk/gtklist.c : 
5315         * gtk/gtkmenus.c : include <string.h> for memset ()
5316
5317         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
5318         for everthing built here, but for gtk-x.x.dll only. This solves
5319         problem of indifferent gtk type definitions
5320
5321 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
5322
5323         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
5324
5325 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
5326
5327         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
5328         column that is exposed.
5329
5330         (_gtk_tree_view_update_size): Changed name from set_size, and
5331         changed function to do more work, and not force people calling it
5332         to figure out the size.  Simplifies a lot of code elsewhere.
5333
5334 2001-02-23  Alexander Larsson  <alexl@redhat.com>
5335
5336         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
5337         return solid masks for xpms that have no transparent color.
5338         This makes the ..._create_from_xpm... API backwards
5339         compatible.
5340
5341 2001-02-23  Tor Lillqvist  <tml@iki.fi>
5342
5343         * README.win32: Update. Mention the gtk-1-3-win32-production
5344         branch.
5345
5346         * gdk/win32/bdfcursor.c: New file. A program that generates
5347         xcursors.h. Thanks to Stefan Ondrejicka.
5348
5349         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
5350         compact format.
5351
5352         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
5353
5354         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
5355         function, uses xcursors.h.
5356         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
5357         cursor from inline data instead of using LoadCursor() to generate
5358         it from a resource.
5359
5360         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
5361         event, must check the Windows message for mouse button state, as
5362         the GDK event state might not have been built if it is
5363         undelivered. Remove one goto.
5364
5365         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
5366         SetCursor() if the current cursor as returned by GetCursor() is
5367         the window's previous cursor. The ChildWindowFromPoint() test
5368         apparently didn't work correctly.
5369
5370         * gdk/win32/rc/*.cur: Remove.
5371
5372         * gdk/win32/rc/gdk.rc.in: Remove cursors.
5373
5374         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
5375
5376         * gtk/makefile.{mingw,msc}.in: Updates.
5377
5378 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
5379
5380         * gtk/gtktreemodel.h: add functions for signal emission.
5381
5382         * gtk/gtktreestore.c: move to use above functions instead of
5383         g_signal_emit.
5384
5385         * gtk/gtkliststore.c: ditto
5386
5387 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
5388
5389         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
5390         GObject instead of GtkObject.
5391
5392         * gtk/gtkliststore.c: ditto.
5393
5394         * gtk/gtktreemodelsort.c: ditto.
5395
5396         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
5397         GtkTreeModelIface, instead of in each model.
5398
5399 2001-02-21  Havoc Pennington  <hp@redhat.com>
5400
5401         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
5402         unbreak this function
5403
5404         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
5405         properties
5406
5407         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
5408         properties
5409
5410         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
5411         properties
5412
5413         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
5414         mean unset the max length
5415
5416 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
5417
5418         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
5419         Changed name to be set_cell_data_func to make it clear what
5420         the functino does.  Close bug #51069.
5421
5422 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
5423
5424         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5425         have memory actually freed.  Keeps box running longer.
5426
5427 2001-02-21  Alexander Larsson  <alexl@redhat.com>
5428         
5429         * gtk/gtkseparatormenuitem.[ch]:
5430         Added new menu separator item. The drawing and size handling
5431         is still done in GtkMenuItem, but the API is a bit more sane.
5432         
5433         * gtk/Makefile.am:
5434         Add gtkseparatormenuitem.[ch].
5435
5436         * gtk/gtk.h:
5437         Add gtkseparatormenuitem.h.
5438         
5439         * gtk/gtkentry.c:
5440         * gtk/gtkmenufactory.c:
5441         * gtk/gtktextview.c:
5442         Use the new API for menu separators.
5443         
5444         * demos/gtk-demo/menus.c (create_menu):
5445         Add some GtkSeparatorMenuItem demo code.
5446
5447 2001-02-20  Havoc Pennington  <hp@redhat.com>
5448
5449         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
5450         Lee Mallabone
5451
5452         * gtk/gtkarrow.c: Convert to new property API, patch from 
5453         Lee Mallabone
5454
5455 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
5456
5457         * tests/testtreeview.c (toggled_callback): fix to reflect change
5458         in GtkTreeModelStore.
5459
5460 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
5461
5462         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
5463         function to create an icon set from a pixbuf.
5464
5465 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5466
5467         * gtk/gtkcellrenderertext.[ch]:
5468         Add a "markup" property.
5469
5470         * gtk/treestoretest.c:
5471         Use the markup property, remove some leftover stuff from
5472         GtkTreeModelMapping.
5473
5474 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5475
5476         * gtk/gtklabel.c (gtk_label_set_selectable):
5477         Queue a redraw if the selectable setting was changed.
5478
5479 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5480
5481         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5482         Actually copy the whole gc, not just the public parts.
5483         
5484         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5485         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
5486         labels.
5487
5488 2001-02-19  Havoc Pennington  <hp@pobox.com>
5489
5490         * gdk/gdkwindow.c: docs
5491
5492         * gdk/gdkrgb.c: docs
5493
5494         * gdk/gdkregion-generic.c: docs
5495
5496         * gdk/gdkgc.c (gdk_gc_set_values): docs
5497
5498         * gdk/gdkdraw.c: docs
5499
5500         * gdk/gdkdrawable.h: deprecate drawable get/set data
5501
5502 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
5503
5504         * demos/gtk-demo/dialog.c: Add simple new demo.
5505
5506 2001-02-19  Havoc Pennington  <hp@redhat.com>
5507
5508         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5509         insert_child_anchor signal, bug #50245
5510
5511         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5512         from create_child_anchor, so the anchor is passed in
5513
5514         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5515         (_gtk_widget_segment_new): have the child anchor object passed in, 
5516         instead of creating it.
5517
5518         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5519         to gtk_text_buffer_get_modified
5520
5521 2001-02-19  Havoc Pennington  <hp@redhat.com>
5522
5523         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5524         changed GLib without fixing GTK
5525
5526         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5527         functions to have an underscore in front. Most of them should 
5528         probably just go away, but for starters don't export them.
5529         Bug #50482
5530
5531 2001-02-19  Havoc Pennington  <hp@redhat.com>
5532
5533         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5534         excluded by default
5535
5536         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5537         clean up the old code a bit
5538
5539         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5540         inconsistent state
5541
5542         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5543         draw inconsistent state
5544
5545         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5546         (create_menu): add inconsistent test
5547
5548         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5549         new function
5550         (gtk_check_menu_item_get_inconsistent): new function
5551         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5552         state (using etched in for now)
5553
5554         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5555         draw inconsistent state
5556
5557         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5558         function, used when the user has selected a range of stuff in
5559         different states
5560         (gtk_toggle_button_get_inconsistent): accessor for that
5561         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5562         don't know what else to do)
5563
5564 2001-02-19  Hans Breuer <hans@breuer.org>
5565
5566         * gtk/gtk.def : updated exported symbols
5567
5568         * gtk/makefile.msc.in : updated
5569
5570         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5571         a colormap, when invoked from testgtk::entry. I'm not sure where
5572         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5573         avoids immediate crashing ...
5574
5575         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5576         any objections ?
5577
5578         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5579         0 parameter. At least msvc doesn't like macros with var args. 
5580         I simply removed the extra 0, was it a feature or a typo ?
5581
5582         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5583         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5584         because the value assignment to the internal struct wasn't working.
5585         I'm not absolutely sure. The problem could have been resolved by
5586         changing the "func" declartion in the struct, but was the pointer
5587         to the function pointer intended ?
5588
5589         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5590
5591         * gdk/gdk.def : updated exported symbols
5592
5593         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5594         only use SetDIBitsToDevice if there is a palette at the drawable
5595         and the image is GDK_VISUAL_PSEUDO_COLOR
5596
5597         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5598
5599         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5600
5601         * gdk/*/makefile.msc : updated
5602
5603 2001-02-19  Havoc Pennington  <hp@redhat.com>
5604
5605         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5606         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5607
5608         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5609         (gdk_key_repeat_restore): nuke
5610
5611         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5612         (gdk_init_check): no atexit func
5613
5614         * gdk/gdkrgb.h: mark some stuff deprecated
5615
5616         * gdk/gdkcolor.h: mark some stuff deprecated
5617         
5618         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5619
5620         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5621
5622 2001-02-16  Havoc Pennington  <hp@redhat.com>
5623
5624         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5625         scroll steps.
5626
5627         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5628         steps, and add Ctrl-arrow shortcuts for paging visually as with
5629         HScale, since Page Up and Page Down move logically.
5630
5631         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5632         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5633         
5634         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5635         steps
5636         (gtk_range_scroll): handle the visual steps
5637
5638         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5639         scroll steps
5640
5641         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5642         steps, not the logical ones.
5643
5644         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5645         (scroll_vertical): handle up/down steps
5646
5647 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5648
5649         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5650         Copy data and free data with free().
5651
5652         * gdk-pixbuf/gdk-pixbuf.c:
5653         * gdk-pixbuf/io-jpeg.c:
5654         * gdk-pixbuf/io-png.c:
5655         Use g_try_malloc/g_free instead malloc/free.
5656         
5657         * gdk-pixbuf/test-gdk-pixbuf.c:
5658         Must... initialize... gobject...
5659         
5660         * gdk-pixbuf/pixops/timescale.c:
5661         * gtk/gtkcalendar.c:
5662         Use g_malloc instead of malloc.
5663         
5664 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5665
5666         * gtk/testgtkrc:
5667         Comment out property assignments, these don't work yet.
5668
5669 2001-02-17  Havoc Pennington  <hp@pobox.com>
5670
5671         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5672         bit.
5673
5674 2001-02-17  Havoc Pennington  <hp@pobox.com>
5675
5676         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5677         shadowed variables that had broken size request in some cases,
5678         leading to bogus tooltips (#50996)
5679
5680 2001-02-06  Jon K Hellan  <hellan@acm.org>
5681
5682         Implement fast browsing of tooltips, bug #50619
5683         
5684         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5685         and last_popdown
5686         
5687         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5688         use_sticky_delay and last_popdown.
5689         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5690         time of popdown.
5691         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5692         is NULL.
5693         (gtk_tooltips_recently_shown): New static function.  Return true
5694         if < sticky_delay has elapsed since last popdown.
5695         (gtk_tooltips_event_handler): Display window after sticky_delay
5696         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5697         since last popdown.
5698         
5699 2001-02-17  Havoc Pennington  <hp@pobox.com>
5700
5701         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5702         instead of (). #6394
5703
5704         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5705         G_CONST_RETURN, make it return by reference, #50473
5706         
5707 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5708
5709         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5710         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5711         setup fields contain garbage (e.g. subwindow, breaking
5712         gdk_drawable_ref() upon event copy).
5713         (gtk_menu_stop_navigating_submenu_cb): same here.
5714
5715         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5716         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5717         * gtk/gtkclist.c (vertical_timeout): 
5718         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5719         default-zero-intialization for unions to memset(,0,), as unions are
5720         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5721         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5722
5723         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5724         g_closure_sink() warning.
5725
5726         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5727         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5728         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5729         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5730         
5731 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5732
5733         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5734         gtk_*_store_get, and moved to GtkTreeModel.
5735
5736         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5737
5738         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5739
5740         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5741
5742         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5743         set the func.
5744
5745         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5746         freeze/thaw notify between setting all the properties for a cell.
5747
5748         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5749
5750 2001-02-15  Havoc Pennington  <hp@redhat.com>
5751
5752         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5753         the X coordinates so they're with respect to the line, rather than 
5754         with respect to the layout.
5755
5756         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5757         Mallabone
5758
5759         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5760         and inverted test
5761
5762         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5763         #50806
5764
5765         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5766
5767         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5768         gtk_text_iter_is_end
5769
5770         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5771         rename gtk_text_buffer_get_end_iter
5772
5773         * gtk/testgtk.c (create_labels): Add test for selectable
5774
5775         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5776         the selection stuff. This code is kind of broken since it doesn't 
5777         use the theme engine.
5778
5779         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5780         fix infinite loop and y offset problem
5781         (gdk_draw_layout_line_with_colors): fix foreground color handling
5782
5783         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5784         that makes the label selectable.
5785         
5786         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5787         layout when the style is set, since fonts etc. could have changed.      
5788
5789 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5790
5791         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5792
5793         * gtk/gtktreemodelsimple.[ch]: removed.
5794
5795 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5796
5797         * gtk/gtktreemodelmapping.[ch]:
5798         New files. Implement GtkTreeModelMapping.
5799         
5800         * gtk/Makefile.am:
5801         Add gtktreemodelmapping.[ch].
5802         
5803         * gtk/gtk.h:
5804         Add gtktreemodelmapping.h
5805
5806         * gtk/treestoretest.c:
5807         Test the GtkTreeModelMapping
5808
5809 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5810
5811         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5812         have a demo, we might as well pass in real values.  Thanks to
5813         clahey for pointing this out.
5814
5815 2001-02-14  Havoc Pennington  <hp@pobox.com>
5816
5817         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5818         "static" to a private function
5819         (gtk_image_menu_item_class_init): remove destroy handler,
5820         add "image" object property
5821
5822 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5823
5824         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5825         Add a shortcut if the window and the current clip_region doesn't
5826         overlap. This is needed when there are a lot of windows in a
5827         window. The layout test in testgtk is a good test.
5828
5829         * gdk/linux-fb/gdkwindow-fb.c:
5830         Whitespace fix.
5831
5832 2001-02-13  Sven Neumann  <sven@convergence.de>
5833
5834         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5835
5836 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5837
5838         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5839         Don't reference last_cursor if it is null. Fixes crash when rotating
5840         the screen before having moved the mouse.
5841
5842         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5843
5844         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5845
5846         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5847         when using 90 or 270 degrees rotation.
5848
5849 2001-02-12  Havoc Pennington  <hp@pobox.com>
5850
5851         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5852         it always set the foreground, even if we were only using
5853         a stipple.
5854         (gdk_draw_layout_line_with_colors): new function, allow
5855         override colors
5856         (gdk_draw_layout_with_colors): new function, allow override
5857         colors
5858         (gdk_pango_layout_line_get_clip_region): function to get the clip
5859         region for a logical text range
5860         (gdk_pango_layout_get_clip_region): get the clip region for a
5861         logical text range
5862
5863         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5864         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5865         the right number of arguments.
5866
5867         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5868         enhance the function to check that node data corresponds to a 
5869         view still belonging to the tree.
5870
5871         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5872         GtkTreePath
5873         (gtk_tree_view_inserted): ditto
5874         (gtk_tree_view_child_toggled): ditto
5875
5876         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5877         simplify this code.
5878
5879         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5880         a PangoAttrList
5881
5882         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5883
5884         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5885
5886         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5887         size in the size request 
5888         (gtk_menu_bar_size_allocate): consider toggle size here
5889
5890         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5891         that displays a widget in the toggle slot
5892
5893         * gtk/testgtk.c: test GtkImageMenuItem
5894
5895         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5896         
5897         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5898         request and allocation
5899
5900         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5901
5902         * gtk/gtkcheckmenuitem.c
5903         (gtk_check_menu_item_toggle_size_request): ditto
5904         
5905 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5906
5907         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5908         reference.
5909
5910         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5911         and refuse to initialize GTK+ if they fail.
5912
5913 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5914
5915         * configure.in: Add check for gtk-doc version.
5916
5917 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5918
5919         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5920         where the xpad/ypad was only being used on one side!
5921
5922 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5923
5924         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5925         function, copied from X11 version.
5926
5927         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5928         DestroyCursor failures. The reason for the problem (despite the
5929         inconsistent messages from GetLastError()) was that
5930         DestroyCursor() cannot be called while a cursor is set in a
5931         window. Set the new cursor first and then destroy the old one.
5932         Thanks to jpe@archaeopteryx.com.
5933
5934         * gdk/win32/gdkcc-win32.c: Remove.
5935
5936         * gdk/win32/Makefile.am: Remove from here, too.
5937         
5938         * gdk/gdk.def
5939         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5940
5941         * gtk/gtk.def
5942         * gtk/makefile.mingw.in: Updates.
5943
5944 2001-02-08  Havoc Pennington  <hp@redhat.com>
5945
5946         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5947         add a widget to a bin that already has a child.
5948
5949         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5950
5951         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5952         
5953         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5954
5955         * gdk/gdk.h: remove gdkcc.h
5956
5957         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5958
5959         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5960         GdkPixbuf, since the previous implementation was GdkColorContext
5961         dependent.
5962
5963         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5964         
5965 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5966
5967         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5968         a sane value!
5969
5970 2001-02-08  Havoc Pennington  <hp@redhat.com>
5971
5972         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5973         lighten them.
5974
5975 2001-02-08  Havoc Pennington  <hp@redhat.com>
5976
5977         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5978         validation idle
5979
5980         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5981         cell renderer
5982
5983         * demos/pixbuf-demo.c (timeout): remove deprecated
5984         gtk_widget_draw
5985
5986         * demos/testpixbuf-save.c (main): remove deprecated
5987         gtk_drawing_area_size
5988
5989         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5990         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5991         at the start of the allocation.
5992         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
5993         unsetup or NULL model.
5994
5995         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
5996         even/odd/sorted cells in the tree view.
5997
5998         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5999         bugfixes
6000
6001         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
6002         backgrounds with draw_flat_box using different detail for even/odd
6003         rows.
6004
6005         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
6006         row, so we can draw the alternating colors thing
6007
6008         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
6009         property from a synonym property, notify for the synonym.
6010         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
6011         (gtk_text_tag_get_property): Always return the font, even if
6012         all its fields aren't set
6013
6014         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
6015         store the attr list; it leaves us with no way to change attributes
6016         in _render according to the render flags, and no way to implement
6017         get_property. Instead store all the specific text attributes. 
6018         Separate whether an attribute is enabled from its value. Sync all
6019         properties with GtkTextTag, make them all consistent, etc.
6020
6021         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
6022         renderers can highlight the sort row/column     
6023
6024         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
6025         accessor functions to get values; this has the side effect of
6026         showing up which accessor functions were missing. Added those.
6027
6028         * gtk/gtktreeviewcolumn.h: Replace set_justification with
6029         set_alignment, to be consistent with GtkLabel, GtkMisc
6030
6031         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
6032         arrow.
6033
6034         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
6035
6036         * gtk/gtktreesortable.h: updates in here
6037
6038 2001-02-07  Sven Neumann  <sven@convergence.de>
6039
6040         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
6041         pango dimensions after painting the background. We used to draw
6042         gigantic flat boxes here.
6043
6044 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
6045
6046         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
6047         error introduced with earlier commit) (pointed out by
6048         Ollie Lho)
6049
6050 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
6051
6052         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
6053         which are no longer necessary.
6054
6055 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
6056
6057         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
6058
6059 2001-02-04  Tor Lillqvist  <tml@iki.fi>
6060
6061         * gdk/gdk.def
6062         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
6063         Provide dummy implementations.
6064
6065 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
6066
6067         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
6068
6069         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
6070         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
6071         deprecated this function.
6072
6073         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
6074         argument.
6075
6076 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
6077
6078         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
6079
6080 2001-02-03  Havoc Pennington  <hp@pobox.com>
6081
6082         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
6083         Mikael Hermansson with patch from Mikael (if there was a toggle
6084         start one after the first character in the range, this function
6085         was broken). Bug #50380
6086
6087 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
6088
6089         * configure.in: Remove confusing comment about X11.
6090
6091 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
6092
6093         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
6094         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
6095         
6096 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
6097
6098         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
6099         it breaks things on BSD. If you want to compile GTK+ with
6100         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
6101         when configuring, since GTK+ simply can't be "pure ANSI" 
6102         in the header files it uses. (#8170, Greg Hudson)
6103
6104 2001-02-02  Havoc Pennington  <hp@redhat.com>
6105
6106         * gtk/gtkwindow.c: docs
6107
6108         * gtk/gtkwidget.c: docs
6109         (gtk_widget_set_colormap): add a reference to the colormap
6110         (gtk_widget_get_default_colormap): add a reference to the colormap
6111
6112         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
6113
6114         * gtk/gtktextiter.c: docs
6115
6116         * gtk/gtkmain.c (gtk_propagate_event): docs
6117
6118         * gtk/gtkpaned.c (gtk_paned_get_position): docs
6119         (gtk_paned_set_position): docs
6120
6121         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
6122         sort interface, no implementation yet.
6123
6124         * demos/testpixbuf.c (new_testrgb_window): replace
6125         gtk_drawing_area_size() with gtk_widget_set_usize()
6126
6127         * demos/testpixbuf-drawable.c (main): ditto
6128         
6129         * gtk/testgtk.c: remove use of GtkStatusbarMsg
6130
6131         * gtk/gtktextbuffer.c: docs
6132
6133         * gtk/gtkstock.c: docs
6134
6135         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
6136
6137         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
6138
6139         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
6140         
6141         * gtk/gtkimage.c: add some docs in here
6142         (gtk_image_size_request): change name of
6143         gtk_widget_render_stock_icon
6144         (gtk_image_get_icon_set): don't dup returned string
6145         (gtk_image_get_icon_set): don't dup returned string
6146
6147         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
6148         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
6149         and gtkiconfactory.h functions
6150
6151         * gtk/gtkiconfactory.c: add some docs in here
6152
6153         * gtk/gtkmain.c (gtk_get_default_language): document
6154         (gtk_get_current_event): document
6155         (gtk_get_current_event_state): document
6156         (gtk_get_event_widget): document
6157
6158         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
6159
6160         * gtk/gtkcontainer.c: Add some documentation
6161         (gtk_container_add): give a more explanatory warning on adding an
6162         already-parented widget, this is kind of a FAQ and also a common
6163         typo that's easier to debug with a nice warning 
6164
6165         * gtk/gtkcellrenderertoggle.c
6166         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
6167         adding this, it's useless
6168         (gtk_cell_renderer_toggle_set_active): remove
6169         (gtk_cell_renderer_toggle_get_radio): add
6170
6171         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
6172         the NULL cell renderer, that doesn't make any sense to me. 
6173
6174         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
6175         demo code should never use deprecated features.
6176
6177         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
6178         code should never use deprecated features.
6179
6180         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
6181         gtk_widget_queue_clear_area deprecated
6182
6183         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
6184         deprecated
6185
6186         * gtk/gtklabel.h: mark gtk_label_get() deprecated
6187
6188         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
6189         a GdkImage deprecated, replaced by new consistently-named
6190         functions       
6191
6192         * gtk/gtkmain.h: Mark gtk_exit() deprecated
6193
6194         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
6195
6196         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
6197         deprecated
6198
6199         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
6200         so it won't appear in docs and confuse people.
6201
6202         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
6203
6204         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
6205         macros deprecated. (can't mark the type itself deprecated, since
6206         GtkProgressBar is not deprecated and we need the type decl to use
6207         GtkProgressBar)
6208
6209         * gtk/gtkpixmap.h: Mark deprecated
6210
6211         * gtk/gtkoldeditable.h: Mark deprecated
6212
6213         * gtk/gtklist.h: Mark deprecated
6214
6215         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
6216         for anything anymore.
6217
6218         * gtk/gtkctree.h: Mark deprecated
6219
6220         * gtk/gtkclist.h: Mark deprecated
6221
6222         * gtk/gtkpreview.h: Mark deprecated
6223
6224         * gtk/gtkpacker.h: Mark deprecated
6225
6226         * gtk/gtktipsquery.h: Mark deprecated
6227
6228         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
6229
6230         * gtk/gtkvruler.h: Add comment that it will move out of GTK
6231
6232         * gtk/gtkhruler.h: Add comment that it will move out of GTK
6233
6234         * gtk/gtkruler.h: Add comment that it will move out of GTK
6235
6236         * gtk/gtkgamma.h: Add comment that it will move out of GTK
6237
6238         * gtk/gtkcurve.h: Add comment that it will move out of GTK
6239
6240 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
6241
6242         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
6243         gdk_colormap_sync private since it was never exported
6244         in a header file.
6245
6246         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
6247         colormap->colors[] for StaticGray, StaticColor colormaps.
6248
6249         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
6250         was being used as if it was image->bits_per_pixel.
6251
6252         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
6253         for the image in the GdkImage structure since it isn't
6254         reconstructable, and we need it to handle packed types
6255
6256         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
6257         the assumption that on Win32 image->bits_per_pixel == image->depth,
6258         always.
6259
6260         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
6261
6262         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
6263         warning message if no converter can be found. 
6264
6265 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
6266
6267         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
6268         chars to isupper() / tolower(). (#567)
6269
6270         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
6271         to clear up 64-bit warnings. (#567)
6272
6273 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
6274
6275         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
6276         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
6277
6278         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
6279         since some people set $(libdir) separately. (#1290, David Kaelbling)
6280
6281 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
6282
6283         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
6284         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
6285         MAXPATHLEN, but the code here depends on a fixed value.)
6286         (#4524)
6287
6288 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
6289
6290         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
6291         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
6292
6293 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
6294
6295         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
6296         viewable there is no way that moving the node will cause the 
6297         focus row to become not viewable, so omit check on the visibility
6298         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
6299
6300 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
6301
6302         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
6303         selection before inserting new text.
6304
6305 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
6306
6307         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
6308         Make the sensitivity of the reparented child track that of
6309         the original parent menu item. (#34218, David Hodson)
6310
6311         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
6312         the case where the current item is destroyed properly.
6313
6314         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
6315         some edge cases with child-less menuitems.
6316         
6317 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
6318
6319         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
6320         key pop down window. (#12074, Jon K Hellan)
6321
6322 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
6323
6324         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
6325         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
6326         The solution here isn't perfect - you get an extraneous
6327         emission of "toggle", which could conceivably confuse an app,
6328         but better than the current situation. LXR search seems to
6329         indicate that no apps in GNOME CVS connect to "toggle".
6330
6331 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
6332
6333         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
6334         gtk_public_h_sources to directly here to avoid warning when
6335         building srcdir != builddir. (#9656)
6336
6337 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
6338
6339         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
6340         handlers in gtkrange.c return the proper values (TRUE == handled)
6341         (#10316).
6342
6343         This is just the tip of the iceberg, but gtkrange.c is the
6344         most common place where the propagation is problematical,
6345         and also a place where it is almost certainly safe to change
6346         this in the stable branch.
6347
6348         (You don't want right click popups on a range control or anything...)
6349
6350 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
6351
6352         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
6353         area on focus out, even if a background pixmap isn't set.
6354         (#13941)
6355         
6356 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
6357
6358         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
6359         to deal with setting the shape properly when scrolling arrows are
6360         turned on, but not visible because there is sufficient space.
6361         (#13432)
6362
6363 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
6364
6365         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
6366         items with submenus, destroy the item along with the submenu.
6367         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
6368         properly.
6369
6370         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
6371         later.
6372
6373 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
6374
6375         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
6376         the focus widget sometimes wasn't drawn with the default if there
6377         was no default widget.
6378
6379         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
6380         unreference pixmaps. 
6381
6382         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
6383         for some extra safety.
6384
6385 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
6386
6387         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
6388         the text of a cell to the old pointer value better, by
6389         copying the new text before freeing the old text. Some code
6390         cleanup. (#8079, Karl Nelson)
6391
6392 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
6393
6394         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
6395         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
6396
6397 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
6398
6399         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
6400         item from a menu, check to see if it matches 
6401         menu->old_active_menu_item, and if so, unref and clear
6402         old_active_menu_item (Patch from Pavel Cisler)
6403
6404         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
6405         menu_shell->active_menu_item, if it is the child being
6406         removed. (Patch based on that of Gene Ragan, #50337)
6407
6408 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
6409
6410         * gdk/linux-fb/gdkselection-fb.c: 
6411         * gdk/linux-fb/gdkcolor-fb.c: 
6412         * gdk/linux-fb/gdkdrawable-fb2.c: 
6413         * gdk/linux-fb/gdkfont-fb.c: 
6414         * gdk/linux-fb/gdkim-fb.c: 
6415         * gdk/linux-fb/gdkinput.c: 
6416         * gdk/linux-fb/gdkkeyboard-fb.c: 
6417         * gdk/linux-fb/gdkmain-fb.c: 
6418         * gdk/linux-fb/gdkrender-fb.c: 
6419         A bunch of whitespace cleanup.
6420         
6421 2001-01-30  Havoc Pennington  <hp@pobox.com>
6422
6423         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6424         #ifdef GTK_ENABLE_BROKEN.
6425
6426         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
6427         GTK_ENABLE_BROKEN just before including the broken headers.
6428         
6429         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
6430         deprecated types registered.
6431
6432         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
6433         we have to test the broken stuff.
6434
6435         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
6436         
6437 2001-01-30  Havoc Pennington  <hp@redhat.com>
6438
6439         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
6440         here where prev pointer was set to the wrong thing
6441
6442         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
6443         (gtk_tree_path_is_descendant): new function
6444
6445         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
6446         cached length
6447         (gtk_list_store_get_iter): don't modify iter if we can't get the
6448         path.
6449
6450         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
6451         
6452         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
6453         GtkTreeDragDest
6454
6455         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
6456         was causing segfault
6457
6458         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
6459         pointer to NULL
6460
6461         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
6462
6463         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
6464         on returning FALSE
6465         (gtk_list_store_iter_children): ditto
6466         (gtk_list_store_iter_nth_child): ditto
6467         (gtk_list_store_iter_nth_child): ditto
6468         (gtk_list_store_iter_parent): ditto
6469
6470         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
6471         on iter->user_data != NULL instead of silently accepting it.
6472         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
6473         we are returning TRUE.
6474         (gtk_tree_store_iter_children): ditto
6475         (gtk_tree_store_iter_nth_child): ditto
6476         (gtk_tree_store_iter_parent): ditto
6477         (gtk_tree_store_insert): remove handling of parent->user_data ==
6478         NULL, replace with parent == NULL       
6479
6480         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
6481         and a comment explaining things
6482
6483         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
6484         interface support to GtkTreeStore.
6485
6486         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
6487         FALSE if no prev, fix
6488
6489         * gtk/gtktreeview.c (set_source_row): use a row reference
6490         (set_dest_row): use a row reference
6491
6492 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
6493
6494         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
6495         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
6496         (gtk_tree_selection_select_iter): The same as above.
6497
6498 2001-01-26  Havoc Pennington  <hp@redhat.com>
6499
6500         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
6501         which holds a handle to a specific row (particular set of values
6502         in the model, i.e. pointer-identity row).
6503
6504         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
6505         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
6506         Still need to use it for the src/dest row saved on the drag context.
6507
6508 2001-01-26  Havoc Pennington  <hp@redhat.com>
6509
6510         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6511
6512         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6513         not offset by TREE_VIEW_HEADER_HEIGHT
6514         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6515         TREE_VIEW_HEADER_HEIGHT
6516
6517         * configure.in (included_loaders): for me, --with-included-loaders
6518         generates the error "the specified loader yes does not exist",
6519         i.e. the arg defaults to "yes", so change test for value ""
6520         to test for value "yes", and include all loaders in that case.
6521
6522         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6523
6524         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6525         handle TREE_VIEW_VERTICAL_SEPARATOR
6526         (gtk_tree_view_bin_expose): fix to consider the row offset as
6527         pointing halfway into vertical separator.       
6528         (gtk_tree_view_draw_node_focus_rect): ditto
6529
6530         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6531         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6532         (TRUE) to be called.
6533
6534         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6535         debug mode where the invalid region is colored in on invalidate,
6536         so you can see the flicker and know whether your redraw code is 
6537         doing a good job.
6538
6539         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6540         tree window coordinates (clip rect is in tree window coords)
6541
6542         * gtk/Makefile.am: add gtktreednd.[hc]
6543
6544         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6545
6546         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6547         drag-and-drop data operations on a model (so we can set up tree
6548         drag-and-drop automatically)
6549
6550         * gtk/testgtk.c: Add a window to change sensitivity in the
6551         GtkLabel test; add a way to change the entry frame in GtkEntry
6552         test
6553
6554         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6555         (gtk_entry_get_has_frame): new functions to remove the frame
6556         around an entry
6557         (gtk_entry_size_request): shrink requisition if no frame
6558         (gtk_entry_draw_focus): don't draw frame if no frame
6559
6560         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6561         checks inside a cell renderer
6562         (gtk_default_draw_option): ditto for options
6563
6564         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6565         children from the alignment, not the button
6566         (gtk_tree_view_column_init): ref/sink the column, to emulate
6567         GObject refcounting.
6568
6569         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6570         
6571         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6572         Use theme functions to draw the toggles 
6573
6574         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6575
6576         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6577         GdkPangoAttrEmbossed to use in rendering insensitive text
6578
6579         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6580
6581         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6582         using new GDK features
6583         
6584 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6585
6586         * gtk/gtkimage.c:
6587         Splitted gtk_image_clear into gtk_image_clear() and
6588         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6589         to avoid leaks.
6590
6591         * gtk/gtklabel.c (set_markup):
6592         Don't leak text.
6593
6594         * gtk/gtktextlayout.c:
6595         Always free display->shaped_objects.
6596
6597         * gtk/testgtk.c (create_clist):
6598         Don't leak custom style.
6599
6600 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6601
6602         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6603         Don't leak image. Simplify using gdk_colormap_query_color().
6604         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6605
6606         * linux-fb/gdkcolor-fb.c:
6607         Implemented gdk_colormap_query_color.
6608
6609 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6610
6611         * linux-fb/gdkcursor-fb.c:
6612         Don't leak built-in cursors.
6613
6614         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6615         Don't leak tmp_points.
6616
6617         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6618         Don't modify desc. Don't leak font if the PangoFont
6619         isn't found.
6620         
6621         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6622         Free dash_list.
6623
6624         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6625         Don't leak string.
6626         
6627 2001-01-20  Havoc Pennington  <hp@pobox.com>
6628
6629         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6630         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6631         me, matches Pango
6632
6633 2001-01-22  Havoc Pennington  <hp@redhat.com>
6634
6635         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6636
6637         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6638
6639         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6640         Remove, move back to gdk-pixbuf
6641
6642         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6643         to all the word functions
6644
6645         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6646         before doing anything on NULL layout or if we don't have the focus
6647
6648         * gtk/testtext.c (fill_example_buffer): "justification"
6649
6650         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6651         to be called "justification" not "justify"
6652
6653         * demos/gtk-demo/textview.c (create_tags): "justification"
6654         
6655         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6656
6657 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6658
6659         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6660         Don't leak visible_region. Use visible_region instead of region.
6661         
6662         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6663         Don't do extra gdk_drawable_ref(). This is not X.
6664         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6665         gdk_fb_focused_window is ref:ed.
6666         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6667         windows.
6668
6669 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6670
6671         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6672         Don't leak the PangoFontDescriptor.
6673
6674 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6675
6676         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6677         when not realized.
6678         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6679         (gtk_tree_view_realize): add scroll_to support
6680         (gtk_tree_view_finalize): add a finalize method.  Populate.
6681         (gtk_tree_view_insert_column): ref and sink the column.
6682         (gtk_tree_view_append_column): ref and sink the column.
6683         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6684         individual nodes.  Should make the code much more efficient, if
6685         actually used.
6686
6687 2001-01-19  Havoc Pennington  <hp@redhat.com>
6688
6689         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6690         byte_offset variable was being used to mean both "offset into
6691         layout" and "offset into buffer line" which was no longer true
6692         with addition of preedit string; fix
6693
6694 2001-01-19  Havoc Pennington  <hp@redhat.com>
6695
6696         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6697
6698         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6699         function
6700
6701         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6702         implement
6703
6704         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6705         scroll_to_cell, matches TextView scroll functions better
6706         (gtk_tree_view_tree_to_widget_coords): new function
6707         (gtk_tree_view_widget_to_tree_coords): new function
6708         (gtk_tree_view_get_visible_rect): new function
6709         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6710         (gtk_tree_view_draw_node_focus_rect): new function moved from
6711         draw_focus, also, use width of bin_window as width of the focus
6712         rect
6713         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6714         already-expanded rows
6715         (gtk_tree_view_get_cell_rect): new function
6716         (gtk_tree_view_get_path_at_pos): return the click position
6717         relative to the passed-in cell
6718         (gtk_tree_view_set_expander_column): new function
6719
6720         * configure.in: remove gtk-config-2.0 chmod
6721
6722         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6723         and properly handle drags with targets we don't understand
6724         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6725         scrolling anyway
6726         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6727         mark invisible
6728
6729         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6730         function
6731         (gtk_drag_dest_get_target_list): new function
6732         (gtk_drag_dest_set_target_list): new function
6733         
6734         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6735
6736         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6737         related to drag-and-drop
6738
6739 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6740
6741         * gdk/linux-fb/gdkprivate-fb.h:
6742         Define EMULATE_GDKFONT.
6743         Add extra pango_font stuff to GfkFontPrivate.
6744         
6745         * gdk/linux-fb/gdkdrawable-fb2.c:
6746         * gdk/linux-fb/gdkfont-fb.c:
6747         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6748         emulation using PangoFont.
6749
6750 2001-01-17  Havoc Pennington  <hp@pobox.com>
6751
6752         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6753         all the non-deprecated set_foo functions. Added missing object
6754         properties, and added g_object_notify() to setters. 
6755         Wrote docs.
6756         
6757 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6758
6759         * gtk/gtkmain.c
6760         * gtk/gtkrc.c: (Win32) Use the new
6761         g_win32_get_package_installation_(sub)directory() functions.
6762
6763         * config.h.win32.in: New file.
6764         
6765         * config.h.win32: Removed.
6766
6767         * configure.in: Output config.h.win32.
6768
6769         * Makefile.am: Add it to EXTRA_DIST.
6770
6771         * gtk/gtk.def: Update.
6772
6773 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6774
6775         * gtk/gtklabel.c (gtk_label_size_request): Set the
6776         attributes onto the PangoLayout even if they are newly
6777         created from label->pattern.
6778
6779 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6780
6781         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6782
6783         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6784         structures in functions. Fixes bug where gtk_dataset_*
6785         was accidentally still being used in one place, causing
6786         every dest side event to be treated independently.
6787
6788         * gtk/gtkdnd.c: Remove last vestages of handling
6789         ::draw (fixes warning)
6790         
6791         * gtk/gtkentry.[ch]: Add drag and drop support.
6792
6793         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6794         new function gtk_check_drag_threshhold() for checking
6795         to check if (dx,dy) has exceeded the threshhold for starting
6796         a drag and use it everywhere.
6797
6798 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6799
6800         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6801         add -I{includedir}/gtk-2.0.
6802
6803         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6804         gdk/gdk-pixbuf.h: Doc fixups.
6805         
6806         * gtk/gtkobject.h: Remove trailing , from enum
6807
6808 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6809
6810         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6811         Doh! Mixed up x and y.
6812
6813         * gdk/linux-fb/gdkglobals-fb.c:
6814         Removed gdk_fb_pointer_grab_window_events,
6815         added _gdk_fb_pointer_grab_owner_events and
6816         _gdk_fb_keyboard_grab_owner_events.
6817
6818         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6819         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6820         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6821         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6822         Send crossing events after ungrab finished.
6823         (gdk_keyboard_grab): Set ..._owner_events
6824         (type_masks): Move out of function.
6825         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6826         gdk_fb_keyboard_event_window): New functions, return the
6827         window an event should be targeted at. Handles grabs and
6828         event propagation. Can return NULL.
6829         (gdk_event_make): Remove event_mask checking. Now always
6830         returns an event.
6831                 
6832         * gdk/linux-fb/gdkkeyboard-fb.c:
6833         * gdk/linux-fb/gdkproperty-fb.c:
6834         * gdk/linux-fb/gdkselection-fb.c:
6835         Use new event_window/gdk_event_make() behaviour.
6836         
6837         * gdk/linux-fb/gdkmouse-fb.c:
6838         Use new event_window/gdk_event_make() behaviour.
6839         Only send motion events if in the same window.
6840         If grabbed, use cursor from window if sibling of grabbed
6841         window, and cursor from grabbed window otherwise.
6842
6843         * gdk/linux-fb/gdkprivate-fb.h:
6844         Update gdk_fb_window_send_crossing_events, gdk_event_make
6845         and grab varaible declarations. Add gdk_fb_*_event_window().
6846
6847         * gdk/linux-fb/gdkwindow-fb.c:
6848         Use new event_window/gdk_event_make() behaviour.
6849         Keep correct track of focus window.
6850         (gdk_window_set_events): Set all specific button motion masks
6851         if GDK_BUTTON_MOTION_MASK set.
6852
6853         * gtk/gtkdnd.c (gtk_drag_update):
6854         Free info->last_event if gdk_drag_motion returned FALSE.
6855
6856 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6857
6858         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6859         Eliminate redraws when input-only windows are shown or
6860         hidden. Thanks to jpe@archaeopteryx.com.
6861
6862 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6863
6864         * docs/faq/gtk-faq.sgml: FAQ update:
6865           - Update to bugzilla
6866           - Add GTK+ and security/SUID/SGID
6867           - Add DnD question
6868
6869 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6870
6871         * gdk/linux-fb/gdkdnd-fb.c:
6872         Some cleanups.
6873         
6874 2001-01-15  Havoc Pennington  <hp@pobox.com>
6875
6876         * tests/testtreeview.c: add test stuff for CellRendererToggle
6877
6878         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6879         accessor
6880
6881         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6882         only toggle on button press (would do release like GtkButton, but
6883         we'd need implicit grab code for treeview cells)
6884
6885 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6886
6887         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6888
6889         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6890         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6891
6892         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6893         to g_{locale,filename}_{to,from}_utf8 to match current API.
6894
6895         * gtk/makefile.msc.in (gtk_OBJECTS)
6896         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6897
6898         * gtk/gtk.def: Update.
6899
6900 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6901
6902         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6903         implementaion that more closely mimics the events that an X server
6904         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6905         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6906         with nested preview widgets, for instance, more responsive when
6907         you move the mouse quickly into them.
6908         (find_window_for_pointer_event): Make it actually compile.
6909         (gdk_event_translate): Set send_event to the value of
6910         InSendMessage (). This doesn't really mean the same as X11's
6911         send_event flag, but is close enough, says jpe@archaeopteryx.com
6912
6913 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6914
6915         * gdk/linux-fb/gdkdnd-fb.c:
6916         Implemented drag and drop.
6917         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6918         when it tries to free and then copy the same event (info->last_event).
6919         I am not sure about why this happens, but will continue looking.
6920
6921 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6922
6923         * gdk/linux-fb/gdkwindow-fb.c:
6924         Use gdk_window_invalidate_rect instead of
6925         gdk_window_invalidate_rect_clear to minimise flashing.
6926         When hiding windows you need to clear the root window though.
6927
6928 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6929
6930         * gdk/linux-fb/gdkdrawable-fb2.c:
6931         For optization, add an full_shapes argument to gdk_fb_clip_region.
6932         If this is false, only the cliprects of the shapes are used.
6933
6934         * gdk/linux-fb/gdkprivate-fb.h:
6935         Export gdk_fb_window_peek_shape.
6936         Add full_shapes to gdk_fb_clip_region.
6937
6938         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6939         When moving a window, don't clear everything under the it, just the
6940         root window. Makes stuff faster and flash less.
6941         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6942         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6943         offset of the shape.
6944         
6945
6946 2001-01-12  Havoc Pennington  <hp@redhat.com>
6947
6948         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6949         current invalid region, fixes redraw bug while scrolling the 
6950         text widget
6951
6952         * gtk/gtktextview.c, gtk/gtktextview.h:
6953         Rearrange the scrolling/validation/etc. code in a major way, 
6954         so it seems to make sense to me. Probably isn't genuinely that
6955         much better, but...
6956
6957         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6958         notifies
6959
6960         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6961
6962 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6963
6964         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6965         Hide mouse pointer while rotation. Show it afterwards.
6966
6967 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6968
6969         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6970         windows in consideration when generating clip region.
6971
6972         * gdk/linux-fb/gdkfb.h:
6973         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6974
6975         * gdk/linux-fb/gdkprivate-fb.h:
6976         Add shape to GdkWindowFBDatat.
6977         exported gdk_fb_window_get_abs_shape().
6978         removed gdk_fb_draw_lines declaration.
6979
6980         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6981         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6982         send focus changes when there is a grabbed window.
6983         (gdk_window_get_pointer): Handle shaped windows.
6984         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6985         (gdk_fb_window_peek_shape): Returns the shape for a window,
6986         handles GDK_FB_USE_CHILD_SHAPE.
6987         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6988         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6989         (gdk_window_shape_combine_mask): Implement.
6990
6991         * gtk/gtkwindow-decorate.c:
6992         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
6993         setting the shape of a window makes the window transparent.
6994
6995 2001-01-11  Havoc Pennington  <hp@redhat.com>
6996
6997         * gtk/gtktreemodelsimple.h: Oops, broke some macros
6998
6999 2001-01-10  Havoc Pennington  <hp@redhat.com>
7000
7001         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
7002         add this function, bug 40251
7003
7004         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7005         of type macro   
7006
7007 2001-01-11  Alexander Larsson  <alexl@redhat.com>
7008
7009         * acconfig.h:
7010         Added ENABLE_SHADOW_FB
7011
7012         * configure.in:
7013         Added --disable-shadowfb
7014
7015         * gdk/linux-fb/gdkcursor-fb.c:
7016         Update shadowfb when updating cursor
7017
7018         * gdk/linux-fb/gdkdrawable-fb2.c:
7019         Added wrappers for shadowfb that calls  the normal drawable
7020         methods, but calls gdk_shadow_fb_update(bounding box) when
7021         GdkWindows are drawed to.
7022         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
7023         which also returns the bounding box.
7024
7025         * gdk/linux-fb/gdkfb.h:
7026         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
7027
7028         * gdk/linux-fb/gdkgeometry-fb.c:
7029         Update shadowfb when scrolling window.
7030
7031         * gdk/linux-fb/gdkglobals-fb.c:
7032         Add _gdk_fb_screen_angle.
7033         
7034         * gdk/linux-fb/gdkkeyboard-fb.c:
7035         Test code for screen rotation. Shift-F2 in the xlate driver
7036         rotates the screen.
7037
7038         * gdk/linux-fb/gdkmain-fb.c:
7039         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
7040
7041         * gdk/linux-fb/gdkmouse-fb.c:
7042         Use fb_width/height instead of modeinfo.xres/yres.
7043
7044         * gdk/linux-fb/gdkprivate-fb.h:
7045         Added fb_men, fb_width, fb_height & fb_stride. When using
7046         shadow fb these can differ from the framebuffer stuff.
7047         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
7048         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
7049         _gdk_fb_screen_angle. Removed CM, RP.
7050
7051         * gdk/linux-fb/gdkrender-fb.c:
7052         Added code for shadowfb handling and screen rotation using
7053         shadowfb.
7054
7055         * gdk/linux-fb/gdkwindow-fb.c:
7056         Use fb_mem, fb_stride, fb_width, fb_height.
7057         Added recompute_rowstride to reset the rowstride of all windows.
7058         Added gdk_fb_recompute_all() which recomputes rootwindow size,
7059         window abs positions and window rowstrides. Usefull when the
7060         rotation has changed.
7061
7062 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
7063
7064         * docs/faq/gtk-faq.sgml: update to make web site updating easier
7065
7066 2001-01-10  Havoc Pennington  <hp@redhat.com>
7067
7068         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
7069         where sibling == iter
7070         (gtk_tree_store_insert_after): handle sibling == iter
7071         (gtk_tree_store_prepend): remove stamp checks
7072         (gtk_tree_store_insert_before): ditto
7073         (gtk_tree_store_append): ditto
7074         (gtk_tree_store_get_path): ditto
7075         (gtk_tree_store_get_value): ditto
7076         (gtk_tree_store_iter_has_child): ditto
7077         (gtk_tree_store_iter_n_children): ditto
7078         (gtk_tree_store_iter_nth_child): ditto
7079         (gtk_tree_store_insert_after): ditto
7080         (gtk_tree_store_is_ancestor): ditto
7081         (gtk_tree_store_iter_depth): ditto
7082         (gtk_tree_store_insert_before): assert that sibling's parent is
7083         the same as the passed-in parent
7084         (gtk_tree_store_insert_after): assert that sibling's parent is
7085         the same as the passed-in parent
7086
7087         
7088         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
7089         function to get the first iterator in a model
7090         
7091         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
7092         conventionally the "root" in this sense is just NULL afaict.
7093
7094         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
7095         where sibling == iter
7096         (gtk_list_store_insert_after): handle case where sibling == iter
7097
7098         * tests/testtreeview.c (run_automated_tests): fairly lame basic
7099         automated tests for ListStore, TreeStore
7100
7101         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
7102         (gtk_list_store_insert): update tail pointer, and fix it to work
7103         (gtk_list_store_insert_before): update tail pointer, and fix it to work
7104         (gtk_list_store_append): use tail to be faster
7105         (gtk_list_store_prepend): fix it, update tail pointer
7106         (gtk_list_store_insert_after): fix it, update tail pointer
7107
7108         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
7109         the list
7110
7111 2001-01-09  Havoc Pennington  <hp@redhat.com>
7112
7113         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
7114         is NULL due to a pending resize
7115
7116         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
7117         column width to values less than 1
7118
7119         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
7120         width to be between min/max width, and still set the width 
7121         even if autosize is turned on, so the tree view can use this 
7122         function in order to autosize.
7123         (gtk_tree_view_column_init): set initial width to 1 not 0
7124
7125         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
7126         setter function to modify column width, so we get notification
7127         (gtk_tree_view_insert_iter_height): ditto
7128         (gtk_tree_view_calc_size): ditto
7129         (gtk_tree_view_check_dirty): ditto
7130
7131         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
7132         properties to change all the interesting attributes of the tree
7133         view column.
7134         (gtk_tree_view_column_set_header_clickable): rename set_clickable
7135         (gtk_tree_view_column_get_clickable): add
7136         (gtk_tree_view_column_set_cell_renderer): don't unset the current
7137         attributes; assume a cell renderer with equivalent object
7138         properties has been swapped in. Do g_object_notify().
7139         (gtk_tree_view_column_set_visible): g_object_notify
7140         (gtk_tree_view_column_get_sizing): rename from get_col_type
7141         (gtk_tree_view_column_set_sizing): g_object_notify
7142         (gtk_tree_view_column_set_width): add g_object_notify
7143         (gtk_tree_view_column_set_min_width): ditto
7144         (gtk_tree_view_column_set_max_width): ditto
7145         (gtk_tree_view_column_set_title): ditto
7146         (gtk_tree_view_column_set_clickable): ditto
7147         (gtk_tree_view_column_set_widget): ditto
7148         (gtk_tree_view_column_set_justification): ditto
7149
7150 2001-01-09  Havoc Pennington  <hp@redhat.com>
7151
7152         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
7153         there are no rows in the model
7154
7155         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
7156         NULL, then return the start of the list
7157
7158         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
7159         if we can't get any rows from an empty model 
7160
7161         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
7162         extraneous * after function pointer typedef usage
7163
7164         * Makefile.am: don't specify full path to cp and rm
7165
7166         * gtk/gtkcellrenderertextpixbuf.c
7167         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
7168         NULL before dereferencing, fixes a segfault that happened from
7169         time to time
7170
7171         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
7172         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
7173         and reindent the function
7174         (gtk_cell_renderer_pixbuf_get_size): indentation
7175
7176         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
7177         we quit it
7178         (gtk_dialog_add_buttons_valist): add g_return_if_fail
7179         (gtk_dialog_set_default_response): New function, to set default
7180         button
7181         (gtk_dialog_set_response_sensitive): New function, to set 
7182         sensitivity of buttons
7183
7184         * gtk/gtkcellrendererpixbuf.c
7185         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
7186         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
7187
7188         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7189         handle any G_TYPE_OBJECT subclass, not just the base class, and 
7190         also boxed types.
7191         (_gtk_tree_data_list_value_to_node): ditto
7192
7193         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
7194         --gtk-debug=tree
7195
7196         * gtk/gtkmain.c: add GTK_DEBUG_TREE
7197
7198         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
7199
7200 2001-01-09  Tor Lillqvist  <tml@iki.fi>
7201
7202         * gdk/win32/gdkevents-win32.c: Implement better mouse
7203         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
7204         (find_window_for_pointer_event): New function.
7205         (gdk_event_translate): Use it when handling mouse events.
7206
7207 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
7208
7209         * configure.in:
7210         Added --with-included-loaders option
7211
7212         * gdk-pixbuf/Makefile.am:
7213         * gdk-pixbuf/gdk-pixbuf-io.c:
7214         Add support for including selected gdk-pixbuf loaders only.
7215
7216         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
7217         gtk_window_set_has_frame):
7218         Added inline documentation.
7219
7220         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
7221         * docs/reference/gdk/tmpl/windows.sgml:
7222         Added inline documentation.
7223
7224 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
7225
7226         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
7227         realizing buttons that have already been realized.
7228
7229 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
7230
7231         * tests/testtreeview.c (main): Show menu items before adding to
7232         option menu.
7233
7234         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
7235         around if we kill them.
7236
7237         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7238         Return if we pass in a NULL model.
7239
7240 2001-01-08  Havoc Pennington  <hp@redhat.com>
7241
7242         * tests/testtreeview.c: hack on this some
7243
7244         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
7245         gtk_tree_store_set_valist, v is for arrays, valist for varargs
7246         list
7247         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
7248
7249         * gtk/gtkliststore.h: Add varargs set() and get() convenience
7250         functions
7251
7252 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7253
7254         * gtk/gtkwindow-decorate.[hc]:
7255         * gtk/Makefile.am:
7256         New files. Contains an implementation of a minimal WM for
7257         linux-fb.
7258
7259         * gtk/gtkwindow.h:
7260         Add the possibility for GtkWindows to specify a frame. This
7261         is used for the window decoration code, but could concievably
7262         be used for X programs too (xmms style windows).
7263         GtkWindow->frame is the toplevel window if the window is framed.
7264         The signal frame_event gets all events that are targeted to
7265         GtkWindow->frame.
7266         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
7267         
7268         * gtk/gtkwindow.c:
7269         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
7270         Call out to gtkwindow-decorate.c for WM support in linx-fb.
7271
7272 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7273
7274         * docs/README.linux-fb:
7275         Correct filename ~/.pangoft2_aliases
7276
7277         * gdk/gdkwindow.h:
7278         Added new function gdk_window_get_decorations.
7279
7280         * gdk/linux-fb/gdkfb.h:
7281         Removed _gdk_window_get_decorations declaration.
7282         Renamed _gdk_window_set_child_handler to
7283         gdk_fb_window_set_child_handler.
7284
7285         * gdk/linux-fb/gdkwindow-fb.c:
7286         Renamed _gdk_window_set_child_handler to
7287         gdk_fb_window_set_child_handler.
7288
7289         * gdk/x11/gdkwindow-x11.c:
7290         New function gdk_window_get_mwm_hints().
7291         Implemented gdk_window_get_decorations.
7292
7293         * docs/reference/gdk/tmpl/windows.sgml:
7294         * docs/reference/gdk/gdk-sections.txt:
7295         Added gdk_window_get_decorations docs.
7296         
7297 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
7298
7299         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
7300         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
7301         gdk_fb_window_send_crossing_events):
7302         Possibly send focus events when the mouse moves from one
7303         window to another.
7304
7305 2001-01-07  Tor Lillqvist  <tml@iki.fi>
7306
7307         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
7308         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
7309         to match current API.
7310
7311         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
7312         environment variable is set, don't call g_error when on a
7313         palettized (PseudoColor) display. Some people want to use GTK+ 
7314         in 256-colour mode even though works only partially.
7315
7316         * gdk/gdk.def
7317         * gtk/gtk.def
7318         * gtk/makefile.mingw.in: Update.
7319
7320 2001-01-05  Havoc Pennington  <hp@redhat.com>
7321
7322         * tests/testtreeview.c: hack on this a bit
7323
7324         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
7325         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
7326
7327         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
7328         was spelled incorrectly
7329         (GTK_IS_TREE_MODEL_SIMPLE): ditto
7330
7331         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
7332         from gtk_tree_view_set_headers_active   
7333
7334         * gtk/gtktexttag.c:
7335         (gtk_text_tag_get_property): handle PROP_DIRECTION
7336         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
7337         properties, bug 40235
7338
7339         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
7340         forward_to_line_end
7341
7342 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
7343
7344         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
7345         modules/input/gtkimcontextxim.c: Adapt to new prototypes
7346         for unicode,locale,filename conversion functions.
7347
7348 2001-01-05  Havoc Pennington  <hp@redhat.com>
7349
7350         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
7351         broken if called on the first position in the buffer.
7352
7353         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
7354         forward_to_delimiters to be called only if we aren't already at
7355         the delimiters.
7356
7357 2001-01-05  Havoc Pennington  <hp@redhat.com>
7358
7359         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
7360
7361 2001-01-05  Alexander Larsson  <alexl@redhat.com>
7362
7363         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
7364         colormap in here. Sync from X port.
7365         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
7366         Sync from X port.
7367         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
7368         This happens now and then, and i don't think it is a bug.
7369         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
7370         != endpoint.
7371         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
7372         GDK_LINE_SOLID.
7373
7374         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
7375         some of the fields filled in at least.
7376
7377         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
7378         miLineArcD is no more, remove it from the function definition.
7379
7380 2001-01-04  Havoc Pennington  <hp@redhat.com>
7381
7382         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
7383         this
7384
7385         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
7386         user_data instead of tree_node
7387
7388         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
7389         TREE_VIEW_COLUMN_SIZE
7390
7391         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
7392         "size" field to "width" finishes bug 40061
7393
7394         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
7395         for bitfields, bug 40268
7396
7397 2001-01-04  Havoc Pennington  <hp@redhat.com>
7398
7399         Rename some stuff:
7400         
7401         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
7402
7403         s/GtkModelSimple/GtkTreeModelSimple/g;
7404         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
7405         s/gtk_model_simple/gtk_tree_model_simple/g;
7406         s/gtkmodelsimple/gtktreemodelsimple/g;
7407
7408         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
7409
7410         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
7411         s/column_set_col_type/column_set_sizing/g;
7412
7413         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
7414         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
7415
7416         s/GtkCellRendererType/GtkCellRendererState/g;
7417         
7418         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
7419         (gtk_cell_renderer_toggle_class_init): change "state" property to
7420         "active", to match GtkToggleButton
7421         (gtk_cell_renderer_toggle_get_active): new function, bug
7422         40269
7423         (gtk_cell_renderer_toggle_set_active): new function
7424         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7425         state through gtk_cell_renderer_set_active
7426
7427 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
7428
7429         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
7430         temporarily until they work again.  Brought up to date with
7431         changes in the model.
7432         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
7433         model.
7434
7435 2001-01-04  Havoc Pennington  <hp@redhat.com>
7436
7437         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
7438         equal to the line length, then position iterator before paragraph 
7439         separators. Fixes crash reported by Mikael Hermansson when
7440         pressing left arrow from the start of a line.   
7441
7442         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
7443         about byte indexes off the end
7444         (iter_set_from_char_offset): add g_error about char offsets
7445         off the end
7446
7447 2001-01-03  Havoc Pennington  <hp@redhat.com>
7448
7449         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
7450
7451         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
7452         of private functions; remove inclusion of private headers.
7453
7454         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
7455         function, so we don't need private functions in gtktextdisplay.c
7456
7457         * gtk/gtktextiterprivate.h: underscore-ification
7458
7459         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
7460         to instead say "only useful to implement widgets"
7461
7462         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
7463         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
7464         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
7465
7466         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
7467         This function was completely broken
7468
7469         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
7470
7471         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
7472
7473         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
7474
7475         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
7476
7477         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
7478
7479         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
7480
7481         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
7482         gtk_paint_layout
7483
7484         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
7485         gtk_paint_layout
7486
7487         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
7488         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
7489         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
7490         which were not implemented.     
7491
7492         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
7493         insert_pixbuf signal. Rename delete_text to delete_range since it
7494         also deletes pixbufs and child anchors. This almost closes bug
7495         40245 (still need to deal with child anchors)
7496
7497         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
7498         insert_pixbuf, change signal names as appropriate, change types of
7499         signals taking marks/tags to have the specific type, not just
7500         G_TYPE_OBJECT
7501         
7502         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
7503         closes bug 40051
7504
7505         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
7506         unnecessary remove_contents() call
7507         (gtk_option_menu_class_init): add a "changed" signal, closes
7508         bug 40039
7509         (gtk_option_menu_update_contents): emit "changed" if the 
7510         active menu item changes
7511
7512         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7513         cast to GtkObject, reported by Jonas Borgstrom
7514         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7515         we can't do stuff with side effects in finalize. Instead, spew a
7516         warning if the loader isn't closed.
7517
7518         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7519         colormap in here, non-X ports probably need to sync to this change
7520
7521         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7522         assertion that colormap != NULL, you can set the colormap to NULL
7523         if you like.
7524         
7525         * Makefile.am: remove gtk-config-2.0
7526
7527         * configure.in: Use pkg-config to locate GLib. Remove
7528         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7529         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7530         Use pkg-config to locate Pango. Output correct Pango libs to
7531         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7532
7533         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7534         files
7535         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7536         X11 pc files
7537
7538         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7539         unref from here
7540
7541 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7542
7543         * configure.in:
7544         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7545
7546 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7547
7548         * gtk/gtktextlayout.c
7549         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7550         variable when moving back onto a single line.
7551
7552 2001-01-01  Havoc Pennington  <hp@redhat.com>
7553
7554         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7555
7556         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7557
7558         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7559         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7560
7561 2001-01-01  Havoc Pennington  <hp@redhat.com>
7562
7563         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7564
7565         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7566         GtkTextAttributes
7567
7568         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7569         #40246
7570         (gtk_text_attributes_copy_values): rename from 
7571         gtk_text_attributes_copy
7572         (gtk_text_attributes_copy): a more standard GTK copy function, 
7573         which returns a new object
7574
7575 2001-01-01  Havoc Pennington  <hp@redhat.com>
7576
7577         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7578         
7579         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7580         don't fill in tree_view->priv->selection, kind of an unexpected
7581         side effect
7582
7583         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7584         gtkintl.h
7585         
7586         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7587         gtkintl.h
7588         (gtk_cell_renderer_get_property): remove calls to g_value_init
7589
7590         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7591         gtkintl.h
7592
7593         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7594         and include gtkintl.h
7595         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7596         property names
7597
7598         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7599         GtkTreeSelection
7600         (_gtk_tree_selection_new_from_with_view): rename, return
7601         GtkTreeSelection
7602         (_gtk_tree_selection_set_tree_view): rename with uscore
7603         (gtk_tree_selection_get_selected): fill in the "model" out param
7604         first, so it gets filled in even if we return at the top of the 
7605         function
7606         (gtk_tree_selection_real_select_all): add a comment and an else{}
7607         to clarify this a bit
7608         (gtk_tree_selection_real_unselect_all): add the same else{}
7609
7610         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7611         set_tree_view to have underscore prefixes, move them to the
7612         private header, fix return type of new_with_tree_view
7613         (struct _GtkTreeSelection): mark struct
7614         fields private  
7615
7616         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7617         GtkTreeModelFlags, not a guint
7618         (gtk_tree_path_prev): return gboolean not gint
7619         (gtk_tree_path_up): return gboolean not gint
7620
7621         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7622         return GtkTreeModelFlags, not a guint
7623
7624         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7625         that child model is non-null before unrefing it
7626         (g_value_int_compare_func): make this a qsort compare func, not 
7627         a boolean predicate
7628
7629         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7630         (add -umn to the end), and mark it unimplemented
7631         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7632         I don't see what it's for - doesn't the model always sort itself?
7633         (gtk_tree_model_sort_set_compare): this had the wrong signature
7634
7635         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7636         Fix the docs to say that it destructively replaces existing
7637         attributes (previously said that it added attributes).
7638         (gtk_tree_view_column_set_visible): canonicalize bool before
7639         equality testing. Also, check for realization before
7640         hiding/showing the tree_column->window; if this window could exist
7641         before realization, then it's busted and needs fixing, we can't 
7642         create GDK resources pre-realization. Also, remove
7643         superfluous queue_resize(), since set_size() does that for us.
7644         (gtk_tree_view_column_set_col_type): check realization before 
7645         using tree_column->window
7646
7647         * gtk/gtktreedatalist.c: fix filename in copyright notice
7648
7649 2000-12-31  Havoc Pennington  <hp@pobox.com>
7650
7651         * gtk/gtktextview.c: Rearrange all the
7652         scroll-while-dragging-or-selecting code to be different, not
7653         necessarily better. ;-)
7654         (gtk_text_view_scroll_to_mark): Change this
7655         function to take within_margin as a fraction instead of a pixel
7656         value, and to take alignment arguments (indicating where to align 
7657         the mark inside the visible area)
7658         
7659         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7660         to GtkObject
7661
7662         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7663         behavior so that offsets past the end of the line are not 
7664         allowed, and an offset equal to the line length moves the iterator
7665         to the next line
7666         (gtk_text_iter_set_line_index): make parallel change
7667         (gtk_text_iter_get_bytes_in_line): add this function
7668         
7669         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7670         of byte indexes off the end of the line; byte index at the end of
7671         the line now returns FALSE and doesn't fill in the requested
7672         values, byte index past the end of the line is an error.  Also,
7673         don't allow -1 offset anymore, since its meaning is unclear.
7674
7675         This change exposes some bug in visual cursor motion, where we
7676         end up with a huge invalid byte index; needs fixing. Symptom of 
7677         bug is a crash when you hit up arrow.
7678         
7679         (_gtk_text_line_char_locate): match the change to byte_locate
7680
7681         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7682         from start of line properly. fixes bug reported by Mikael
7683         Hermansson where backspace would delete all text before the
7684         cursor.
7685
7686 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7687
7688         * gdk/win32/gdkwindow-win32.c
7689         (gdk_window_impl_win32_get_visible_region): New function, as in
7690         the X11 backend.
7691         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7692         instead of duplicating the same code here.
7693
7694         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7695         GDK_COLORMAP macro.
7696
7697         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7698         destroy function.
7699         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7700         access that.
7701
7702         * gtk/gtk.def: Update.
7703
7704         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7705
7706 2000-12-30  Havoc Pennington  <hp@pobox.com>
7707
7708         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7709         colormap on input only windows, to avoid special cases all over
7710         the code for these windows.
7711
7712 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7713
7714         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7715         we are on a palettized display ("PseudoColor" in X11), as the code
7716         for that doesn't work anyway, and never has.
7717
7718 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7719
7720         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7721         Don't use isprint() for chars > 255.
7722
7723 2000-12-21  Havoc Pennington  <hp@redhat.com>
7724
7725         * tests/testtreeview.c: more work
7726
7727 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7728
7729         * docs/README.linux-fb:
7730         Update the docs to the new pangoft2 way.
7731
7732 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7733
7734         * configure.in:
7735         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7736         pango version.
7737         Remove modules/linux-fb/Makefile.
7738
7739         * gdk/linux-fb/gdkdrawable-fb2.c:
7740         Render glyphs using freetype.
7741
7742         * gdk/linux-fb/gdkfb.h:
7743         Add new fb-specific functions needed for managing windows.
7744
7745         * gdk/linux-fb/gdkmain-fb.c:
7746         Remove gdk_font_init/fini() calls.
7747
7748         * gdk/linux-fb/gdkpango-fb.c:
7749         Remove old implementation. Use pangoft2 instead.
7750
7751         * gdk/linux-fb/gdkprivate-fb.h:
7752         Remove PangoFBFont and related stuff.
7753
7754         * gdk/linux-fb/gdkwindow-fb.c:
7755         Implement drawable->get_visible_region.
7756         Implement support for _gdk_window_set_child_handler () and
7757         _gdk_window_get_decorations().
7758
7759         * modules/Makefile.am:
7760         Remove linux-fb subdir.
7761
7762         * modules/linux-fb/*:
7763         Removed all.
7764         
7765 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7766
7767         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7768         calls, as they are no longer needed.
7769
7770         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7771         
7772         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7773         figure out how to emit a signal on an interface.
7774
7775 2000-12-20  Havoc Pennington  <hp@redhat.com>
7776
7777         * tests: new directory to contain tests, gtk/test* should move
7778         here sometime (with appropriate on-cvs-server hackery)
7779
7780         * tests/testtreeview.c, tests/Makefile.am: a test
7781         
7782         * configure.in (AC_OUTPUT): add tests/Makefile
7783
7784         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7785         and "invisible_set" which were missing
7786
7787         * gtk/gtkrbtree.h: some cheesy indentation fix
7788         
7789 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7790
7791         * gtk/gtkinvisible.c (gtk_invisible_realize):
7792         Attach the style to the window so that the style it is not
7793         leaked when unrealizing the window.
7794
7795 2000-12-18  Havoc Pennington  <hp@redhat.com>
7796
7797         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7798         begin/end user action where appropriate
7799         (gtk_text_view_commit_handler): add begin/end user action
7800
7801         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7802         bracket interactive operations with begin/end user action pair.
7803         
7804         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7805         "interactive" arg from insert_text and delete_text signals.
7806         Add begin_user_action, end_user_action signals
7807         (gtk_text_buffer_begin_user_action): 
7808         (gtk_text_buffer_end_user_action): New functions to delimit 
7809         a user-visible action
7810
7811         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7812         signals.
7813         
7814 2000-12-18  Havoc Pennington  <hp@redhat.com>
7815
7816         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7817         was pretty non-working.
7818
7819         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7820         by passing the length to g_utf8_validate().
7821
7822 2000-12-16  Havoc Pennington  <hp@pobox.com>
7823
7824         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7825         Port to GObject, can go back in gdk-pixbuf after setting up 
7826         a gdk-pixbuf-marshal.h header over there.
7827
7828         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7829         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7830         args
7831         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7832         set
7833         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7834         here, do it when we create the buttons later
7835         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7836         (gtk_tree_view_map): paranoia checks that column->button is shown 
7837         and unmapped
7838         (gtk_tree_view_size_request): only request visible children.
7839         Move header size calculation in here, for cleanliness, and 
7840         to maintain invariants for child widgets if we eventually 
7841         let users set different children inside the buttons
7842         (gtk_tree_view_map_buttons): factor out code to map buttons,
7843         since it was being called several times
7844         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7845         windows instead of just moving them; their height may change 
7846         if we allow random widgets in there, or the theme changes.
7847         (gtk_tree_view_size_allocate): move button size allocation 
7848         above emitting the scroll signals, to ensure a sane state when we
7849         hit user code
7850         (gtk_tree_view_button_release): remove queue_resize after
7851         tree_view_set_size(), set_size() will handle any resize queuing
7852         that's needed
7853         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7854         draw_focus goo
7855         (gtk_tree_view_focus): use gtk_get_current_event() and
7856         gdk_event_get_state()
7857         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7858         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7859         semicolon
7860         (gtk_tree_view_create_button): show the button here
7861         (gtk_tree_view_button_clicked): actually emit the clicked signal
7862         on the column
7863         (_gtk_tree_view_set_size): return right away if the size is
7864         unchanged, as a cheesy optimization
7865         (gtk_tree_view_setup_model): rename set_model_realized to 
7866         setup_model to match the flag that indicates whether we've 
7867         called it
7868         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7869         exist, because set_scroll_adjustment does that and it shouldn't
7870         matter what order you call these in
7871         (gtk_tree_view_get_vadjustment): ditto
7872         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7873         for paranoia
7874         (gtk_tree_view_set_headers_visible): call
7875         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7876         (gtk_tree_view_append_column): clarify whether the return value
7877         is the count of columns before or after, and do the increment 
7878         separately from the return statement so you can tell from the code.
7879         (gtk_tree_view_remove_column): ditto
7880         (gtk_tree_view_insert_column): ditto
7881         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7882         outside the existing range, the docs say that outside-range
7883         columns are allowed, so we handle them as documented. (Presumably
7884         this allows a nice loop with column != NULL as test.)
7885         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7886         mean (left/right/center etc.).
7887         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7888         (gtk_tree_view_expand_row): add docs
7889         (gtk_tree_view_collapse_row): add docs
7890
7891         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7892         function to emit the clicked signal on a column
7893         
7894         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7895         state of an event
7896         (gdk_event_get_time): don't treat GDK_SCROLL 
7897         as a button event, remove default case from switch so gcc 
7898         will whine if we don't explicitly handle all event types
7899
7900         * gtk/gtktreeselection.h: added some FIXME 
7901         
7902         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7903         "columns" to "n_columns" and "column" to "columns" for clarity
7904
7905 2000-12-16  Havoc Pennington  <hp@pobox.com>
7906         
7907         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7908         stuff. This should make e.g. the delete key work again in the
7909         text widget...
7910         (gtk_text_iter_forward_cursor_positions): handle negative count
7911         (gtk_text_iter_backward_cursor_positions): handle negative count
7912         (gtk_text_iter_forward_word_ends): handle negative count
7913         (gtk_text_iter_backward_word_starts): handle negative count
7914
7915         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7916         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7917         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7918         GObject. No doubt will cause breakage.
7919
7920         * demos/gtk-demo/textview.c: remove hacks around
7921         non-GObject-ification of the text objects
7922
7923         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7924         the text tag
7925         
7926 2000-12-14  Havoc Pennington  <hp@pobox.com>
7927
7928         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7929         that we have Xrender
7930
7931 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7932
7933         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7934         Add two virtualized functions gdk_drawable_get_clip_region - to
7935         get the clip region when drawing.
7936         
7937         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7938         use invalidate_region.
7939
7940         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7941         region.
7942
7943         * acconfig.h configure.in: Check for Xft. For now, assume
7944         that if Xft is found, Pango was compiled with Xft support
7945         as well.
7946
7947         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7948         gdk_colormap_query_color().
7949         
7950         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7951         with Xft if appropriate.
7952
7953         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7954         a pangoxft context if we have XFT and the environment
7955         variable GD_USE_XFT is set.
7956         
7957         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7958         and also possibly an XftDraw structure.
7959
7960         * gtk/gtkfontsel.c: Handle the case where the font from the
7961         style doesn't match any of the fonts a bit better.
7962         
7963         * gtk/testgtk.c: Add tabs between directional segments for
7964         hebrew/arabic test. (Not really necessary, just a little
7965         prettier.)
7966
7967 2000-12-14  Havoc Pennington  <hp@redhat.com>
7968
7969         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7970         reading a file
7971
7972 2000-12-14  Havoc Pennington  <hp@redhat.com>
7973
7974         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7975         unused call to get_last_line()
7976
7977         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7978         here until boxed is working (and maybe after that - we should
7979         really not gratuitously break old code)
7980
7981         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7982         specific types for font_desc and tabs args, move them to
7983         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7984         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7985
7986         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7987         use GTK_TYPE_POINTER for signal signatures as a hack-around
7988
7989         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7990         PangoTabArray
7991
7992         * gtk/gtktextlayout.c (line_display_iter_to_index): 
7993         make static
7994         (line_display_index_to_iter): make static
7995
7996         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7997         to marshal a string not a boxed
7998
7999         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
8000
8001         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
8002         since the UTF-8 isn't validated yet
8003
8004         * gtk/gtktextsegment.c (char_segment_check_func): don't require
8005         lines to end in '\n'
8006         
8007         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
8008         forward_to_delimiters, and grapheme boundaries
8009         (gtk_text_view_delete_from_cursor): properly handle non-newline
8010         delimiters, and grapheme boundaries
8011
8012         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
8013         to gtk_text_iter_forward_to_delimiters, and make it work properly
8014         if empty lines end with a character other than '\n'
8015
8016         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
8017         position
8018
8019 2000-12-15  Tor Lillqvist  <tml@iki.fi>
8020
8021         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
8022
8023         * gtk/gtk.def
8024         * gdk/gdk.def: Update.
8025
8026         * gdk/win32/gdkmain-win32.c
8027         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
8028         gdkmain-win32.c here.
8029
8030         * gdk/win32/makefile.mingw.in (all): No need to make
8031         gdk-win32res.o here, the makefile one step up will call us to make
8032         it.
8033
8034         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
8035         gdkkeys-win32.
8036
8037         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
8038
8039         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
8040         call to g_source_add().
8041
8042         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
8043         leak. Thanks to Andreas Kemnade.
8044
8045 2000-12-13  Havoc Pennington  <hp@pobox.com>
8046
8047         * gtk/gtktextbtree.h: Remove double _ in front of some functions
8048
8049         * gtk/gtktext*.[hc]: update accordingly
8050         
8051 2000-12-13  Havoc Pennington  <hp@pobox.com>
8052
8053         * gtk/gtktextbtree.h: Put _ in front of every function in this 
8054         header file
8055
8056         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
8057
8058 2000-12-13  Alex Larsson  <alexl@redhat.com>
8059
8060         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
8061         Add support for ps2 intellimouse.
8062
8063         * gdkkeyboard-fb.c:
8064         Move shift-F1 repaint handling to xlate handler only.
8065         
8066         * docs/README.linux-fb:
8067         Add imps2 to docs.
8068         Document the new refresh keys.
8069         
8070 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
8071
8072         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
8073
8074         * gtk/gtkbox.c: change property types from (u)long to (u)int for
8075         ::position and ::padding.
8076
8077         * gtk/gtkcontainer.c: make ::border_width an INT property.
8078
8079         * gtk/gtkpacker.c: make ::position an INT property.
8080
8081         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
8082         guard against NULL h/v scrollbars, since this is used at construction
8083         time.
8084
8085         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
8086         internal gtk_clist_constructor().
8087
8088         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
8089         gtk_ctree_constructor().
8090
8091         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
8092         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
8093
8094         * docs/reference/Makefile.am: fun stuff, disabled docs generation
8095         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
8096
8097         * gtk/gtkwidget.[hc]:
8098         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
8099         and gtk_widget_get().
8100         (gtk_widget_new): use g_object_new_valist().
8101         (gtk_widget_set): use g_object_set_valist().
8102
8103         * gtk/gtkobject.[hc]:
8104         removed gtk_object_arg_get_info(), gtk_object_getv(),
8105         gtk_object_query_args(), gtk_object_newv(),
8106         gtk_object_class_add_signals(),
8107         gtk_object_class_user_signal_new(),
8108         gtk_object_class_user_signal_newv(),
8109         gtk_object_arg_set(), gtk_object_arg_get(),
8110         gtk_object_args_collect(),
8111         gtk_object_default_construct(),
8112         gtk_object_constructed(),
8113         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
8114         removed nsignals, signals and n_args members from GtkObjectClass.
8115         (gtk_object_new): use g_object_new_valist().
8116         (gtk_object_set): use g_object_set_valist().
8117         (gtk_object_get): use g_object_get_valist().
8118         
8119         * gtk/gtkcompat.h: define gtk_object_default_construct().
8120         
8121         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
8122         g_object_new().
8123
8124         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
8125         fucntions, cleaned up method assignments (make sure your structures
8126         are setup properly before calling out). removed all GTK_CONSTRUCTED
8127         hacks ;)
8128
8129 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
8130
8131         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
8132         off-by-one error in checks. (Dave Lambert)
8133
8134 2000-12-12  Alexander Larsson  <alexl@redhat.com>
8135
8136         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
8137         Don't free gdk_fb_keyboard twice.
8138
8139 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
8140
8141         * gtk/testgtk.c:
8142         (create_tooltips): 
8143         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
8144         use GObject swapped_signal:: properties instead.
8145
8146         * gtk/gtkcellrenderertoggle.c: 
8147         * gtk/gtkcellrenderertextpixbuf.c: 
8148         * gtk/gtkcellrenderertext.c: 
8149         * gtk/gtkcellrendererpixbuf.c: 
8150         * gtk/gtkcellrenderer.c:
8151         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
8152         missing warnings for invalid property ids, install properties
8153         with g_object_class_install_property() now.
8154         
8155         * gtk/gtksignal.c:
8156         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
8157         
8158 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
8159         
8160         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
8161         to determine if a window is the focus widget within
8162         its toplevel.
8163
8164         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
8165         to be boolean.
8166
8167         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
8168         of the case where the container CAN_FOCUS to here instead
8169         of having it in each individual move-the-focus place.
8170
8171         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
8172         focusing to be geometric in a much more obvious sense. Arrowing
8173         around is still non-intuitive because it isn't perfect and
8174         because entries, etc, grab the arrow keys, but it at least
8175         usually will do what you expect now.
8176         
8177         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
8178         file.
8179
8180         * gtk/gtknotebook.c: Change tabs to be a single item in
8181         the focus chain. Make movement of focus on tabs with arrow
8182         keys wrap around.
8183         
8184         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
8185         CHECK_FIND_CHILD macro to give informative error messages
8186         instead of silent returns.
8187
8188         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
8189         flag since we handle GdkReturn on the tabs.
8190
8191         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
8192         windows rather than sending expose events directly.
8193
8194         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
8195         definition for GtkNotebookPage into .c file, since it is private.
8196
8197         * gtk/testgtk.c (create_notebook): Add option for 
8198         testing borderless notebook.
8199
8200         * gtk/testgtk.c (page_switch): Removed egregious poking
8201         around in GTK+ internals.
8202
8203         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
8204
8205         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
8206         properly through gtk_clist_focus. Make the title headers a
8207         single item in the tab-focus chain, and make left-right wrap
8208         around.
8209
8210         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
8211         focus method so that wrapping around works properly.
8212
8213         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
8214         that is handled for the widget now. 
8215
8216 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
8217
8218         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
8219         widgets as TOPLEVEL.
8220
8221         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
8222         TOPLEVEL widgets are containers.
8223
8224         * gtk/gtkinvisible.h: Remove useless include.
8225
8226 2000-12-11  Havoc Pennington  <hp@redhat.com>
8227
8228         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
8229         Handle chopping off \r\n and 0x2029 in addition to \n before
8230         passing to PangoLayout
8231
8232         * gtk/gtkimcontextsimple.c
8233         (gtk_im_context_simple_get_preedit_string): 
8234         return an empty string if no match is pending
8235
8236         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
8237         assertion that the returned preedit string was sane
8238
8239         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
8240         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
8241         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
8242
8243 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
8244
8245         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
8246         Fix up finalizer to chain to its parent.
8247
8248 2000-12-11  Alexander Larsson  <alexl@redhat.com>
8249
8250         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
8251         Clearified the difference between the keyboard types. Wrote a note
8252         about the magic sysrq key to get out of raw mode.
8253
8254 2000-12-09  James Henstridge  <james@daa.com.au>
8255
8256         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
8257         member to hold masks for detecting the start of a protocol packet.
8258         (mouse_devs): add packet start masks for ps2 and ms device types.
8259         Left the mask for fidmour blank, as I have no idea what it should
8260         be.
8261         (handle_mouse_io): skip bytes until we get to the start of a
8262         packet.  My Logitech mouse seems to be passing an extra NULL pad
8263         byte, and GPM does a similar thing here.
8264         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
8265         this is the ms mouse driver.
8266         (gdk_fb_mouse_ms_packet): fix up button handling, which was
8267         completely broken except for button1.  It was checking the wrong
8268         bit in the packet for the status of the right mouse button, and
8269         wrongly assuming right == button2 rather than 3.  I fixed that and
8270         also added support for middle button (button2).
8271
8272 2000-12-08  Havoc Pennington  <hp@redhat.com>
8273
8274         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
8275         that cause a segfault on text insertion
8276
8277         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
8278         warning
8279
8280         * gtk/gtktextiter.c (test_log_attrs): use
8281         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
8282
8283         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
8284         Get log attrs for a line, using a cache stored on the buffer
8285         
8286         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
8287         reported by Jeff Franks
8288
8289 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8290
8291         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
8292         /dev/ttyS0 -> /dev/mouse
8293
8294 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8295
8296         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
8297         Added dummy gdk_fontset_load.
8298
8299 2000-12-08  Alexander Larsson  <alexl@redhat.com>
8300
8301         * docs/README.linux-fb:
8302         * docs/Makefile.am:
8303         Initial GtkFB docs.
8304         
8305         * gdk/linux-fb/Makefile.am:
8306         Define GDK_DATA_PREFIX.
8307
8308         * gdk/linux-fb/gdkmain-fb.c:
8309         Fix typo.
8310         Change default display to /dev/fb0.
8311
8312         * gdk/linux-fb/gdkpango-fb.c:
8313         Add $(prefix)/share/fonts/ to font path.
8314         
8315 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8316
8317         * gdk/linux-fb/gdkkeyboard-fb.c:
8318         New file containing the abstracted keyboard driver. Most code
8319         taken from gdkinput-ps2.c
8320
8321         * gdk/linux-fb/gdkinput-ps2.c:
8322         Removed file.
8323         
8324         * gdk/linux-fb/Makefile.am:
8325         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
8326
8327         * gdk/linux-fb/gdkcolor-fb.c:
8328         display->fb was renamed to display->fb_fd.
8329
8330         * gdk/linux-fb/gdkcursor-fb.c:
8331         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8332
8333         * gdk/linux-fb/gdkinput.c:
8334         Moved gdk_input_init here from gdkinput-ps2.c
8335
8336         * gdk/linux-fb/gdkmain-fb.c:
8337         display->fb was renamed to display->fb_fd.
8338         Now the tty and the console is opened here instead
8339         of in the keyboard driver. Also check GDK_VT to see what
8340         tty to open.
8341         Move gdk_beep () here from gdkinput-ps2.c
8342         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8343
8344         * gdk/linux-fb/gdkmouse-fb.c:
8345         Add header.
8346         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8347         Return correct keyboard modifiers.
8348         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
8349
8350         * gdk/linux-fb/gdkprivate-fb.h:
8351         Add tty and vt info to display.
8352         Add orignal modeinfo storage to display
8353         Update global functions
8354
8355         * gdk/linux-fb/gdkwindow-fb.c:
8356         Added gdk_fb_window_find_focus().
8357         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8358
8359 2000-12-07  Havoc Pennington  <hp@pobox.com>
8360
8361         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
8362         function, noticed by Alex
8363
8364 2000-12-06  Elliot Lee  <sopwith@redhat.com>
8365
8366         * configure.in: Detect freetype properly
8367
8368         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
8369         above.
8370
8371 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8372
8373         * gdk/linux-fb/Makefile.am:
8374         Add gdkmouse-fb.c
8375         
8376         * gdk/linux-fb/gdkmouse-fb.c:
8377         New file. Abstracted the mouse drivers a bit.
8378
8379         * gdk/linux-fb/gdkcursor-fb.c:
8380         The cursor hide/show functions was moved here from gdkinput-ps2.c.
8381
8382         * gdk/linux-fb/gdkinput-ps2.c:
8383         Removed old mouse handling code. Moved cursor handling code
8384         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
8385         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
8386         gdk_mouse_get_info.
8387
8388         * gdk/linux-fb/gdkmain-fb.c:
8389         Pass NULL pointers for x,y in gdk_mouse_get_info call.
8390
8391         * gdk/linux-fb/gdkprivate-fb.h:
8392         Removed public gdk_fb_find_common_ancestor, added and renamed
8393         functions for the new mouse handling code.
8394
8395         * gdk/linux-fb/gdkwindow-fb.c:
8396         Moved gdk_fb_window_send_crossing_events here. added global
8397         variable gdk_fb_window_containing_pointer. made
8398         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
8399         renamed to gdk_mouse_get_info.
8400
8401 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8402
8403         * gdk/linux-fb/gdkevents-fb.c:
8404         Update to match latest gmain/gsource changes.
8405
8406         * gdk/linux-fb/gdkinput-ps2.c:
8407         Bogus gdk_keymap_get_entries_for_keycode implementation so that
8408         it links. Will be implemented later.
8409
8410 2000-12-03  Havoc Pennington  <hp@pobox.com>
8411
8412         * gdk/Makefile.am: add gdkkeys.[hc]
8413
8414         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
8415         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
8416
8417         * acconfig.h, configure.in: add checks and command line options
8418         for XKB
8419
8420         * gdk/x11/gdkkeys-x11.c: Implement the above functions
8421         
8422         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
8423         and group in the key event
8424
8425         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8426         field with the low-level hardware key code, and a group
8427         field with the keyboard group
8428
8429         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
8430         and declare a couple globals used for keymap handling
8431         
8432         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
8433         hold down Shift-Control and type a hex number to get a Unicode 
8434         character corresponding to the hex number
8435         (gtk_im_context_simple_get_preedit_string): Fix cursor position
8436         (return bytes not chars)
8437
8438 2000-12-05  Elliot Lee  <sopwith@redhat.com>
8439
8440         * gdk/gdkcolor.h: Make GdkColor specify element sizes
8441         to avoid waste on 64-bit platforms.
8442
8443 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
8444
8445         * INSTALL: Fix link to PNG home, remove reference
8446         to fribidi.
8447
8448         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
8449         
8450         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
8451         tested.)
8452
8453         * gtk/gtkcheckmenuitem.c: Permanently turn on
8454         always_show_toggle.
8455
8456         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
8457         be NULL. (Vladimir Klebanov, #26545)
8458
8459         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
8460         some signed/unsigned comparison problems. (#6510,
8461         David Kaelbling)
8462
8463         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
8464         return type to boolean (Oskar Liljeblad, #18648)
8465
8466 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8467
8468         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
8469         Remove bogus colormap setting.
8470
8471 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8472
8473         * gdk/linux-fb/gdkcolor-fb.c:
8474         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
8475
8476         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
8477         Must set colormap.
8478         
8479 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
8480
8481         * docs/tutorial/gtk-tut.sgml: DND updates
8482
8483 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
8484
8485         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8486         Remove old debug g_warning().
8487         (gdk_fb_draw_drawable): The src argument can be either a wrapper
8488         or an implementation, just pass the implementation to draw_drawable_2.
8489         
8490         * gdk/linux-fb/gdkprivate-fb.h:
8491         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
8492
8493         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8494         clear and invalidate area when window is destroyed.
8495         (send_map_events): Remove old commented out code.
8496
8497 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8498
8499         * gdk/linux-fb/gdkpango-fb.c:
8500         Use italic instead of oblique in font aliases.
8501         
8502         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
8503         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
8504         other unsupported functions.
8505
8506 2000-12-04  Havoc Pennington  <hp@redhat.com>
8507
8508         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8509
8510         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8511
8512         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8513
8514         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8515         hack to avoid infinite loops (synthetic expose event) - 
8516         Owen has more appropriate fixes in a branch he'll check in later.
8517
8518         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8519         separator, CR, and CRLF as line ends
8520
8521         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8522         into lines using pango_find_paragraph_boundary(); other bits of
8523         the widget are still going to be broken if the boundary isn't '\n'
8524         though
8525
8526 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8527
8528         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8529         multiply.
8530
8531         * gdk/linux-fb/gdkpango-fb.c:
8532         Copied some 26.6 scaling macros from pango to clean up the rounding.
8533         (pango_fb_font_get_glyph_info): Correct sign on x value.
8534
8535         * gdk/linux-fb/gdkprivate-fb.h:
8536         Removed unreferenced external functions.
8537
8538         * modules/linux-fb/Makefile.am: Use ` instead of '.
8539
8540         * modules/linux-fb/basic.c:
8541         Remove dead code. In particular the dummy lang engine which broke all
8542         pango layouts in GtkFB. Don't include tables-big.i anymore.
8543
8544         * modules/linux-fb/tables-big.i:
8545         Upgrade to latest version from pango. Left for reference, basic_ranges
8546         moved to basic.c.
8547         
8548 2000-12-04  Havoc Pennington  <hp@redhat.com>
8549
8550         Fix bugs Alex found:
8551         
8552         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8553         to "draw"
8554
8555         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8556
8557         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8558
8559         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8560         implementation in here, apparently the expose() implementation was
8561         dead code.
8562
8563 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8564
8565         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8566         Return positive descent.
8567
8568 2000-12-02  Havoc Pennington  <hp@pobox.com>
8569
8570         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8571         method and signal
8572         
8573         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8574         calls gdk_window_process_updates() to push the exposes through
8575         (gtk_widget_class_init): No more draw signal, no
8576         gtk_widget_real_draw()  
8577         
8578         * gtk/gtkbin.c (gtk_bin_draw): remove
8579
8580         * gtk/gtkbox.c (gtk_box_draw): remove
8581
8582         * gtk/gtkbutton.c (gtk_button_draw): remove
8583
8584         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8585
8586         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8587
8588         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8589
8590         * gtk/gtkclist.c (gtk_clist_draw): remove
8591
8592         * gtk/gtkentry.c (gtk_entry_draw): remove
8593
8594         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8595
8596         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8597
8598         * gtk/gtkframe.c (gtk_frame_draw): remove
8599
8600         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8601
8602         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8603
8604         * gtk/gtklayout.c (gtk_layout_draw): remove
8605
8606         * gtk/gtklist.c (gtk_list_draw): remove
8607
8608         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8609
8610         * gtk/gtkmenu.c (gtk_menu_draw): remove
8611
8612         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8613
8614         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8615
8616         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8617
8618         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8619
8620         * gtk/gtkpacker.c (gtk_packer_draw): remove
8621
8622         * gtk/gtkrange.c (gtk_range_draw): remove
8623
8624         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8625
8626         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8627
8628         * gtk/gtktable.c (gtk_table_draw): remove
8629
8630         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8631
8632         * gtk/gtktext.c (gtk_text_draw): remove
8633
8634         * gtk/gtktextview.c (gtk_text_view_draw): remove
8635
8636         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8637
8638         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8639
8640         * gtk/gtktree.c (gtk_tree_draw): remove
8641
8642         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8643
8644         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8645
8646         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8647
8648         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8649
8650         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8651
8652         * gtk/gtkwindow.c (gtk_window_draw): remove
8653
8654 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8655
8656         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8657         a GtkToggleButton is both insensitive and active, it was being
8658         drawn by the GtkButton draw handler which doesn't check the
8659         state. Now it's calling gtk_toggle_button_paint instead.
8660         
8661 2000-12-01  Havoc Pennington  <hp@redhat.com>
8662
8663         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8664         dangling pointers to the appearance attributes from the 
8665         line display
8666
8667         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8668         width/height to mean "full width/height of drawable"
8669
8670         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8671         click to select word/line
8672         
8673         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8674         when getting log attrs. Get a slice, so that pixmaps and stuff
8675         are properly handled.
8676
8677         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8678         paste into the selection (replaces selection now, previously
8679         crashed or added to selection). Reveals longstanding btree bug -
8680         select multiple lines, middle-click on the selection, boom. This
8681         isn't related to my changes though.
8682
8683         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8684         PangoLogAttrs changes
8685         (gtk_entry_move_backward_word): ditto
8686
8687         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8688         functions return bool whether the iter moved onto a
8689         dereferenceable position.
8690  
8691         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8692         functions for motion in terms of display lines.
8693
8694         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8695         get the buffer a mark is inside
8696         
8697 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8698
8699         * gdk/linux-fb/Makefile.am:
8700         * modules/linux-fb/Makefile.am:
8701         Freetype 2 final uses freetype-config
8702
8703         * gdk/linux-fb/gdkpango-fb.c:
8704         Upgrade to use Freetype 2 final.
8705         More flexible support for font aliases, this also fixes a bug with
8706         GtkFontSelector, as the aliases must be visible in the font/family list,
8707         or GtkFontSelector reads uninitialized memory.
8708
8709 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8710
8711         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8712         XGetIMValues to properly terminate variable argument list, and do
8713         NULL return check for ic_values and xim_styles.
8714
8715         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8716         Restore preedit state after XmbResetIC().
8717         
8718         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8719         XvaCreateNestedList() should take XvaNestedList, but not
8720         XvaNestedList*.
8721
8722         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8723         preedit_draw_callback, preedit_caret_callback): Match
8724         "preedit-changed" signal name to "preedit_changed" to be
8725         consistent to the spec.
8726
8727         * gtk/gtkimcontextsimple.c (check_table):
8728         Match "preedit-changed" to "preedit_changed" to be consistent
8729         to the spec.
8730
8731 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8732
8733         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8734         gc->clip_region == NULL>
8735
8736 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8737
8738         Changes by Hans Breuer:
8739         
8740         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8741         Dont't use negative width and height as max_hints. This fixes
8742         Owen's recent testgtk changes for win32.
8743
8744         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8745         gdk_win32_hdc_release): These are exported and may be called with
8746         other drawable types than our GdkDrawableImplWin32 (?).
8747
8748         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8749         so always #define USE_BACKING_STORE.
8750
8751         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8752         of printf for debugging output.
8753
8754         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8755         
8756         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8757
8758         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8759         declaration.
8760
8761         * gtk/gtktexttypes.h: Ditto.
8762
8763         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8764         (GDK_VoidSymbol) also if in case of arg check failure.
8765
8766         * gtk/gtkimcontextsimple.c
8767         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8768         position to the pointer, but to the variable it points to.
8769
8770         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8771
8772         * gtk/gtk.def: Updates.
8773
8774 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8775
8776         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8777         GTK_TYPE_TREE_MODEL.
8778
8779 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8780
8781         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8782         Set the size of the font from the description.
8783         (gdk_text_width): Gross hack that calculates the width
8784         of text by text_length * size/2. This is necessary because
8785         GtkLabel does some ugly gtk_string_width call to calculate
8786         an good size.
8787         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8788
8789 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8790
8791         * docs/tutorial/gtk-tut.sgml: DND updates
8792
8793 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8794
8795         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8796         If you pass width or height == 0 to gdk_window_clear_area they
8797         should be calculated from the window size.
8798
8799 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8800
8801         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8802         a grab, but no grab-cursor, use the cursor from the grabbed
8803         window. (gdk_fb_window_send_crossing_events): Send normal
8804         enter/leave notifications if grab and owner_events == TRUE.
8805
8806 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8807
8808         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8809         Do implicit button grabs, even if the window doesn't
8810         want the event.
8811         (gdk_fb_window_send_crossing_events): If there is a
8812         grab, only the grabbed window gets normal enter/leave
8813         notifications. On ungrab go from grabbed window to current.
8814         Don't send any notification to b when propagating from c -> b.
8815         If setting a grab on window, don't set prev_window.
8816         (handle_mouse_input): Send enter/leave events to the window the
8817         mouse is over, not the grabbed one.
8818         
8819 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8820
8821         * gdk/gdkregion-generic.c: Zap warning.
8822         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8823         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8824
8825 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8826
8827         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8828         The cursor should be hidden if it is part of either the
8829         source or destination region. Not only if it is in both.
8830         (gdk_window_set_transient_for): Silence warnings.
8831
8832 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8833
8834         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8835         The default mode in X is Pie Arcs, therefore that is
8836         what Gtk+ uses.
8837
8838 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8839
8840         * gdk/linux-fb/gdkinput-ps2.c:
8841         Implement correct EnterNotify/LeaveNotify:
8842         (gdk_fb_window_send_crossing_events): New function that sends
8843         all GdkCrossingEvents from the last mouse-window to the specified
8844         destination.
8845         (gdk_fb_window_visibility_crossing): Removed function.
8846         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8847         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8848         instead of gdk_window_get_pointer() for better readability.
8849
8850         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8851         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8852
8853         * gdk/linux-fb/gdkprivate-fb.h:
8854         removed gdk_fb_window_visibility_crossing, added
8855         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8856
8857         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8858         New function that finds the least common ancestor of two windows.
8859         (gdk_window_show, gdk_window_hide):
8860         Use gdk_fb_window_send_crossing_events.
8861         (gdk_fb_window_move_resize): Send configure events to toplevel
8862         windows. Use gdk_fb_window_send_crossing_events.
8863
8864 2000-11-27  Havoc Pennington  <hp@redhat.com>
8865
8866         * gtk/gtkprivate.h (enum): Remove a trailing comma
8867
8868 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8869
8870         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8871         the "changed" callback of the adjustment.  We need to redraw the
8872         spin button's arrows when the adjustment's range changes.
8873         (adjustment_changed_cb): Draw the arrows.
8874         (gtk_spin_button_value_changed): Draw the arrows.
8875
8876 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8877
8878         * gdk/linux-fb/gdkselection-fb.c:
8879         Initial selection implementation.
8880
8881         * gtk/gtkselection.c:
8882         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8883         requestor in gtk_selection_request.
8884         
8885         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8886         Added gdk_selection_property atom.
8887
8888         * gdk/linux-fb/gdkprivate-fb.h:
8889         Export _gdk_selection_window_destroyed.
8890         Removed mask_off_x/y from GdkCursorPrivateFB.
8891         Removed hbearing, added top, left to PangoFBGlyphInfo.
8892
8893         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8894         Call _gdk_selection_window_destroyed
8895         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8896         the root window has been created.
8897         (static_dx_hack, static_dy_hack, compare_draw_rects,
8898         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8899         in region. They are already sorted. Instead just traverse them in
8900         reverse if draw_direction < 0.
8901         
8902         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8903         Double-clicks must be sent after the normal button_press.
8904         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8905         
8906         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8907         Pass _gdk_fb_screen_gc instead of NULL.
8908
8909         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8910         Initialize gdk_selection_property.
8911         (gdk_event_make): Remove unused code.
8912
8913         * gdk/linux-fb/gdkcursor-fb.c:
8914         Make the pixmap for the cursor the same size as the mask. Also remove
8915         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8916         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8917         Now the whole cursor is visible.
8918
8919         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8920         Fix bug where xdest+height instead of ydest+height was used
8921         to calculate if the source and dest overlapped. This fixes the
8922         redraw bug when the main window in testgtk was scrolled when
8923         partially covered by a tall window.
8924         Copy rectangles in region in order depending on draw_direction.
8925         Also moved the draw_direction flipping of start_y and end_y into
8926         the gc functions, as this might not be what all of them want.
8927         (gdk_fb_draw_lines): Support dashed lines.
8928         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8929         so that the text is positioned correctly (was 1 pixel high).
8930
8931         gdk/linux-fb/gdkgc-fb.c:
8932         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8933         all lines were drawn a pixel to short. Also checked the default of
8934         the rest of the values, and they're the same as X now.
8935
8936         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8937         Clean up pixel positioning of the glyphs. Just use bgy->top and
8938         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8939         to all divisions to get correct rounding behaviour.
8940
8941         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8942         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8943         Moved start_y/end_y flip into draw_drawable implementations.
8944         Flip also x rendering when draw_direction < 0.
8945         Remove unneccesary multiply with draw_direction.
8946
8947 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8948
8949         * docs/tutorial/gtk-tut.sgml:
8950           - get rid of gtk_toggle_button_toggled FUD
8951           - start DND section - needs work - based on:
8952                 http://wolfpack.twu.net/docs/gtkdnd/
8953
8954 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8955
8956         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8957         Correct calculation of font metrics. Now GtkEntrys have sane
8958         size.
8959
8960 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8961
8962         * gdk/gdktypes.h:
8963         Add new type GdkSpan
8964         
8965         * docs/reference/gdk/gdk-sections.txt,
8966         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8967         gdk/gdkregion.h:
8968         Implement and document gdk_region_spans_intersect_foreach.
8969
8970         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8971         Add new file gdkrender-fb.c which contains all core
8972         rendering code.
8973         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8974         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8975         (optimized rectangle fillers).
8976
8977         * gdk/linux-fb/gdkdrawable-fb2.c:
8978         Move all rendering code to gdkrender-fb.c.
8979         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8980         Use the new span intersection functions in gdk_fb_fill_spans.
8981         gdk_fb_draw_rectangle() clips filled rectangles and calls
8982         gc->fill_rectangle with the result.
8983         gdk_fb_fill_spans() gets extra argument "sorted".
8984
8985         * gdk/linux-fb/gdkevents-fb.c:
8986         Remove unused includes and defines.
8987         New function gdk_fb_get_time() to get correct time for events.
8988
8989         * gdk/linux-fb/gdkinput-ps2.c:
8990         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8991         Make sure to set the time of all events.
8992
8993         * gdk/linux-fb/gdkmain-fb.c:
8994         Use gdk_fb_get_time ().
8995
8996         * gdk/linux-fb/gdkprivate-fb.h:
8997         New virtual GC calls: fill_span & fill_rectangle.
8998         Export gdk_fb_get_time().
8999         gdk_fb_fill_spans() gets extra argument "sorted".
9000
9001         * gdk/linux-fb/mi*.c:
9002         Use GdkSpan instead of GdkRectangle.
9003         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
9004         from XFree 4 source)
9005         
9006 2000-11-22    <jrb@redhat.com>
9007
9008         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
9009         reversing the order in an if statement will do.  Doing so managed
9010         to make the treemodelsort half work.  Other half will follow after
9011         I get the insert function fully fixed.
9012
9013 2000-11-21  Elliot Lee  <sopwith@redhat.com>
9014         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
9015         more than 2 bits. Besides, I need to implement an evil hack. :)
9016
9017 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
9018
9019         * docs/tutorial/gtk-tut.sgml: minor corrections
9020
9021 2000-11-20  Jonathan Blandford <jrb@redhat.com>
9022         * gtk/gtktreemodelsort.h: Add convertion functions to let you
9023           convert to and from relative path's and iters.
9024
9025         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
9026           testing sorting functions a bit better.  Currently broken -- will
9027           fix in morning.
9028
9029 2000-11-20  Havoc Pennington  <hp@redhat.com>
9030
9031         * gtk/gtkwidget.c: Documented a bunch of functions in here
9032         (gtk_widget_realize): Warn if you try to realize
9033         a widget with no parent that isn't a toplevel
9034         (gtk_widget_intersect): return a gboolean
9035
9036 2000-11-20  Havoc Pennington  <hp@redhat.com>
9037
9038         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
9039         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
9040         scrolling to be implemented in GDK to finish. Also, right now
9041         we just size_allocate all children on every layout change,
9042         which is pretty lame. Test commented out of testtext.c, 
9043         until it works better.
9044
9045 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
9046
9047         * gdk/linux-fb/gdkdrawable-fb2.c:
9048         Removed unused arguments from gdk_fb_drawable_get_pixel().
9049
9050         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
9051         Renamed fidur specific mouse packet data in MouseDevice to
9052         generic. Used it in ps2 mouse handling code to avoid blocking
9053         reads.
9054
9055 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
9056
9057         * demos/gtk-demo/main.c: Changed to have the list become
9058         non-italic when the demo window is destroyed through an external
9059         event (like a close button).  Doing so found three bugs in the
9060         widget.
9061
9062         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
9063
9064         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
9065         we actually set the cell.
9066
9067         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
9068
9069         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
9070         free a leaked path.  Thanks memprof.
9071
9072 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
9073
9074         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
9075         off-by-one error when destroying allocated segments
9076         on failure. (Elliot)
9077
9078 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
9079
9080         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
9081         memleaks found by Evan Martin.
9082
9083 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
9084
9085         * Released 1.3.2
9086         
9087         * NEWS: Updates for 1.3.2
9088
9089 2000-11-17  Tor Lillqvist  <tml@iki.fi>
9090
9091         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
9092         but in general for window system specific events.
9093
9094         * gtk/gtk.def
9095         * gtk/makefile.mingw.in
9096         * gtk/makefile.msc.in: Update.
9097         
9098         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
9099
9100 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
9101
9102         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
9103         distribute gtk.immodules.
9104
9105         * gtk/Makefile.am (install-data-local): Don't install the
9106         gtk.immodules file created for the uninstalled modules;
9107         instead run gtk-query-immodules after install
9108
9109 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9110
9111         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
9112         -rpath to the right install location.
9113
9114         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
9115         -export-dynamic.
9116
9117         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
9118         properly.
9119
9120 2000-11-15  Havoc Pennington  <hp@pobox.com>
9121
9122         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
9123         patch from Mikael Hermansson to temporarily stop blinking while
9124         the user is using the keyboard to type or navigate. 
9125
9126         Also, when blinking, stay on for longer than we stay off. Also,
9127         return from start_cursor_blink if !cursor_visible, to save
9128         checking that flag all over the place before we call
9129         start_cursor_blink.
9130
9131 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
9132
9133         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
9134         only contain a "fontset" line, which is now ignored.
9135
9136         * gtk/gtkentry.c (gtk_entry_button_release): Make 
9137         double-click-to-select-word work.
9138         
9139 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
9140
9141         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
9142         Don't move back one char when we are actually at the end of the 
9143         paragraph.
9144
9145 2000-11-15  Robert Brady  <robert@suse.co.uk>
9146
9147         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
9148         'o' < 'p'.
9149         
9150         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
9151         bind_textdomain_codeset.
9152
9153         (gtk_init_check): Make the warning about translating default:LTR
9154         sterner.
9155         
9156 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
9157
9158         * **/Makefile.am : remove unecessary rules for win32-specific
9159         config-substituted targets. If you want these rules, use
9160         --enable-maintainer-mode (called automatically by autogen.sh).
9161         Stops a lot of unneccessary make-time warnings.
9162
9163         * gtk/gtktext{layout,display}.c: Factor in total width as
9164         well as screen when figuring alignment for word-wrap as well as
9165         no wrap; this is necessary to handle lines that cannot be wrapped
9166         at all.
9167
9168 2000-11-15  Havoc Pennington  <hp@redhat.com>
9169
9170         * gtk/testtext.c: Implement essential color cycling feature
9171
9172 2000-11-15  Havoc Pennington  <hp@redhat.com>
9173
9174         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
9175         when we invalidate the main window.
9176
9177         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
9178         GtkTextView will now invalidate the side windows for us when text
9179         changes.
9180
9181 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
9182
9183         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
9184         unconditionally, since we may need to update the horizontal
9185         scrollbars even if the height didn't change.
9186
9187         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
9188         the extra attrs, since some of them affect size.
9189
9190         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
9191         x_offset correctly.
9192
9193 2000-11-15  Havoc Pennington  <hp@redhat.com>
9194
9195         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
9196         don't move the first line out into the margin, instead move the
9197         whole paragraph in order to make space for the first line within 
9198         the margin
9199
9200 2000-11-15  Havoc Pennington  <hp@redhat.com>
9201
9202         * gtk/gtktextview.c (changed_handler): offset redraw rect by
9203         xoffset in addition to yoffset, so horizontal scrolling doesn't
9204         break redraws
9205
9206 2000-11-15  Havoc Pennington  <hp@redhat.com>
9207
9208         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
9209         from the cursor
9210         (render_layout_line): fix reversed test that caused weird
9211         underlines to get drawn
9212
9213 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9214
9215         * gdk/linux-fb/gdkprivate-fb.h:
9216         Fix debug macros.
9217         
9218 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9219
9220         * gdk/linux-fb/gdkprivate-fb.h:
9221         Added virtual functions set_pixel, get_color,
9222         fill_span and draw_drawable to the GC.
9223         Added global _gdk_fb_screen_gc to use instead of
9224         NULL when drawing to the screen.
9225         Added _gdk_fb_gc_calc_state() prototype.
9226
9227         * gdk/linux-fb/gdkgc-fb.c:
9228         Call _gdk_fb_gc_calc_state() on any gc state change.
9229
9230         * gdk/linux-fb/gdkglobals-fb.c:
9231         Add _gdk_fb_screen_gc
9232                 
9233         * gdk/linux-fb/gdkdrawable-fb2.c:
9234         _gdk_fb_gc_calc_state() calculates best functions
9235         for the GC state and depth.
9236         Moved bpp specialized code to separate functions.
9237         Added optimized 24 bpp AA draw_drawable.
9238
9239         * gdk/linux-fb/gdkevents-fb.c:
9240         Silence gcc warning.
9241
9242         * gdk/linux-fb/gdkimage-fb.c:
9243         Use _gdk_fb_screen_gc
9244
9245         * gdk/linux-fb/gdkwindow-fb.c:
9246         Init and use _gdk_fb_screen_gc
9247
9248         * gdk/linux-fb/mitypes.h:
9249         Remove unused types.
9250
9251 2000-11-14  Havoc Pennington  <hp@pobox.com>
9252
9253         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
9254         to pixels
9255
9256 2000-11-14  Havoc Pennington  <hp@pobox.com>
9257
9258         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
9259
9260         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
9261         unknown char, no real reason we were using a variable. 
9262         Remove gtk_text_unknown_char variable. Fix all the text widget
9263         files accordingly.
9264
9265         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
9266         since the Unicode spec seems to prefer that character for our
9267         purposes.
9268
9269 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
9270
9271         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
9272         value of g_getenv() isn't freeable, so g_strdup it.
9273
9274         * modules/input/inuktitut.c: Inuktitut input method.
9275
9276         * modules/input/Makefile.am: Build this.
9277         
9278 2000-11-14  Elliot Lee  <sopwith@redhat.com>
9279
9280         * gtk/Makefile.am: Install gtk.immodules, needed for operation
9281         of gtk programs.
9282
9283 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
9284
9285         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
9286         reversed > that was causing Home to go to end of previous line.
9287
9288         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
9289         modified-keypresses (leave for bindings.)
9290
9291         * modules/input/Makefile.am: Remove useless -export-dynamic
9292         from module LDFLAGS.
9293
9294 2000-11-14  Havoc Pennington  <hp@redhat.com>
9295
9296         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
9297         higher.
9298
9299         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
9300         account. Also, render rise, underline, background, etc. for
9301         pixbufs as well as text. Also, draw underlines one pixel higher.
9302
9303         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
9304         PangoAttribute for the rise, so it gets drawn properly. Also,
9305         add the GtkTextAppearance attribute for pixbuf/widget segments
9306         as well; we should go ahead and have rise, underline, background,
9307         stipple work for those
9308
9309         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
9310         Pango
9311
9312 2000-11-15  Tor Lillqvist  <tml@iki.fi>
9313
9314         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
9315
9316         * gtk/gtk.def: Update.
9317
9318         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
9319         included.
9320         (gtk_rc_get_im_module_file): Use run-time installation directory
9321         on Win32.
9322
9323         * gdk/win32/rc/gdk.rc: Remove.
9324         * gdk/win32/rc/gdk.rc.in: New file.
9325         * gdk/win32/rc/Makefile.am: New file
9326         * gdk/win32/Makefile.am: Corresponding changes.
9327
9328         * gtk/gtk.rc: Remove.
9329         * gtk/gtk-win32.rc.in: New file.
9330         * gtk/Makefile.am: Corresponding changes.
9331
9332         * configure.in: Corresponding changes.
9333
9334         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
9335         has a built gtkcompat.h. Developers using CVS code on Win32 can
9336         hand-edit it from gtkcompat.h.in.
9337
9338         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
9339         gtkcompat.h from gtkcompat.h.win32.
9340
9341 2000-11-14  Havoc Pennington  <hp@redhat.com>
9342
9343         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
9344         to default to GDK_ACTION_MOVE if the drag is within a single
9345         widget. Defaults to GDK_ACTION_COPY between widgets.
9346
9347 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
9348
9349         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
9350
9351         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
9352
9353         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
9354         srcdir != builddir
9355
9356         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
9357
9358         * configure.in (GTK_VERSION): Up to 1.3.2
9359
9360         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
9361         gtkimcontextxim.h
9362
9363         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
9364         missing doc comment.
9365
9366 2000-11-14  Alexander Larsson  <alexl@redhat.com>
9367
9368         * modules/linux-fb/basic.c:
9369         Use the glib iconv wrappers.
9370
9371 2000-11-13  Havoc Pennington  <hp@pobox.com>
9372
9373         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
9374         still more bugs.
9375
9376         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
9377         scroll the GdkWindows before realization.
9378
9379 2000-11-13  Havoc Pennington  <hp@redhat.com>
9380
9381         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
9382         where GC didn't always get updated properly
9383
9384         * demos/gtk-demo/textview.c (create_tags): Use subattributes
9385         of fonts instead of setting the entire font
9386
9387         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
9388         setting entire font
9389
9390         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
9391
9392         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
9393         a bunch of individually-settable font attributes. You can still 
9394         use the "font" and "font_desc" args, they just set all the font
9395         attributes at once.
9396
9397 2000-11-13 Elliot Lee <sopwith@redhat.com>
9398
9399         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
9400
9401 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
9402
9403         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
9404         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
9405
9406         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
9407         work better.
9408
9409 2000-11-13  Havoc Pennington  <hp@redhat.com>
9410
9411         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
9412         the module file.
9413
9414         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
9415         dest->language
9416
9417         * gtk/testtext.c: Test pixels above/below/inside paragraphs
9418         settings
9419
9420         * gtk/gtktextview.c: Implement object args and setters/getters for
9421         all the aspects of the GtkTextAttributes that are not set from
9422         GtkWidget attributes. This is spacing, justification, margins,
9423         etc.
9424
9425         (gtk_text_view_set_arg)
9426         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
9427         args
9428         (gtk_text_view_class_init): Add args for justify, left_margin,
9429         right_margin, indent, and tabs
9430         
9431
9432         * gtk/gtktextlayout.c (set_para_values): fix to display indent
9433         attribute properly
9434
9435         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
9436         replace with indent attribute
9437
9438         * gtk/gtktextlayout.c (set_para_values): multiply indent by
9439         PANGO_SCALE
9440
9441         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
9442         rearranging code to do that
9443         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
9444         i.e. don't subtract the top_margin first, just to keep
9445         all margin-futzing in one place.
9446
9447         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
9448
9449         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
9450         special case of last line, Pango now handles this itself.
9451         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
9452         Y coordinate
9453         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
9454         (find_display_line_above): wasn't moving the byte index as it
9455         iterated over lines, so always returned byte 0. Also, port to use
9456         PangoLayoutIter.
9457         (find_display_line_below): same problem as
9458         find_display_line_above. Also, port to use PangoLayoutIter.
9459
9460 2000-11-13  Alexander Larsson  <alexl@redhat.com>
9461
9462         * gdk/linux-fb/*.[ch]:
9463         Massive reindent to gtk+ standard. My hands hurt.
9464
9465         * gdk/linux-fb/gdkcolor-fb.c:
9466         Move GdkColorPrivateFB from inherited to windowing_data
9467
9468         * gdk/linux-fb/gdkcursor-fb.c:
9469         _gdk_cursor_new_from_pixmap made static
9470
9471         * gdk/linux-fb/gdkdnd-fb.c:
9472         GdkDragContextPrivate moved to windowing_data
9473
9474         * gdk/linux-fb/gdkdrawable-fb2.c:
9475         Removed endian.h, use glib endianness macros instead
9476         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
9477         and GDK_DRAWABLE_IMPL_FBDATA
9478
9479         * gdk/linux-fb/gdkfont-fb.c:
9480         Add empty gdk_font_load(). Needed for linking of Gtk+.
9481
9482         * gdk/linux-fb/gdkimage-fb.c:
9483         Removed endian.h, use glib endianness macros instead
9484         Moved GdkImagePrivateFB to windowing_data
9485         gdk_image_new_bitmap didn't always allocate enough
9486         memory.
9487
9488         * gdk/linux-fb/gdkinput-ps2.c:
9489         Added semi-working support for MS serial mice.
9490
9491         * gdk/linux-fb/gdkprivate-fb.h:
9492         s/GdkWindowPrivate/GdkWindowObject/
9493         Removed GdkWindowPrivate typedef
9494         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
9495         Removed GDK_DRAWABLE_P
9496         Move GdkColorPrivateFB from inherited to windowing_data
9497         Moved GdkImagePrivateFB to windowing_data
9498
9499         * gdk/linux-fb/gdkvisual-fb.c:
9500         Removed some unused debug code.
9501
9502         * gdk/linux-fb/gdkwindow-fb.c:
9503         Use stock cursors instead of including X headers.
9504         s/GdkWindowPrivate/GdkWindowObject/
9505
9506         * gdk/linux-fb/mitypes.h:
9507         Removed unused types.
9508
9509         * modules/linux-fb/basic.c:
9510         Use the pango fribidi wrappers.
9511
9512 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9513
9514         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9515         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9516         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9517         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9518         GEqualFunc where applicable.
9519         
9520         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9521         pango_font_description_equal as changed in pango.
9522         
9523         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9524
9525         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9526
9527         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9528
9529         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9530
9531         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9532
9533         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9534
9535         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9536         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9537
9538         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9539         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9540
9541 2000-11-12  Havoc Pennington  <hp@pobox.com>
9542
9543         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9544         dir to datadir/gtk+-2.0/demo
9545
9546         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9547         sorts of text widget and Pango font bugs. Urgh.
9548
9549         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9550
9551         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9552         tree that you should double click to see the demo. Fix 
9553         types of variables to reflect changed return values from 
9554         GtkTreeStore and GtkTreeViewColumn constructors.
9555
9556         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9557         newly-created buffer to prepare for GObject semantics
9558
9559         * gtk/testtext.c: don't leak the buffer with GObject semantics
9560
9561         * gtk/testtextbuffer.c: ditto
9562         
9563 2000-11-12  Havoc Pennington  <hp@pobox.com>
9564
9565         Rename this testgtk to gtk-demo to avoid confusion, and 
9566         install it so people can use it as a supplement to 
9567         the documentation.
9568         
9569         * demos/gtk-demo: Moved from demos/testgtk
9570
9571         * demos/testgtk: Removed
9572
9573         * configure.in: make Makefile in gtk-demo
9574         
9575         * demos/gtk-demo/Makefile.am: Install sample source to 
9576         datadir/gtk-demo (maybe there's a better place?), and 
9577         rename the binary to gtk-demo
9578         
9579         * demos/gtk-demo/main.c (load_file): Load installed sample
9580         source if source isn't found in pwd.
9581
9582 2000-11-09  Havoc Pennington  <hp@pobox.com>
9583
9584         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9585         argument to set the char displayed when visibility == FALSE
9586         (gtk_entry_create_layout): If !entry->visible, replace 
9587         all chars with the "invisible char"
9588
9589         * gtk/testgtk.c: Test the invisible_char deal
9590         
9591 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9592
9593         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9594         can't get a native font in the right encoding.
9595
9596 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9597
9598         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9599         respectively.
9600
9601 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9602
9603         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9604         Fix warning when moving between paragraphs.
9605
9606         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9607         delete => delete_from_cursor, insert => insert_at_cursor
9608
9609 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9610
9611         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9612
9613         * modules/input/imthai-broken.c: A Thai input method for use if
9614         Thai keys are really generating Latin1 keysyms.
9615
9616         * modules/input/Makefile.am: Build these.
9617
9618 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9619
9620         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9621         g_filename_{to,from}_utf8 now takes an extra parameter.
9622
9623         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9624         strftime into UTF-8.
9625
9626         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9627         calendars.
9628
9629         (gtk_calendar_paint_day_names): Draw day names in the right 
9630         place.
9631         
9632 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9633
9634         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9635         problem with using result of g_get_charset() backwards -
9636         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9637
9638         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9639         negative min_width/height and max_width/height to
9640         mean "requisition"; this allows setting a window
9641         to be user-resizable in only one direction easily.
9642
9643         * gtk/testgtk.c (create_main_window): Remove hard-coded
9644         usize - set a default size in the vertical direction.
9645
9646 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9647
9648         * gtk/gtkrange.c: Add some missing casts. Support 
9649         2 and 3 button clicks on the arrows to mean 
9650         "move by pages" and "jump to end". (Like gtkspinbutton)
9651
9652 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9653
9654         * gdk/win32/makefile.msc : reflect build module changes
9655
9656         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9657         from GdkPixmap*, cast implementation member instead.
9658
9659         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9660         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9661         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9662         more Gdi functions return value checking. 
9663         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9664         GdkImagePrivateWin32 *.
9665
9666         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9667         menus useable again. Add #pragma message to keep reminded on this issue.
9668         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9669         windows. This allows to enable backing store on Win32!
9670
9671         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9672         in drawable is of impl type. Correct specific type checks appropriate.
9673  
9674         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9675         GDK_WINDOW_DESTROYED before allocating new resources.
9676
9677         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9678
9679         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9680         (gdk_window_foreign_new) initialize parent handle.
9681         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9682
9683         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9684         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9685         problems (e.g. main buttons in testgtk). 
9686
9687 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9688
9689         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9690         gtk_widget_activate for GDK_Return.
9691
9692         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9693         of preedit cursor position.
9694
9695 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9696
9697         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9698         static.
9699
9700 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9701
9702         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9703         out support for multiple locales; that simple doesn't
9704         work reliably with current Xlib
9705
9706         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9707         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9708         Add support for positioning the cursor within the preedit string.
9709
9710 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9711
9712         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9713         at XIM input method module.
9714
9715         * gtk/gtktextview.c: Check for bindings after passing
9716         events to im context filter.
9717
9718 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9719
9720         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9721         empty attribute lists properly.
9722
9723 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9724
9725         * gtk/queryimmodules.c (main): Return non-zero exit
9726         status if errors were encountered querying any
9727         modules.
9728
9729         * modules/input/Makefile.am (moduledir): remove
9730         leftover bin program target.
9731
9732         * docs/make-todo: Fix typo in error message.
9733
9734 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9735
9736         * configure.in: Add modules/input/Makefile
9737
9738 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9739
9740         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9741         don't include gtkthemes.h.
9742
9743         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9744         to point
9745
9746         * gtk/Makefile.am: Add new .c and .h files, build 
9747         gtk-query-immodules and use it to create a gtk.immodules
9748         file for use of test programs.
9749
9750         * gtk/gtkpreview.c: remove extra blank line.
9751
9752 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9753
9754         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9755         Add the ability to add extra tables beyond the default
9756         one, and also the ability to have compose sequences 
9757         that are prefixes of other compose sequences. 
9758
9759         * gtk/gtkimcontextsimple.c: Export a preedit string which
9760         consists of possible candidates for keystrokes that have
9761         been entered but not yet committed.
9762
9763         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9764         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9765
9766         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9767         Add a function to add input-method switching menu items
9768         to a menu.
9769
9770         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9771         when switching input methods.
9772
9773         * gtk/gtkimcontextsimple.[ch]: Change the format of
9774         the compose table to allow compose tables of different
9775         lengths / sequence.
9776
9777 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9778
9779         * gtk/gtkimmodule.[ch]: Support routines for loading
9780         GtkIMContext implementations dynamically at runtime.
9781
9782         * modules/input/imcyrillic-translit.c: A sample input
9783         method (based on GtkIMContextSimple with an extra table),
9784         which demonstrates preedit strings and the module
9785         system for input modules
9786
9787         * gtk/queryimmodules.c: Program to query the available
9788         input modules and write the results into a file.
9789          
9790         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9791         extra config options "im_module_file" (cache file for
9792         input method modules), and "im_module_path" - path
9793         to look for modules when generating cache file.
9794
9795         This doesn't scale.
9796
9797 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9798
9799         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9800         generic code from gtkthemes into a new abstraction
9801         GtkModule which has the logic for implementing
9802         a loadable module which implements a number of 
9803         GObject types.
9804
9805 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9806
9807         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9808         a class into an interface  
9809         
9810         * gtk/gtkoldeditable.[ch]: Move the old editable
9811         implementation into here, so legacy widgets can
9812         still rely on the implemenation. GtkOldEditable
9813         exports GtkEditable. Make selection handling
9814         code use new text conversion functions (and
9815         handle UTF-8 as a side-effect). Use GtkClipboard
9816         for CLIPBOARD.
9817
9818         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9819         Adopt to match above changes.
9820
9821         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9822         avoid GtkOldEditable implementation. Restructure
9823         to reduce number of places that modify state directly.
9824         Move to GtkBindingSet. Display the preedit string.
9825         Queue recomputation of PangoLayout and scroll position
9826         to improve effiency of doing complex changes naively.
9827         Add a menu with cut/copy/paste and input method selection.
9828
9829 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9830
9831         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9832         to set preedit string and attributes; display preedit string by
9833         inserting string and attributes at cursor when creating the
9834         GtkTextLineDisplay.
9835
9836         * gtk/gtktextlayout.c: Move all conversions between byte
9837         positions in PangoLayout and GtkTextIter into new functions
9838         line_display_iter_to_index/index_to_iter that properly
9839         handle the preedit string.
9840
9841         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9842         it to return const char * (eventually will end up
9843         as GCONST char *, most likely.)
9844
9845         * gtk/gtktextview.[ch]: Handle the preedit string, call
9846         gtk_im_context_reset() as necessary, add a menu to switch
9847         input methods.
9848         
9849         * gtk/gtktextlayout.[ch]: Remove useless
9850         gtk_text_layout_get_log_attrs() function.
9851
9852 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9853
9854         * gdk/gdk.def
9855         * gtk/gtk.def: Update.
9856
9857         * gdk/win32/*.c: Add last argument to g_type_register_static()
9858         calls.
9859
9860         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9861
9862         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9863         generated by older wheel mouse drivers. Get the correct y
9864         coordinate from WM_MOUSEWHEEL messages.
9865
9866         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9867         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9868         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9869         Debugging functions.
9870
9871         * gdk/win32/gdkprivate-win32.h: Declare them.
9872
9873         * gdk/win32/gdkinput-win32.h: Add declaration for
9874         gdk_input_window_destroy().
9875
9876         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9877
9878 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9879
9880         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9881         function to help handle keeping things in sync.
9882
9883 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9884
9885         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9886         BOXED marshallers.
9887
9888         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9889         (gtk_list_store_class_init): use the new BOXED marshallers.
9890
9891         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9892         new_with_values to new_with_types.
9893         (gtk_tree_store_get_column_type): add this.
9894         (gtk_tree_store_class_init): use the new BOXED marshallers.
9895
9896         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9897         mirror some POINTER marshallers.
9898
9899 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9900
9901         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9902         allow more interesting iterators.  Also, made the lifecycle of
9903         iterators more explicit.
9904
9905         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9906
9907         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9908         types.
9909
9910 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9911
9912         * demos/testgtk/menus.c:
9913         Changes to make the new testgtk compile after
9914         gtk_menu_append was removed.
9915
9916         * gdk/linux-fb/gdkdrawable-fb2.c
9917         (gdk_fb_get_depth, gdk_fb_get_visual,
9918         gdk_drawable_impl_fb_class_init): Implement
9919         these drawable functions. Now GtkImages work again.
9920
9921         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9922
9923         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9924         
9925         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9926         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9927         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9928         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9929
9930 2000-11-08  Havoc Pennington  <hp@pobox.com>
9931
9932         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9933         visible_set args, don't know where these had gone, I thought they
9934         used to be there
9935
9936         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9937         now we can test the feature and see that it's totally broken.
9938
9939 2000-11-08  Havoc Pennington  <hp@pobox.com>
9940
9941         Make DND copy pixbufs and tags when source and target share a 
9942         tag table.
9943         
9944         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9945         in-process GTK_TEXT_BUFFER_CONTENTS target
9946         (gtk_text_view_drag_data_received): Paste from
9947         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9948
9949 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9950
9951         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9952         API changes.
9953
9954         * gtk/gtkmenu.c: Add support for scrolling menus.
9955         Remove gtk_menu_append/prepend/insert, these have been moved to
9956         gtkcompat.h as #defines.
9957
9958         * gtk/gtkcompat.h.in:
9959         Add compatibility #defines for gtk_menu_append/prepend/insert
9960
9961         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9962         GtkMenuPositionFunc gets an extra argument push_in.
9963         gtk_menu_append/prepend/insert removed.
9964         
9965         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9966         positioning behaviour to fit to scrolling menus.
9967
9968         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9969         into menuitem->submeny. That is wrong, and broke torn
9970         off submenus of torn off menus, since they were unrealized
9971         when the first menu was unrealized.
9972
9973         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9974         gtk_menu_shell_select_item() since these need to be overridden in
9975         GtkMenu.
9976
9977         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9978         positioning behaviour to fit to scrolling menus.
9979         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9980         the current item so that it is prelighted when the menu pops up.
9981         This is a workaround to the fact that the menu doesn't get the
9982         initial enter event (due to grabs).
9983
9984         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9985         s/gtk_menu_append/gtk_menu_shell_append/
9986
9987         * gtk/gtknotebook.c:
9988         s/gtk_menu_insert/gtk_menu_shell_insert/
9989
9990         * gtk/testgtk.c (create_menu, create_menus):
9991         Create the first menu with 50 items so that menu scrolling
9992         can be tested.
9993         
9994         
9995         Patch from Jonathan Blandford  <jrb@redhat.com>
9996
9997         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
9998         system to handle size requests.  First, we ask what the size of
9999         the toggle is.  Then, when allocating the size, we allocate the
10000         toggle_size first.  This way we can have multiple menu-item
10001         classes w/o needing a seperate class for each.
10002
10003         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
10004         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
10005
10006         * gtk/gtkcheckmenuitem.c
10007         (gtk_check_menu_item_toggle_size_request): New function to handle
10008         the toggle size-request.
10009
10010 2000-11-07  Havoc Pennington  <hp@redhat.com>
10011
10012         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
10013         Half-ass somewhat fix this function, so that scrolling to the
10014         insertion point works. Pango hacking is in the future to really
10015         fix it.
10016
10017         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
10018         length of data, no longer used.
10019
10020         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
10021         method contents in here, get rid of destroy method
10022         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
10023         that were backward. Remove debug spew.
10024         (cut_or_copy): Make the clipboard work with insert_range to
10025         preserve tags and pixbufs, not just the primary selection.
10026
10027 2000-11-07  Havoc Pennington  <hp@redhat.com>
10028
10029         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
10030         to gtk_text_mark_get_visible
10031
10032         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
10033         bug that was generating an invalid iterator
10034
10035         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
10036         ensure_char_offsets() in front of code placing the iter in an
10037         invalid state.
10038
10039         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
10040         make override_location arg const
10041         (paste): Replace the selection if we paste into the 
10042         current selection
10043
10044         * gtk/gtkselection.h: Remove "GtkSelectioData"
10045         (struct _GtkSelectionData): move the definition here.
10046
10047         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
10048         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
10049
10050         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
10051
10052         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
10053         (gtk_text_buffer_insert_range_interactive): implement
10054         (gtk_text_buffer_get_tags): Remove, replaced by
10055         gtk_text_iter_get_tags()
10056
10057         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
10058         limit parameter, to avoid infinite linear scan.
10059         (gtk_text_iter_backward_search): Add search limit
10060         (gtk_text_iter_forward_find_char): Add search limit
10061         (gtk_text_iter_backward_find_char): Add search limit
10062
10063 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
10064
10065         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10066         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
10067         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
10068         gdk/linux-fb/gdkwindow-fb.c:
10069         use g_object_new() instead of g_type_create_instance() which
10070         is a private function for fundamental type implementations.
10071
10072         * gdk/linux-fb/gdkinput-ps2.c:
10073         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
10074         instead just store the current modifier state. Add a (somewhat broken)
10075         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
10076         Rename exported function gdk_input_ps2_get_mouseinfo to
10077         gdk_input_get_mouseinfo.
10078
10079         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
10080         gdk/linux-fb/gdkwindow-fb.c:
10081         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
10082         
10083
10084 2000-11-02  Havoc Pennington  <hp@redhat.com>
10085
10086         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
10087         use stock buttons. Should be 100% source compatible, appropriate
10088         filesel fields now point to dialog->vbox and dialog->action_area.
10089         On the bizarre side, dialog->action_area and filesel->action_area
10090         are not the same widget.
10091         (gtk_file_selection_init): Put some padding around the selection
10092         entry, so it isn't touching the GtkDialog separator.    
10093
10094         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
10095         use stock buttons, etc. Should also be source compatible.
10096         Set the dialog default title in _init not _new().
10097         
10098         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
10099         Use stock buttons; don't put a button box inside the existing
10100         dialog button box. Don't bother with push/pop colormap anymore.
10101
10102         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
10103         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
10104         for message dialog, and necessary for the font selection and color
10105         selection with help and apply buttons.
10106         
10107         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
10108         to the created button widget. Set GTK_CAN_DEFAULT on the button.
10109         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
10110         between buttons, put less padding around the action area.
10111         (gtk_dialog_run): Exit on unmap rather than on destroy. 
10112         This will also exit the loop if the widget is hidden.
10113         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
10114         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
10115         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
10116         special-case delete event.
10117
10118         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
10119         formatting
10120         
10121 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
10122
10123         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
10124         button to temporarily disable position recording in the
10125         "saved position" test.
10126
10127 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
10128
10129         * gtk/gtkthemes.c: added compat code that temporarily implements
10130         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
10131         going to be revamped by owen's upcoming GtkModule patches, but
10132         untill then people want gtk to build, right? ;)
10133
10134 2000-11-04  Havoc Pennington  <hp@pobox.com>
10135
10136         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
10137         list
10138
10139         * docs/Changes-2.0.txt: Add note about
10140         gtk_container_get_toplevels()
10141
10142         * gtk/gtktextview.h: formatting
10143         
10144         * gtk/gtktextview.c: don't start descriptions with "Returns",
10145         confuses gtk-doc
10146
10147 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
10148
10149         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
10150         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
10151
10152 2000-11-03  Havoc Pennington  <hp@redhat.com>
10153
10154         * gtk/gtktexttagtable.c: Docs
10155         (gtk_text_tag_table_size): return a signed int
10156
10157         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
10158         (gtk_text_tag_event): make the event_object a GObject
10159
10160         * gtk/gtktextview.c: Write API docs for all functions.
10161
10162         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
10163         for gtk_text_view_get_window_type() called on one of the private
10164         windows.
10165
10166         * gtk/gtktextview.c: Instead of accessing text_view->buffer
10167         directly, call get_buffer() which demand-creates a default
10168         buffer. So gtk_text_view_new() can be used to create a view with a
10169         default buffer in it, if you just want an empty text box users can
10170         put data in. Useful for GUI builders also.
10171
10172 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
10173
10174         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
10175         the charset encodign portion MUST be in lowercase.
10176         * gtk/gtkrc.az: added file for Azeri language
10177
10178 2000-11-03  Havoc Pennington  <hp@redhat.com>
10179
10180         Get widgets working on the btree/buffer side. Display of them 
10181         still doesn't work.
10182         
10183         * gtk/gtktextview.c: start implementing child widget stuff
10184
10185         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
10186
10187         * gtk/gtktextlayout.c: handle embedded widgets
10188
10189         * gtk/gtktextdisplay.c: handle embedded widgets
10190
10191         * gtk/gtktextchild.c: Implement all the child anchor goo
10192
10193         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
10194         function
10195
10196         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
10197         (insert_pixbuf_or_widget_segment): abstract out common portions of 
10198         creating a child anchor or a pixbuf segment.
10199         (gtk_text_btree_create_child_anchor): new function
10200         (gtk_text_btree_unregister_child_anchor): new function
10201
10202         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
10203         allocate_child signal on GtkTextLayout
10204
10205         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
10206         values
10207         (gtk_text_iter_get_child_anchor): new function
10208
10209         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
10210         default handler for the changed signal, which calls
10211         gtk_text_buffer_set_modified(), instead of just always emitting
10212         changed then calling set_modified() manually. I guess this is
10213         maybe more flexible. It seems logical.
10214
10215 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
10216
10217         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
10218         now.
10219
10220         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
10221
10222 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
10223
10224         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
10225         been marked static.
10226
10227 2000-11-02  Havoc Pennington  <hp@redhat.com>
10228
10229         * gtk/testgtk.c (create_labels): had a test backward
10230
10231         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
10232         fields, so the dest GC ends up with the correct clip origin, 
10233         etc. Fixes a bug where colored labels didn't redraw 
10234         properly.
10235
10236 2000-11-02  Alexander Larsson  <alexl@redhat.com>
10237
10238         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10239         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
10240         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
10241         Add last argument to t_type_register_static call.
10242         
10243         * gdk/linux-fb/gdkdrawable-fb2.c:
10244         Add last argument to t_type_register_static call.
10245         export the get_image drawable virtual function.
10246
10247         * gdk/linux-fb/gdkimage-fb.c:
10248         Add last argument to t_type_register_static call.
10249         rename gtk_image_get to _gdk_fb_get_image and
10250         export it for use by gdkdrawable-fb2.
10251
10252         * gdk/linux-fb/gdkprivate-fb.h:
10253         export _gdk_fb_get_image.
10254
10255         * gdk/linux-fb/gdkselection-fb.c:
10256         Add new api call stubs.
10257
10258         * gtk/Makefile.am:
10259         Missing ( in linux-fb part.
10260
10261         * modules/linux-fb/Makefile.am:
10262         Must link with gdk_pixbuf or get unresolved symbol.
10263
10264 2000-11-01  Havoc Pennington  <hp@pobox.com>
10265
10266         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
10267         GTK_TYPE_TEXT_ITER and BOXED marshallers
10268
10269         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
10270
10271         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
10272         
10273         * gtk/gtk-boxed.defs: add GtkTextIter
10274
10275         * gtk/gtkmarshal.list: Add marshallers for text widget that 
10276         properly use OBJECT and BOXED
10277
10278 2000-11-01  Havoc Pennington  <hp@redhat.com>
10279
10280         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
10281
10282         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
10283         before returning it. 
10284         
10285 2000-11-01  Havoc Pennington  <hp@redhat.com>
10286
10287         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10288         Clip the rectangle to be rendered to the drawable, since
10289         get_from_drawable() requires a region within the drawable
10290
10291 2000-11-01  Havoc Pennington  <hp@redhat.com>
10292
10293         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
10294         from coordinates.
10295
10296 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
10297
10298         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
10299         it isn't NULL.
10300
10301 2000-11-01  Havoc Pennington  <hp@pobox.com>
10302
10303         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
10304         on a label
10305         (gtk_label_finalize): unref the attr list if any.
10306
10307         * gtk/testgtk.c (create_get_image): close test on second click
10308         (make_message_dialog): close dialog if it exists
10309
10310         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
10311
10312         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
10313         gdk-pixbuf
10314
10315         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
10316         from Pango markup format
10317         (gtk_label_set_markup_with_accel): ditto but with accelerator
10318         parsing
10319
10320         * gtk/gtkimage.c (gtk_image_expose): reformatting.
10321
10322         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
10323         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
10324         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
10325         call gdk_window_get_origin().
10326
10327         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10328         implement GDK_PIXBUF_ALPHA_FULL
10329         
10330 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
10331
10332         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
10333         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
10334         g_signal_handlers_disconnect_matched to block/unblock and disconnect
10335         multiple handlers respectively, instead of only treating the
10336         first handler found (bug reported by owen).
10337
10338 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
10339
10340         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
10341
10342         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
10343
10344         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
10345         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
10346         gtk/gtktreeviewcolumn.h: Fixed inline docs.
10347
10348         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
10349         widget.  Needs writing someday.
10350
10351         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
10352         the docs.
10353
10354 2000-10-30  Havoc Pennington  <hp@redhat.com>
10355
10356         * gtk/gtktextview.h, gtk/gtktextview.c:
10357         Rename delete_at_cursor delete_from_cursor, and 
10358         move to move_cursor.
10359
10360 2000-10-30  Havoc Pennington  <hp@redhat.com>
10361
10362         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
10363         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
10364         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
10365         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
10366         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
10367         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
10368         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
10369         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
10370         gtktexttypes.h, gtktextview.c, gtktextview.h:
10371
10372         Massive reindentation and reformatting. Arg alignment and comments
10373         still need fixing in various places.
10374
10375 2000-10-30  Havoc Pennington  <hp@redhat.com>
10376
10377         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
10378         to be named insert_at_cursor and delete_at_cursor so C++ can
10379         handle them.
10380
10381 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10382
10383         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
10384         to get a double directory separator in case the home directory
10385         ends with one. This would cause trouble especially on Windows,
10386         where the path will be confused with the syntax for an an UNC
10387         (network share) path \\server\share\path.
10388         (gtk_rc_add_initial_default_files): Ditto.
10389
10390 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
10391
10392         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
10393
10394         * gtk/gtktextview.c: Use correct marshallers.
10395
10396 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
10397
10398         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
10399         use new iter stuff, and added all the appropriate signals et al.
10400
10401         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
10402         code is internal to gtk only.
10403
10404 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10405
10406         * gtk/gtk.def
10407         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
10408         glib-genmarshal etc.
10409
10410 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
10411
10412         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
10413         parallel builds.
10414
10415 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
10416
10417         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
10418
10419 2000-10-27  Robert Brady  <robert@suse.co.uk>
10420
10421         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
10422         en_GB (British), ia (Interlingua).
10423
10424 2000-10-26  Havoc Pennington  <hp@redhat.com>
10425
10426         * gtk/gtktextiter.c (my_strrstr): fix constness warning
10427
10428         Fixed output of:
10429         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
10430         
10431         * gtk/gtktextsegment.c (char_segment_new): rename
10432         (_char_segment_new_from_two_strings): rename
10433         (_toggle_segment_new): rename
10434         
10435         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
10436         (make_clipboard_widget): make it static
10437         (text_get_func): static
10438         (text_clear_func): static
10439
10440         * gtk/gtkcolorsel.c (adjustment_changed): make this function
10441         static
10442         (hex_changed): make it static
10443         (hsv_changed): make it static
10444         (opacity_entry_changed): make it static
10445
10446         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
10447         (toggle_segment_check_func): rename with _gtk
10448
10449         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
10450         (_widget_segment_new): rename
10451         (_widget_segment_add): rename
10452         (_widget_segment_remove): rename
10453         (_widget_segment_ref): rename
10454         (_widget_segment_unref): rename
10455
10456         * gtk/gtktextmark.c (_mark_segment_new): Rename
10457         _gtk_mark_segment_new   
10458
10459 2000-10-26  Havoc Pennington  <hp@redhat.com>
10460
10461         * gtk/gtkmarshal.list: add new marshallers used by the text widget
10462         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10463         types
10464
10465         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
10466         marshaller types
10467
10468         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
10469         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
10470         license on these files.
10471
10472         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
10473         work.
10474
10475         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
10476         runtime random number different for each tree, instead of 
10477         a constant I made up.
10478
10479 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
10480
10481         * gtk/Makefile.am: buncha cleanups, kludged build sources
10482         dependencies with a Makefile: oldest-source-stamp dependancy
10483         for the moment. automake is really fighting us here, with
10484         intentionally not allowing user-defined rules or dependancies
10485         prior to it's -include $(DEP_FILES) statement. sucks rocks!
10486
10487         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
10488         to public headers. tehy have a comment stating that they are
10489         "semi-public" aren't included by gtk.h and if enums popup there,
10490         they can be /*< skip >*/-ed.
10491
10492         * gtk/gtktextlayout.h: 
10493         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
10494         added LGPL... <SIGH>
10495
10496 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
10497
10498         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
10499         GtkTreeIter.  Added iterators everywhere.
10500
10501         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
10502
10503         * gtk/gtktreeviewselection.c: Changed to use the iterators.
10504
10505         * gtk/gtktreestore.c: Changed to use the iterators.
10506
10507         * gtk/gtkliststore.c: Commented out the code.  Will convert to
10508         iterators tomorrow.
10509
10510         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10511         iterators tomorrow.
10512
10513         * gtk/treestoretest.c: Changed to use iterators.
10514
10515         * demos/testgtk/main.c: Moved to use the new iterator system.
10516
10517 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10518
10519         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10520         localization misbehaviour.
10521
10522         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10523         a useless type without copy/free.
10524
10525         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10526         of GTK_TYPE_CTREE_NODE.
10527
10528 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10529
10530         * gtk/gtksignal.c:
10531         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10532         applicable.
10533
10534         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10535         gtk_selection_data_copy and gtk_selection_data_free
10536         do GtkSelectionData work as params in signals.
10537
10538 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10539
10540         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10541         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10542         couldn't they at least give it a non-standard name?
10543         
10544         * gtk/gtktextlayout.c: arg! yet another implementation of
10545         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10546
10547         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10548         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10549         home. now i know this _is_ a conspiracy.
10550
10551         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10552         ::state-changed.
10553
10554         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10555         (gtk_accel_group_create_add): marshaller signature fixups.
10556
10557         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10558         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10559
10560         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10561         anymore.
10562
10563 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10564
10565         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10566         due to the signal system changes, it wouldn't build currently. to
10567         be fixed soon.
10568
10569         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10570
10571         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10572         so it needs gtk_marshal_VOID__ENUM() instead of
10573         gtk_marshal_NONE__UINT().
10574
10575         * gdk/gdk*.c: adapted type registration functions.
10576
10577         * gtk/gtkbindings.c:
10578         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10579         gone.
10580
10581         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10582
10583         * gtk/gtkobject.c:
10584         (gtk_object_destroy):
10585         (gtk_object_shutdown): fixed recursion guards. basically we have to
10586         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10587         is called during ::destroy, and avoid recursion there.
10588
10589         * gtk/gtktypeutils.c:
10590         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10591         boxed_copy/boxed_free. this needs a more general solution based on a
10592         publically installed code-generator utility.
10593
10594         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10595         glib's gobject has support for that now.
10596         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10597
10598 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10599
10600         * gtk/gtksignal.[hc]:
10601         * gtk/gtkmarshal.[hc]:
10602         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10603         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10604         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10605         care of that.
10606
10607         * *.c: marshaller name fixups.
10608
10609         * gtk/gtkmarshal.list: added a comment briefing the format.
10610
10611 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10612
10613         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10614         compatibility macros here now. more specifically, most of
10615         the API is preserved (yes, _most_, nonwithstanding the
10616         following exceptions listed, the API is stil lHUGE ;)
10617         things that got removed completely:
10618         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10619         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10620         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10621         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10622         gtk_signal_remove_emission_hook().
10623         non-functional functions variants:
10624         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10625         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10626         not supported anymore.
10627         (gtk_signal_compat_matched): new internal function to aid
10628         implementation of the compatibility macros, it  provides
10629         functionality to block/unblock/disconnect handlers based
10630         on func/data.
10631
10632         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10633
10634         * *.c: adaptions to new type registration API signatures.
10635
10636 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10637
10638         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10639
10640 2000-10-25  Robert Brady  <robert@suse.co.uk>
10641
10642         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10643         gdk_property_delete): If window == NULL, assume the root window.
10644         (restoring the behaviour that was in 1.2).
10645         
10646         * gtk/testtext.c (save_buffer): Allow creation of new files when
10647         saving.
10648
10649         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10650         calls to read().
10651
10652 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10653
10654         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10655
10656         * gdk/win32/gdkdrawable-win32.c
10657         * gdk/win32/gdkimage-win32.c
10658         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10659         X11 backend.
10660
10661         * gdk/win32/gdkcc-win32.c
10662         * gdk/win32/gdkcolor-win32.c
10663         * gdk/win32/gdkfont-win32.c
10664         * gdk/win32/gdkinput-win32.c
10665         * gdk/win32/gdkmain-win32.c
10666         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10667
10668 2000-10-24  Havoc Pennington  <hp@redhat.com>
10669
10670         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10671         it a static function
10672
10673         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10674         redraw text when a tag is applied to it.
10675
10676         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10677         (gtk_text_tag_affects_nonsize_appearance): private functions to
10678         see if a tag requires various kinds of redraw/layout to be queued
10679         up.
10680
10681         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10682
10683         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10684         at the start of the buffer, so search works by default
10685
10686         * gtk/gtktextiter.c (lines_match): init match_start always
10687
10688         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10689         function, get iter at a line + a byte index
10690
10691         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10692         to set byte position within a line
10693         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10694
10695 2000-10-23  Havoc Pennington  <hp@redhat.com>
10696
10697         * gtk/testtext.c: Re-enable the "find" dialog
10698
10699         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10700         
10701         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10702         the arguments to gdk_draw_drawable were in the wrong order
10703         (gdk_window_paint_init_bg): This function was ignoring the
10704         init_region, instead of clipping to it, so the entire backing
10705         pixmap was cleared on every begin_paint()
10706         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10707         was in here again, the loop kept using the same GtkWindowPaint
10708         over and over.
10709         (gdk_window_begin_paint_region): Fix a bug where we had two
10710         x_offset instead of x_offset and y_offset
10711
10712         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10713         before we get the image.
10714         (gdk_draw_drawable): get the composite before we draw the drawable.
10715         (gdk_drawable_real_get_composite_drawable): default
10716         get_composite_drawable implementation that returns the drawable 
10717         itself
10718
10719         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10720         get_composite_drawable virtual function
10721
10722         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10723         list-walking bug
10724
10725         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10726         make this work if the source drawable is a GdkDrawableImplX11
10727         instead of a public drawable type. This is really broken; the
10728         problem is that GdkDrawable needs a virtual method get_xid(), but
10729         of course that doesn't work in practice. Enter RTTI.
10730
10731         Also, improve mismatched depth message.
10732
10733         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10734         GdkPixmap
10735
10736         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10737         install _gdk_x11_get_image as our implementation of get_image
10738         
10739         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10740         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10741
10742         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10743         gdk_drawable_get_image
10744
10745         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10746
10747         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10748         get_image
10749
10750         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10751         trailing semicolon after for loop
10752
10753 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10754
10755         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10756         where font_desc for widget's context lagged widget's font_desc by
10757         one step.
10758
10759 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10760
10761         * gdk/win32/gdkgc-win32.c
10762         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10763
10764         * gtk/makefile.mingw.in
10765         * gtk/gtk.def: Updates.
10766
10767         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10768         library.
10769
10770         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10771
10772         * gtk/makefile.msc: Remove
10773
10774         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10775
10776         * gtk/Makefile.am: Add it.
10777
10778         * configure.in: Generate it.
10779
10780         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10781         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10782         something even if not implemented, to satisfy picky MSVC.
10783
10784         Patches by Hans Breuer:
10785         
10786         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10787         SetBkMode() and SetTextAlign() before calling
10788         pango_win32_render().
10789
10790         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10791         Set hcliprgn to NULL after destroying it.
10792         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10793
10794         * gdk/win32/gdkgeometry-win32.c
10795         (_gdk_windowing_window_queue_antiexpose): More effective
10796         implementation.
10797
10798         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10799         depth as default, not the visual's.
10800
10801         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10802         against empty title.
10803
10804         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10805         IMAGE_PRIVATE_DATA.
10806
10807         * gdk/win32/gdkimage-win32.c: Use it.
10808
10809 2000-10-22  Robert Brady  <robert@suse.co.uk>
10810
10811         * configure.in: Check for bind_textdomain_codeset
10812
10813         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10814         present, make use of it.
10815
10816         Add a translatable string "default:LTR" which, if translated
10817         to "default:RTL", will cause the default direction to be
10818         Right-to-Left.
10819
10820         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10821         direction if marked as flippable.
10822
10823         * gtk/gtkhscale.c: Mark widget as flippable.
10824         
10825 2000-10-04  Havoc Pennington  <hp@redhat.com>
10826
10827         * gtk/testgtk.c (create_buttons): create some stock buttons
10828         with the default accel group
10829         (create_image): test some new GtkImage features
10830         (make_message_dialog): test GtkMessageDialog
10831         (create_modal_window): fix someone's bizzarro indentation
10832
10833         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10834         GTK_WIN_POS_CENTER_ON_PARENT. 
10835         Add "destroy with parent" setting, which means the window goes
10836         away with its transient parent.
10837         (gtk_window_get_default_accel_group): get the default accel group
10838         for the window.
10839         (gtk_window_set_destroy_with_parent): set/unset destroy with
10840         parent flag
10841         (gtk_window_read_rcfiles): invalidate icon set caches
10842         after reloading rcfiles 
10843
10844         * gtk/gtkenums.h (GtkWindowPosition): add
10845         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10846         on its parent window when the dialog is mapped for the first time.
10847
10848         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10849         a simple message dialog class
10850         
10851         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10852         handler to emit response signal, and maybe later it would
10853         honor a hide_on_delete flag - though that isn't there yet.
10854         Set border width on the vbox to 2, so we get some padding.      
10855         Use a button box for the action area.
10856         (gtk_dialog_key_press): synthesize a delete event if Esc
10857         is pressed and the GtkWidget key press handler didn't 
10858         handle the escape key.
10859         (gtk_dialog_new_with_buttons): new function creates a dialog
10860         with some default buttons in it.
10861         (gtk_dialog_add_action_widget): add an activatable widget
10862         as a button in the dialog - you can also add a non-activatable
10863         widget by accessing the action area directly.
10864         (gtk_dialog_add_button): add a simple button - stock ID or 
10865         label - to the action area
10866         (gtk_dialog_response): emit response signal
10867         (gtk_dialog_run): block waiting for the dialog, return 
10868         the response. Override normal delete_event behavior, so that 
10869         delete_event does nothing inside gtk_dialog_run().
10870
10871         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10872         emitted when an action widget is clicked or the dialog gets
10873         delete_event
10874
10875         * gtk/gtk.h: add gtkmessagedialog.h
10876
10877         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10878
10879 2000-10-18  Havoc Pennington  <hp@redhat.com>
10880
10881         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10882         where any number of empty lines would get skipped
10883
10884         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10885         edge.
10886
10887         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10888         warning about invalid iterators (explain more thoroughly)
10889         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10890
10891         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10892         big
10893
10894         * demos/*.c: Add error handling
10895
10896         * gtk/gtktextbuffer.c: don't modify const iterators
10897
10898         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10899
10900         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10901         on file load
10902
10903         * gtk/gtkiconfactory.c: Update to reflect addition of error
10904         handling to gdk-pixbuf loaders
10905
10906 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10907
10908         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10909         move to new modularized testgtk.
10910
10911 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10912
10913         * gtk/gtktreeview.c: Draw the arrows correctly.
10914
10915         * gtk/gtktreemodel.c: Added user docs.
10916
10917         * gtk/gtk.h: remove gtktreedatalist.h.
10918
10919         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10920         parent when generating my type.
10921
10922         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10923         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10924
10925 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10926
10927         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10928         GtkTreeModel from object to interface.
10929
10930 2000-10-16  Havoc Pennington  <hp@redhat.com>
10931
10932         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10933         compilation
10934
10935 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10936
10937         * gtk/gtktreeselection.c: Add API documentation to all public
10938         functions.
10939
10940         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10941         functions.
10942
10943 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10944
10945         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10946         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10947         docs to all public functions.
10948
10949         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10950         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10951         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10952         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10953         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10954         issue.
10955
10956 2000-10-14  Robert Brady  <robert@suse.co.uk>
10957
10958         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10959
10960 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10961
10962         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10963         values other then G_TYPE_STRING.
10964         * gtk/gtktreeselection.c: Minor commenting updates.
10965         * gtk/gtktreeview.c: Format updates.
10966
10967 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10968
10969         * README.win32: Update.
10970
10971         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10972         lines that had been deleted by mistake (?).
10973
10974         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10975         also the case fg==white and bg==black (but still not randomly
10976         coloured cursors). Thanks to Wolfgang Sourdeau.
10977
10978         * gdk/win32/*.c: Silence gcc -Wall.
10979
10980         * gtk/gtk.def: Add missing entry points.
10981
10982         Fixes by Hans Breuer:
10983
10984         * gdk/makefile.msc
10985         * gdk/win32/makefile.msc: Update.
10986
10987         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10988         some MSVC thing, presumably), cause breakpoint on failures. Add
10989         GDK_NOR case. Call g_log_set_always_fatal.
10990
10991         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
10992         should be pased by reference.
10993         
10994         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
10995         
10996         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
10997
10998         * gdk/win32/gdkevents-win32.c
10999         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
11000
11001         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
11002         implementation object.
11003
11004         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
11005         not just windows.
11006         
11007         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
11008         Use the wrapper object.
11009         
11010 2000-10-06  Havoc Pennington  <hp@redhat.com>
11011
11012         * Makefile.am (SRC_SUBDIRS): contrib subdir
11013
11014         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
11015         so it can be used in Xlib version
11016
11017         * demos/testpixbuf.c (update_timeout): error checking from 1.0
11018         tree
11019
11020         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
11021         change from 1.0 tree that returns first frame of animation
11022         if the loaded file is an animation.
11023
11024         * contrib: add new directory to hold stuff that comes with GTK+
11025         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
11026         
11027         * configure.in: add contrib/*
11028
11029 2000-10-05  Havoc Pennington  <hp@redhat.com>
11030
11031         * demos/testpixbuf-save.c: add pixbuf save test
11032
11033         * demos/Makefile.am: add testpixbuf-save.c
11034
11035 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
11036
11037         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
11038         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
11039         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
11040         * gtk/gtktreeselection.[ch]: Replaced
11041         "node_selected"/"node_unselected" signal with "selection_changed"
11042         signal.
11043
11044 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11045
11046         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
11047         tree widget.
11048
11049 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11050
11051         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
11052         drawing.
11053
11054 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
11055
11056         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
11057         Move list pointer forwards before removing item from
11058         list. (Crash reported by Salmaso Raffaele)
11059
11060         * gdk/gdkwindow.h: Remove spurious trailing ,
11061
11062         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
11063         dependencies on uninstalled libraries, sorry folks.
11064
11065 2000-10-04  Havoc Pennington  <hp@redhat.com>
11066
11067         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
11068         gtk/gtkiconfactory.c: Fix copyrights    
11069
11070         * demos/testpixbuf.c: add inline pixbuf test
11071         
11072 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
11073
11074         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
11075         Add gdk_window_iconify.
11076
11077         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
11078         (gdk_window_set_geometry_hints): Add win_gravity
11079         to geometry structure.
11080
11081         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
11082         Implement _NET_WM_PING.
11083
11084         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
11085         Set _NET_WM_PID on the client leader.
11086
11087         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
11088         Handle UTF-8 better.
11089
11090         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
11091         UTF-8 better, set _NET_WM_NAME as well. Only set
11092         icon name if it hasn't previously been explicitely 
11093         set.
11094
11095 2000-10-03  Havoc Pennington  <hp@redhat.com>
11096
11097         * gtk/testtextbuffer.c: clean up trailing whitespace,
11098         add extensive tests for tag toggle iteration.
11099         
11100         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
11101         distance
11102
11103         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11104         optimize case where the tag root is on level 1
11105         (gtk_text_line_previous_could_contain_tag): attempt to implement
11106         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
11107         functionality
11108
11109         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
11110         Implement this, though not very efficiently.
11111
11112         * gtk/gtktextiterprivate.h: reformat
11113
11114         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
11115         iterator
11116
11117         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
11118         this to properly revalidate the iterators.
11119
11120         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
11121         properly at the end of the line (and therefore on empty lines)
11122
11123         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
11124         maybe we should return a value...
11125
11126 2000-10-03  Tor Lillqvist  <tml@iki.fi>
11127
11128         * config.h.win32: Guard definition of alloca(). glib.h now handles
11129         that.
11130
11131         * gdk/gdk.def
11132         * gtk/gtk.def: Add new entry points.
11133
11134         Changes just to make GTK+ build without errors on Win32. No hope
11135         of it working in its current state, though...:
11136         
11137         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
11138         some functions from the X11 backend, just to make GTK+ build.
11139
11140         * gdk/makefile.mingw.in
11141         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
11142         number. Add new object files.
11143
11144         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
11145         GetMessageTime to get timestamp (where on X11 uses
11146         gdk_x11_get_server_time()).
11147
11148 2000-10-02  Havoc Pennington  <hp@pobox.com>
11149
11150         * gtk/gtktextview.c: text_window_* weren't static and should have
11151         been.
11152         Start work on child widgets; not yet complete, syncing to 
11153         office computer.
11154
11155         * gtk/gtktextchild.h: change this to contain a public interface,
11156         starting work on child interfaces.
11157         * gtk/gtktextchildprivate.h: move private interfaces here
11158
11159         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
11160
11161         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
11162         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
11163         gtk/gtktextmark.c: copyright notices
11164
11165         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
11166         internal functions      
11167
11168         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
11169         internal function
11170
11171         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11172         Reformatting    
11173
11174 2000-09-30  Havoc Pennington  <hp@pobox.com>
11175
11176         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
11177         NULL start/end pointers
11178
11179         * gtk/gtktextbuffer.c: Write some docs
11180         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
11181         NULL, so you can just check whether there's a selection.        
11182
11183         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
11184         cleanup_line or segments_changed ourselves, it gets done 
11185         in unlink_segment
11186
11187         * gtk/gtktextmark.h:
11188         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
11189         
11190         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
11191
11192         * gtk/gtktextmark.c: delete some more old Tk cruft
11193
11194         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
11195         mark before removing it, so we can emit MARK_DELETED with a valid
11196         pointer.
11197         (gtk_text_buffer_mark_set): hold ref across signal emission
11198
11199         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
11200         whining about attempts to delete special marks
11201
11202         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
11203         underscore, since it's internal.
11204
11205         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
11206         now implemented in terms of iterators in gtktextiter.h
11207
11208         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
11209         New function, destructively sets contents of buffer. Also 
11210         a convenient way to clear the buffer by setting text to ""
11211
11212         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
11213         multiline string literal
11214
11215         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
11216         text changes.
11217
11218         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
11219         is not dereferenceable
11220         (gtk_text_iter_forward_lines): fix return value
11221
11222 2000-09-29  Havoc Pennington  <hp@redhat.com>
11223
11224         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
11225
11226         * gtk/gtktextview.c: Implement drag thresholding; change functions 
11227         that set border window size to have nicer name
11228         (gtk_text_view_mark_set_handler):  Fix this to have the 
11229         right signature.
11230
11231         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
11232
11233         * gtk/testtext.c: Update with API changes, put line numbers on 
11234         both sides.
11235         
11236         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
11237         with this
11238
11239         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
11240         pixbuf; delete a big block of #if 0 Tk code
11241
11242         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
11243         insert_pixmap with insert_pixbuf
11244
11245 2000-09-29  Martin Baulig  <baulig@suse.de>
11246
11247         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
11248         confusion with the GdkPixbuf of the GNOME 1.x platform.
11249
11250 2000-09-29  Havoc Pennington  <hp@pobox.com>
11251
11252         * gtk/gtktextview.c: Implement the side windows.
11253
11254         * gtk/testtext.c: Implement simple line numbering in the 
11255         left side window; seems to make scrolling sloooow. Oops.
11256         Also, cursor blink is for some reason causing redraws
11257         of the line numbers. Should investigate...
11258
11259 2000-09-28  Havoc Pennington  <hp@redhat.com>
11260
11261         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
11262         scrolling child windows, and draw focus rectangle properly.
11263         
11264         (gtk_text_view_buffer_to_window_coords):
11265         Coordinate transformation to deal with all these freaking windows
11266         and offsets
11267         (gtk_text_view_window_to_buffer_coords): transform the other way
11268
11269         * gtk/testtext.c (create_buffer): Update to match Pango API change
11270
11271         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
11272         anonymous tags
11273         (foreach_unref): don't emit remove signal from finalize, just
11274         set tag's parent to NULL
11275
11276 2000-09-26  Havoc Pennington  <hp@redhat.com>
11277
11278         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
11279         Fix some warnings       
11280
11281 2000-09-26  Havoc Pennington  <hp@redhat.com>
11282
11283         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
11284         headers into the private header list
11285
11286         * Makefile.am (pkgconfig_DATA): install pkg-config files
11287
11288         * configure.in: add pkg-config files
11289
11290         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
11291
11292         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
11293         outstanding icon caches on theme change.
11294
11295         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
11296         important types:
11297
11298         (GtkIconSource): Specification for creating a pixbuf 
11299         appropriate for a direction/state/size triplet from 
11300         a source pixbuf or filename
11301
11302         (GtkIconSet): List of GtkIconSource objects that are used to
11303         create the "same" icon (e.g. an OK button icon), and cache for
11304         rendered icons
11305
11306         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
11307         up the icon set for a given stock ID.  GTK maintains a stack of
11308         GtkIconFactory to search, and applications or libraries can add
11309         additional icon factories on top of the stack
11310         
11311         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
11312         the set of GtkIconSource specified for a given stock ID into 
11313         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
11314         RcStyle, under the specified stock ID.
11315
11316         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
11317         render_icon used to derive a GdkPixbuf from a GtkIconSource.
11318         This allows people to theme how prelight, insensitive, etc. are
11319         done.
11320
11321         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
11322         icon factories for a style, and return the resulting 
11323         icon set if any.
11324
11325         (gtk_style_render_icon): Render an icon using the render_icon 
11326         method in the GtkStyleClass.
11327
11328         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
11329         Use the style for a given widget to look up a stock ID, get the
11330         icon set, and render an icon using the render_icon method 
11331         of the style
11332
11333         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
11334         (contains information about a stock item), the built-in stock item
11335         IDs, and functions to add/lookup stock items.
11336
11337         * gtk/stock-icons/*: Stock icons that come with GTK
11338
11339         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
11340         a button based on a GtkStockItem
11341         (gtk_button_new_accel): Takes a uline string and accel group, and
11342         installs the accelerator.
11343
11344         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
11345         image-display widget.
11346
11347 2000-09-25  Havoc Pennington  <hp@redhat.com>
11348
11349         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
11350
11351         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
11352         Fix a bug when removing node data, we didn't properly 
11353         re-splice the linked list after removing the data.
11354
11355         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
11356         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
11357
11358         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
11359
11360         * gtk/gtktextlayout.c (set_para_values): Set tab array 
11361         for the layout from the GtkTextTag.
11362
11363         * gtk/gtktexttypes.h: delete tab and search cruft, 
11364         remove g_convert() in favor of GLib version
11365
11366         * gtk/gtktexttypes.c: remove tab implementation from here,
11367         move to Pango
11368
11369         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
11370         tab stuff using new PangoTabArray from Pango
11371
11372         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
11373         unused border_width stuff
11374
11375 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
11376
11377         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
11378         glib) and now useless utf_to_latin1() latin1_to_utf()
11379
11380         * gtk/gtktextview.[ch]: Change ::move_insert and
11381         ::delete_text action signals to ::move and ::delete;
11382         create the signals with the right enumeration type,
11383         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
11384         C-v bindings, change Home, End to move to beginning/end
11385         of line, Add C-Home C-End to move to beginning/end
11386         of buffer. Change ::cut_text to ::cut_clipboard, etc;
11387         combine ::scroll_text into ::move; use new GtkSelectionData
11388         functions to simplify DND text handling.
11389         
11390         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
11391         deletion enumerations here, rename enumeration values to 
11392         be consistently plural.
11393
11394         * gtk/gtktextbuffer.c: Use new clipboard interfaces
11395         for cut/copy/paste and primary selection.
11396
11397         * gtk/gtktextbuffer.[ch]: Remove excess time and
11398         'interactive' arguments from cut/copy/paste;
11399         rename cut to cut_clipboard, etc; remove
11400         gtk_text_buffer_get_clipboard_contents().
11401
11402         * gtk/gtktextlayout.[ch]: Add 
11403         gtk_text_layout_move_iter_to_line_end() to move the iter to 
11404         line ends.
11405
11406         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
11407         Functions to set or get a UTF-8 string on the selection
11408         data.
11409
11410         * gtk/gtkclipboard.[ch]: New, simplified selection handling
11411         interfaces.
11412
11413         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
11414         created widgets - one of these is useless if we don't.
11415
11416         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
11417         a public function clear all targets registered for the
11418         widget.
11419
11420         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
11421         Never call gtk_widget_realize() - that was just asking
11422         for bizarre side-effects.
11423
11424         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11425         gdk_selection_owner_set even if the widget is the
11426         same so that we reliably update the timestamp on
11427         the server.
11428
11429         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
11430         gdk_x11_get_server_time() function.
11431         
11432         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
11433         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
11434         Add some tricky filtering on serial numbers for
11435         selection clear events to fix up long-standard
11436         race condition FIXME's in gtkselection.c.
11437
11438         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
11439         routines to convert from utf8 to compound text or
11440         STRING and from a text property to UTF-8.
11441
11442         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
11443         a convenience function gdk_get_current_event_time().
11444
11445         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
11446         and free selection_data->data properly
11447
11448 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
11449
11450         * gtk/gtkthemes.c: Remove some unecessary includes.
11451
11452 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
11453
11454         * gtk/gtktextdisplay.c
11455         * gtk/gtktextlayout.c
11456         * gtk/gtktexttag.c
11457         * gtk/gtktexttag.h
11458         * gtk/testtext.c: Change the overstrike property to strikethrough,
11459         to closer match pango.
11460
11461 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
11462
11463         * gtk/gtktextview.c: Fix up visibility so that focus,
11464         cursor_visible and blink interact properly.  Reenable cursor blink
11465         which had been roughly disabled. Make blink and focus
11466         properly per-view.
11467
11468         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
11469         Add a flag for whether to display insertion cursor and
11470         a function to set the flag.
11471
11472         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
11473         get_line_y() to get_line_yrange(), to be a bit more generally
11474         useful.
11475
11476 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
11477
11478         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
11479           do stop_navigating_submenu, to clear last timeout properly.
11480           Also in gtk_menu_motion_notify move ignore_enter above
11481           the conditional to make it always happen as suggested by Owen
11482
11483 2000-09-07  Tor Lillqvist  <tml@iki.fi>
11484
11485         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
11486
11487         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
11488         w32api headers.
11489
11490         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
11491         declarations.
11492
11493         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
11494         (gdk_win32_get_colormap): A line had been deleted by mistake.
11495
11496         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
11497         (gdk_event_translate): Handle more virtual keycodes to be able to
11498         generate GDK events for Control-comma, Control-period, etc.
11499
11500         * gtk/gtk.def: Add some missing entry points.
11501
11502 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
11503
11504         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
11505         Doc comment fixing. (Mostly non-matching parameter names.)
11506
11507         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
11508         comments a little to avoid looking like a doc comment.
11509
11510         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11511         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11512         conversions be changed to GError?)
11513
11514         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11515         Move private #defines into .c file.
11516
11517         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11518         order of argument addition, remove duplicates.
11519
11520         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11521         parent class is FrameClass, not BinClass.
11522
11523         * gtk/gtk.h: Add gtkinvisible, which was missing.
11524         (It's occasionalyl useful for client apps, if seldom.)
11525
11526         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11527         #define.
11528
11529 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11530
11531         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11532         coordinates when creating window, instead of GDK-space
11533         coordinates. (Avoid BadValue on too large windows.)
11534
11535 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11536
11537         * configure.in (use_mmx_asm): Remove conftest* after use along the
11538         lines of AC_TRY_COMPILE.        
11539         
11540         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11541         of g_dirname, which is deprecated.
11542         (gtk_rc_parse_any): Removed calls to
11543         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11544
11545         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11546         Removed calls to g_hash_table_{freeze,thaw}, as they are
11547         deprecated now.
11548
11549         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11550         instead of g_basename.
11551         
11552 2000-09-04 Elliot Lee <sopwith@redhat.com>
11553         
11554         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11555         ANSI warning.
11556
11557 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11558
11559         * gtk/gtkwidget.h:  Add some documenting comments about 
11560           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11561           just as owen said on irc.
11562
11563         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11564           set HAS_DEFAULT.  Only set it if there isn't another window
11565           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11566           it if the widget is not the focused window with RECEIVES_DEFAULT.
11567           This fixes weird double default bugs in dialogs which has things
11568           call gtk_window_set_default at times.
11569
11570 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11571
11572         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11573         Nils Barth and David Santiago to improve submenu
11574         navigation. The patch does this by creating a triangular
11575         region from the point where the pointer leaves the
11576         menu to the submenu.  While the pointer is in
11577         that region and a timeout has not expired, events 
11578         that would cause the active submenu to change are
11579         ignored.
11580
11581 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11582
11583         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11584         moving a toplevel window immediately after sizing it would
11585         result in it being sized back to the old size since 
11586         impl->width, impl->height aren't updated until we hear
11587         back from the server. There is still a (longstanding) bug
11588         here that gdk_window_get_size() will give the wrong size
11589         until we do hear back.
11590
11591 2000-08-31  Havoc Pennington  <hp@redhat.com>
11592
11593         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11594         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11595         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11596         Rename GtkTextStyleValues to GtkTextAttributes
11597
11598 2000-08-31  Havoc Pennington  <hp@pobox.com>
11599
11600         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11601         for rapid testing whether an iterator is the end iterator
11602         (gtk_text_btree_new): init end line cache
11603         (gtk_text_line_is_last): use fast cached line to 
11604         see if we're the last line.
11605         (get_last_line): use cached line here too, should 
11606         speed up some random unrelated code.
11607         
11608 2000-08-30  Havoc Pennington  <hp@pobox.com>
11609
11610         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11611         signals.
11612
11613         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11614         delete_text signals. This allows the signals to be used for
11615         implementing undo.
11616
11617         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11618         provide "interactive" argument when emitting insert_text or
11619         delete_text signal.
11620         
11621 2000-08-30  Havoc Pennington  <hp@pobox.com>
11622
11623         * gtk/gtktextbuffer.c: Docs
11624
11625 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11626
11627         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11628         from switch statements, since Tor removed the enumeration
11629         value.
11630         
11631         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11632         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11633
11634 2000-08-29 Elliot Lee <sopwith@redhat.com>
11635         * */*.h: Use G_GNUC_CONST.
11636
11637 2000-08-27  Havoc Pennington  <hp@pobox.com>
11638
11639         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11640         minor indentation fixes, inserted some FIXME about stuff I
11641         realized was broken while documenting it.
11642         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11643         GTK convention  
11644
11645 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11646
11647         * gtk/testgtk.c (create_styles): Fix double free of
11648         font desc.
11649
11650 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11651
11652         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11653         
11654         * gtk/testgtk.c (create_styles): Add a test for modifying
11655         the style through gtk_widget_modify_*.
11656
11657         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11658         a function to get the current modifier style.
11659
11660         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11661         of the passed in GtkRcStyle instead of ref'ing it.
11662
11663         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11664
11665 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11666
11667         * gdk/gdkimage.h
11668         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11669         shared memory image+pixmap GdkImage type, or
11670         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11671         I am dropping that.
11672
11673         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11674         actually call gtk_init_abi_check(), passing also
11675         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11676
11677         * gtk/gtk.def
11678         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11679         New functions, used to check that the GTK+-using code has been
11680         compiled using the correct compiler and switches. In particular,
11681         with gcc one has to use the -fnative-struct switch as GTK+ is
11682         compiled with that.
11683
11684 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11685
11686         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11687         ->prev fields when merging lists. (Found simultaneously
11688         by Pawel Salek and Jakub Jelinek)
11689
11690 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11691
11692         * gdk/gdk.def
11693         * gtk/gtk.def: Add missing entries.
11694
11695         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11696         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11697
11698         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11699         function. Dummy implementation at this point.
11700
11701         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11702         rules. Undefine GTK_COMPILATION when compiling the test programs.
11703         
11704         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11705
11706 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11707
11708         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11709         to convert back and forth from UTF-8 and the "system" (or "current
11710         locale") charset when necessary. Indentation/spacing cleanup.
11711
11712 2000-08-10  Havoc Pennington  <hp@redhat.com>
11713
11714         * Makefile.am (snapshot): Change the format of the snapshot
11715         version to match glib
11716
11717         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11718         from EXTRA_DIST since it doesn't seem to exist
11719
11720 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11721
11722         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11723         version of the directory name (not the UTF-8 one) when building
11724         the path name to stat().
11725
11726 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11727
11728         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11729         PANGO_ATTR_SHAPE set.
11730
11731 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11732
11733         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11734         Peter Osterlund to simplify the code while keeping the
11735         functionality the same.
11736
11737 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11738
11739         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11740         is_viewable() test further inside the function, since removing the 
11741         window from the redraw list without clearing ->update_area
11742         was also very broken.
11743
11744 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11745
11746         * configure.in: Check for <unistd.h>.
11747
11748 2000-08-01  Martin Baulig  <baulig@suse.de>
11749
11750         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11751         to display the message that this is a development version of GTK+.
11752
11753 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11754
11755         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11756         was depending on widget->allocation instead of the width of text_area,
11757         which was incorrect for subclasses like GtkSpinButton.
11758
11759         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11760         with width == 1 tests that should be width == -1.
11761
11762 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11763
11764         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11765         (broken, Elliot, every single window blank on X) custom code with call
11766         to gdk_window_is_viewable() which a) prevents code duplicate and
11767         b) works. 
11768
11769 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11770
11771         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11772         to get the GDK_PARENT_ROOT() macro to work.
11773         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11774         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11775         of, windows that aren't shown.
11776         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11777         pointer grab stuff.
11778
11779 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11780
11781         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11782           s/gtk_main_iteration/g_main_iteration/
11783
11784           Did this already in change:
11785                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11786           don't know how it got reverted.
11787
11788 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11789
11790         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11791         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11792
11793         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11794         not gdk_pixbuf.
11795
11796 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11797
11798         * configure.in,po/{sp,sr}.po: Added Serbian files
11799
11800 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11801
11802         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11803
11804         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11805         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11806         GIOChannel implementation.
11807
11808         * gdk/win32/gdkinput.c
11809         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11810
11811         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11812         definition to match prototype.
11813
11814         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11815
11816 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11817
11818         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11819         function, to allow handling image formats that cannot be detected
11820         by looking at content alone.
11821
11822 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11823
11824         * docs/tutorial/*.gif *.jpg *.eps
11825           Update these to the same look-n-feel.
11826           Why does including images in DocBook suck so badly?
11827
11828 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11829
11830         * gtk/gtktable.c: applied patch from Phil Thompson
11831         <phil@river-bank.demon.co.uk> that enables space settings for
11832         the last row/columns as well.
11833
11834 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11835
11836         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11837         updates the license headers to the GNU Lesser General Public License,
11838         as well as updating the copyright year to 2000.
11839
11840 2000-07-26  Robert Brady  <rwb197@zepler.org>
11841
11842         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11843           and po/Makefile, was installing and looking for them under gtk20
11844           and gtk2 respectively.
11845
11846 2000-07-25  Havoc Pennington  <hp@redhat.com>
11847
11848         * gtk/testtext.c: Comment out some stuff that depends on the rest
11849         of my patches.
11850
11851 2000-07-25  Havoc Pennington  <hp@redhat.com>
11852
11853         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11854         buffer
11855
11856 2000-07-25  Havoc Pennington  <hp@redhat.com>
11857
11858         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11859         widget changes.
11860
11861         * gtk/gtktextview.h: To be consistent with usage of "line"
11862         throughout the API to mean "newline-terminated thingy", change
11863         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11864         to MOVEMENT_LINE.
11865
11866         (GtkTextView): Add flags for default editability, and whether to
11867         show the cursor. Add functions to get/set that. Add 
11868
11869         (gtk_text_view_get_iter_location): new function
11870
11871         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11872         gtktextlayout.h
11873         (g_convert): Add g_convert temporarily, will go in glib in a bit
11874         
11875         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11876         GtkTextTagTableForeach instead of brokenly using GHFunc.
11877         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11878
11879         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11880         moved to public header.
11881
11882         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11883         "invisible", since "elide" was a bad name.
11884         (gtk_text_tag_get_priority): Added
11885
11886         (GtkTextStyleValues): put this in public header, along with
11887         functions to use it.
11888
11889         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11890         longer include gtktextbtree.h.
11891
11892         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11893         gtk_text_mark_deleted
11894
11895         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11896         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11897         to make this possible. Now we only need to install
11898         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11899         (However the Makefile.am isn't changed yet because of the
11900         logistics of merging gtk-hp-patches piecemeal)
11901
11902         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11903         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11904         gtk_text_iter_get_line is now used in the public API for a
11905         different purpose.
11906
11907         * gtk/gtktextiter.h: Clean up function names to be more
11908         consistent. Always call char offset "offset" and byte index
11909         "index". A "line" is always a line number. 
11910
11911         (gtk_text_iter_is_last): new function, more efficient than 
11912         the existing way to check
11913         (gtk_text_iter_is_first): new function, also more efficient
11914
11915         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11916
11917         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11918         gtk_text_iter_forward_char, etc.
11919
11920         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11921         forward_find_tag_toggle, since this isn't a linear search
11922
11923         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11924
11925         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11926         New functions, search for a buffer substring.
11927
11928         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11929         interactive and default editable (since we need to store that info
11930         until we receive the selection data).
11931
11932         Remove all the _at_char and at_line etc. versions of functions;
11933         only have iterator versions.
11934
11935         Add _interactive() versions of functions, that consider the
11936         editability of text. (FIXME add interactive flag to the 
11937         insert/delete signals per Darin's suggestion)
11938
11939         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11940         tag table if necessary
11941
11942         Remove declaration of gtk_text_buffer_get_iter_from_string
11943
11944         (_gtk_text_buffer_get_btree): private/internal function, added.
11945         
11946
11947         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11948         (gtk_text_line_is_last): new function
11949
11950 2000-07-25  Havoc Pennington  <hp@redhat.com>
11951
11952         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11953         using GtkProgressBar. See Changes-2.0.txt for details.
11954
11955         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11956         "pulse_step" which are the equivalent of
11957         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11958         Implement new API.
11959         
11960         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11961         (use_text_format) to mark whether text set on the progress bar is
11962         a format string. Deprecate entire GtkProgress interface.
11963
11964         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11965         (gtk_progress_build_string): make this a no-op if use_text_format
11966         is FALSE
11967
11968         * docs/Changes-2.0.txt: Describe progress bar changes.
11969
11970 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11971
11972         * Makefile.am: Include the build directory.
11973
11974         * configure.in: Generate build/Makefile, build/win32/Makefile,
11975         gdk/, gdk/win32/, and gtk/makefile.mingw.
11976
11977         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11978         Add GETTEXT_PACKAGE.
11979         
11980         * gdk/gdk.def
11981         * gtk/gtk.def: Updates.
11982
11983         * gdk/gdkfont.h
11984         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11985         need them any longer.
11986
11987         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11988
11989         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11990         PANGOWIN32_LIBS and gdk_pixbuf.
11991
11992         * gdk/win32: Compiles, but no doubt doesn't work at all.
11993
11994         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
11995
11996         * gdk/win32/gdkinput.c: New file, temporarily.
11997         
11998         * gdk/win32/gdkinput-win32.h: New file
11999
12000         * gdk/win32/gdkinputprivate.h: Remove.
12001
12002         * gdk/win32/gdkpango-win32.c: New file.
12003
12004         * gtk/makefile.mingw.in: New file
12005
12006         * gtk/makefile.cygwin: Removed
12007         
12008         * gtk/Makefile.am: Update accordingly.
12009
12010         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
12011         made externally visible.
12012
12013         * gtk/gtkmain.c: Use it.
12014         
12015         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
12016         is enough.
12017
12018         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
12019
12020 2000-07-24 Elliot Lee <sopwith@redhat.com>
12021         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
12022         individual backends already.
12023         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
12024         again. Yes, there really is a good reason for this, if you are using the gdkregion
12025         internals, and if you're not, why do you care?
12026         * gdk/gdkwindow.c: Fix inverted condition
12027         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
12028         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
12029         * gtk/gtkrange.c: Redraw trough when moving.
12030         * gtk/gtktypeutils.c: Fix warning by adding const cast.
12031         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
12032
12033 2000-07-23  Tor Lillqvist  <tml@iki.fi>
12034
12035         * configure.in: Check for mkstemp and sigsetjmp. Output
12036         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
12037
12038         More work on GDK for Win32. Still in an intermediate state.
12039
12040         * gdk/makefile.cygwin
12041         * gdk/win32/makefile.cygwin: Removed.
12042         
12043         * gdk/makefile.mingw.in
12044         * gdk/win32/makefile.mingw.in: New files.
12045
12046         * gdk/Makefile.am
12047         * gdk/win32/Makefile.am: Generate and distribute them.
12048
12049         * gdk/win32/gdkwindow-win32.h
12050         * gdk/win32/gdkdrawable-win32.h
12051         * gdk/win32/gdkpixmap-win32.h: New files.
12052
12053         * gdk/win32/gdkcolor-win32.c
12054         * gdk/win32/gdkcursor-win32.c
12055         * gdk/win32/gdkdrawable-win32.c
12056         * gdk/win32/gdkgc-win32.c
12057         * gdk/win32/gdkimage-win32.c
12058         * gdk/win32/gdkprivate-win32.h
12059         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
12060         Rename fields and variables called xcursor, xid, etc (these names
12061         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
12062
12063 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
12064
12065         * gtk/gtkentry.[ch]: Fix some problems with vertical
12066         alignment.
12067
12068         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
12069         char/byte confusion.
12070
12071 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
12072
12073         * gtk/gtktextview.c (changed_handler): Fix bug where
12074         redraw wasn't being done properly when height of
12075         dirty region changed.
12076
12077         * demos/Makefile.am: Remove various references to
12078         -lgmodule
12079
12080 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
12081
12082         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
12083         PangoAttrShape to reserve space for pixmaps, add 
12084         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
12085         in the display functions.
12086         
12087         * gtk/testgtk.c (create_layout): Set some more exotic
12088         scrolled window options
12089
12090         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
12091         Add function to set the shadow type of a window, to allow
12092         putting a shadow around widgets such as GtkLayout or GnomeCanvas
12093         which don't draw their own frame.
12094
12095 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
12096
12097         * docs/tutorial/package-db-tutorial.sh: New file for
12098           packaging DocBook format tutorial
12099
12100 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
12101
12102         * docs/tutorial/gtk-tut.sgml: Minor updates
12103
12104         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
12105
12106 2000-07-19  Tor Lillqvist  <tml@iki.fi>
12107
12108         * gtk/gtksignal.c: Fix C++ comment.
12109
12110         * gtk/gtkimmulticontext.c
12111         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
12112         don't return value from void functions.
12113
12114         * gtk/gtk.def: Add gtk_rc_style_unref.
12115
12116 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12117
12118         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
12119         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
12120         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
12121         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
12122         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
12123         gtk/gtktypeutils.h: Include files outside of the extern "C"
12124         block. Makes some C++ compiler happy. Reported by Denis Vakatov
12125         <vakatov@peony.nlm.nih.gov>.
12126
12127 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
12128
12129         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
12130           Completes first pass. Hurrah!
12131
12132 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
12133
12134         * docs/tutorial/gtk-tut.sgml: More clean ups.
12135
12136 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
12137
12138         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
12139         paint the background of the text area which was accidentally
12140         removed at some point.
12141
12142         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
12143           
12144          - Move most of the functionality from the theme vtable
12145            into GtkRcStyleClass and GtkStyleClass. The moved
12146            vtable functions were changed a bit in the move to
12147            work better in their new home.
12148
12149          - Get rid of the engine and engine_data fields from
12150            GtkRcStyle and GtkStyle; instead the theme
12151            engine derives theme-specific subclasses of GtkRcStyle
12152            and GtkStyle
12153
12154          - Add extra dlsym() found entry point to themes,
12155            theme_create_rc_style().
12156
12157         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
12158         in gtk_style_real_copy.
12159
12160         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
12161         to register a type associated with an engine. (The engine
12162         won't be unloaded as there is an instance of the type.)
12163
12164
12165 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
12166
12167         * docs/tutorial/gtk-tut.sgml: Clean ups.
12168
12169 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
12170
12171         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
12172           of cleaning up to do.
12173
12174 2000-07-15  Tor Lillqvist  <tml@iki.fi>
12175
12176         * gdk/testgdk.c: New file, quick hack to test backends for
12177         pixel-by-pixel correctness of the most simple graphic operations.
12178
12179 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
12180
12181         * Really release 1.3.1
12182         
12183         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
12184         include structure.
12185
12186 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
12187
12188         * Released 1.3.1
12189
12190 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
12191
12192         * gtk/gtktextlayout.c: use FALSE for size_only most
12193         of the time when calling gtk_text_layout_get_line_display()
12194         to avoid causing double reshapes when a redraw follows
12195         immediately after.
12196
12197 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
12198
12199         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
12200         appropriate region and gdk_window_process_updates() so trough
12201         updating doesn't lag behind the window being scrolled.
12202
12203         * gdk/gdkgc.c: Make parent_class pointer static.
12204          
12205 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
12208         include <string.h>.
12209          
12210         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
12211         cut-and-paste error in computing memory offset for 4 channels.
12212
12213 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
12214
12215         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
12216         gtk_rc_append_default_pixmap_path(), since it wasn't
12217         adding an interesting path and we don't have a meaningful
12218         default for this value.
12219
12220 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
12221
12222         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
12223         gtk-config to gtk-config-2.0 move gtk_.m4 to
12224         gtk-2.0.m4
12225
12226         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12227         gdk/Makefile.am demos/Makefile.am: Change 
12228         library names to libgtk-1.3.la, etc, so that we
12229         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
12230
12231         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12232         gdk/Makefile.am gdk/x11/Makfile.am
12233         Move include files into /usr/include/gtk-2.0, 
12234         /usr/lib/gtk-2.0/include/
12235          
12236         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
12237         gtk/gtkintl.h: Change package for gettext from 
12238         gtk+ to gtk20. Put hack in autogen.sh to modify
12239         po/Makefile.in.in after gettextize to make this
12240         possible.
12241
12242         * gtk+.spec: Some updates, not tested.
12243
12244         * gdk-pixbuf/Makefile.am: Move loaders into
12245         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
12246
12247         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
12248         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
12249         to THEMENAME/gtk-2.0/. Move engine directory  to
12250         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
12251         
12252 2000-07-12  Tor Lillqvist  <tml@iki.fi>
12253
12254         Win32 changes, still doesn't build though.
12255
12256         * gdk/makefile.cygwin
12257         * gdk/win32/makefile.cygwin
12258         * gtk/makefile.cygwin: Updates.
12259
12260         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
12261         default values for fg and bg pixel as X11 does (0 and 1), not
12262         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
12263         Use 0 for pen width by default (treated as 1 anyway later, but for
12264         apps that might check the value in the GdkGC).
12265         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
12266         interface to gdk_gc_predraw and _postdraw.
12267
12268         * gdk/win32/gdkwin32.h
12269         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
12270
12271         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
12272         extraneous semicolon.
12273
12274         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
12275
12276         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
12277         not the Win32 bitspixel value.
12278
12279         * gdk/win32/gdkcc-win32.c:
12280         * gdk/win32/gdkcolor-win32.c 
12281         * gdk/win32/gdkprivate-win32.h
12282         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
12283         GDK object structure.
12284
12285 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
12286
12287         * docs/tutorial/gtk_tut_12.es.sgml (name): 
12288         * docs/tutorial/gtk_tut_it.sgml (name): 
12289         * docs/tutorial/gtk_tut_fr.sgml (name): 
12290         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
12291         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
12292
12293 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
12294
12295         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
12296           small changes.
12297
12298 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
12299
12300         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
12301         a bug here, never been here and never fixed anything ;(
12302         (don't segfault if tree->root_tree is NULL, which happens prior
12303         to widget realization, but puke instead).
12304
12305 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
12306
12307         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
12308         add the necessary tokens.
12309
12310         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
12311         (gtk_rc_style_to_style): copy thicknesses.
12312         (gtk_rc_init_style): apply thicknesses.
12313         (gtk_rc_parse_style): parse xthickness and ythickness.
12314
12315         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
12316
12317         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
12318         (gdk_window_new): 
12319         (_gdk_windowing_window_init): 
12320         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
12321         (gdk_pixmap_create_from_data): 
12322         (gdk_bitmap_create_from_data): 
12323         (gdk_pixmap_new): 
12324         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12325         (gdk_image_new): 
12326         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
12327         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
12328         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
12329         (gdk_colormap_get_system): 
12330         (gdk_colormap_new): 
12331         * gdk/gdkwindow.c (gdk_window_init): 
12332         * gtk/gtkstyle.c (gtk_style_new):
12333         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
12334         * gdk/gdkpixmap.c (gdk_pixmap_init): 
12335         * gtk/gtkrc.c (gtk_rc_style_new):
12336         use g_object_new() instead of g_type_create_instance() which
12337         is a private function for fundamental type implementations.
12338
12339 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
12340
12341         * configure.in: Add check for db2html
12342
12343 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
12344
12345         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
12346         hack to set glib_debug_objects based on gtk_debug_flags.
12347
12348 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
12349
12350         * INSTALL.in: Update the Prerequisites section.
12351
12352         * Makefile.am demos/Makefile.am docs/Makefile.am
12353         docs/tutorial/Makefile.am gdk/x11/Makefile.am
12354         gdk/linux-fb/Makefile.am: Dist fixes
12355
12356 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
12357
12358         * NEWS: 10,000 foot view of 1.3.1 changes.
12359
12360 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
12363         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
12364         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
12365         gdk/x11/gdkmain-x11.c: 
12366
12367         Patch from George Lebl to add a GdkGrabStatus enumeration to use
12368         as a return value of gdk_*_grab(). Previously, we just
12369         returned the X11 values directly.
12370
12371 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
12372
12373         * gdk/x11/Makefile.am: Patch from George Lebl to 
12374         install all the headers in the right place.
12375
12376 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
12377
12378         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
12379           initial conversion to DocBook.
12380
12381 2000-07-04  Tor Lillqvist  <tml@iki.fi>
12382
12383         * README.win32: Improve a bit.
12384
12385         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
12386         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
12387         Alt+0nnn on the numpad (used to enter characters by numeric code
12388         from current DOS or ANSI codepage) working correctly, as in other
12389         Windows apps.
12390
12391         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
12392         same argument validity tests as in X11 version.
12393         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
12394
12395         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
12396         definitions in case missing from headers.
12397
12398         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
12399         destroy the window-specific cursor.
12400         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
12401         calling GetModuleHandle(NULL).
12402         (gdk_window_set_cursor): Reworked to always copy the passed cursor
12403         with CopyCursor before setting it as the window-specific
12404         cursor. It is OK for the caller to destroy the GdkCursor (and thus
12405         also its Windows cursor) after calling this function. Destroy any
12406         previous window-specific cursor.
12407
12408 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
12409
12410         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
12411         font charset is iso8859-1, not iso-8859-1.
12412
12413 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
12414
12415         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
12416         Use g_get_charset() instead of g_get_codeset().
12417
12418         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
12419         Comment out some strdup'ing functions to keep timj
12420         happy until we finish fighting this out.
12421
12422 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
12423
12424         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12425         <= width or height.
12426
12427         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
12428         from 1.2 for parent/child states.
12429
12430         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
12431         of typos.
12432
12433         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
12434         event structures, replace with a generic axes field. Replace 
12435         deviceid/sourec with GdkDevice *device.
12436
12437         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
12438         to extract particular axis use value from event. (Also
12439         can be used for normal X/Y.)
12440
12441         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
12442         allow for arbitrary number of axes, namespace everything
12443         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
12444         everywhere.
12445
12446         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
12447         Get rid of the gdk_input_vtable setup if favor of simply
12448         defining the functions in gdkinput-none/gxi/xfree.c in
12449         a similar fashion to the way that the port structure is 
12450         done.
12451
12452         * gtk/gtkdnd.c: Fix fields of synthesized button press event
12453         for new event structures. 
12454
12455         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
12456         new device interfaces.
12457
12458 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
12459
12460         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
12461         set the initial text.
12462
12463         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
12464         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
12465         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
12466         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
12467
12468         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12469         pango_layout_set_font_description to simplify.
12470
12471 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
12472
12473         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12474         pango_layout_set_font_description to simplify.
12475
12476 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
12477
12478         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
12479         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
12480         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
12481
12482         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
12483         PANGO_PIXELS() macro.
12484
12485 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
12486
12487         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
12488         that returns a PangoContext owned by the widget and updated to
12489         match future changes in the widget. Also, make 
12490         gtk_widget_create_pango_layout() use this context. If we ever
12491         add a ::changed signal to PangoContext, this will make things
12492         much more convenient. 
12493
12494         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
12495         in the appropriate places instead of destroying the layouts and
12496         creating new ones.
12497
12498         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
12499         in a few strategic places.
12500
12501 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
12502
12503         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
12504         gtk_widget_size_request() on reparented child, if one. Otherwise,
12505         queue_resize() on the child never results in it getting size-requested
12506         at all.
12507
12508         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12509         in option menus, so that (with luck) people won't copy it into
12510         their apps in the future.
12511
12512         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12513         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12514         a lot of problems with changing the size of the menu's menu
12515         items after adding it to the option menu.
12516
12517         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12518
12519         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12520         the text direction for a widget changes.
12521
12522         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12523         ::direction_changed to get rid of various hacks.
12524
12525 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12526
12527         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12528         name.
12529
12530 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12531
12532         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12533         flag to the structure. Do not call XFreePixmap on pixmaps created
12534         by gdk_pixmap_foreign_new().
12535
12536 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12537
12538         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12539         value using GdkRGB functionality given GdkColormap and GdkColor.
12540         (name not final, waiting for inspiration.)
12541         
12542         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12543         set the foreground/background of a GC using the GC's colormap
12544         and GdkRGB. (name not final, waiting for inspiration.)
12545
12546         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12547         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12548
12549         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12550         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12551         purely a function of the corresponding colormap. Make
12552         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12553
12554         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12555         gdk_pixbuf_*create_from_xpm_* in terms of
12556         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12557         code.
12558
12559         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12560         advantage of the new draw_rgb_32_image_dithalign.
12561
12562         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12563
12564         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12565         on each created GC.
12566
12567         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12568
12569         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12570         which we initialize from the drawable when the GC is created,
12571         if the drawable has a colormap.
12572
12573         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12574
12575         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12576
12577         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12578
12579 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12580
12581         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12582         actually returning expose events, make sure to set
12583         the count field properly.
12584
12585         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12586         accidentally reintroced bug which always cleared
12587         the graphics_exposures value. 
12588
12589 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12590
12591         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12592
12593 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12594
12595         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12596
12597 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12598
12599         * docs/faq/gtk-faq.sgml: Start of Section 6.
12600
12601 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12602
12603         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12604         
12605         (Fixes problem with drawing childless frames. Pointed out
12606         by and a first patch from Anders)
12607         
12608         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12609         compute a child_allocation, even if we don't have a child.
12610
12611         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12612         Always chain to the parent's impl, even if we don't have a child.
12613
12614 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12615
12616         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12617         use multiple parts of it instead of creating a bunch of separate
12618         segments, since the maximum number of segments per system is not
12619         large. (This might be worth backporting to GTK+-1.2.x if we make a
12620         new release )
12621
12622         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12623         structure in preparation for per-colormap GdkRGB.
12624
12625         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12626         to False when we get EINVAL from shmget so that the caller of
12627         gdk_image_new can retry with a smaller segment size.
12628
12629 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12630
12631         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12632
12633 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12634
12635         * configure.in: make the current version number 1.3.1 (binary age 0,
12636         interface age 0).
12637         
12638         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12639         gtkcompat.h is all we want.
12640
12641         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12642         GLib primitive types. fixed g_type_register_fundamental() argument
12643         ordering.
12644
12645         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12646         compiles.
12647
12648         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12649         object code cleanup, comment trigraph fixes, etc...
12650
12651 2000-06-23  Havoc Pennington  <hp@redhat.com>
12652
12653         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12654         instead of making up a bogus name for first_para_mark
12655
12656         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12657         0 as a context ID
12658
12659 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12660
12661         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12662
12663 2000-06-21  Havoc Pennington  <hp@pobox.com>
12664
12665         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12666         we didn't check window->bg_pixmap != GDK_NO_BG.
12667
12668         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12669         gdk-pixbuf
12670
12671 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12672
12673         * docs/faq/gtk-faq.sgm: Move file to here.
12674           TODO: Update Makfile.am 
12675
12676 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12677
12678         * docs/gtk-faq.sgm: Add Section 2
12679
12680 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12681
12682         * docs/gtk-faq.sgm: New file. Start of DocBook
12683           version of the FAQ.
12684
12685 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12686
12687         * configure.in (GDK_PIXBUF_MAJOR): Define version
12688         numbers for GDK_PIXBUF_*, as they get substituted
12689         into a header file. Need to consider versioning
12690         for gdk-pixbuf more carefully later.
12691
12692 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12693
12694         Work with srcdir != builddir.   
12695         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12696         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12697         * demos/testpixbuf.c: Likewise.
12698         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12699         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12700         <gdk/x11/gdkx.h>.
12701         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12702         "gdk-pixbuf.h".
12703         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12704
12705 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12706
12707         * TODO.xml: Change 1.4 version numbers to 2.0.
12708
12709 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12710
12711         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12712         fixups to GTK+ standard.
12713
12714 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12715
12716         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12717         gdk-pixbuf.
12718
12719         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12720         fixups for GObject.
12721
12722         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12723         gdk-pixbuf with GDK dependencies moved into GDK.
12724         
12725         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12726         move gdk-pixbuf-loader here until GObject has signals.
12727
12728         * demos/: New directory of demos. Move demos from
12729         gdk-pixbuf here.
12730
12731         * demos/pixbuf-init.c: Small bit of code to check for
12732         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12733         set GDK_PIXBUF_MODULEDIR appropriately.
12734
12735         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12736         define which no longer makes sense.
12737
12738 2000-06-21  Havoc Pennington  <hp@redhat.com>
12739
12740         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12741         gtk_get_default_language
12742
12743         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12744         new function to get the default language
12745
12746         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12747         s/gtk_text_view_style_values/gtk_text_style_values/
12748
12749         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12750         Add a "language" field to tags.
12751
12752         (gtk_text_tag_set_arg): Fix bug in setting
12753         "bg_full_height_set" tag.
12754
12755 2000-06-21  Havoc Pennington  <hp@redhat.com>
12756
12757         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12758         in the interfaces
12759
12760         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12761         stuff instead when possible.
12762
12763         * gtk/gtktexttypes.h: Delete some unused constants
12764
12765         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12766         testtextbuffer.c: use glib instead of custom unicode routines
12767
12768 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12769
12770         * docs/es/: Removed mistakenly added generated sgml
12771
12772         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12773         Remove outdated info files.
12774
12775         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12776         Moved tutorial files into subdir
12777
12778         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12779         subdir.
12780
12781         * docs/man/gtk_button.pod: Remove. (contents will be
12782         integrated into gtk-reference button page.)
12783
12784         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12785         docs/faq/Makefile.am: Adjust for new organization
12786
12787 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12788
12789         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12790         not $(MKINSTALLDIRS)
12791
12792 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12793
12794         * gtk/testgtk.c (create_text): Finish the job Elliot started
12795         of removing font setting test for text widget. (Since text widget
12796         and GdkFont are not deprecated, and cause portability problems.)
12797
12798 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12799
12800         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12801         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12802         Remove use of libunicode in favor of new GLib functions.
12803
12804         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12805         nano-x, framebuffer. The X11 include is just a hack until we get
12806         the necessary functions in gdkcolor.h, so there is no reason to
12807         add other includes of platforms.
12808
12809         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12810         window bigger than the screen change.
12811
12812         * gtk/testgtk.c: Revert some random changes from Elliot
12813         that had no particular point and were causing testgtkrc
12814         not to function correctly.
12815         
12816         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12817         because GdkSegment and GdkRegionBox have the same fields,
12818         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12819         results in clearer code.
12820
12821         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12822         gdk_input_translate_coordinates): Fix missed GdkObjectification
12823
12824 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12825
12826         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12827         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12828
12829 2000-06-20  Havoc Pennington  <hp@redhat.com>
12830
12831         * modules/linux-fb/Makefile.am: Make this compile
12832         without framebuffer enabled
12833
12834         * gdk/linux-fb/Makefile.am: Add conditional to not build
12835         framebuffer unless specified in configure
12836
12837         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12838         the size of the target instead of source if -1 was passed for
12839         width/height
12840
12841         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12842         width/height confusion.
12843
12844 2000-06-19  Havoc Pennington  <hp@redhat.com>
12845
12846         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12847         GDK_DRAWABLE_XID. In the future, we probably want to make it
12848         faster with G_DISABLE_CHECKS turned on.
12849
12850 2000-06-14  Havoc Pennington  <hp@redhat.com>
12851
12852         * gdk/Makefile.am: add gdkpixmap.c
12853
12854         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12855         s/gdk_image_init/_gdk_windowing_image_init
12856
12857         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12858         ref/unref
12859
12860         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12861
12862         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12863         GdkWindowType is now non-deprecated; 
12864         change gdk_window_get_type() compat to be
12865         gdk_window_get_window_type().
12866
12867         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12868
12869         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12870         virtual GObject. Make all functions call into the vtable.
12871         Move gdk_image_put() guts in here. Remove GdkDrawableType
12872         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12873         draw_image, get_depth, get_size, set_colormap, get_colormap,
12874         get_visual added to the vtable.
12875         
12876         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12877         GObject. Virtualize everything. 
12878         (gdk_gc_new_with_values): remove check for destroyed window,
12879         because now GdkWindow::create_gc will check this.
12880         (gdk_gc_set_values): New function to set GC values, this 
12881         was already implemented but wasn't in the header
12882
12883         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12884
12885         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12886         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12887         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12888         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12889         _gdk_windowing_window_init, rename gdk_image_init to
12890         _gdk_windowing_image_init.
12891         
12892         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12893         (gdk_draw_layout): Remove check for destroyed window, 
12894         because all the drawable methods already check it.
12895         
12896         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12897         Add gdkpixmap.c which contains implementation of GdkDrawable
12898         virtual table (by chaining to a platform-specific implementation
12899         object).
12900         
12901         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12902         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12903         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12904         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12905         GdkColormapPrivate. 
12906
12907         * gdk/gdktypes.h: #include <glib-object.h>
12908
12909         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12910         Move most functionality to platform-specific implementation
12911         object. GdkWindow itself now handles the backing store, then
12912         chains to the platform-specific implementation.
12913         (gdk_window_get_window_type): return GdkWindowType of the window.
12914         (gdk_window_peek_children): New routine, returns the children of 
12915         a GdkWindow
12916         (gdk_window_get_children): Was in X11-specific code and did 
12917         XQueryTree. Changed to simply return a copy of window->children; 
12918         so it can go in cross-platform code.
12919         
12920         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12921
12922         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12923         GdkColormap; just changed to use the new private data instead
12924         of casting to GdkColormapPrivate.
12925
12926         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12927         gdk_cursor_new().
12928
12929         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12930         (private data member in the GObject). 
12931         (xdnd_manager_source_filter): Function had broken 
12932         error handling, fix it (use gdk_error_trap_push).
12933
12934         * gdk/x11/gdkdrawable-x11.c: This file now implements
12935         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12936         base class is purely for the convenience of the X port,
12937         and not part of the interface to cross-platform GDK.
12938
12939         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12940         
12941         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12942         specific to X, and returned by the create_gc virtual method
12943         of GdkDrawableImplX11. 
12944         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12945         rather than gchar, this was also changed in the GdkGC vtable.
12946         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12947         mask is 0, return immediately, instead of checking every flag.
12948         This is faster, and keeps us from segfaulting if values is NULL
12949         and the mask contains some nonzero flags.
12950
12951         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12952         GdkWindow.
12953
12954         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12955         GdkWindowPrivate is gone.
12956
12957         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12958
12959         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12960         remove the image_put stuff that got transferred to GdkDrawable.
12961         
12962         * gdk/x11/gdkinput.c: renamings
12963
12964         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12965
12966         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12967
12968         * gdk/x11/gdkprivate-x11.h: indentation fixes
12969
12970         * gdk/x11/gdkproperty-x11.c: renamings
12971
12972         * gdk/x11/gdkselection-x11.c: renamings
12973
12974         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12975         implements the platform-specific "impl" object.
12976         Moved gdk_window_get_children to gdk/gdkwindow.c
12977
12978         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12979         that no longer exist. Add declaration of GdkGCX11 object here.
12980         Fix all the macros to still work. 
12981
12982         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12983         GdkDragContext from the boxed types since they are now GObjects.
12984
12985         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12986         moved xthickness/ythickness into the instance. GtkStyleClass
12987         functions are now in the standard vtable for GtkStyle, so you have
12988         to create a GObject subclass to write a theme engine.
12989         (gtk_style_copy): fixed a leaked PangoFontDescription
12990         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12991         can be the standard GObject function.
12992         
12993         * Throughout GTK:
12994         s/style->klass->[xy]thickness/style->[xy]thickness
12995         s/pango_layout_unref/g_object_unref/
12996
12997         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
12998         
12999         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
13000         accessing GDK internals.
13001
13002         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
13003         accessing GDK internals.
13004
13005 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13006
13007         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
13008
13009         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
13010         problem by calculating event position relative to the trough
13011         rather than the slider.
13012         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
13013
13014         * gdk/gdkgc.h: Add GDK_NOR.
13015
13016         * configure.in, Makefile.am: Add modules top level dir
13017         * configure.in: Only use pangox library if building x11 target.
13018         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
13019
13020 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13021
13022         * gtk/gtkcolorsel.c: Change private class member to be named
13023         private_data throughout the file.
13024
13025         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
13026         private_data to avoid clashing with keyword.
13027
13028 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13029
13030         * gdk/gdkdnd.h: Add comment to remove warning.
13031
13032 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
13033
13034         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
13035         Byelorussian language; changed the Makefile and file names 
13036         to reflect that.
13037
13038 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
13039
13040         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
13041         rather than gdk_window_hide; this makes things work
13042         correctly if the window is programmatically hidden while
13043         iconified.
13044
13045 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
13046
13047         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
13048         cut and paste typo where wrong pixmap was being
13049         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
13050
13051 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
13052
13053         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
13054         Add helper function to compute format / bytes 
13055         relationship. Use in a couple places to fix up
13056         errors which assume 8 * format.
13057
13058         * gtk/gtkselection.c (gtk_selection_request): Use 32
13059         rather than 8 * sizeof (GdkAtom), to work correctly
13060         on Alpha.
13061
13062 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
13063
13064         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
13065         libgtk.la
13066         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
13067         versions
13068
13069         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
13070         checking macros return NULL since the function has a return value.
13071
13072 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
13073
13074         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
13075         GTK+ from building at all.
13076
13077         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
13078
13079 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
13080
13081         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
13082         gtk/Makefile.am: make it possible to configure gtk for different
13083         targets on the same platform. The library name is now 
13084         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
13085         flag. Only the x11 target compiles right now.
13086         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
13087         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
13088         * gdk/nanox/gdk*generic*: delete generic region code.
13089         * gdk/linux-fb/gdk*generic*: delete generic region code.
13090         * README.nanox: update information.
13091         
13092 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
13093
13094         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
13095         prepend not append. (Pointed out by Brett Hall.)
13096
13097 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
13098
13099         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
13100
13101 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
13102
13103         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
13104         need this later, and this makes sure that the atexit for
13105         glib gets called after that for GDK, so atexits are
13106         properly ordered for object leak checking.
13107
13108         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
13109
13110         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
13111         pango_x_shutdown_display()
13112
13113         * gtk/simple.c (main): Close window on destroy.
13114
13115 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
13116
13117         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
13118         to treat initial creation different from setting with 
13119         regards to the graphics-exposures parameter, so add a parameter
13120         indicating whether this is initial or not.
13121
13122 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
13123
13124         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
13125         to sort of work by adding an extra return_exposes arg
13126         to gdk_event_translate() - it might be better to simply
13127         deprecate the function altogether and force people to rewrite
13128         without it. gdk_window_scroll() handles most of it, and where
13129         gdk_window_scroll() doesn't work, simply redrawing more does.
13130
13131         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
13132         assertion.
13133
13134         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
13135
13136         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
13137         bunch of pretty much useless /* Print debugging info */ comments 
13138         which had drifted away from the code they were commenting.
13139
13140 2000-06-02  Havoc Pennington  <hp@pobox.com>
13141
13142         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
13143         is in working order.
13144         
13145         * gtk/testtext.c: Change to reflect anonymous mark API
13146
13147         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
13148
13149         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
13150         field, which was unused.
13151
13152         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
13153         saves some typing.
13154
13155         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
13156
13157         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
13158         flag on the insertion point and selection bound
13159
13160         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
13161         make mark-manipulation functions take a GtkTextMark* instead of a
13162         mark name.
13163         
13164         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
13165         GtkTextMarkBody; will be used to detect attempts to delete
13166         the permanent marks (insert and selection bound)
13167
13168         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
13169
13170 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
13171
13172         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
13173         flag to on.
13174
13175         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
13176         Honor DOUBLE_BUFFRED_FLAG
13177
13178         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
13179         function to set the DOUBLE_BUFFERED flag.
13180
13181         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
13182         or not exposes done on the widget should be double-buffered.
13183
13184         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
13185         to be what would be expected. (Fixes problem with a
13186         g_return_if_fail() validating a TextDirection enumeration)
13187
13188 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
13189
13190         * gtk/gtkwidget.c: Remove all references to 
13191         offscreen flag which was no longer used.
13192
13193         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
13194
13195         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
13196         for non-null label_widget->parent.
13197
13198         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
13199         which no longer was used.
13200
13201         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
13202
13203         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
13204         for null arguments.
13205
13206         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
13207         check for destroyed windows.
13208
13209 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
13210
13211         * gtk/gtkimmulticontext.c: Add a finalize method and unref
13212         the slave context there.
13213
13214         * gtk/gtkinvisible.[ch]: Make reference counting behavior
13215         identical to GtkWindow.
13216
13217 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
13218
13219         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
13220         pangox to here, so we can write them independent of rendering
13221         system, using GDK primitives.
13222
13223         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
13224         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
13225         since we have a rendering-system independent implementation in
13226         terms of draw_glyphs().
13227         
13228         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
13229         function to render a single line.
13230
13231         * gdk/x11/gdkpango.c: Move the guts of this file mostly
13232         into ../gdkpango.c, which simplifies things, since we
13233         don't have to deal with raw X gc's.
13234
13235 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
13236
13237         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
13238         get the logical attributes for a given GtkTextLine.
13239
13240 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
13241
13242         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
13243         g_locale_get_codeset() to g_get_codeset() change.
13244
13245 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
13246
13247         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
13248         descriptions.
13249
13250         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
13251         the entry.
13252
13253         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
13254         redoing (vastly simplifying) for Pango. Still needs quite
13255         a bit of work. (Size selection is currently poor. List of 
13256         predefined sizes is not a good idea, since all of these
13257         sizes won't necessarily be distinct.)
13258
13259 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
13260
13261         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
13262         CODESET results for LANG=C.
13263
13264 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
13265
13266         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
13267         which takes a stringized pango font description;
13268         ignore the older 'font' and 'fontset' declarations.
13269
13270         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
13271         field with a GdkFont derived via gdk_font_from_description(),
13272         for compatibility. (Should we just remove it entirely?
13273         Probably too much compatibility breakage, but people
13274         should be migrating to the new Pango stuff as quickly
13275         as possible.)
13276
13277 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
13278
13279         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
13280
13281 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
13282
13283         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
13284         redoing; there are some bugs in size allocation right
13285         now, the semi-existant distinction between header / day
13286         fonts was removed, but, with Pango, could actually
13287         be made functional in a nice way.
13288         
13289         * gtk/testcalender: Move calender from examples into this
13290         directory as a test program. (We really need to restrcture
13291         testgtk into a whole directory full of tests for every
13292         widget or functionality group, separated into multiple .c
13293         files.)
13294
13295 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
13296
13297         * gtk/testgtk.c (file_exists): Fix stupid typo that
13298         was keeping RC file from being loaded.
13299
13300         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
13301         RC file font code.
13302
13303 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
13304
13305         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
13306         Add function to load a GdkFont from a PangoFontDescription.
13307
13308 2000-05-29  Tor Lillqvist  <tml@iki.fi>
13309
13310         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
13311         variable should be of type GdkEventPrivate.
13312
13313 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
13314
13315         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
13316         to have any widget for the label, use a GtkLabel widget
13317         to display the text. (Based partially on a patch from
13318         Anders Carlson.)
13319
13320         (Quite a bit of code reorganization - strip 90% of the
13321         guts out of gtkaspectframe and add a single virtual
13322         func to GtkFrameClass - compute_child_allocation.)
13323
13324 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
13325
13326         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
13327         (Removed clist->row_center_offset field because caching
13328         it wasn't saving time or code, added private function
13329         _gtk_clist_create_cell_layout()).
13330
13331 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
13332
13333         * gtk/gtkaccellabel.c: Pangoized.
13334
13335         * gtk/[hv]ruler.c: Pangoized
13336
13337 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
13338
13339         * gtk/gtkfilesel.c (gtk_file_selection_init):
13340         Use gtk_clist_set_column_auto_resize() to remove need
13341         need for manual column width computations.
13342
13343 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
13344
13345         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
13346         ensuring Pango correctness, and considerably simplifying the
13347         code.
13348         
13349         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
13350
13351         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
13352         getting of numbers of lines.
13353
13354         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
13355         to the actual requested width of the lable, not to the wrap
13356         width we set.
13357
13358         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
13359
13360         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
13361           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
13362
13363         * gtk/gtktextview.c: Fix structure inheritance.
13364
13365         * gtk/gtkprogressbar.c: Pangoize.
13366
13367 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
13368
13369         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
13370         in a function.
13371
13372         * gtk/gtktextlayout.c (find_display_line_above): Fixed
13373         bug with computing line tops.
13374
13375         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
13376
13377 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13378
13379         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
13380         and y_offset coordinates to do what we need now. (The offset between
13381         buffer and layout coordinates has been reintroduced, but is a 
13382         bit different than before.)
13383
13384         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
13385         handle the adjustments ourselves, and scroll as necessary using
13386         the new gdk_window_scroll().
13387         
13388         The advantage of this is that when we are incrementally revalidating,
13389         we are essentially rearranging things around the visible portion
13390         of the screen. With the old setup, the visible portion of the
13391         screen was moved around in the layout, so scrolling and redrawing
13392         to track that caused jumping of the display. Since we now
13393         control the scrolling ourselves, we can suppress this and
13394         only redraw when things actually change.
13395
13396 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
13397
13398         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
13399         the region not just redisplay it after-all, since we store the
13400         cursors in the LineDisplay. (Ugly interactions here between
13401         GtkLayout and GtkTextBTree here.)
13402         
13403         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
13404
13405 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13406
13407         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
13408         Added function to scroll contents of a window while keeping the
13409         window constant. Works by XCopyArea or guffaw-scrolling depending
13410         on the details of how the window is set up. (guffaw-scrolling
13411         still needs to be filled in.)
13412
13413 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
13414
13415         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
13416         move the debugging that was tied to a global variable
13417         to that.
13418
13419         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
13420
13421         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
13422         validated flag, in line data instead of setting height/width to
13423         -1. This allows us to perform operations with partially invalid
13424         buffer (using the old size for invalid lines) and thus to do
13425         incremental vaidation. Keep height/width aggregates up to date
13426         when deleting text and rebalancing the tree.
13427
13428         * gtk/gtktextbtree.[ch]: Add functions validate a line
13429         (gtk_text_btree_validate_line), and to validate up
13430         to a number of pixels (gtk_text_btree_validate).
13431
13432         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
13433         that indicates that something is changed and a revalidation
13434         pass is needed. Change ::need_repaint to ::changed, and
13435         make it take old and new yranges instead of a rectangle.
13436
13437         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
13438         the line_data_destroy() function from 
13439         gtk_text_btree_add_view() to a virtual function in 
13440         GtkTextLayout
13441
13442         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
13443         since we are handling partial repaints in a different fashion
13444         now.
13445
13446         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
13447         of the selection instead of queueing a repaint on the
13448         entire widget.
13449
13450         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
13451         get_selection_bounds() down to btree, make the function
13452         in buffer a wrapper around the btree function.
13453
13454         * gtk/gtktextlayout.[ch]: Add functions to check if the
13455         layout is valid and to recompute either a range of pixels
13456         aroudn a line or a certain total number of pixels.
13457
13458         * gtk/gtktextlayout.[ch]: Cache a single line display;
13459         now that we only redraw the needed portions, the hit rate
13460         for this cache is quite high.
13461         
13462         * gtk/gtktextview.[ch]: Keep track of the first paragraph
13463         on the screen so that when re-laying-out the buffer, we can
13464         keep the same place. This requires connecting to ::value_changed
13465         on the adjustments
13466
13467         * gtk/gtktextview.[ch]: Add idle functions to revalidate
13468         the buffer after we receive an ::invalidated signal.
13469         
13470 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
13471
13472         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
13473         to max of allocation and layout size, not just to the
13474         layout size.
13475
13476         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
13477         Invalidate window so it gets redrawn properly.
13478
13479         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
13480         to mean the entire window.
13481
13482         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
13483         into public header.
13484
13485 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13486
13487         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
13488         to get the name of a mark.
13489
13490         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
13491         to find the paragraph from a y position.
13492
13493 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
13494
13495         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
13496         nodes have width/height >= 0, not > 0.
13497
13498 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
13499
13500         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
13501         Add a size_only flag, so when we only need the size, we don't create
13502         useless appearance attributes.
13503
13504         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
13505         duplicate setting of font description.
13506
13507         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
13508
13509 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13510
13511         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13512         EXTRA_DIST. It does not work well when the file that
13513         everything depends on is not in the tarball.
13514
13515 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13516
13517         * gtk/testgtk.c: Some hacks and fixes so that it basically
13518         works when not sitting in the GTK+ build tree.
13519
13520 2000-05-03  Havoc Pennington  <hp@redhat.com>
13521
13522         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13523         Properly determine the ordering of the tag root and the current
13524         line within the tree. Previous algorithm only worked if the tag
13525         root's immediate parent was the common root of both the current
13526         line and the tag root.
13527
13528 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13529
13530         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13531         alignment.
13532
13533         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13534         the widget text directional dynamically.
13535
13536         * gtk/gtktextview.[ch]: Added functions to get and set default
13537         wrap mode.
13538
13539 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13540
13541         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13542         in cursor location computation.
13543
13544 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13545
13546         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13547         vadjusment values properly when layout gets smaller.
13548
13549         * gtk/gtktextview.c (need_repaint_handler): Areas being
13550         passed in are far completely inaccurate, and sometimes
13551         too small, so, for now, just queue a redraw on the
13552         whole visible region.
13553
13554 2000-04-25  Havoc Pennington  <hp@redhat.com>
13555
13556         * gtk/gtktextbtree.c (summary_destroy): new function to 
13557         destroy tag summary nodes
13558         (gtk_text_line_next_could_contain_tag): this function was 
13559         totally broken if the line passed in wasn't below the tag
13560         root. Fix it.
13561         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13562         "wildcard" case, we have to do a linear scan. Blah.
13563         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13564         we have to do the linear scan
13565         (tag_removed_cb): When a tag is removed from the tag table, 
13566         remove the GtkTextTagInfo node from the btree.
13567         (gtk_text_btree_spew): Implement the spew function, for 
13568         our debugging pleasure.
13569
13570 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13571
13572         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13573         a problem with referring to the wrong buffer.
13574
13575         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13576
13577         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13578         font description to gtk_style_new() - otherwise things
13579         don't work without a .gtkrc file.
13580
13581         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13582         tags table if we create it ourself, too.
13583
13584         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13585         it was conflicting with XKB modifiers.
13586
13587         * gtk/gtktextview.[ch]: Add simple support for 
13588         GtkIMContext.
13589
13590 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13591
13592         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13593         with deletion from last commit.
13594
13595 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13596
13597         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13598         in the context from the current locale.
13599         
13600         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13601         context, not hardcoded value.
13602
13603         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13604         not logical.
13605
13606 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13607
13608         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13609         attributes - that doesn't handle partial-glyph selection
13610         properly. Instead use new pango_layout_line_get_x_ranges()
13611         functionality to draw the selection.
13612
13613         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13614         now properly handles out-of-range coordinates.
13615
13616         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13617
13618         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13619         public.
13620
13621         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13622         for paragraphs opposite to the base direction of the widget.
13623
13624         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13625
13626         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13627         causes Arabic words to reshape as you cursor through.
13628
13629         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13630         cursor position when moving vertically with the arrow keys and
13631         scrolling with page-up/page-down. (Arrow keys save only the X,
13632         scrolling saves both X and Y.)
13633
13634         This means you can line-up / line-down or page-up / page-down
13635         without losing your place, and also that moving vertically
13636         with the cursor keys keeps the same X position, not the same
13637         character count:
13638
13639         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13640         arrow keys move by display lines, not paragraphs.
13641
13642 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13643
13644         * gtk/gtklayout.c: Make sure that the bin window is at least
13645         as big as the allocation. (Should we also make sure that the
13646         bin window is big enough to completely cover widget->window?)
13647
13648         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13649         function to get the onscreen rectangle.
13650
13651         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13652         for offsets in window coordinates.
13653
13654 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13655
13656         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13657         confusion.
13658
13659         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13660         from the widget direction.
13661
13662         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13663         Add a "direction" attribute.
13664
13665         * gtk/gtktextview.c: global s/tkxt/text_view/.
13666
13667         * gtk/testtext.c: Added long block of text in Arabic, to test out
13668         the direction attributes. (Some problems with the shaping system
13669         for arabic become obvious - like the fact the cursor splits words
13670         into unjoined pieces.)
13671
13672 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13673
13674         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13675
13676         * gtk/gtktextlayout.c: Fix up alignment.
13677
13678         * gtk/testtext.c: Add some tests for centering, wrapping.
13679
13680 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13681
13682         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13683         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13684         If we wrote GTK+-specific layout-render function this could just replace
13685         the draw_layout() operation in the vtable.
13686
13687         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13688         pango_layout_get_cursor_pos() and use that function.
13689
13690         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13691         is a non-static symbol.
13692
13693         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13694         with gtk_text_btree_find_line_by_y()
13695
13696         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13697         renderer that handles GtkTextAppearance attributes.
13698
13699         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13700
13701           - Move the values in the style that don't affect geometry into a
13702             GtkTextAppearance structure.
13703           - Change underline to take a PangoUnderline and "font" a string
13704             representation of a font description
13705           - Add a "font_desc" attribute which takes a FontDescription structure.
13706
13707         * gtk/gtktextlayout.[ch]:
13708
13709           - Get rid of the display-line list per each line. Instead, we
13710             generate, on demand, a GtkTextLineDisplay structure which]
13711             contains a PangoLayout * and other necesary information
13712             (offsets, cursor locations) for displaying a paragraph.
13713           - Get rid of the code to wrap lines, create display chunks,
13714             etc. Instead, we just go through a paragraph and convert
13715             it into the necessary inputs to a PangoLayout.
13716           - Implement a new attribute type, GtkTextAttrAppearance. This
13717             holds a GtkTextAppearance, and is used to pass colors, 
13718             stipple, etc, through from the layout to the display without
13719             having to use lots and lots of individual attributes.
13720           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13721             in terms of PangoLayout functions.
13722         
13723         * gtk/gtktextview.c: 
13724          
13725           - Handle passing the necessary PangoContext to the layout
13726           - Some fixups in painting to deal with the automatic backing store
13727             and offsetting of GTK+-1.4
13728           - Add a style_set handler so that the default style reacts
13729             properly to theme changes.
13730         
13731         * gtk/gtktext?*.[ch]: Random code-style fixes.
13732
13733         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13734
13735 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13736
13737         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13738         in original form preparatory to Pango-ization and gdkimcontext-ization.
13739
13740 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13741
13742         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13743         so that we can derive from gtkimcontext in language bindings properly.
13744
13745 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13746
13747         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13748         Add a compose table including (almost) all the compose combinations
13749         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13750         data in the XIM implementation.
13751
13752         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13753         Moved functions to convert keyvalues from and to unicode here from
13754         the win32 port and made them public.
13755
13756 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13757
13758         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13759
13760 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13761
13762         * gtk/gtkimcontext.[ch]: Base class for new input context system
13763
13764         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13765         the real input context implementation to be loaded from modules
13766         and switched on the fly.
13767
13768         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13769         context that just does direct keysymbol => unicode translation.
13770
13771         * gtk/gtkentry.[ch]: Start switching editing over to using
13772         GtkInputContext. (No handling of preedit yet.)
13773
13774 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13775
13776         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13777         many substitutions. (klass should not be subsituted.)
13778
13779 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13780
13781         * configure.in: Add checks for Pango
13782
13783         * configure.in docs/Makefile.am: Add test for sgml2html
13784         and allow 'make dist' without building html, but print out
13785         warnings in that case. (For making snapshots)
13786
13787         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13788         Add Pango libraries and C flags
13789
13790         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13791         Add function (gdk_draw_layout) to draw a pango layout.
13792
13793         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13794         for getting Pango contexts for GDK.
13795
13796         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13797
13798         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13799         editing.
13800
13801         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13802         keysym => unicode translations. More languages can be added
13803         here, but real input-method support is needed.
13804
13805         * docs/Changes-1.4.txt: Added note about entry behavior.
13806         
13807         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13808         to set the reading direction for a widget and the global direction.
13809         Add test which allows toggling the global direction. Two private
13810         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13811
13812         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13813           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13814
13815         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13816
13817         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13818         underlining now handled by Pango.
13819
13820         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13821         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13822         is temporary.)
13823
13824         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13825         convenience functions for creating contexts and layouts for widgets.
13826
13827         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13828
13829 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13830
13831         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13832         titles to be active, even if they aren't visible.
13833         (gtk_clist_column_titles_passive):  Ditto.
13834
13835 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13836
13837         * gtkmenu.c:
13838         * gtkmenu.h:
13839         * gtktypeutils.h: Spelling/grammar fixes in comments.
13840
13841 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13842
13843         * gdk/nanox/*.h: add missing header files.
13844
13845 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13846
13847         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13848         send_event to TRUE.
13849         (gtk_drawing_area_size): queue a resize.
13850
13851 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13852
13853         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13854         the handlers, also invalidate them. bug nailed down by Karl Nelson
13855         <kenelson@ece.ucdavis.edu>.
13856
13857 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13858
13859         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13860         "(nil)" foundries, patch from Grigorios Magklis.
13861
13862         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13863         on non-available fonts, based on a patch by Grigorios Magklis
13864         <maglis@cs.rochester.edu>.
13865
13866 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13867
13868         * gdk/x11/gdkregion-generic.c: If a region does not have any
13869         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13870         instead of GDK_OVERLAP_RECTANGLE_IN.
13871
13872 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13873
13874         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13875         OFFSCREEN, as it is no longer necessary.
13876
13877 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gtk/gtkcolorsel.c: Patch from David Santiago
13880         <mrcooger@cyberverse.com> to change things so that the 
13881         indicator of the active palette entry is done independently,
13882         not via the focus, since it should always be visible.
13883
13884 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13885
13886         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13887         refcount leaks as in the X11 backend.
13888
13889         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13890         cosmetics.
13891
13892         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13893         backend. Add _gdk_windowing_window_destroy().
13894
13895         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13896         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13897         either, but these probably do exist on nanox?)
13898         
13899         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13900         which isn't necessarily defined by <math.h>.
13901
13902         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13903         ancestry past GtkObject.
13904
13905         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13906         from DLL on Win32.
13907
13908         * gtk/gtk.def: Update corresponding to recent changes.
13909
13910         * gtk/makefile.{cygwin,msc}: Updates.
13911
13912 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13913
13914         * docs/Changes-1.4.txt: A bit of editing.
13915
13916         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13917         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13918         to clear the update area for the window, and clear it
13919         when hiding a window.
13920
13921         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13922         if window destroyed.
13923
13924         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13925
13926         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13927         gdk_window_destroy() to the generic code, since there was a lot of 
13928         window-system-independent logic it in. Add a function:
13929         
13930          _gdk_window_destroy() 
13931
13932         to the internal API to destroy a window without unreferencing it.
13933         Add a function:
13934
13935          _gdk_windowing_window_destroy()
13936
13937         That does the windowing-system-dependent part of destroying 
13938         the window.
13939
13940 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13941
13942         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13943
13944 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13945
13946         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13947         Make gtk_widget_shape_combine_mask() keep a reference count on
13948         the pixmap since it keeps it around.
13949
13950 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13951
13952         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13953         leak.
13954
13955         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13956         leak with event filters.
13957
13958 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13959
13960         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13961         signal handlers with the right data arguments. (Fixes
13962         some warnings when a widget was repeatedly set as a drag
13963         destination.)
13964
13965         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13966         window so we can avoid avoid setting the DND properties on the
13967         toplevel window repeatedly.
13968
13969 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13970
13971         * gdk/win32/gdkwin32.h: Define more message types missing from
13972         mingw headers.
13973
13974         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13975         call gdk_window_destroy_notify(). It was never called. This
13976         probably meant that the GdkWindow was never freed. Thanks Owen for
13977         noticing (!).
13978
13979         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13980         window as destroyed before calling DestroyWindow(). DestroyWindow()
13981         causes a call to the window procedure (gdk_WindowProc), which
13982         calls gdk_event_translate(), which calls
13983         gdk_window_destroy_notify(), which gets confused unless the window
13984         is set as destroyed.
13985
13986         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13987         this function to indicate it's win32 only. Put inside #ifdef
13988         G_ENABLE_DEBUG.
13989
13990         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13991         debugging function. (gdk_event_translate:) Add a default branch
13992         that uses the above function to print debug messages with all
13993         Windows messages symbolically.
13994
13995         * gdk/win32/gdkprivate-win32.h: Declare it, and
13996         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
13997
13998 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
13999
14000         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
14001         public header file.
14002
14003 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
14004
14005         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
14006
14007         * gtk/gtktext.c: made the adjustments no-construct args, simply
14008         provide default adjustments.
14009         (gtk_text_destroy): release adjustments.
14010
14011         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
14012         adjustment argument non-construct.
14013
14014         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
14015         instead of in finalize.
14016         (gtk_progress_get_text_from_value): 
14017         (gtk_progress_get_current_text): 
14018         (gtk_progress_set_value): 
14019         (gtk_progress_get_percentage_from_value): 
14020         (gtk_progress_get_current_percentage): 
14021         (gtk_progress_set_percentage): 
14022         (gtk_progress_configure): ensure an adjustment is present.
14023
14024 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
14025
14026         * gtk/gtkcolorsel.[hc]:
14027         * gtk/gtkcolorseldialog.[hc]:
14028         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
14029         their parent implementation, use bit fields for boolean values, don't
14030         create unused widgets, usage of glib types, braces go on their own
14031         lines, function argument alignment, #include directives etc. etc. etc..
14032
14033         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
14034
14035 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
14036
14037         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
14038
14039         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
14040         of NULL.
14041
14042         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
14043         to freed data.
14044         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
14045
14046         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
14047         to NULL when the toplevel is getting destroyed.
14048         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
14049         (gtk_menu_destroy): 
14050         (gtk_menu_init): store the information of whether we have to
14051         readd the initial child ref_count during destruction in a new
14052         GtkMenu field needs_destruction_ref_count.
14053
14054         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
14055         here, those reading: learn from my mistake! ;)
14056         in order for set_?adjustment to support a default adjustemnt if
14057         invoked with an adjustment pointer of NULL, the code read (pseudo):
14058         if (v->adjustment) unref (v->adjustment);
14059         if (!adjustment) adjustment = adjustment_new ();
14060         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
14061         now imagine the first unref to actually free the old adjustment and
14062         adjustment_new() creating a new adjustment from the very same memory
14063         portion. here, the latter comparision will unintendedly fail, and
14064         all hell breaks loose.
14065         (gtk_viewport_set_hadjustment):
14066         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
14067         after unreferencing it.
14068
14069         * gtk/gtkcontainer.[hc]: removed toplevel registration
14070         functions: gtk_container_register_toplevel(),
14071         gtk_container_unregister_toplevel() and
14072         gtk_container_get_toplevels() which had wrong semantics
14073         anyways: it didn't reference and copy the list.
14074
14075         * gtk/gtkwindow.c: we take over the container toplevel registration
14076         bussiness now. windows are registered across multiple destructions,
14077         untill they are finalized. the initial implicit reference count
14078         users are holding on windows is removed with the first destruction
14079         though.
14080         (gtk_window_init): ref & sink and set has_user_ref_count, got
14081         rid of gtk_container_register_toplevel() call. add window to
14082         toplevel_list.
14083         (gtk_window_destroy): unref the window if has_user_ref_count
14084         is still set, got rid of call to
14085         gtk_container_unregister_toplevel().
14086         (gtk_window_finalize): remove window from toplevel list.
14087         (gtk_window_list_toplevels): new function to return a newly
14088         created list with referenced toplevels.
14089         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
14090
14091         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
14092         adjustment a non-construct arg.
14093         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
14094         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
14095         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
14096
14097         * gtk/gtkrange.c: added some realized checks.
14098         (gtk_range_destroy): get rid of the h/v adjustments in the
14099         destroy handler instead of finalize. remove timer.
14100         (gtk_range_get_adjustment): demand create adjustment.
14101
14102         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
14103         we simply create them on demand now and get rid of them in
14104         the destroy handler.
14105         (gtk_viewport_destroy): get rid of the h/v adjustments in the
14106         destroy handler instead of finalize.
14107         (gtk_viewport_get_hadjustment): 
14108         (gtk_viewport_get_vadjustment): 
14109         (gtk_viewport_size_allocate): demand create h/v adjustment
14110         if required.
14111
14112         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
14113         gtk_widget_real_destroy () functionality.
14114         (gtk_widget_real_destroy): reinitialize with a new style, instead
14115         of setting widget->style to NULL.
14116
14117 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
14118
14119         * gtk/gtkcalendar.c:
14120         * gtk/gtkbutton.c: ported _get_type() implementation over to
14121         GType, either to preserve memchunks allocation facilities,
14122         or because Gtk+ 1.0 GtkTypeInfo was still being used.
14123
14124         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
14125         over. prepare for ::destroy to be emitted multiple times.
14126         removed reference tracer magic. chain into GObjectClass.shutdown()
14127         to emit ::destroy signal.
14128
14129         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
14130         fundamental.
14131
14132         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
14133         cludge.
14134
14135         * gtk/gtksocket.c:
14136         * gtk/gtkplug.c:
14137         * gtk/gtklayout.c:
14138         * gtk/gtklabel.c:
14139         * gtk/gtkargcollector.c:
14140         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
14141         not being a fundamental anymore, and to work with the new
14142         type system (nuked fundamental type varargs clutter).
14143
14144         * gtk/*.c: install finalize handlers in the GObjectClass
14145         part of the class structure.
14146         changed direct GTK_OBJECT()->klass accesses to
14147         GTK_*_GET_CLASS().
14148         changed direct object_class->type accesses to GTK_CLASS_TYPE().
14149
14150         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
14151         GType. made most of the GTK_*() type macros and Gtk* typedefs
14152         simple wrappers around macros and types provided by GType.
14153         most notably, a significant portion of the old API vanished:
14154         GTK_TYPE_MAKE(),
14155         GTK_TYPE_SEQNO(),
14156         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
14157         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
14158         GTK_TYPE_ARGS,
14159         GTK_TYPE_CALLBACK,
14160         GTK_TYPE_C_CALLBACK,
14161         GTK_TYPE_FOREIGN,
14162         GtkTypeQuery,
14163         gtk_type_query(),
14164         gtk_type_set_varargs_type(),
14165         gtk_type_get_varargs_type(),
14166         gtk_type_check_object_cast(),
14167         gtk_type_check_class_cast(),
14168         gtk_type_describe_tree(),
14169         gtk_type_describe_heritage(),
14170         gtk_type_free(),
14171         gtk_type_children_types(),
14172         gtk_type_set_chunk_alloc(),
14173         gtk_type_register_enum(),
14174         gtk_type_register_flags(),
14175         gtk_type_parent_class().
14176         replacements, where available are described in ../docs/Changes-1.4.txt.
14177         implemented compatibility functions for the remaining API.
14178
14179         * configure.in: depend on glib 1.3.1, use gobject module.
14180
14181 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
14182
14183         * TODO.xml: Various updates to current status.
14184
14185 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
14186
14187         * gtk.m4: Print out version when test succeeds.
14188
14189 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
14190
14191         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
14192         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
14193         
14194         (Original triangle color selector from Simon Budig
14195         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
14196         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
14197         Santiago <mrcooger@cyberverse.com>)
14198
14199         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
14200         out into a separate widget.
14201
14202         * gtk/testgtk.c: Add some checkbuttons for toggling palette
14203         and opacity controls.
14204
14205 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
14206
14207         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
14208         snuck in prematurely.
14209
14210 2000-05-07  Tor Lillqvist  <tml@iki.fi>
14211
14212         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
14213         had deleted a ! operator by mistake, which caused
14214         GDK_SELECTION_CLEAR events never to be generated, which caused
14215         only the first copy to the clipboard from an gtkeditable to
14216         actually cause a copy to the Windows clipboard.
14217
14218 2000-05-06  Tor Lillqvist  <tml@iki.fi>
14219
14220         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
14221         compilation, too. Current mingw gcc distributions include the
14222         necessary headers. Also the necessary IIDs are now in mingw
14223         headers/libraries, and own definitions unnecessary.
14224
14225         More hacking on OLE2 DND, still doesn't work though, and thus
14226         ifdeffed out.
14227
14228         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
14229         here, too.
14230
14231 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
14232
14233         * gdk/nanox/*: nano-X port work in progress.
14234         * gdk/simple.c: simple test for Gdk.
14235         * README.nanox: notes about the port: read this first!
14236         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
14237         with nano-X.
14238
14239 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
14240
14241         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
14242         gdk_window_clear() into common code, implement in terms of
14243         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
14244         not redirected to the backing rectangle.
14245
14246 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14247
14248         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14249         EXTRA_DIST. It does not work well when the file that
14250         everything depends on is not in the tarball.
14251
14252 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
14253
14254         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
14255         with recursion where process_updates() is called from
14256         an expose handler. (GtkTextView is highly broken in
14257         doing this, but it should work, so it is a nice test
14258         case.)
14259
14260 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14261
14262         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
14263         handle the case where updates are queued during processing of
14264         updates.
14265
14266 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14267
14268         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
14269         window is on gdk_display - use that instead of segfaulting.
14270
14271 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
14272
14273         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
14274         broken and require an empty arg, give it to them.
14275
14276 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
14277
14278         * gtk/gtklabel.h: indentation fixes.
14279
14280 2000-05-02  Tor Lillqvist  <tml@iki.fi>
14281
14282         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
14283         draw too narrow or too low arcs, they seem to fail, at least with
14284         some display drivers.
14285
14286         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
14287
14288         Large changes to the Win32 backend, partially made necessary by
14289         the changes to the backend-independent internal
14290         structures. Attempts to implement similar backing store stuff as
14291         on X11. The current (CVS) version of the Win32 backend is *not* as
14292         stable as it was before the no-flicker branch was merged. A
14293         zipfile with that version is available from
14294         http://www.gimp.org/win32/. That should be use by "production"
14295         code until this CVS version is usable. (But note, the Win32
14296         backend has never been claimed to be "production quality".)
14297
14298         * README.win32: Add the above comment about versions.
14299
14300         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
14301
14302         * gdk/gdk.def: Update.
14303
14304         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
14305         presumably be replaced by some more better mechanism as 1.4 gets
14306         closer to release shape.
14307
14308         * gdk/makefile.{cygwin,msc}: Update.
14309
14310         * gdk/win32/*.c: Correct inclusions of the backend-specific and
14311         internal headers. Change code according to changes in these. Use
14312         gdk_drawable_*, not gdk_window_* where necessary.
14313
14314         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
14315         our old DND.
14316
14317         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
14318         to interpret single characters as UTF-8. Thanks to Hans Breuer.
14319         Use correct function name in warning messages.
14320
14321         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
14322         GSourceFuncs gdk_event_prepare and gdk_event_check.
14323         (gdk_event_get_graphics_expose): Do implement, use
14324         PeekMessage. Thanks to Hans Breuer.
14325         (event_mask_string): Debugging function to print an GdkEventMask.
14326         (gdk_pointer_grab): Use it.
14327
14328         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
14329         (old) book I used claimed was Hangul actually is CJK Unified
14330         Ideographs Extension A. Also, Hangul Syllables were missing.
14331         Improve logging.
14332
14333         * gdk/win32/gdkgc-win32.c: Largish changes.
14334
14335         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
14336         g_win32_getlocale() from GLib, and not setlocale() to get current
14337         locale name.
14338
14339         * gdk/win32/gdkprivate-win32.h
14340         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
14341         gdkwin32.h, similarily as in the X11 backend.
14342
14343         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
14344         assignment was used instead of equals in if test. Thanks to Hans
14345         Breuer.
14346
14347         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
14348         the X11 version.
14349
14350         * gdk/win32/makefile.{cygwin,msc}
14351         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
14352         path to the Win32 headers that works also with the mingw compiler.
14353
14354         * gtk/gtkstyle.c: Include <string.h>.
14355
14356 2000-04-26  Havoc Pennington  <hp@redhat.com>
14357
14358         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
14359         replacing the broken gtk_label_get ()
14360
14361 2000-04-15  Havoc Pennington  <hp@pobox.com>
14362
14363         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
14364         this keeps scanner scripts from getting confused.
14365
14366         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
14367         data, rather than void
14368
14369 2000-04-15  Tor Lillqvist  <tml@iki.fi>
14370
14371         * gtk/gtkclist.c (gtk_clist_motion)
14372         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
14373         with is_hint FALSE, get x and y from the event. They used to be
14374         used uninitialised. The Win32 backend never sends motion events
14375         marked as hints. This for instance fixes the annoying file and
14376         font selector behaviour in the Win32 version.
14377
14378 2000-04-14  Tor Lillqvist  <tml@iki.fi>
14379
14380         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
14381         gtk_private_n_signals variables, they are used by some software,
14382         sigh.
14383
14384         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
14385         installation directory from the Registry, where the installer
14386         should have put it.
14387
14388 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
14389
14390         * gdk/x11/Makefile.am: Fix problem with installation directory for
14391         gdkx.h
14392
14393         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
14394         <mrcooger@cyberverse.com> so that when selecting menus with the
14395         mouse, the first item will not be selected, but when selecting
14396         with an accelerator, or navigating left-right on a menubar with
14397         the menus popped up, the first item will be selected.
14398
14399 2000-04-05  Dan Damian  <dand@dnttm.ro>
14400
14401         * configure.in: Added "ro" to ALL_LINGUAS.
14402
14403 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
14404
14405         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
14406         indentation.
14407
14408         * Makefile.am (EXTRA_DIST): Fix typo.
14409
14410         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
14411         to catch gdkconfig.h
14412
14413         * gtk/gtkitemfactory.c: Added FIXME.
14414
14415 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
14416
14417         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
14418         s/return_if_fail/return_val_if_fail/g and add a return value.
14419
14420 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14421
14422         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
14423         merge slipup.
14424
14425         * gdk/gdkinput.h: Fix missing line from merge.
14426
14427 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
14428
14429         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
14430         instead of gdkprivate.h.
14431
14432 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
14433
14434         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
14435         parent class to correctly be GtkDialogClass.
14436
14437 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
14438
14439         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
14440         toplevel windows and their immediate children by their parents,
14441         since the size of toplevel windows is out of our immediate
14442         control and we don't get any real benefit from trying to track
14443         this size for clipping.
14444
14445         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
14446         for input_only windows.
14447
14448         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
14449         to fix some hacks and make sure that we don't try to set the
14450         background of input only windows.
14451
14452 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
14453
14454         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
14455         the _really_ internal stuff, and leave gdkprivate.h for the fake private
14456         stuff that we've traditionally exposed.
14457
14458         * gdk/**.c: Use gdkinternals.h where appropriate.
14459
14460         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
14461         not include gdkprivate-x11.h, move all stuff of conceivable public
14462         interest into gdkx.h; keep all really private stuff in
14463         uninstalled header gdkprivate-x11.h.
14464
14465         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
14466         image->image_put on windows through a new function _gdk_window_draw_image()
14467         to allow us to do backing store for images. (Sort of ugly)
14468
14469         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
14470         contexts locally so that we can offset them properly when drawing 
14471         onto backing pixmaps.
14472
14473         * gdk/gdkinput.h: Reindented
14474
14475         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
14476         pixmap or color for the window, so we can properly initialize
14477         our double-buffer pixmaps, and also so that we temporarily set
14478         a background of None while scrolling.
14479
14480         * gdk/gdkregion.h: Revise region boolean operators to have an
14481         interface that is actually convenient - switch from creating new
14482         regions on every op, to "methods" that modify existing regions
14483         (A = A OP B). 3 argument forms which allow dest == src, would also
14484         be possible, but the current interfaces seem to map nicely
14485         onto what needs to be done. (There is quite a lot of region
14486         code in GDK now.)
14487
14488         * gdk/gdkregion.h: Add constructor from rectangle and a copy
14489         operator.
14490
14491         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
14492         gdkpoly-generic.h: Copy region code from Xlib, switch it over
14493         to 32 bit coordinates, modify it to be mostly GTK+ style
14494         and to have interfaces that match gdkregion.h.
14495
14496         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
14497         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
14498         create a backing pixmap and redirect all drawing to
14499         that backing pixmap until a matching gdk_window_end_paint().
14500
14501         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
14502         Create a special drawable class for GtkWindow's that 
14503         redirects the drawing to the backing pixmap as necessary
14504         and then calls the real operations in _gdk_windowing_window_class.
14505
14506         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
14507         Store invalid region for each window. Generate expose events for invalid
14508         region in an idle. This replaces both the expose compression
14509         and the redrawing queuing in GTK+. It is both more efficient and
14510         simpler than either one individually and far more so then the
14511         combination.
14512
14513         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14514         Emulate 32 bit coordinates for windows with 16 bit coordinates
14515         by offsetting drawing, guffaw scrolling techniques and
14516         mapping/unmapping child windows as necessary.
14517
14518         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14519         where, when invalid regions are processed, the region is stored,
14520         and if expose events come in that are detectably duplicate
14521         the processed exposes (by comparison of event serial numbers),
14522         the stored region is subtracted out of those exposes.
14523
14524         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14525         regions newly exposed when scrolling or resizing windows.
14526         This, combined with forcing processesing of queued invalidated
14527         regions, gives nice flicker-free scrolling.
14528
14529         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14530         invalidated regions after every scroll.
14531
14532         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14533         emulation in GDK. Its, for all practical purposes just a
14534         GtkViewport/GtkFixed hybrid now.
14535
14536         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14537         (16-bit) structures as necessary instead of just casting.
14538
14539         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14540         in terms of the structures from gdkregion-generic.c, using appropriate
14541         offsets from GDK to X11 coordinates. Cache clip mask and
14542         origin and ts origin locally and only flush to the server
14543         when drawing, to avoid constantly setting and resetting these
14544         values when offsetting GC's for scrolling and backing pixmaps.
14545
14546         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14547
14548         * gtk/gtkcontainer.c: Call process_all_updates at end
14549         of resizing to reduce flicker. (Avoids having redraw
14550         lag arbitrarily behind resize under some circumstances)
14551
14552         * gtk/gtkentry.c: Remove old backing store code, and simply take
14553         advantage of the new backing store capabilities of GDK.
14554
14555         * gtk/gtkmain.c: Simple implementation of widget backing
14556         store - simply push a paint while handling each expose.
14557         (Should really be configurable widget for widget.)
14558         
14559         * gtk/gtkwidget.c: Remove all the old complicated redraw
14560         code, and simply invalidate the GDK windows from
14561         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14562         debugged complexity ... gone to the winds.)
14563
14564         Remove all the code for suppressing expose events while
14565         resizes are pending; this isn't needed since the invalid
14566         areas won't be processed until after the resizes are
14567         processed, since they are in a lower priority idle.
14568
14569 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14570
14571         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14572         and height of dest rectangle for non-intersecting rectangles.
14573
14574 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14575
14576         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14577         for GdkRectangle.
14578
14579 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14580
14581         * gdk/gdk{events,image,private,types,window}.h
14582          gdk/x11/gdkinputprivate.h: Change all coordinates
14583          from int16 to int. Also, Change width and height from
14584          unsigned to signed to avoid all the stupid C 
14585          signedness bugs.
14586
14587 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14588
14589         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14590         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14591         Add some more detailed checking.
14592
14593         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14594         New function to retrieve the depth of a drawable.
14595
14596         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14597         field, reorder fields to save memory. 
14598
14599 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14600
14601         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14602         of the background image instead of scaling the background down to
14603         a line.
14604
14605         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14606         which temporarily set slider to wrong size.
14607
14608         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14609         queue_clear().
14610
14611 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14612
14613 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14614
14615         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14616
14617 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14618
14619         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14620         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14621
14622         * gdk/win32/gdkfont-win32.c
14623         * gdk/win32/gdkproperty-win32.c
14624         * gdk/win32/gdkselection-win32.c
14625         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14626         now declared such.
14627
14628 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14629
14630         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14631
14632 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14633
14634         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14635         is called without trapping X errors.
14636
14637 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14638
14639         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14640         way into the fontset lists.
14641
14642 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14643
14644         * gtk/gtkthemes.h: add extern "C" scope.
14645
14646 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14647
14648         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14649         to make appends to the list constant. (gtk-guy-990901-0.patch)
14650
14651 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14652
14653         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14654         for the typename hash table.
14655
14656 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14657
14658         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14659         to make sure we never divide by zero. 
14660         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14661
14662 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14663
14664         * gtk/gtkfontsel.c: Apply patch from
14665         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14666         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14667
14668         Also, some cleanups in atom handling.
14669
14670 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14671
14672         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14673         not GtkWidget.
14674
14675 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14676
14677         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14678         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14679         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14680         more guint wrap-around bugs before going to bed.
14681
14682 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14683
14684         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14685         guint wrap arounds in allocation.width.
14686
14687         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14688         process untill we fit the allocation given.
14689
14690 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14691
14692         * gtk/gtkwidget.c:
14693         (gtk_widget_unrealize): guard widget access with ref/unref
14694         around signal emission.
14695         (gtk_widget_hide): same here, but also check its destroyed
14696         state before queueing a resize.
14697
14698 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14699
14700         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14701         of gtk_default_insensitive_bg as insensitive base color.
14702
14703         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14704         to the widget's state.
14705         (gtk_text_realize): same here.
14706         (gtk_text_state_changed): same here.
14707         (draw_bg_rect): compare background color against base[] from
14708         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14709
14710 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14711
14712         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14713         grabs are active, unless a delete event is send to the toplevel
14714         of the currently grab holding widget.
14715
14716 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14717
14718         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14719         debugging g_print's.
14720
14721 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14722
14723         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14724         ever make the scrolled-window requisition ever depend on the 
14725         visibility state of the scrollbars for the AUTOMATIC policy. 
14726         This breaks the GTK+ requisition model, and causes loops.
14727
14728 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14729
14730         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14731         the default font to avoid problems with XFree86-4.0 where the
14732         default charset is iso10646-1, not iso8859-1.
14733
14734 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14735
14736         * acinclude.m4
14737         * config.guess
14738         * config.sub
14739         * ltconfig
14740         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14741
14742         * gtk/Makefile.am: minor cosmetic consistency tweak
14743
14744 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14745
14746         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14747         the activate_time to 0, so that we handle a quick
14748         press/release press/release properly and don't suppress
14749         the second release. (Red Hat bug #7545)
14750
14751 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14752
14753         * gtk/gtkctree.c (row_delete):
14754         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14755         bugs with destruction notifier, *always* update internal
14756         structures *before* calling user code.
14757
14758 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14759
14760         A few more fixes for bug #5487, #2051, #2677.
14761         * gtk/gtkclist.c : 
14762         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14763         not GDK_BUTTON_PRESS.
14764         (resync_selection): resync only if selection_mode is
14765         GTK_SELECTION_EXTENDED
14766         * gtk/gtkctree.c (resync_selection): same here
14767
14768 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14769
14770         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14771         gdk_drag_get_selection() and gtk_menu_detach().
14772
14773         [ From Jeroen Ruigrok/Asmodai ]
14774
14775 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14776
14777         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14778         page->tab_label can be NULL.
14779
14780 2000-01-25  Havoc Pennington  <hp@pobox.com>
14781         
14782         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14783         arg is boolean
14784
14785         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14786
14787         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14788
14789         * gdk/gdkproperty.c (gdk_property_get): return boolean
14790
14791         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14792
14793         * gdk/gdkim.c (gdk_im_ready): return boolean
14794
14795         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14796
14797         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14798         glib clash, should fix glib)
14799
14800         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14801         (gdk_get_show_events): return gboolean, and canonicalize 
14802         to TRUE/FALSE
14803
14804         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14805         colormap is private
14806         (gdk_colors_alloc): gboolean whether to be contiguous
14807         (gdk_color_equal): return gboolean since we are a predicate
14808         and not a qsort() (this looks semi-wrong due to glib breakage,
14809         IMO glib should be fixed)
14810         
14811         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14812         (gdk_get_use_xshm): return gboolean
14813         (gdk_pointer_is_grabbed): return gboolean
14814
14815         * gdk/gdk.h: Change prototypes to match all the above changes,
14816         and re-run egtk-format-protos as required.
14817
14818 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14819
14820         * gtk/gtkctree.c (resync_selection): 
14821         * gtk/gtkclist.c (resync_selection):
14822
14823         Return immediately if clist->drag_pos < 0. This is a workaround
14824         for the corrupt state that the clist gets into when a
14825         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14826
14827         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14828         
14829         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14830         variable from recent commit.
14831
14832 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14833
14834         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14835
14836 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14837
14838         * gtk/Makefile.am: prefix all autogenerated source that get build in
14839         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14840         in builddir. since we subsequently cd into srcdir for autogeneration,
14841         the paths have to be stripped from the target file names, thusly we
14842         use $(@F) as target names now.
14843         put a comment about configure.in's --disable-rebuilds option,
14844         which can be used for non-writable source directories, for development
14845         setups though, srcdir has to be *writable*.
14846
14847 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14848
14849         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14850           Finish the job of allowing event to be NULL.
14851           (Fixes bug #4283, reported by Chris Blizzard)
14852
14853         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14854           things so that the cursor appears on screen, properly
14855           take into account INNER_BORDER.
14856           (Fixes bug #4754, reported by Antonio Campos)
14857
14858 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14859
14860         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14861           show the tab_label unless it itself is visible.
14862
14863           gtk/gtknotebook.c (gtk_notebook_size_request):
14864           Do a better job of making sure that the visibility
14865           of the tab label corresponds to whether it should
14866           be mapped or not.
14867
14868 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14869
14870         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14871           Use the requisition, not the allocation, since the
14872           allocation has not necessarily been computed yet.
14873           (Pointed out by Eugene Osintsev)
14874
14875 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14876
14877         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14878           style/base[GTK_STATE_INSENSITIVE] both to
14879           gtk_default_insensitive_bg!
14880           (Bug #2187, reported by Jonathan Blandford)
14881
14882         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14883           Add Alt_L, Alt_R to list of invalid accelerators.
14884           (Bug #3736, reported by Vlad Harchev)
14885
14886 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14887
14888         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14889         bugs which occured after an attempt to open 
14890         invalid home directory left cmpl_state->reference_dir == NULL.
14891
14892          - completion on files in home directory didn't work
14893          - completion on an empty string caused  segfault
14894
14895          (Bug #3678, reported by Steve Ratcliffe)
14896
14897         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14898         cut and paste error that was causing scales to
14899         be incorrectly positioned.
14900         (Bug #2956,
14901          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14902
14903 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14904
14905         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14906         when checking for dcgettext, if we've found we needed
14907         it for dgettext.
14908 +
14909 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14910
14911         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14912         queue_clear on NO_WINDOW widgets during a reparent,
14913         since at that point the window and widget heirarchies
14914         are out of sync. This stops crashing in some cases
14915         (the scrolled window reparent test, for instance), and
14916         _probably_ won't cause drawing errors.
14917
14918         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14919         test do what it was supposed to do and be robust against
14920         window closings, etc. (Bug #2443)
14921
14922 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14923
14924         * gtk/gtkentry.c: Fix return values on mouse events.
14925         (Bug #2686, Sky <seb_sky@yahoo.com>)
14926
14927         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14928         (pointed out by George Lebl)
14929
14930         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14931         (From Ettore Perazzoli  <ettore@helixcode.com>)
14932  
14933 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14934
14935         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14936         clicks between rows or outside calender area correctly.
14937         (Patch from Damon Chaplin)
14938
14939         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14940         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14941           Call destroy function when overwriting existing data. 
14942           (Pointed out by Damon Chaplin)
14943
14944 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14945
14946         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14947           which was causing problems on various systems with Xmu.
14948           This hasn't been needed for a very long time.
14949           (Fixes #1185 3167)
14950
14951 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14952
14953         * gdk/gdki18n.h: Include <ctype.h> when defining
14954           gdk_isw* in terms of is* as a fallback.
14955           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14956
14957 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14958
14959         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14960           realize the widget when it is size allocated!
14961           (old, old bug)
14962
14963         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14964           Removed unused call to gdk_window_get_size() that
14965           showed up when the above was fixed.
14966
14967 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14968
14969         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14970           fix up widget->window when the widget is a
14971           NO_WINDOW container widget.
14972
14973 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14974
14975         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14976           to account for the fact that feof() does _not_ 
14977           return TRUE on errors, and thus avoid infinite loops
14978           when trying to use gdk_pixmap_create_from_xpm()
14979           on unreadable values.
14980
14981 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14982
14983         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14984
14985 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14986
14987         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14988           gdk_gc_set_dashes to take gint8 instead of gchar to
14989           make it clearer that it is _not_ a NULL terminated string.
14990
14991         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
14992           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
14993           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
14994           arguments.
14995
14996 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
14997
14998         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
14999         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
15000         background size relative to our allocation, guard against small
15001         allocations, we may have not yet been size allocated.
15002
15003 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
15004
15005         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
15006         not just version == 3. We implement all 3 + most of 4 - 
15007         (we don't support matching text/plain;charset=iso-8859-1
15008         to a dest that expects text/plain). We'll still advertise
15009         3 to be safe, but any client implementing version >= 3
15010         must interoperate with 3.
15011         
15012 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15013
15014         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
15015         background and gc members, add a warning in gtk_tooltips_set_color()
15016         indicating that this function is deprecated.
15017
15018 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
15019
15020         * docs/gtkfaq.sgml: FAQ Update:
15021           - Minor cleanups (Emmanuel, me)
15022           - New questions:
15023                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
15024                 How can I retrieve the text from a GtkMenuItem? (timj)
15025                 How do I validate/limit/filter the input to a GtkEntry? (me)
15026                 Memory does not seem to be released when I free the list
15027                         nodes I've allocated (timj)
15028
15029 2000-03-07  Tor Lillqvist  <tml@iki.fi>
15030
15031         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
15032         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
15033         for which it is no use to call GetLastError onWin9x.
15034         (gdk_other_api_failed) New function, for general error
15035         reporting without calling GetLastError.
15036         (gdk_win32_api_failed) OTOH, this function always calls
15037         GetLastError. (gdk_win32_last_error_string) Remove this function,
15038         GLib has the equivalent now.
15039
15040         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
15041         call them with function name, file name and line number in the
15042         arguments.
15043
15044         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
15045         functions.
15046         
15047         * gtk/gtk.def: Add some missing entry points.
15048
15049         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15050         gtk_paned_set_gutter_size, which don't exist any longer, as void.
15051         
15052         Fixes by Hans Breuer:
15053
15054         * gdk/makefile.msc: Update for debugging.
15055
15056         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
15057         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
15058         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
15059         in the dash_list.
15060
15061         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
15062         the x11 backend.
15063
15064         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
15065
15066         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
15067
15068 2000-03-04  Tor Lillqvist  <tml@iki.fi>
15069
15070         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
15071         just pixel value of background colour.
15072
15073         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
15074         containing code snippet previously duplicated in a couple of
15075         places.
15076         
15077         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
15078         gdk_colormap_color.
15079
15080         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
15081         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
15082         events for autorepeated Shift, Control and Alt keys. Use
15083         gdk_colormap_color.
15084
15085         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
15086         pointer is inside the window the cursor of which we are setting,
15087         call SetCursor immediately.
15088
15089         * gdk/win32/makefile.cygwin
15090         * gtk/makefile.cygwin: If we don't have the build number stamp
15091         file, use zero.
15092
15093         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15094         gtk_paned_set_gutter_size as empty.
15095
15096         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
15097         
15098 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
15099
15100         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
15101           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
15102           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
15103           docs/gtk_tut.sgml docs/gtk.texi TODO:
15104
15105           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
15106
15107 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
15108
15109         * gtk/gtkcalendar.c: Implement num_marked_dates,
15110           and don't emit mutiple day_selected signals on
15111           month_prev.
15112
15113 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
15114
15115         * docs/make-todo (lineno): let title and logo be configurable so
15116         that GNOME can use this script too.
15117
15118         * TODO.xml: added logourl and a title
15119
15120 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
15121
15122         * TODO.xml: Added some UI items, and an explanatory
15123         comment at the top of the file.
15124
15125 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
15126
15127         * TODO.xml: some updates, added abunch of new entries.
15128         a note for those fiddeling with this file, when done
15129         with it, invoke:
15130         $ ./docs/make-todo TODO.xml >/dev/null
15131         and correct output errors before comitting changes.
15132
15133 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
15134
15135         * TODO.xml: Added XML-structured TODO file.
15136         * docs/make-todo: python script to turn TODO.xml into
15137           pretty XML output. 
15138
15139 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
15140
15141         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
15142         the function to let it draw the seven dots, instead of the old,
15143         much maligned, method.
15144         (draw_dot): New function to draw a dot.
15145
15146         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
15147         to draw the handle inside the border width as opposed to outside.
15148         Use paint function instead of gdk_draw_point.
15149
15150         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
15151         to draw the handle inside the border width as opposed to outside.
15152         Use paint function instead of gdk_draw_point.
15153
15154         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
15155         Change indenting to be more GTK like.
15156
15157 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
15158
15159         * docs/gtk_tut.sgml: New section on GtkCalendar
15160         * examples/calendar: Update example code
15161
15162 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
15163
15164         * docs/gtkfaq.sgml: FAQ Update
15165
15166 2000-02-19  Anders Carlsson  <andersca@gnu.org>
15167
15168         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
15169         to prevent the scroll event to be propagated upwards.
15170
15171 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15172
15173         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
15174         OwnerGrabButtonMask from button entries for
15175         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
15176
15177         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
15178         to the event mask (which will result in button/press release
15179         being added to the event mask on Unix) so scrolling works
15180         for layouts in scroll windows.
15181
15182         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
15183
15184         Patch from Anders Carlsson  <andersca@gnu.org> to add
15185         a scroll event.
15186
15187         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
15188         scrolling to the "Test Scrolling" part of testgtk.
15189  
15190         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
15191  
15192         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
15193         it against GDK_SCROLL.
15194  
15195         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
15196         way of mouse wheel scrolling.
15197  
15198         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
15199  
15200         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
15201  
15202         * gtk/gtkmain.c: Removed previous mouse wheel hack.
15203  
15204         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
15205         gdk_event_mask_table.
15206  
15207         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
15208         GdkEventScroll handler.
15209  
15210         * gdk/gdkevents.h: Added GdkEventScroll structure.
15211  
15212 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
15213
15214         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
15215         and Anders Carlsson to change the Paned widgets so that they
15216         can be dragged from anywhere along the length. Also change
15217         the way that this is drawn to make this apparent.
15218
15219         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
15220         from George Lebl to check that option_menu->menu is present
15221         before getting history.
15222
15223 2000-02-14  Tor Lillqvist  <tml@iki.fi>
15224
15225         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
15226         before the assertion for non-NULL segment list.
15227
15228         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
15229         Seems that pattern brushes *must* be 8x8 pixels! At least on my
15230         machine, but it might be display driver dependent. Sigh, so make
15231         sure the stipple is that size. Does Windows suck or what?
15232
15233         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
15234         places.
15235
15236 2000-02-13  Havoc Pennington  <hp@pobox.com>
15237
15238         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
15239         refcount to 1
15240         (gdk_cursor_new): init refcount to 1
15241
15242         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
15243
15244 2000-02-13  Tor Lillqvist  <tml@iki.fi>
15245
15246         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
15247         so that we don't have to do unnecessary settings to the HDC.
15248
15249         * gdk/win32/gdkdrawable-win32.c
15250         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
15251         gdk_gc_predraw.
15252
15253         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
15254         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
15255         GDI paths, call WidenPath to get the outline of the stroken path,
15256         and then fill the outline (with the brush that was built from the
15257         stipple).
15258
15259         * gdk/win32/gdkgc-win32.c: Factor out common code from
15260         _gdk_win32_gc_new and gdk_win32_gc_set_values into
15261         gdk_win32_gc_values_to_win32values. Use correct colour for
15262         SetBkColor() (Until now the code actually used a random colour in
15263         the call to SetBkColor()... but that didn't show up as not many
15264         GDI APIs use the background colour. Pattern (opaque stippled)
15265         brushes do.)
15266
15267         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
15268         gdk_win32_api_failed): New functions for error logging.
15269
15270         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
15271         WIN32_API_FAILED to call them, passing function or file name and
15272         line number.
15273
15274         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
15275
15276         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
15277         GdkColor for foreground and background in GdkGCWin32Data.
15278
15279         * gdk/makefile.cygwin: Link in the resource object separately.
15280
15281         * gdk/win32/rc/gdk.rc
15282         * gtk/gtk.rc (New file)
15283         * gdk/win32/makefile.cygwin
15284         * gtk/makefile.cygwin: Update build number in DLLs automatically,
15285         as in GLib.
15286
15287 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
15288
15289         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
15290         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
15291         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
15292         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
15293         parameters given and cursor->ref_count. coding style fixups.
15294
15295         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15296         not GtkWidget.
15297         
15298         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
15299         fix up widget macros and add _GET_CLASS() variant.
15300         
15301         * gtk/*.c: some GtkType fixups.
15302
15303 2000-02-09  Tor Lillqvist  <tml@iki.fi>
15304
15305         * gdk/win32/gdkproperty-win32.c
15306         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
15307         were reversed.
15308
15309 2000-02-04  Tor Lillqvist  <tml@iki.fi>
15310
15311         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
15312         g_filename_to_utf8 to convert the font names Windows gives us from
15313         whatever is the default codepage to UTF-8.
15314         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
15315         in the other direction.
15316
15317         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
15318         error in debugging output.
15319
15320 2000-02-02  Tor Lillqvist  <tml@iki.fi>
15321
15322         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
15323         and height parameters to gdk_window_clear_area(). Not minus one.
15324
15325 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
15326
15327         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
15328         checks if the widget passed to gtk_drag_get_data() was not the
15329         dest widget.
15330
15331 2000-02-01  Tor Lillqvist  <tml@iki.fi>
15332
15333         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
15334         g_filename_from_utf8 functions (which were added a moment ago to
15335         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
15336         size buffers.
15337
15338         gtk_file_selection_get_filename returns the filename in the C
15339         runtime encoding. It calls g_filename_from_utf8, but copies the
15340         returned string to a static buffer, which is returned. I think
15341         this is better than returning the result from g_filename_from_utf8
15342         directly, which would mean all apps that use it would have to free
15343         the return value. Or should this function care about this issue at
15344         all? Maybe a new function with clearly defined semantics.
15345
15346         * gtk/gtkfilesel.h: Add comment about
15347         gtk_file_selection_get_filename returning the filename in the C
15348         runtime's encoding.
15349
15350         * README.win32
15351         * gdk/gdk.def
15352         * gdk/makefile.{cygwin,msc}
15353         * gtk/gtk.def: Updates.
15354
15355         * gdk/gdkcursor-win32.c: Initialise refcount.
15356
15357 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
15358
15359         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
15360
15361 2000-01-30  Havoc Pennington  <hp@pobox.com>
15362
15363         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
15364         destroy
15365
15366         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
15367
15368         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
15369         implemented in platform-specific code
15370
15371         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
15372
15373         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
15374         underscore in front
15375
15376         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
15377         put an underscore in front
15378
15379         * gdk/gdkcursor.c: new file, implements
15380         gdk_cursor_ref/gdk_cursor_unref
15381
15382         * gdk/gdkcursor.h: Refcount GdkCursor
15383
15384         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
15385
15386 2000-01-29  Tor Lillqvist  <tml@iki.fi>
15387
15388         * gdk/gdkwindow.h
15389         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
15390
15391 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15392
15393         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
15394         structures to properly inherit from GtkWidget not GtkBin.
15395
15396 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
15397
15398         * gtk+.spec.in: Added lib/gtk+/include/* to %files
15399         (bug #5178 - Peter Wainright)
15400         
15401         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
15402         so that it will be installed.
15403         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
15404
15405 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
15406
15407         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
15408         for the GtkStyleClass vtable const.
15409
15410         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
15411         take a const string argument like GtkTranslateFunc. This will
15412         require changes in use code.
15413
15414 2000-01-19  Tor Lillqvist  <tml@iki.fi>
15415
15416         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
15417         semantics (to mimic the X11 backend, which just calls XClearArea)
15418         is to check for zero width (and height), and in that case use the
15419         window's width minus x (height minus y). This fixes for instance
15420         some redraw problems with gtkclist, which were easily noticeable
15421         in the gtk file selection widget.
15422
15423         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15424         windows.
15425
15426 2000-01-13  Tor Lillqvist  <tml@iki.fi>
15427
15428         * configure.in
15429         * gdk/Makefile.am
15430         * gdk/x11/Makefile.am
15431         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
15432         (bug #5177).
15433         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
15434         out later.
15435
15436 2000-01-09  Tor Lillqvist  <tml@iki.fi>
15437
15438         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
15439         WM_MOVE for iconified or invisible windows. This fixes various
15440         problems when minimising windows. Thanks to Bernd Herd.
15441
15442 2000-01-05  Tor Lillqvist  <tml@iki.fi>
15443
15444         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
15445         backend's draw_lines method, not draw_points.
15446
15447 2000-01-02  Tor Lillqvist  <tml@iki.fi>
15448
15449         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
15450         before Owen's reorganisation: Don't have queued_events and
15451         queued_tail statics in this file, but use gdk_queued_events and
15452         gdk_queued_tail. This makes exposure event compression work again.
15453
15454         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
15455         seem to be needed?
15456
15457 1999-12-30  Tor Lillqvist  <tml@iki.fi>
15458
15459         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
15460         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
15461         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
15462         doesn't do anything.
15463
15464         * gdk/gdk.def: Add gdk_xid_table_insert.
15465
15466         * gdk/win32/gdkprivate-win32.h
15467         * gdk/win32/gdkevents-win32.c
15468         * gdk/win32/gdkinput-win32.c
15469         
15470         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
15471         extension_events field in the GdkWindowWin32Data struct. Use only
15472         the extension_events field in GdkWindowPrivate. Previously one was
15473         set, and the other one tested, which broke tablet
15474         functionality. Thanks to Keishi Suenaga for pointing this out.
15475
15476 1999-12-18  Tor Lillqvist  <tml@iki.fi>
15477
15478         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
15479         When handling a single character (text length == 1), don't handle
15480         it as if it was UTF-8.
15481
15482 1999-12-11  Tor Lillqvist  <tml@iki.fi>
15483
15484         * Makefile.am: Distribute README.win32.
15485         
15486         * gdk/Makefile.am
15487         * gdk/win32/Makefile.am: Distribute Win32 files.
15488
15489         * gdk/makefile.msc: New file.
15490
15491         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
15492         after label).
15493
15494         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
15495         gdk_error_code as GDKVAR, as they are referred outside GDK.
15496
15497         * gdk/win32/makefile.msc: Update.
15498
15499         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
15500         tweaks. Check only if at least one of those Unicode subrange bits
15501         we care for is set. If no code page bits are set, guess (wildly)
15502         based on the charset.
15503
15504         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
15505
15506         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
15507         non-NULL.
15508
15509         * gtk/gtkdnd.c
15510         * gtk/gtklayout.c
15511         * gtk/gtkplug.c
15512         * gtk/gtkselection.c
15513         * gtk/gtksocket.c
15514         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15515         appropriate. There must be a cleaner way to handle this?
15516
15517         * gtk/gtkrc.c: Must include windows.h on Win32.
15518
15519         * gtk/testgtk.c: No need to include gdkx.h.
15520
15521         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15522
15523 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15524
15525         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15526         the rbearing is set to the same as the width, but this should be
15527         fixed.
15528
15529 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15530
15531         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15532         function. If Windows doesn't tell us what Unicode subranges a font
15533         covers, guesstimate based on the codepages it covers. This will
15534         hopefully help those Windows versions or fonts that don't give us
15535         any useful Unicode subrange information with GetTextCharsetInfo.
15536         Call this function in gdk_font_load_internal.
15537
15538         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15539         minor changes.
15540
15541 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15542
15543         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15544         New function, long needed.
15545
15546 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15547
15548         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15549         only_if_exists argument of gdk_atom_intern to
15550         bool.
15551
15552 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15553
15554         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15555         Fix two copy&paste errors.
15556
15557         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15558         win32 has changed.
15559
15560         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15561         GdkWin32SingleFont struct.
15562
15563         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15564         subranges of loaded fonts. Clear font signature first, in case
15565         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15566         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15567
15568         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15569         Unoffset clip region.
15570
15571 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15572
15573         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15574         event->any.window before calling filter functions.
15575
15576 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15577
15578         * gtk/gtkgamma.h: Adapt cast macros to standard.
15579
15580 [ Merges from 1.2 ]
15581
15582 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15583
15584         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15585         If translation does not include a '/', use entire
15586         translation instead of crashing.
15587
15588 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15589
15590         * docs/gtk_tut.sgml:
15591         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15592
15593 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15594
15595         * gtk/gtkselection.c (gtk_target_list_remove): Use
15596         g_list_remove_link, not g_list_remove.
15597
15598         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15599         
15600 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15601
15602         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15603         statement upon unselection (how the heck did that slip in?).
15604
15605 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15606
15607         * gtk/gtktext.c (gtk_text_freeze): 
15608         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15609         in frozen state (and aparently crashes). patch provided by Anders
15610         Melchiorsen <and@kampsax.dtu.dk>.
15611
15612 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15613
15614         * fix insensitive default/focus widget activation,
15615         reported by Matt Goodall <mgg@isotek.co.uk>.
15616
15617         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15618         (gtk_window_activate_default):
15619         (gtk_window_activate_focus):
15620         return handled=FALSE for actiavtion of insensitive default
15621         widgets. return handled=TRUE for activation of insensitive
15622         focus widgets. don't activate in either case.
15623
15624 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15625
15626         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15627         and $glib_cflags to match library order and in the
15628         theory that an old version of GLib is more likely to
15629         be in the include directory for X then vice-versa.
15630         (Bug #2776)
15631
15632 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15633
15634         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15635         to determine the locale for fontsets, not LC_MESSAGES;
15636         the user may want English messages with a handling
15637         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15638         will still be broken) (Bug #2891)
15639
15640 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15641
15642         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15643
15644 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15645
15646         * gtk/gtkrc.ko: Changed the Korean default fontset.
15647
15648 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15649
15650         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15651         where when scrolling to the left or top double exposes
15652         were done, causing major slowdowns.
15653
15654 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15655
15656         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15657         names to lowercase and alphanumeric, before looking
15658         them up.
15659
15660         * gtk/Makefile.am: Install codeset variant gtkrc files
15661         with normalized names.
15662
15663 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15664
15665         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15666         popup menus when the menu is already visible, but its parent
15667         is still hidden, (happens after tornoff window got hidden).
15668
15669 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15670
15671         * gtk/Makefile.am (install-data-local): Fix
15672         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15673         deleted, causing error messages on install.
15674
15675 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15676
15677         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15678         the handle as well, since we now sometimes ignore
15679         exposes on the handle while resizing.
15680
15681 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15682
15683         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15684         extra g_free introduced in one of the last one or two 
15685         commits.
15686
15687 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15688
15689         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15690         consistent, put each style that a gtkrc.* file creates
15691         in a unique namespace, remove old files before installing.
15692
15693 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15694
15695         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15696         gtk_rc_init is called multiple times. (Yes, people who
15697         do that have bugs in their code.)
15698
15699 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15700
15701         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15702         Remove it since it's generated by the Makefile anyway
15703
15704 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15705
15706         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15707         device->info.axes for core pointer.
15708
15709 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15710
15711         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15712         idle_id, to deal with obsolete, broken C libraries.
15713
15714 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15715
15716         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15717         allocation->x/y twice!
15718
15719         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15720         consistent with gtk_vscale_pos_trough().
15721
15722 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15723
15724         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15725         be queueing a resize on a toplevel container between
15726         the time we show it and when we map it. So, we need
15727         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15728         use GTK_WIDGET_DRAWABLE() for child windows.
15729
15730 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15731
15732         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15733         (fixes bug #2144)
15734
15735 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15736
15737         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15738         container DRAWABLE (instead of VISIBLE), so we don't queue
15739         resizes on non-toplevel containers.
15740
15741 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15742
15743         * gtk/gtkselection.[ch]: Make the data argument
15744         const guchar *.
15745
15746 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15747
15748         * gtk/gtkwindow.c: Try to behave sensibly if 
15749         the focus widget is the window itself. (Should
15750         we allow this at all?)
15751
15752 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15753
15754         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15755         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15756         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15757         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15758         in prototypes and implementations consistent (Tomas Ogren).
15759
15760         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15761         before the widget is unparented (reported by damon).
15762
15763         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15764         since we provide unsigned data anyways.
15765
15766 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15767
15768         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15769         the call to gtk_tooltips_layout_text() until later.
15770
15771         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15772         Call gtk_widget_ensure_style() before using the style.
15773
15774 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15775
15776         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15777         for old widgets that don't propagate draws to all
15778         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15779
15780 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15781
15782         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15783         for a redraw but just the widget that requested the resize.
15784
15785 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15786
15787         * gtk/gtkcontainer.c: added new widget level method
15788         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15789         reallocate_redraws : 1 to reflect the setting, exported this through
15790         the argument system as a boolean ::reallocate_redraws.
15791
15792         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15793         on the widget because the allocation changes, do so as well for
15794         widget->parent if the parent has reallocate_redraws set to TRUE.
15795         with that containers requesting reallocation redraws get automatically
15796         redrawn if their children changed allocation (this unfortunately
15797         affects also other children that didn't change allocation, but we
15798         cannot work around that before 1.3).
15799
15800 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15801
15802         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15803         _and_ height are >0 (not _or_).
15804
15805         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15806         instead of gtk_container_queue_resize(), which is a core gtk internal
15807         function (must have been on crack when i queued that).
15808
15809         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15810         we can check more reliably if we want to discard expose events.
15811         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15812         flag.
15813         
15814         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15815         we simply trust these events. for deciding whether to discard exposes,
15816         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15817         
15818 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15819
15820         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15821         queues of areas that are completely off screen.
15822
15823         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15824         logic for handleboxes.
15825
15826         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15827         check on width/height.
15828
15829 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15830
15831         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15832         we are fine with using $@ the way we do (if we actually encounter
15833         brokeness with $@ in VPATH builds because of additional path prefixes,
15834         we need to use $(@F) actually).
15835
15836 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15837
15838         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15839         short lived bugs, that would allow language bindings to do surgeries
15840         to our guts.
15841
15842 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15843
15844         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15845         where comparison was being done against an uninitialized
15846         value causing intermittant results depending on
15847         compiler flags. Also make it clearer that we aren't
15848         ever initializing the child as 0x0 (though this will
15849         be caught in gtk_widget_size_allocate())
15850
15851 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15852
15853         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15854         gtk_window_unset_transient_for() call after we do checks
15855         involving the old transient parent.
15856         [ From Lance Capser <lmc@cyberhighway.net> ]
15857
15858 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15859
15860         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15861         an empty file.
15862
15863 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15864
15865         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15866         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15867
15868 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15869
15870         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15871         `$@' is valid only in the build dir, not after we've done 
15872         `cd $srcdir'.  Also use `test -f' instead of less portable
15873         `test -e'.
15874
15875 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15876
15877         * gtk/gtktext.c (correct_cache_insert): Rewrite
15878          for simplicity, and hopefully correctness.
15879          (Fixes bug #1322, which was a segfault when
15880           on some insertions with the properties around
15881           the insertion set up just wrong.)
15882
15883         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15884          a "changed" signal, clamp the new value to the adjustment
15885          bounds to avoid segfaulting if someone tries to change
15886          the adjustment to a bogus value. (Bug #1795)
15887
15888 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15889
15890         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15891         for children, for toplevel windows handle them
15892         like delete_event.
15893
15894         * gtk/gtkplug.c: Add an unrealize handler so that
15895         we unref plug->socket_window when we are done
15896         with it.
15897
15898 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15899
15900         * gtk/gtktext.c (clear_area): Fix stupid signedness
15901          problem that was causing background to sometimes
15902          be misaligned.
15903
15904 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15905
15906         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15907         
15908         * gtk/gtkmenu.c (gtk_menu_position): Make
15909          sure we never position menus with negative x, y,
15910          since gtk_widget_set_uposition() can't handle that.
15911
15912         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15913          Modify the positioning code a bit so that we always
15914          put the top-left corner onscreen. (This is for
15915          UI reasons, gtk_menu_position() now takes care of
15916          gtk_widet_set_uposition() brokeness.)
15917
15918 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15919
15920         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15921
15922 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15923
15924         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15925           RC style that is passed in. The lack of the ref
15926           before was a bug. If people worked around this
15927           bug, this will introduce a slight memory leak
15928           in their code. The code should typically look like:
15929
15930             rc_style = gtk_rc_style_new ();
15931             [...]
15932             gtk_widget_modify_style (widget, rc_style);
15933             gtk_rc_style_unref (rc_style);
15934
15935         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15936           the style if it was already set.
15937
15938         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15939           style if it was set before.
15940
15941 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15942
15943         * gtk/testgtk.c (main): Add a check to see if we
15944           are being run from the correct directory and
15945           to quit nicely if we are not.
15946
15947         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15948           static.
15949
15950 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15951
15952         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15953
15954         * gtk/gtkwindow.c:
15955         queue resizes unconditionally (gtk_widget_queue_resize will figure
15956         what to do if the window is not realized).
15957         (gtk_window_move_resize): only recenter the window
15958         for GTK_WIN_POS_CENTER_ALWAYS.
15959         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15960         the same way as GTK_WIN_POS_CENTER.
15961
15962 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15963
15964         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15965         with (!(info->last_flags & GDK_HINT_POS)) instead of
15966         (!info->last_flags & GDK_HINT_POS).
15967
15968         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15969         new_height unconditionally, because we use these values even if
15970         !default_size_changed && !hints_changed.
15971         comented the (default_size_changed || hints_changed) case with
15972         respect to resize rejects from the window manager.
15973
15974         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15975         in the zvt condition hack, since this includes the window hints, set
15976         the hints after the handling_resize case.
15977
15978         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15979         window is initially shown with to the geometry.
15980
15981 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15982
15983         * gtk/gtkwindow.c (gtk_window_move_resize):
15984         s/size_changed/default_size_changed/g so i know what's
15985         really going on (frying brain on smaller flame now).
15986
15987 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15988
15989         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15990         we have size_changed upon handling_resize. this is a gross
15991         workaround for the broken zvt widget and should be removed in
15992         1.3 again (search for FIXME).
15993         Owen provided an accurate comment for this:
15994
15995         /* We could be here for two reasons
15996          *  1) We coincidentally got a resize while handling
15997          *     another resize.
15998          *  2) Our computation of size_changed was completely
15999          *     screwed up, probably because one of our children
16000          *     is broken. It's probably a zvt widget.
16001          *
16002          * For 1), we could just go ahead and ask for the
16003          * new size right now, but doing that for 2)
16004          * might well be fighting the user (and can even
16005          * trigger a loop). Since we really don't want to
16006          * do that, we requeue a resize in hopes that
16007          * by the time it gets handled, the child has seen
16008          * the light and is willing to go along with the
16009          * new size. (this happens for the zvt widget, since
16010          * the size_allocate() above will have stored the
16011          * requisition corresponding to the new size in the
16012          * zvt widget)
16013          *
16014          * This doesn't buy us anything for 1), but it shouldn't
16015          * hurt us too badly, since it is what would have
16016          * happened if we had gotten the configure event before
16017          * the new size had been set.
16018          */
16019
16020 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
16021
16022         * gtk/gtkrc.c: deal properly with the fact that RC
16023           style lists may include rc styles more than once.
16024
16025         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
16026           unused static function.
16027
16028         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
16029           stack of directories of RC files currently being
16030           parsed and implicitely add them to pixmap path.
16031           
16032           This fixes a bug where the directory would get
16033           appended then overwritten by pixmap_path declarations.
16034
16035           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
16036
16037         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
16038           theme's exit function. (Patch from Peter Wainwright,
16039           bug #1454)
16040
16041         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
16042           Add a destroy() handler to take care of removing
16043           group for menu item. (Fixes bug #1197)
16044
16045         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
16046           in warning message.
16047
16048 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
16049
16050         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
16051         roundtrip to figure window's width and height, since we know that
16052         anyways from widget->allocation.
16053
16054 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
16055
16056         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
16057           the hints after we request the new size.
16058
16059 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
16060
16061         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
16062           GTK_WIDGET_REALIZED() assertion - we can compute the
16063           hints before we are realized.
16064
16065         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
16066           hint changing so that we have a value of hints_changed
16067           when we decide whether to constrain the window size.
16068
16069         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
16070
16071         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
16072         change back to G_MAXINT.
16073
16074 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
16075
16076         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
16077         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
16078         contain uncluttered values.
16079         (gtk_window_compute_hints): simply assert that window is realized
16080         and that geometry_info is valid, since we rely on this anyways.
16081         (gtk_window_constrain_size): major cleanups to the code.
16082         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
16083         for the base size, instead of the minimums. use 32767 as max width
16084         and height (like in gtkwindow.c) instead of G_MAXINT.
16085
16086 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
16087
16088         * cleaned up the GtkContainer.need_resize flag handling mess, we
16089         only need to force resize requests when we were prematurely
16090         realized, or our widget tree was modified when we were temporarily
16091         hidden. handling these cases directly upon showing the window (i.e.
16092         while the GdkWindow is still unmapped) avoids the need to wait for
16093         a configure event response and therefore makes the GUI more snappier
16094         and avoids blank windows during the roundtrip.
16095
16096         * gtk/gtkwidget.c:
16097         (gtk_widget_hide): 
16098         (gtk_widget_show): don't queue resizes on toplevels, they know how
16099         to deal with matters.
16100
16101         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
16102         flag directly for not visible resize containers and spare us unecessary
16103         signal emissions.
16104
16105         * gtk/gtkwindow.c:
16106         (gtk_window_realize): if we need to enforce premature size allocation,
16107         queue a container resize so we are correctly resized later on.
16108         (gtk_window_init):
16109         (gtk_window_size_request):
16110         don't freak around with the ->need_resize flag,
16111         gtk_container_queue_resize() will care about that.
16112         (gtk_window_show):
16113         handle initial resizing issues here, we can handle matters better in
16114         this place, especially since we know that our GdkWindow is still
16115         unmapped.
16116         (gtk_window_move_resize):
16117         don't care about ->need_resize at all.
16118         handle size changes properly that occoured while we waited for a
16119         configure event.
16120
16121 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
16122
16123         * gtk/gtkwidget.c (gtk_widget_set_uposition):
16124         * gtk/gtkwindow.[hc] (gtk_window_reposition):
16125         Move the hint setting code from gtk_widget_set_uposition
16126         to here; set the hints so that we respect any previously
16127         set geometry hints.
16128
16129         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
16130         change the window hints here or move the window here,
16131         let that happen in gtk_window_move_resize().
16132
16133 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
16134
16135         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
16136         to already queued resizes (and therefore redraws) on a widget, check
16137         its anchestry as well.
16138
16139         * gtk/gtkcontainer.c:
16140         (gtk_container_queue_resize): clear resize widgets for resize
16141         containers before aborting prematurely. this is especially important
16142         for toplevels which may need imemdiate processing or their resize
16143         handler to be queued.
16144         (gtk_container_dequeue_resize_handler): added new internal function for
16145         gtkwindow.c.
16146
16147         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
16148         configure event, take possible changes in window position into account
16149         as well.
16150         if we request a new window size, queue up a resize handler that will
16151         last until the configure event response arrives.
16152         combined the ->need_resize case (initial show) with the general size
16153         (hints) changed case and added even more comments.
16154         if !auto_shrink, only revert to the old allocation if the new size
16155         is smaller than the current allocation.
16156
16157 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
16158
16159         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
16160                            gtk_window_set_geometry_hints
16161                            gtk_window_set_default_size):
16162         When hints are set, queue a resize so that the hints will
16163         be eventually reset on the toplevel.
16164
16165         * gtk/gtkwindow.c (gtk_window_show): Use
16166         gtk_window_compute_default_size(). Clear the need_resize flag
16167         on the initail map so that we don't unnecessarily trigger the
16168         resize code.
16169
16170         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
16171         into separate functions. Compare the hints we are setting
16172         with what we set last time so that we can accurately
16173         tell when we need to reset the hints.
16174
16175         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
16176         function to figure out the size from requisition
16177         and default_size.
16178
16179         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
16180         from fvwm to constrain a size to the geometry hints.
16181
16182         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
16183         to compare two sets of geometry hints.
16184
16185         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
16186         from gtk_window_set_hints(), just compute the hints,
16187         don't set them.
16188
16189         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
16190         code from gtk_window_move_resize() to separate function,
16191         rationalize a bit.
16192
16193 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
16194
16195         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
16196         structure into a new private structure.
16197
16198         * gtkrc.c: Split GtkRcStyle into public/private.
16199         In the private part, add a list of pointers to the
16200         RcStyle lists this RcStyle participates in.
16201
16202         * gtkrc.c: When a RcStyle is free, remove all
16203         lists referencing it from the 
16204         realized_style_ht hash, and free those lists.
16205         
16206         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
16207         gtk_rc_init(), since that adds the default styles
16208         to the list of parsed RC files again.
16209
16210         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
16211         
16212 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
16213
16214         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
16215         checks that ensure that a widget's allocation is at least 1 in width
16216         and height. (GNOME note: this doesn't affect old panel code anymore,
16217         because GtkSocket will request width and height of at least 1 since
16218         Fri Jul 23).
16219
16220         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
16221         allocated yet (happens if the user realizes the window prematurely),
16222         size request and allocate it.
16223         (gtk_window_size_allocate): guard against guint underflows.
16224
16225 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
16226
16227         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
16228         in gtk_built_sources, so gtk.defs gets built prior to all other
16229         sources.
16230
16231 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16232
16233         * gtk/Makefile.am:
16234         invoke indent on gtkmarshal.*. 
16235         rewrote source generation rules, use COPYING as oldest source tag for
16236         a piggyback rule to generate all sources from (don't touch it ;).
16237         major cleanups, strip spaces on build rules for GNU Make.
16238
16239         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
16240         source and target files from commandline arguments. don't invoke indent.
16241
16242 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16243
16244         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16245         notebook after switch to avoid drawing problems.
16246         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16247         
16248         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16249         show them instead. 
16250         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16251
16252 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16253
16254         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16255         notebook after switch to avoid drawing problems.
16256         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16257         
16258         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16259         show them instead. 
16260         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16261
16262 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
16263
16264         * gtk/gtkwindow.c:
16265         we use window->need_resize from configure_event now, to indicate that
16266         the gtkwindow should keep its allocation (e.g. because the user resized
16267         the window through window manager handles). resize_count is now reliably
16268         used to figure whether we got the allocation we requested from the
16269         window manager.
16270         configure events get queued as resizes now, the real stuff (size
16271         computation and allocation) now only goes on in gtk_window_move_resize().
16272         GtkWindow's requisition now contains its *real* requisition (like all
16273         other widgets), *not* taking usize into account.
16274         geometry_info->last_{width|height} is now updated from set_hints() only
16275         so it always contains the last hints we set for the window manager.
16276         made some event handlers return TRUE instead of FALSE.
16277         the overall code should be much more straight forward now, and the
16278         significant code portions are accompanied by comments now.
16279         (gtk_window_set_hints):
16280         removed requisition argument and made it
16281         fetch the requisition through gtk_widget_get_child_requisition.
16282         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
16283         does that now.
16284         (gtk_window_show):
16285         ensure that the widget is realized before calling 
16286         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
16287         ensure that we got properly size requested and allocated before
16288         realization.
16289         (gtk_window_configure_event):
16290         ignore plain window moves, or reallocate the widget tree through the
16291         resize queue otherwise.
16292         (gtk_window_move_resize):
16293         mostly rewrote this function to figure window manager hints more
16294         reliably, coalesce window moves and resizes to reduce configure events
16295         and do actuall size allocations.
16296
16297 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16298
16299         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
16300         that have a resize pending, because a redraw is already queued for them.
16301
16302         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
16303         hack to clear resize_widgets.
16304
16305         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
16306         for resize containers prior to size allocation. (this is also a bit
16307         ugly, but avoids side effects for stopped emissions and is thus more
16308         reliable).
16309         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
16310
16311         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
16312         function from gtk_tooltips_expose, as we connect to ::expose_event
16313         *and* ::draw now.
16314
16315 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16316
16317         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
16318         checks.
16319         (gtk_target_list_unref): Likewise.
16320
16321         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
16322
16323 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
16324
16325         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
16326         guard against division by zero. (Fixes bug #1339)
16327
16328 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
16329
16330         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
16331         Prevent the trivial leak of information of allowing
16332         word motion when the entry is not visible.
16333
16334 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
16335
16336         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
16337         modality to error dialog as well as confirmation dialogs.
16338         (Bug #1803, reported by Rosanna Wing Sze Yuen)
16339
16340 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16341
16342         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
16343         tree->view_lines.
16344         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
16345
16346         * gtk/Makefile.am (install-data-local): Solaris apparently
16347         has various troubles with ln -f; use rm first instead.
16348         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
16349
16350 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
16351
16352         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
16353         use `cp' followed by `rm' (the `rm' was already there).
16354
16355 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16356         
16357         * configure.in: Fix autoconf warnings about cross compilation by
16358         trying to provide sane defaults for AC_TRY_RUN.
16359         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
16360         put them into $(srcdir) when generated. Also add a dependency of
16361         gtksignal.h on gtkmarshal.h for -j builds. 
16362         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
16363
16364 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
16365
16366         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
16367         GDK_THREADS_{LEAVE,ENTER} pair.
16368         (From Paul Fisher <pnfisher@redhat.com>)
16369
16370 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
16371
16372         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
16373         width and height are always >0 (owen).
16374
16375 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
16376
16377         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
16378         change that assured that a widget's allocated with and height are
16379         always >1, since this breaks *buggy* panel code. unfortunately this
16380         back-breaks the gimp's color selector.
16381
16382         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
16383         allocation is always >0 in width and height, before sending the
16384         configure event; this is a *gross* hack to get the gimp back to work.
16385         
16386         * marked both cases with TODO-1.3
16387
16388 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
16389
16390         * gtk/gtktext.c: Don't display wrap indicators when
16391         text is not editable and word wrap is on.
16392
16393 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
16394
16395         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
16396         option menus here as they are not derived from menu shell, assure that
16397         the option menu has a menu we can add items to.
16398
16399 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
16400
16401         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
16402         width/height to (gint) before calculations and check against < 0 to
16403         avoid guint wraparounds.
16404
16405 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
16406
16407         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
16408         width and height is never zero. sanity check both dimensions against
16409         32767 and issue a warning if the allocation is greater than that.
16410
16411 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
16412
16413         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
16414         to g_main_pending() as well.
16415
16416 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
16417
16418         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
16419         call to g_main_iteration() - since that will regrab
16420         GTK+ lock to process events.
16421
16422 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
16423
16424         * gtk/gtkwindow.c
16425         - Regularize with the rest of GTK+ by making widget->requisition
16426           not reflect the set_usize()
16427         - Always recompute geometry hints, then check if they
16428           changed before sending them to the X server. The
16429           previous checks for changes would fail in a number
16430           of circumstances. 
16431
16432 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
16433
16434         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
16435
16436 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
16437
16438         * gtk/gtkdnd.c:
16439         - Code cleanups
16440         - Instantaneously update on modifier key presses
16441         - Allow cancellation of the drag with Escape.
16442
16443 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
16444
16445         * gtk/testgtk.c (create_handle_box): Set the policy
16446         to auto_shrink - otherwise the appearance is rather
16447         strange when flipping between horizontal and vertical.
16448
16449 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
16450
16451         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
16452         (gtk_window_set_default_size): don't change a value if it's < 0.
16453         queue a resize.
16454
16455 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
16456
16457         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
16458
16459 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
16460
16461         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
16462         add an extra "/" when concating "/" + filename.
16463         (From Matt Grossman <mattg@oz.net>)
16464
16465 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
16466
16467         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
16468         for fg_gc if we set it for drawing pixmap.
16469
16470 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
16471
16472         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
16473         
16474         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
16475         already set, call old engine's destroy function and
16476         unref the old engine.
16477
16478 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
16479
16480         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
16481
16482 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
16483
16484         * gtk/gtkaccelgroup.h: mark certain functions as internal.
16485
16486 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
16487
16488         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
16489         expand behaviour changed.
16490
16491         * gtk/gtklabel.c (gtk_label_set_pattern):
16492         (gtk_label_set_justify):
16493         (gtk_label_set_line_wrap):
16494         don't bother invoking queue_clear, the reallocation does
16495         that for us, always free_words so the upcoming resize will
16496         relayout the label's contents.
16497
16498 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
16499
16500         * applied argument implementation patches from Elena Devdariani
16501         <elena@cogent.ca>.
16502
16503         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
16504         ::space_style, ::relief
16505         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
16506         * gtk/gtkpreview.c: ::expand
16507         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
16508         * gtk/gtknotebook.c: ::homogeneous
16509         * gtk/gtklabel.c: ::wrap
16510         * gtk/gtklist.c: ::selection_mode
16511         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16512         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16513         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16514         * gtk/gtkclist.c: ::sort_type
16515         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16516         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16517
16518 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16519
16520         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16521         comment.
16522
16523 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16524
16525         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16526         counting right when we have to attach a new style
16527         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16528
16529         * gtk/gtkstyle.c: Documented the refcounting
16530         peculularities of gtk_style_attach.
16531
16532 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16533
16534         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16535         window types.
16536
16537         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16538         of GTK_TOPLEVEL for creating the window.
16539
16540 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16541
16542         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16543         the last argument (reported by Per Winkvist).
16544         
16545 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16546
16547         Fixes for invisible XOR lines (Frank Loemker
16548         <floemker@TechFak.Uni-Bielefeld.DE>)
16549         
16550         * gtk/gtkclist.c (gtk_clist_realize): Always use
16551         a non-zero pixel for GDK_XOR.
16552
16553         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16554         Use GDK_INVERT instead of GDK_XOR.
16555
16556 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16557
16558         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16559         signals if h/voffsets differ from adjustment values.
16560         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16561
16562 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16563
16564         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16565         ::selection-done emissions up to the topmost menu shell.
16566
16567 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16568
16569         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16570         the user data on the window before destroying it.
16571
16572         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16573         unrealize handler to take care of destroying 
16574         notebook->panel properly. 
16575         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16576
16577         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16578         of g_new and g_realloc to stop memory leak. (Actually,
16579         we could just use g_realloc(), but I'm not 100% sure
16580         that is portable).
16581         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16582
16583 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16584
16585         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16586
16587         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16588         for fontsets.
16589
16590         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16591         with bin/button confusion.
16592
16593 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16594
16595         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16596         and show how preselection of radio items is done.
16597
16598 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16599
16600         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16601         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16602         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16603         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16604         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16605         * gtk/gtktable.c (gtk_table_attach): 
16606         * gtk/gtklist.c (gtk_list_insert_items): 
16607         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16608         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16609         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16610         * gtk/gtkbin.c (gtk_bin_add): 
16611         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16612         * gtk/gtkfixed.c (gtk_fixed_put): 
16613         * gtk/gtklayout.c (gtk_layout_put):
16614         general fixups to container_add logic. always realize child if
16615         child->parent is realized, only map the child and queue a resize
16616         if child and child->parent are both visible.
16617
16618 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16619
16620         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16621         instead of gtk_container_foreach to walk and unrealize children, so
16622         composite children get also unrealized.
16623         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16624         (gtk_widget_map): assert that the widget is visible (basic constrain).
16625         (gtk_widget_real_map): assert that the widget is realized (basic
16626         constrain).
16627
16628 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16629
16630         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16631
16632 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16633
16634         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16635         file for iso-8859-2 locales.
16636
16637         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16638
16639 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16640
16641         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16642          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16643          Remove some suspicious and useless lines. 
16644
16645 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16646
16647         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16648         width,height = 0, 0 to mean - here to edge of window,
16649         instead of -1, -1, since the former is all we support.
16650
16651 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16652
16653         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16654         when removing from quit_functions list.
16655
16656 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16657
16658         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16659
16660 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16661
16662         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16663          When redrawing characters on non-visible entry, use appropriate
16664          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16665
16666 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16667
16668         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16669         from drag coordinates.
16670         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16671         use drag_dest_cell.
16672
16673         * gtk/gtktree (drag_dest_cell)
16674         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16675         (Bug #1129)
16676
16677 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16678
16679         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16680         translate_* fields.
16681         (gtk_item_factory_finalize): invoke translate_notify independant from
16682         translate_data.
16683         (gtk_item_factory_set_translate_func): likewise.
16684         (gtk_item_factory_destroy): only remove ifactory pointer from those
16685         widgets that belong to us (stupid me).
16686
16687 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16688
16689         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16690         rc_style list when lookup succeeeds.
16691
16692 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16693
16694         * gtk/gtkctree.c (resync_selection): 
16695         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16696         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16697         bug.
16698
16699 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16700
16701         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16702         Add some missing GDK_THREADS_ENTER()/LEAVE around
16703         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16704
16705 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16706
16707         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16708         rather than emit_by_name.
16709
16710         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16711         on the widget across multiple signal emissions.
16712         (gtk_editable_delete_text): same here.
16713         (gtk_editable_class_init): set widget_class->activate_signal after
16714         editable_signals[ACTIVATE] has been created.
16715
16716 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16717
16718         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16719         position here prematurely -- we might not have the
16720         right ->min_position and ->max_position yet.
16721
16722 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16723
16724         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16725         Add error traps so if the other end of the connection
16726         dies, we survive.
16727
16728         * gtk/gtkselection.c (gtk_selection_notify): Clean
16729         up properly when selection property retrieval fails.
16730         
16731         * gtk/gtkselection.c (gtk_selection_request): Correctly
16732         reject SelectionRequest notifies where the handler
16733         returns no data.
16734
16735 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16736
16737         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16738         when we've previously highlighted.
16739
16740         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16741         emit two "drag_leave" signals for Motif drops.
16742
16743         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16744         back the correct status messages when dropping from
16745         Motif onto a proxy window that is rejecting the
16746         drop.
16747
16748 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16749
16750         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16751         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16752         to compare two argument values. added gtk_arg_to_valueloc() to set a
16753         variable from an arg through its location (pointer).
16754
16755         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16756         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16757         as gfloat*, uchars are collected as guchar*, ints are collected as
16758         gint*, etc...
16759
16760 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16761
16762         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16763         Include <string.h> instead of <strings.h>.
16764
16765         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16766         (actually, a lot more duplicate includes occur if
16767          you trace through the sequence of #include's)
16768         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16769         
16770 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16771
16772         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16773         gtk-a-higuti-990322-[0-3]
16774
16775         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16776         that was causing -DX_LOCALE not to work.
16777
16778         * gtk/gtkrc.c (gtk_rc_init):
16779         X_LOCALE will never have LC_MESSAGES defined
16780
16781 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16782
16783         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16784         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16785
16786         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16787         left/right as well (gtk-michael-980726-0.patch.gz).
16788
16789         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16790         for pointer values, use gchar instead of char. fixed uline allocation
16791         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16792         chunks instead of G_ALLOC_ONLY.
16793         (gtk_label_size_request): always alter requisition as passed and leave
16794         widget->requisition alone.
16795         (gtk_label_set_text): allow NULL strings.
16796         (gtk_label_new): likewise.
16797
16798 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16799
16800         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16801
16802 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16803
16804         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16805         *and* mapped (i.e. drawable).
16806         (gtk_bin_expose): only send exposes to drawable children.
16807
16808         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16809         (gtk_box_expose): only send exposes to drawable children.
16810
16811         * gtk/gtkhscale.c (gtk_hscale_draw): 
16812         * gtk/gtkvscale.c (gtk_vscale_draw):
16813         hm, this is an ugly one. we first compute the size of our trough area
16814         here (window relative) and then check intersection with the draw_area
16815         which is parent relative because we're a NO_WINDOW widget, so we need
16816         to offset the trough area by allocation.x and allocation.y before the
16817         check. (this must not be done for the background area though, since
16818         that's already computed parent relative).
16819
16820 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16821
16822         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16823         unrealize title buttons.
16824
16825 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16826
16827         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16828         (gtk_clist_column_title_active): 
16829         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16830
16831         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16832         zero initialize event, removed superfluous gdk_window_get_pointer call
16833
16834         * gtk/gtklist.c (gtk_list_vertical_timeout)
16835         (gtk_list_horizontal_timeout): removed superfluous
16836         gdk_window_get_pointer call
16837
16838 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16839
16840         * plugging problems reported by "Bruce Mitchener, Jr."
16841         <bruce@puremagic.com> due to a purify session.
16842
16843         * gtk/gtkstyle.c:
16844         (gtk_style_ref): 
16845         (gtk_style_unref): assert ref_count to be > 0.
16846
16847         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16848         the requisition.
16849         (gtk_clist_set_shift): likewise.
16850
16851         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16852         adjustments.
16853
16854         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16855         event before sending it and set send_event to TRUE (which needs to
16856         be done for *all* synthesized events).
16857         (gtk_list_vertical_timeout): likewise.
16858
16859         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16860         leaks.
16861
16862         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16863         to TRUE when synthesizing events.
16864
16865 [ *** end of merges from 1.2 *** ]      
16866         
16867 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16868
16869         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16870         (or copied from gdkconfig.h.win32 on Win32, sigh).
16871
16872         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16873
16874         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16875
16876         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16877
16878         * gdk/gdkconfig.h.win32: New file.
16879
16880         * gdk/win32/makefile.cygwin: Build just a static archive here.
16881
16882         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16883         for the DLL from the static archive built above.
16884
16885         * gdk/gdk.def: Moved here from the win32 subdirectory.
16886
16887         * gdk/win32/*: Adapt for the changed private struct organisation.
16888
16889         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16890
16891 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16892
16893         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16894         for wheel mice (buttons 4 and 5).
16895
16896 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16897
16898         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16899         drawables use just the pixel field in the foreground and
16900         background GdkColor of the GdkGC.
16901
16902         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16903         GdkColors containing uninitialized (red,green,blue) fields, and
16904         just the pixel field filled in, and furthermore in the
16905         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16906         It thus turns out that we really don't need to have the full
16907         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16908         it later to have just the pixel values.
16909
16910 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16911
16912         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16913
16914 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16915
16916         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16917         New question on GtkLabel background colors.
16918
16919         * docs/gtk_tut.sgml:
16920           - Correct the example code callback
16921             function definitions.
16922           - Update the gtkdial example code, from Frans van Schaik.
16923           - Update setselection.c to current API.
16924
16925         * examples/Makefile examples/*/*.c: Update to code
16926         listed in tutorial.
16927
16928 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16929
16930         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16931         subrange table (from the "Developing International Software for
16932         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16933         block... Get the loaded font's charset correctly.
16934
16935         (Note that this, and the other *-win32.c files, still really are
16936         the old ones, the win32 subdirectory is not ready for compilation
16937         yet after the reorg.)
16938
16939 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16940
16941         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16942         check.
16943
16944 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16945
16946         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16947         on results of XQueryDeviceState().
16948
16949 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16950
16951         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16952         we need to accesss only ->children. We need an accessor
16953         for the children.
16954
16955         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16956         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16957         to get rid of gdkx.h include.
16958         
16959         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16960         and random references to 'None'.
16961
16962         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16963         Get rid of unused #include <gdk/gdkx.h>
16964
16965         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16966         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16967         gdkconfig.h.
16968
16969 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16970
16971         * gdk/win32/gdkdraw.c
16972         * gdk/win32/gdkfont.c
16973         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16974         following yesterday's changes. (Unrelated to Owen's reorg.)
16975
16976 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16977
16978         * gdk/x11/gdkinput-gxi.c: Add missing include,
16979           fix GdkWindowPrivate => GdkDrawablePrivate.
16980
16981         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16982
16983         * gdk/x11/Makefile.am (xinput_sources): Add missing
16984         backslash to fix building with --with-xinput=none
16985
16986 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16987
16988         Move all X specific code into the x11/ directory.
16989         Aside from shuffling things around, did the following:
16990
16991        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
16992          gdk_arg_context_* - a simple argument parsing system
16993          in the style of popt.
16994
16995        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
16996          gdk/x11/gdkprivate-x11.h:
16997          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
16998          add ->klass and ->klass_data fields. The klass_data
16999          field points to an auxilliary structure that is
17000          windowing system dependent.
17001
17002        * gdk/gdkfont.c: Make most of the measurement functions
17003          simply wrappers around gdk_text_extents().
17004
17005        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
17006          _gdk_font_strlen() function that hides the weird
17007          behavior in gtk+-1.[02] where a string is interpreted
17008          differently for 8-bit and 16-bit fonts.
17009
17010        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
17011          to store common code for synthesizing double/triple
17012          press events.
17013         
17014        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
17015          Make all the function that modify an existing GC
17016          simply wrappers around gdk_gc_set_values().
17017          
17018        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
17019          for throwing out later.
17020
17021        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
17022          GdkImagePrivate and GdkColormapPrivate to have a
17023          windowing system dependent part (GdkFontPrivateX etc.)
17024          that "derives" from the system-independent part.
17025
17026        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
17027          Got rid of the included-source-files for XInput in
17028          favor of automake conditionals. (Which didn't exist
17029          when XInput support was originally added.)
17030
17031        * gdk/gdkrgb.c: Remove the visual id from the debugging
17032          statements since that is X11 specific; print out
17033          type/depth info instead.
17034          
17035
17036 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
17037
17038         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
17039         loading duplicates of hashed fonts.
17040
17041         * gdk/gdk.c (gdk_keysym_convert_case): rename
17042         gdk_XConvertCase to gdk_keysym_convert_case, allow
17043         results to be NULL in the GTK+ style.
17044
17045         * gdk/gdkcompat.h: Started compatibility header
17046         for renames.
17047
17048 1999-11-07  Tor Lillqvist  <tml@iki.fi>
17049
17050         * gdk/win32/gdkprivate.h: New font private structures, related to
17051         fontsets.
17052
17053         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
17054         gdk_font_list_free(). On X11, will just be wrappers to
17055         XListFonts() and XFreeFontNames(). On Win32, the code previously
17056         in gtkfontsel.c is now here.
17057
17058         New function gdk_font_xlfd_create(). On X11 will get the FONT
17059         property of the font (for GDK_FONT_FONTs), or call
17060         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
17061         builds a XLFD style name from the font information in the LOGFONT
17062         struct(s).
17063
17064         New function gdk_font_xlfd_free(), which correspondingly frees the
17065         string returned by gdk_font_xlfd_create().
17066
17067         Implement fontsets on Win32. Add a function that iterates over a
17068         wide char string and calls a callback function for each substring
17069         of wide chars from the same Unicode subrange (and thus probably
17070         available in the same real font).
17071
17072         Improve the XLFD emulation a bit.
17073
17074         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
17075
17076         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
17077         Beta3, WM_IME_CHAR messages don't seem to contain the composed
17078         multi-byte char as with the Active IMM on Win9x. Oh well, handle
17079         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
17080         ImmGetCompositionStringW() to get the composed Unicode chars.
17081
17082         * gdk/win32/gdkgc.c
17083         * gdk/win32/gdkdraw.c: Changes needed because of the font private
17084         struct changes.
17085
17086         * gdk/win32/gdk.def: Add the new functions.
17087
17088 1999-11-04  Tor Lillqvist  <tml@iki.fi>
17089
17090         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
17091         get the Platform SDK to get <dimm.h>.
17092
17093         * gdk/win32/gdkevents.c: More event handling fixes and
17094         simplification. Never generate motion events with is_hint true. We
17095         used to do that on bogus grounds earlier. Windows sends
17096         WM_MOUSEMOVE messages on button events even if the mouse hasn't
17097         moved, ignore these.
17098
17099         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
17100
17101         * gdk/win32/gdkglobals.c
17102         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
17103         the TrackMouseEvent function, and use it.
17104
17105         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
17106         char before calling WideCharToMultiByte in order to get a string
17107         for the window title.
17108
17109         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
17110
17111         * gdk/win32/gdk.def: Remove obsolete functions.
17112
17113         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
17114         /nodefaultlib and /defaultlib switches.
17115
17116         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
17117
17118 1999-10-31  Tor Lillqvist  <tml@iki.fi>
17119
17120         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
17121         EuroSign).
17122
17123         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
17124         same type as GdkWChar, especially on Win32.
17125
17126         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
17127
17128         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
17129         before passing to Windows GDI for drawing etc. Convert to the
17130         system default codepage before passing to Windows as window
17131         titles.
17132
17133         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
17134         support changing input locale on the fly.
17135
17136         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
17137         on-the-fly changes. Convert incoming characters from the current
17138         codepage to Unicode (and then to a UTF-8 multi-byte string) based
17139         on the current input language. Use keysym<->Unicode mapping tables
17140         and functions borrowed from xterm sources.
17141
17142         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
17143         editions of Win9x, use the ActiveX-based Active IMM (Input Method
17144         Manager) if available. IMEs and the Active IMM are available under
17145         the disguise of Chinese, Korean and Japanese support for IE and
17146         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
17147         support is present in all editions (as long as you install it).
17148
17149         Call DispatchMessage from gdk_events_queue() (and thus
17150         gdk_WindowProc()), instead of duplicating the code in
17151         gdk_WindowProc().
17152
17153         Reworked the grab handling and propagation code, factored out
17154         duplicated code snippets into separate functions. Other cleanups,
17155         too.
17156
17157         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
17158         the <dimm.h> header describing the Active IMM.
17159
17160         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
17161         just do the same as for "single" fonts.
17162
17163         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
17164         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
17165         the new keysyms from gdkkeysyms.h.
17166
17167         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
17168         fontset, so that gtkentry uses wide characters.
17169
17170         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
17171         GTk+'s system directory "gtk+", not "gtk".
17172
17173 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
17174
17175         * docs/gtkfaq.sgml: FAQ update
17176
17177 1999-10-21  Tor Lillqvist  <tml@iki.fi>
17178
17179         * gdk/win32/gdkprivate.h: Add more font private data.
17180
17181         * gdk/win32/gdkfont.c
17182         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
17183         fonts and strings. Now works much better. You still have to
17184         have a correct font selected, though. No fontset emulation yet.
17185
17186 1999-10-19  Tor Lillqvist  <tml@iki.fi>
17187
17188         * gtk/maketypes.awk: Use G_OS_WIN32.
17189
17190         * gtk/gtk.def: Add some missing entry points. Also some non-public
17191         ones, but PyGTK porter claims to need them.
17192
17193         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
17194         built-in type generation.
17195
17196 1999-10-14  Tor Lillqvist  <tml@iki.fi>
17197
17198         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
17199         GDK_FONT_FONT fonts (which is all we have for now, we don't
17200         emulate fontsets). The X11 version uses plain XDrawString in that
17201         case, too. The string passed to gdk_draw_text_wc seems to be in
17202         fact (at least, when used by gtkentry and gtktext) either in a
17203         single-byte charset, or a DBCS. Not Unicode.
17204
17205         This fixes the problem in gtkfontsel, where even if you had
17206         selected a font with a non-Latin1 charset (windows-greek, for
17207         instance), the preview still used Latin-1 glyphs.
17208
17209         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
17210         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
17211         (gdk_font_load): Recognize the demibold etc weights, even if we
17212         don't have the corresponding constants in the headers.
17213         (gdk_font_hash_insert): Use same hash mechanism as in the X11
17214         version. Should save font resources a bit, when we don't have
17215         multiple HFONTs for the same font.
17216
17217         * gdk/win32/gdkprivate.h: Add the names field as in the X11
17218         version.
17219
17220 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
17221
17222         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
17223         X values
17224
17225 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
17226
17227         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
17228         layout support (as mentioned on
17229         http://www.jcinteractive.com/gnome-ui/software/widgets/)
17230
17231 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
17232
17233         * gtk/fnmatch.c
17234         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
17235
17236 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
17237
17238         * configure.in (ALL_LINGUAS): Added Galician (gl)
17239
17240 1999-10-05  Tor Lillqvist  <tml@iki.fi>
17241
17242         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
17243
17244         * gdk/win32/gdkcompat.c: New file, actually provide an
17245         implementation for the deprecated functions. (Just temporarily.)
17246
17247         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
17248
17249         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
17250
17251         * gdk/win32/gdk.def gtk/gtk.def: Updates.
17252
17253 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
17254
17255         * configure.in: Added "uk" to ALL_LINGUAS.
17256         
17257 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
17258
17259         * configure.in: correct checking for BeOS check
17260
17261         * gdk/gdktypes.h
17262         * gtk/fnmatch.c
17263         * gtk/gtkfilesel.c
17264         * gtk/gtkitemfactory.c
17265         * gtk/gtkmain.[ch]
17266         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
17267
17268 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17269
17270         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
17271         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
17272         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
17273         by Bulgarian). 
17274
17275 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
17276
17277         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
17278         Fix a reference to window_private->destroyed.   
17279
17280         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
17281         (ugly) setting of an internal GdkWindow member to use
17282         a _slightly_ cleaner macro.
17283
17284         * gdk/gdkprivate.h: Split GdkWindowPrivate into
17285         GdkDrawablePrivate and GdkWindowPrivate.
17286         Add extra macros for accessing GDK_DRAWABLE_ components.
17287
17288         * *.[ch]: Massive adjustments for the above, use the
17289         new macros in a lot of places.
17290
17291 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
17292
17293         * gdk/gdktypes.h: Make GdkDrawable the base type,
17294         not GdkWindow.
17295
17296 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
17297
17298         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
17299
17300 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
17301
17302         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
17303
17304 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
17305
17306         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
17307         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
17308
17309         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
17310
17311         * docs/gtk-config.1: Now autogenerated.
17312         * docs/Changes-1.4.txt: started
17313         
17314 1999-10-03  Tor Lillqvist  <tml@iki.fi>
17315
17316         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
17317         to #ifdef also here.
17318
17319         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
17320         Owen did to the X11 backend.
17321
17322         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
17323         ScrollWindowEx when blitting inside a window, it can't be correct
17324         in the general case.
17325
17326         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
17327         WM_GETMINMAXINFO is easier.
17328
17329         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
17330         depth equal to the bitspixel value, not the visual's depth.
17331
17332         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
17333         to 24 even if the bitspixel value is 32.
17334
17335         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
17336         need to check for depth==32 when bpp==32, depth will always be 24.
17337
17338 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
17339
17340         * docs/Changes-1.4.txt: Started
17341         
17342         * gtk/Makefile.am (gdk_headers): Include all the new headers.
17343
17344         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
17345         
17346         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
17347         into C file.
17348         
17349         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
17350         header to gdkinputprivate.h.
17351
17352         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
17353         unused since before 1.2.
17354
17355 1999-09-30  Tor Lillqvist  <tml@iki.fi>
17356
17357         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
17358         expand possible hex escapes in the font family (put there by
17359         logfont_to_xlfd if the font name isn't a legal XLFD font family,
17360         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
17361         On Win32, add hex escapes here, too.
17362
17363 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
17364
17365         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
17366         to #ifdef GDK_WINDOWING_X11.
17367
17368 [ Merges from gtk-1-2 ]
17369
17370 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
17371
17372         * configure.in: fixed "GNU Make" check to pass with new make version
17373         3.77.95.
17374
17375 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
17376
17377         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
17378         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
17379         AM_PATH_GTK() macros don't get confused by the -pre1.
17380
17381 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17382
17383         * configure.in (REBUILD): Change check for perl5
17384           to check explicitely for v >= 5.002. (5.001
17385           does not work with our scripts.)
17386
17387 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
17388
17389         * configure.in: evaluate $PERL for the perl version check. added
17390         --disable-rebuilds to give the user an option to completely disable
17391         any source autogeneration rules.
17392
17393 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
17394
17395         * configure.in: evaluate $ac_make when checking for GNU Make.
17396
17397 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17398
17399         * docs/Makefile.am: added generation.txt.
17400
17401         * Makefile.am: require automake 1.4, build README from README.in and
17402         INSTALL from INSTALL.in in dist-hook.
17403         
17404         * README.in:
17405         * INSTALL.in: new files to autogenerate README and INSTALL from.
17406
17407         * configure.in: figure whether we have GNU Make
17408
17409         * docs/generation.txt: minor additions/corrections.
17410
17411 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17412
17413         * docs/gtkfaq.sgml: FAQ Update
17414
17415 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17416         
17417         * configure.in: Fix autoconf warnings about cross compilation by
17418         trying to provide sane defaults for AC_TRY_RUN.
17419
17420 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
17421
17422         * ltconfig
17423         * ltmain.sh: upgrade to libtool 1.3.3
17424
17425 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17426
17427         * INSTALL: Indicate that the --with-glib= configure
17428         time flag is unsupported.
17429
17430 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
17431
17432         * docs/generation.txt: Added a file that gives
17433         documenation about the autogeneration process for
17434         various autogenerated files.
17435         
17436 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17437
17438         * configure.in (LIBS): Look for libgmodule in the
17439         right location.
17440
17441 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
17442
17443         * docs/gtk_tut.sgml: Removed references to
17444         code examples in my directory on gtk.org as
17445         they should all be in the tutorial now.
17446
17447         * docs/gtk_tut.sgml: Added sources for dial-test
17448         and scribble-xinput programs that were previously
17449         missing.
17450
17451 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
17452
17453         * TODO: Added entry about menu keyboard navigation, removed
17454         some finished items.
17455
17456 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
17457
17458         * acinclude.m4: Standardize on func_dgettext
17459         not func_gettext, so that the checks for dgettext
17460         actually are paid attention to.
17461
17462 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
17463
17464         * configure.in (LIBS): Add $INTLLIBS into $LIBS
17465         directly, rather than repeating the checks for
17466         gettext.
17467
17468         * INSTALL: Added information about gettext and
17469         NLS support.
17470
17471         * acinclude.m4 (LIBM): Check for dgettext, not
17472         just gettext. This should hopefully fix things wrt
17473         systems with old versions of GNU gettext installed.
17474
17475 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17476
17477         * configure.in (LIBS): Look for libgmodule in the
17478         right location.
17479
17480 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17481
17482         * autogen.sh: add --enable-maintainer-mode
17483
17484         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
17485
17486 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
17487
17488         * docs/gtk-config.1.in:
17489           docs/Makefile.am:
17490           configure.in: gtk-config is now generated.
17491
17492         * docs/gtk-config.1: Removed, now generated.
17493
17494 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
17495
17496         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
17497         handle CreateNotify itself, still put out a debuging message for
17498         --gdk-debug=events. made the ReparentNotify debugging message more
17499         verbose.
17500         wrap xcoords translation for ConfigureEvents into an error trap,
17501         a destroy event may already be pending, and in that case, the
17502         actuall coordinate values are not at all critical.
17503
17504 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
17505
17506         * gdk/gdkcc.c: Stop leaking the color_hash all over
17507         the place. Simplify and improve the logic.
17508
17509 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17510
17511         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17512         for prototypes and function implementations consistent (reported
17513         by Tomas Ogren).
17514
17515 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17516
17517         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17518         send_event set in debugging output.
17519         (gdk_compress_exposures): default initialize the event so we don't
17520         operate on bogus values (namely send_event).
17521
17522 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17523
17524         * gdk/gdkwindow.c: When we receive an unexpected
17525         destroy notify on one of our windows, don't just
17526         warn about it, also mark our windows as destroyed.
17527
17528 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17529
17530         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17531           name => font and name => fontset hashes. The 
17532           name => fontset hash is a _big_ win since we
17533           weren't previously caching fontsets at all and loading
17534           fontsets is expensive. The name => font hash
17535           is less of a win, but it does save us from doing
17536           repeated XQueryFont calls on the same font.
17537
17538         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17539           list so we can remove font/fontset from hash.
17540
17541 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17542
17543         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17544           and slightly confusing test. [ XInternAtom (,,TRUE)
17545           will never return None ].
17546
17547 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17548
17549         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17550           gdk/gdkwindow.c (gdk_window_set_hints):
17551
17552         Don't omit setting the properties if flags == 0 -
17553         there may be an existing set of properties there
17554         already. (Very old bug. Would it be better to
17555         delete the property instead?)
17556
17557         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17558           spelling error in comment.
17559
17560 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17561
17562         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17563           to avoid stomping over gdk_error_warnings.
17564
17565         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17566           as (bits_per_pixel + 7) / 8. This gives the same
17567           result as before for multiples of 8, but actually
17568           a "reasonable" value for 1bit or 4bit displays.
17569
17570 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17571
17572         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17573         GNU Make.
17574
17575 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17576
17577         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17578         discarding configure events.
17579
17580 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17581
17582         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17583         refcount is greater than zero.
17584
17585         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17586
17587         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17588
17589         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17590
17591         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17592
17593 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17594
17595         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17596         that format 32 => sizeof(item) == 4. It really is
17597         sizeof(long).
17598
17599 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17600
17601         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17602         core dump at all on X IO errors, only core dump
17603         if --enable-debug for X errors.
17604
17605 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17606
17607         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17608         unknown window:" message. disabled ConfigureNotify discarding code,
17609         because it led to events being processed out of order.
17610
17611 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17612
17613         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17614
17615         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17616         we export this function, supress error warnings and don't reset the
17617         error code in the first half of this function.
17618
17619         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17620         code (instead of just -1) so gdk_error_trap_pop() reveals something
17621         actually informative about the error that happened.
17622
17623         * gdk/*.c:
17624         don't rely on gdk_error_code being -1 if an error occoured, but just
17625         gdk_error_code != 0.
17626
17627 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17628
17629         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17630         pointer *before* invoking the filter function, so we at least don't
17631         crash if a filter is removed that is currently executed. window filters
17632         *really* need to be made truely reentrant at some point.
17633
17634 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17635
17636         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17637         PropertyNotify debug messages.
17638
17639 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17640         
17641         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17642         
17643         * gdk/gdkim.c: Fix cut-and-paste errors for 
17644         x/y and PreeditAttributes/StatusAttributes.
17645
17646 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17647
17648         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17649         G_MAXINT to 2^16 to alleviate overflow problems in
17650         various window managers.
17651
17652 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17653
17654         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17655         for fontsets.
17656
17657 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17658
17659         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17660         Initialize size_hints.x and size_hints.y because kwm
17661         brokenly pays attention to them.
17662         (Bug #1181 -  Lars Heete <hel@admin.de>)
17663
17664 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17665
17666         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17667         return value of gdk_list_visuals(). 
17668         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17669
17670 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17671
17672         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17673         XSetIMValues to (void *) when comparing to NULL, to workaround
17674         the problem of some compilers barfing since older X headers don't
17675         have the prototype for it.
17676
17677 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17678
17679         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17680         for pseudocolor where colormap->colors was double
17681         allocated.
17682
17683         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17684         color value in the hash table with the pixel filled
17685         in so when we do later hash table lookups, the color
17686         value is correct.
17687         
17688 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17689
17690         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17691         making the call
17692
17693 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17694
17695         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17696         pointed out by Morten Welinder <terra@diku.dk>.
17697
17698 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17699
17700         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17701           default filter from the list
17702
17703 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17704
17705         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17706           default filter from the list
17707
17708 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17709
17710         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17711
17712         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17713         g_strdup_printf instead of calcing the length separately
17714
17715 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17716
17717         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17718         that we don't do in many other places. (Fixing duplicate 
17719         #include of config.h)
17720
17721         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17722         Otherwise, #ifndef XINPUT_NONE check in the latter
17723         doesn't work. (Bug #546)
17724
17725 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17726
17727         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17728         "None" case insensitive.
17729
17730 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17731
17732         * gdk/gdkselection.c: 
17733         Add error traps so if the other end of the connection
17734         dies, we survive.
17735
17736 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17737
17738         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17739         dest_xid field into two fields - one for the window
17740         to send in messages, one to indicate the last looked
17741         up window for caching purposes. This is needed, so
17742         that Leave messages get the correct window.
17743
17744 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17745
17746         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17747         Fix warning created by people mucking around
17748         with the gsource API.
17749
17750         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17751         Change mapping between GIOCondition and GdkInputCondition
17752         to match the way the Linux kernel does it. This should
17753         fix problems where closed pipes were no longer signalling
17754         GDK_INPUT_READ on systems with a native poll().
17755
17756 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17757
17758         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17759         explicitly for the string "None" - it is in the XPM
17760         spec and some servers treat unknown colors in odd ways
17761         (like asking the user!)
17762
17763 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17764
17765         * gdk/gdkevents.c: made "->" into a "." of previous change so
17766         it compiles
17767
17768 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17769
17770         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17771         window field of the event structure before calling
17772         user filters.
17773
17774 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17775
17776         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17777         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17778
17779 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17780
17781         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17782         intermediate text property - prevents major memory
17783         leak when gdk_use_mb.
17784         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17785
17786 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17787
17788         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17789         gtk-a-higuti-990322-[0-3]
17790
17791         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17792         sizeof(wchar_t) != sizeof (GdkWChar)
17793
17794         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17795         that was causing -DX_LOCALE not to work.
17796
17797         * gtk/gtkrc.c (gtk_rc_init):
17798         X_LOCALE will never have LC_MESSAGES defined
17799
17800         * gdk/gdk.c (gdk_init_check):
17801         Remove --xim-preedit and --xim-status from argv properly.
17802
17803         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17804         that the client window is present on the X server
17805         before we pass it to the input method.
17806
17807 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17808
17809         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17810         if --display is specified on the command line, than
17811         the drag window will not be created on that display.
17812         
17813 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17814
17815         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17816         lookups with only_if_exists == TRUE were inserting
17817         bogus values into the atom cache.
17818
17819 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17820
17821         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17822         then reset it to NULL.
17823
17824         * gdk/gdkcolor.c:
17825         (gdk_colors_free): 
17826         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17827         key for g_hash_table_remove() in both functions, this prevents us
17828         from accessing possibly uninitialized portions of a GdkColor structure
17829         where we are only interested in its pixel value.
17830
17831 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17832
17833         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17834         font hash table, if we have a GdkFontPrivate entry for this font
17835         already, simply increment its reference count, provided by Olaf Dietsche
17836         <olaf.dietsche+list.gtk@netcologne.de>.
17837
17838 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17839
17840         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17841         just to be sure.
17842
17843         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17844         unused variables, leftovers from the X11 version.
17845
17846         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17847
17848         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17849         downcase fields on X11.
17850
17851 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17852         
17853         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17854         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17855
17856 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17857
17858         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17859
17860         * gtk/makefile.msc: Correct path to libintl.
17861
17862         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17863         use of gint vs. int, and gint vs. gboolean in headers and
17864         definitions. Use GtkType for the *_get_type functions. Note that
17865         these changes preserve binary compatibility.
17866
17867         * gdk/gdk.c
17868         * gdk/win32/gdk.c
17869         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17870
17871         * gtk/gtkmain.c
17872         * gtk/gtkclist.c
17873         * gtk/gtkmenufactory.c
17874         * gtk/gtknotebook.c
17875         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17876         vs. gboolean.
17877
17878         * gtk/gtkcolorsel.[ch]
17879         * gtk/gtkcombo.[ch]
17880         * gtk/gtkdrawingarea.[ch]
17881         * gtk/gtkgamma.[ch]
17882         * gtk/gtkhandlebox.[ch]
17883         * gtk/gtkhpaned.[ch]
17884         * gtk/gtkhruler.[ch]
17885         * gtk/gtkplug.[ch]
17886         * gtk/gtkpreview.[ch]
17887         * gtk/gtkruler.[ch]
17888         * gtk/gtksocket.[ch]
17889         * gtk/gtkstatusbar.[ch]
17890         * gtk/gtktoolbar.[ch]
17891         * gtk/gtkvbbox.[ch]
17892         * gtk/gtkvpaned.[ch]
17893         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17894         functions.
17895
17896         * gtk/gtkgamma.h: Fix bug, missing () in call of
17897         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17898
17899 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17900
17901         * gdk/gdkcolor.c (gdk_colormap_new)
17902         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17903         colormap->colors was allocated twice.
17904
17905         * gdk/win32/gdk.c: Remove some unused stuff.
17906
17907         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17908         colormap.
17909
17910         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17911         * gtk/gtklabel.h (gtk_label_get_type)
17912         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17913         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17914         in a couple of places, not guint.
17915
17916 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17917
17918         * configure.in,po/et.po: added Estonian language file
17919
17920 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17921
17922         * configure.in,po/da.po: added Danish file
17923
17924 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17925
17926         * docs/gtkfaq.sgml: Minor FAQ Update
17927
17928 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17929
17930         * docs/gtkfaq.sgml: FAQ update
17931
17932 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17933
17934         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17935         way to get window contents continually refreshed while resizing. I
17936         didn't like the effects myself, so it's not on by default.
17937
17938         * gdk/win32/gdkprivate.h: New flag variable
17939         gdk_event_func_from_window_proc, FALSE by default.
17940
17941         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17942         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17943         are passed --gdk-event-func-from-window-proc.
17944
17945         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17946         and we have am event_func, call it instead of enqueing the event.
17947
17948 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17949
17950         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17951         Kelley: Set expose_count in GdkEventExposes correctly.
17952
17953         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17954         MULTIPLE_WINDOW_CLASSES).
17955
17956         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17957         for bug in NT, apparently NT *does* draw the end pixel, too, in
17958         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17959
17960 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17961
17962         Improvements by Hans Breuer: 
17963
17964         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17965
17966         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17967         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17968         window contents while dragging" is turned on. Allocate at least
17969         one unique class for every GdkWindowType. If support for single
17970         window-specific icons is ever needed (eg. Dialog specific), every
17971         such window should get its own class.
17972
17973 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17974
17975         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17976         error that caused crashes.
17977
17978 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17979
17980         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17981         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17982         bugs when for instance part of the window was outside the
17983         display. Thanks to Philippe Colantoni for finding and fixing this.
17984
17985 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17986
17987         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17988         endpoint calculations which were totally wrong. (A little RTFMing
17989         helps a lot ;-)
17990
17991         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
17992         from a separate directory, not from gettext, because of licensing
17993         issues (we want to use the LGPL version).
17994
17995         * README.win32: Mention the intl from glibc vs from gettext issue.
17996
17997 1999-08-13  Tor Lillqvist  <tml@iki.fi>
17998
17999         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
18000         in the key event handling: Now AltGr chars work again. Also,
18001         now Alt-digits are passed up as well as Control-digits.
18002         Pass keypad plus and minus as normal plus and minus.
18003
18004 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18005
18006         * docs/gtkfaq.sgml: FAQ Update
18007
18008 1999-07-25  Tor Lillqvist  <tml@iki.fi>
18009
18010         * README.win32
18011         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
18012         the Wintab SDK.
18013
18014         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
18015         OK, but getting closer. Guard against bogus tilt data from Wacom
18016         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
18017         enable easier building without Wintab.
18018
18019         * gdk/win32/gdkinput.h
18020         * gdk/win32/gdkevents.c 
18021         * gdk/win32/gdkwindow.c: Minor changes related related to above.
18022         
18023         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
18024         code. As we have just one visual on Win32, no sense to have it in a
18025         table, and no need for the hash table.
18026
18027         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
18028         better on white background.
18029
18030 1999-07-21  Tor Lillqvist  <tml@iki.fi>
18031
18032         * README.win32: Update gcc build instructions. Mention gettext is
18033         GPL.
18034
18035         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
18036         supported cursor size with GetSystemMetrics.
18037
18038         * gdk/win32/gdkfont.c
18039         * gtk/gtkfontsel.c: Guard against some font weight and charset
18040         symbols being undefined (in mingw32 headers).
18041
18042         * gdk/win32/makefile.cygwin
18043         * gtk/makefile.cygwin
18044         * gtk/gtkthemes.c: No longer need to have differently named
18045         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
18046
18047 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
18048
18049         * docs/gtkfaq.sgml: Long awaited FAQ update.
18050
18051 1999-07-15  Tor Lillqvist  <tml@iki.fi>
18052
18053         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
18054         it. Obscure bit manipulation needed.
18055
18056         * gdk/win32/gdkevents.c: Logging.
18057         
18058         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
18059         style (file name include compiler name) for theme engines.
18060
18061 1999-07-13  Tor Lillqvist  <tml@iki.fi>
18062
18063         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
18064
18065         * gdk/win32/gdkevents.c: Fix long-standing bug in key
18066         events. The key.string wasn't zero-terminated, still we strdup'ed
18067         it in gdk_event_copy(). Synthesize crossing events for button
18068         events before possible propagation.
18069
18070         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
18071
18072         * gdk/win32/makefile.cygwin
18073         * gtk/makefile.cygwin: Use new DLL naming style for the
18074         GCC-compiled ones.
18075
18076         * gdk/win32/makefile.msc
18077         * gtk/makefile.msc: Cosmetics mostly.
18078
18079         * gtk/gtk.def: Add missing entry points.
18080
18081         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
18082
18083 1999-07-09  Tor Lillqvist  <tml@iki.fi>
18084
18085         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
18086         or height is zero. Don't print a warning if Pie or Arc fails, they
18087         always fail (?) for very narrow ellipses.
18088
18089         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
18090         the part or the destination window corresponding to source area
18091         outside of the source drawable's boundary.
18092
18093         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
18094         anything if less than two points.
18095
18096         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
18097         return NULL. Gtk cut-and-paste inside a single program works
18098         better this way. (It always gets the clipboard contents from
18099         Windows, not from its own copy, which is cleared anyway. I can't
18100         say I fully understand what happens... Emulating the X selection
18101         and property stuff is a bit of a mess.)
18102
18103         * gdk/win32/gdkevents.c
18104         * gdk/win32/gdkproperty.c: A bit more verbose logging.
18105
18106         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
18107         that never got deleted). Revamp gdk_region_shrink.
18108
18109         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
18110         after use.
18111
18112         * gtk/gtk.def: Add some missing entry points.
18113
18114         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
18115         component.
18116
18117 1999-07-04  Tor Lillqvist  <tml@iki.fi>
18118
18119         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
18120         Control-digits specially.
18121
18122 1999-07-03  Tor Lillqvist  <tml@iki.fi>
18123
18124         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
18125
18126 1999-06-28  Tor Lillqvist  <tml@iki.fi>
18127
18128         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
18129         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
18130         finding this.)
18131
18132 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
18133
18134         * gtk+.spec.in: Corrected some typos in files section.
18135         
18136 1999-06-15  Tor Lillqvist  <tml@iki.fi>
18137
18138         * README.win32: Mention using GNU gettext.
18139         * config.h.win32: Enable NLS stuff.
18140         * gtk/makefile.msc: Use GNU gettext.
18141         * gdk/win32/gdkdnd.c: Minor header reorg.
18142         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
18143         cosmetics.
18144         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
18145         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
18146
18147 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
18148
18149         * acinclude.m4
18150         * config.guess
18151         * config.status
18152         * ltconfig
18153         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
18154
18155 1999-05-30  Tor Lillqvist  <tml@iki.fi>
18156
18157         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
18158         SafeAdjustWindowRectEx. Don't override all calls to
18159         AdjustWindowRectEx by it, but use it only in two places: When
18160         creating a new top-level window and when moving a top-level
18161         window.
18162
18163         Use screen coordinate rectangle, not client rectangle, in
18164         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
18165         when we try to place a window so that the decoration (mainly,
18166         title bar) isn't visible.
18167
18168         These changes fix the bug that showed up for instance as the
18169         GIMP's saved top-level windows moving right and down (by an amount
18170         equal to the window decoration) for each session. This bug showed
18171         up also in testgtk's "Saved Position".
18172
18173         gdk_window_resize also redone a bit.
18174
18175 1999-05-25  Tor Lillqvist  <tml@iki.fi>
18176
18177         * gtk/testgtkrc: Add (commented out) Windows-style theme
18178         include line.
18179
18180         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
18181
18182 1999-05-18  Tor Lillqvist  <tml@iki.fi>
18183
18184         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
18185         gdkx.h to a gdk subdirectory, so that applications can include
18186         these with <gdk/*.h> without trouble.
18187
18188         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
18189         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
18190         have their bitmap destroyed.
18191
18192         * gdk/win32/gdk.def: Add gdk_root_parent.
18193
18194 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
18195
18196         * configure.in
18197           gtk-config.in
18198           ltconfig
18199           ltmain.sh     
18200           gtk/Makefile.am: changes to compile nicely (with xlib) 
18201           on BeOS
18202
18203 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
18204
18205         * acinclude.m4
18206         * config.guess
18207         * config.sub
18208         * ltconfig
18209         * ltmain.sh: upgrade to libtool 1.3
18210
18211 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
18212
18213         * gtk/gtkclist.c:
18214         * gtk/gtkctree.c: merges from gtk-1-2
18215
18216 1999-04-25  Tor Lillqvist  <tml@iki.fi>
18217
18218         Support added for building using a GNU toolchain on Win32,
18219         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
18220
18221         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
18222         * config.h.win32: Changes for gcc.
18223         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
18224         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
18225         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
18226         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
18227         Protect shl stuff unavaiilable with mingw32 headers.
18228         * gdk/win32/gdkevents.c: Fix typo.
18229         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
18230         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
18231         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
18232         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
18233         the mingw32 headers.
18234         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
18235         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
18236         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
18237         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
18238         Test for NATIVE_WIN32, not _MSC_VER.
18239         * gtk/gtkmain.c: No use warning about developer version on Win32,
18240         there aren't any non-developer versions anyhow.
18241         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
18242         * gtk/makefile.msc: Use pthread from another directory. Minor other
18243         changes. 
18244
18245 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18246
18247         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18248           default filter from the list
18249
18250 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
18251
18252         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
18253          when gtk_widget_grab_default() is called for a widget that
18254          is not within a GtkWindow.
18255
18256 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
18257
18258         * docs/gtk_tut.sgml, examples/clist.c: use a
18259           scrolled window in the clist example. Minor
18260           tutorial fixes.
18261
18262 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
18263
18264         * docs/gtk_tut.sgml: Style check from David King
18265           <dking@youvegotmail.net>
18266
18267 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
18268
18269         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
18270         compile with unknown value of GDK_WINDOWING
18271
18272 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
18273
18274         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
18275         after the rule is fired.
18276         (install-exec-local): Install gdkconfig.h only if the contents are
18277         different from the currently installed gdkconfig.h.
18278
18279 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
18280
18281         * gdk/Makefile.am (configexecincludedir): Rename from 
18282         configincludedir so that gdkconfig.h will be installed 
18283         as part of `make install-exec'. 
18284
18285 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
18286
18287         * acinclude.m4
18288         * config.guess
18289         * config.sub
18290         * ltconfig
18291         * ltmain.sh: upgrade to libtool 1.2f
18292
18293         * autogen.sh: libtool is not required to autogen gtk+
18294
18295         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
18296         needed)
18297
18298 1999-03-18  Tor Lillqvist  <tml@iki.fi>
18299
18300         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
18301         declaring gdk variables exported/imported from the DLL. New image
18302         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
18303         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
18304         GDK_DRAG_PROTO_OLE2.
18305
18306         * gdk/gdk.h: Merge in Win32 version: Two new functions,
18307         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
18308         declared only for the Win32 version, but could be in the X11
18309         version as well. (Needed for a Xlib-less gdk_imlib.)
18310         gdk_color_hash should have only one parameter. Declare
18311         gdk_threads_mutex with GDKVAR.
18312         
18313         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
18314         just one parameter.
18315
18316         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
18317         per pixel, not bits.
18318
18319         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
18320         Fetch bpp (which means bits-per-pixel here) from another place on
18321         Win32. Accept also depth==32 (which we might get on Win32) with
18322         bpp==32.
18323
18324         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
18325         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
18326         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
18327         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
18328         in the backend-dependent directory, not in the common gdk
18329         directory.
18330
18331         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
18332         headers.
18333
18334 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
18335
18336         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
18337         want to use the Gtk+ devel version (which is true, and yes - even i am
18338         currently working with the 1.2.x branch). so everyone reading this, you
18339         probably want to issue
18340         cvs checkout -r glib-1-2 glib
18341         and
18342         cvs checkout -r gtk-1-2 gtk+
18343         as your next two comands.
18344
18345 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
18346
18347         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
18348         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
18349
18350         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
18351         file. strongly deprecated the GTK_HAVE_* macros, we provide
18352         GTK_CHECK_VERSION() for people that need to check for certain
18353         Gtk+ versions.
18354
18355         * gtk/gtkcompat.h: removed this from CVS.
18356         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
18357         idea right from the start, it just didn't seem like that back then.
18358
18359 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
18360
18361         * merges from gtk-1-2:
18362
18363 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
18364
18365         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
18366         item factory class has been created.
18367         (gtk_item_factory_parse_rc): likewise.
18368
18369         * gtk/gtkmenu.c:
18370         keep proper references for old_active_menu_item.
18371         (gtk_menu_reparent): unset the usize of the new parent,
18372         so the menu can sanely be size requested and we don't get nasty screen
18373         artefacts upon next reparentation.
18374         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
18375         enter notify. only synthesize enter notifies if the pointer really is
18376         inside the event window.
18377         (gtk_menu_popdown): use gtk_menu_shell_deselect().
18378         (gtk_menu_popup): move the background setting stuff into
18379         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
18380
18381         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
18382         gtk_menu_shell_select_item() to select the new item.
18383         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
18384         do the right thing for deselection as well.
18385
18386 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
18387
18388         * gtk/gtkwidget.[hc]:
18389         (gtk_widget_accelerators_locked): return whether a widget's accelerators
18390         are locked.
18391
18392         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
18393         existing accelerators if the widget's accelerators are locked.
18394
18395 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
18396
18397         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
18398
18399         * gtk/gtkmenu.c: truely forward key press and key release events to
18400         the menu widget from the toplevel or tearoff window. we can't simply
18401         connect to that, we need to stop further processing of the events as
18402         well.
18403
18404 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
18405
18406         * gtk/gtkmenu.c:
18407         (gtk_menu_key_press): pass event->keyval, event->state to
18408         gtk_accelerator_valid, instead of event->keyval twice.
18409         refuse to install single letter accelerators for menus that use
18410         single letter shortcuts.
18411
18412         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
18413         gtk_menu_ensure_uline_accel_group().
18414
18415         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
18416         which will always return an uline accel group, made
18417         gtk_menu_get_uline_accel_group() return NULL if the group isn't
18418         yet created.
18419
18420 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
18421
18422         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
18423
18424         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18425         Leave button sensitive, trap  button_press, button_release,
18426         motion_notify, enter_notify and leave_notify events instead.
18427         (gtk_clist_column_title_active): disconnect event handler.
18428         (gtk_clist_drag_data_get): fixed memory leak. Reported by
18429         Guillaume Laurent <glaurent@worldnet.fr>
18430
18431 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
18432
18433         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
18434         width/height mixups.
18435
18436         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
18437         if needed.
18438
18439 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
18440
18441         * gtk/testgtk.c (create_item_factory): unref the item factory after
18442         window's destruction.
18443
18444         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
18445         count on the menu shell around the menu item's activation, since the
18446         signal emission may cause menu shell destruction.
18447
18448         * gtk/gtkitemfactory.c:
18449         the previous code leaked one accel group per menu. we use
18450         gtk_menu_get_uline_accel_group() now to fix that, and with that
18451         also create the underline accelerator group of the menus only if
18452         required (i.e. an underline accelerator has been specified).
18453         (gtk_item_factory_construct):
18454         (gtk_item_factory_create_item): removed code that would create an
18455         extra accel group for the menu (and leak references).
18456         (gtk_item_factory_create_item): adapted the underline accelerator
18457         installation code to properly feature gtk_menu_get_uline_accel_group().
18458
18459         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
18460         menu->accel_group, this may return NULL if the accelerator group
18461         hasn't been set yet.
18462         added gtk_menu_get_uline_accel_group() to retrive the underline
18463         accelerator group of the menu, this will be created on demand
18464         and proper care is taken about its reference count.
18465
18466         * gtk/gtkitemfactory.h:
18467         * gtk/gtkitemfactory.c:
18468         dumped the approach of keeping a widgets by action list on the
18469         factory since the factory<->widget destroy negotiation didn't work
18470         and would be hard to get going at all. instead we keep a list of
18471         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
18472         persistant throughout a program's life time).
18473         also, i removed the static const gchar *key_* variables, and made
18474         them inline strings (they weren't actually used anyways).
18475         (gtk_item_factory_add_item): update ifactory->items.
18476         (gtk_item_factory_destroy): destroy ifactory->items (and remove
18477         the item factory pointer from the remaining ifactory widgets).
18478         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
18479         list to find the widget.
18480         (gtk_item_factory_get_item): new function that works around
18481         gtk_item_factory_get_widget() limitations, this function will only
18482         return menu items, even for <Branch> entries.
18483
18484 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18485
18486         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18487         font hash table, if we have a GdkFontPrivate entry for this font
18488         already, simply increment its reference count, provided by Olaf Dietsche
18489         <olaf.dietsche+list.gtk@netcologne.de>.
18490
18491         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18492         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18493
18494 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
18495
18496         * gtk/gtkcontainer.c:
18497         (gtk_container_add_with_args):
18498         (gtk_container_addv):
18499         (gtk_container_add): before adding a child to a conatiner, make sure
18500         it is (default) constructed, this is neccessary because under certain
18501         circumstances the child will get relized and mapped immediatedly, in
18502         which case it has to be constructed already.
18503
18504 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
18505
18506         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
18507         values > 1 as TRUE also.
18508
18509 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18510
18511         * README.win32: New file.
18512                 
18513         * configure.in: Check for lstat.
18514
18515         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18516         completeness.
18517
18518         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18519
18520         * gtk/gtk.def: Removed CRs.
18521
18522         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18523         ..\gdk\win32).
18524
18525         * gdk/win32/makefile.msc: Correct upwards relative paths.
18526         
18527 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18528
18529         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18530           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18531           it was connecting a void function to expose_event and the int
18532           returning function to the draw signal
18533
18534 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18535
18536         * configure.in:
18537         Use correct path to libgmodule.la when ref'ing uninstalled copy
18538         of glib.  (Already in stable branch, Bug #417)
18539
18540 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18541
18542         Win32 merge and general portability stuff:
18543                 
18544         * acconfig.h,configure.in: Check for <sys/time.h>.
18545
18546         * gdk/win32: New directory (actually, been there for a while).
18547         
18548         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18549         NATIVE_WIN32, and use these. Always case fold on Win32. No
18550         backslashed escapes on native Win32.
18551
18552         * gtk/{gtk.def,makefile.msc}: New files.
18553
18554         * gtk/Makefile.am: Add above new files.
18555         
18556         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18557         instead of <strings.h>.
18558
18559         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18560         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18561         <unistd.h> appropriately.
18562
18563         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18564         Use ABS() (from <glib.h>) instead of abs().
18565         
18566         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18567         of gtk (and thus glib) headers, so that WIN32 will be
18568         defined. With MS C, include <direct.h> for mkdir prototype.
18569
18570         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18571         some casts, needed by MS C.
18572
18573         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18574         implemented).
18575
18576         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18577         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18578         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18579
18580         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18581                 
18582         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18583         the event is not a hint, or its window is not the slider. Needed
18584         on Win32, at least.
18585
18586         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18587         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18588         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18589         a subdirectory of the Windows directory as gtk system
18590         configuration directory.
18591
18592         * gtk/gtkselection.c: No chunks on Win32.
18593
18594         * gtk/gtksocket.c: Not implemented on Win32.
18595
18596         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18597
18598         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18599
18600         * gtk/maketypes.awk: Declare variables with a macro that expands to
18601         necessary export/import magic in the case of Win32.
18602                 
18603         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18604
18605 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18606
18607         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18608         since those were meant only for gdki18n.h.  
18609         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18610         for widechar tests.
18611         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18612
18613 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18614
18615         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18616         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18617
18618         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18619         installed) to CFLAGS.
18620
18621         * gdk/Makefile.am: Add rules for gdkconfig.h.
18622
18623         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18624         APIs.
18625
18626         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18627         gdkx.h anyway when compiling for X11.
18628         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18629         general): Merge in Win32 version.
18630         
18631         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18632         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18633         expansion (if we don't have HAVE_PWD_H), allow for drive
18634         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18635         included code from Craig Setera's port to Win32 (the one that uses
18636         X11, and the cygwin dll), even if it probably will be abandoned.
18637
18638         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18639         the user entered one herself.  This way one can complete *.h and
18640         don't get matches on any .help files, for instance.
18641         
18642 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18643
18644         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18645         font hash table, if we have a GdkFontPrivate entry for this font
18646         already, simply increment its reference count, provided by Olaf Dietsche
18647         <olaf.dietsche+list.gtk@netcologne.de>.
18648
18649         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18650         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18651
18652 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18653
18654         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18655         the number of calls to gdk_draw_point() (and thus to X) by
18656         clipping the points by hand.
18657
18658         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18659         the clip parameter.
18660         (gtk_handle_box_paint): Only paint the handle if the expose area
18661         intersects it.
18662
18663 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18664
18665         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18666
18667 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18668
18669         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18670         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18671
18672 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18673
18674         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18675          textmode (O_TEXT) for OS/2 version.
18676
18677 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18678
18679         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18680         GtkSpinButton, "input" and "output", to make the output more flexible.
18681         The user has to provide a mapping between adjustment->value and the
18682         output string (and vice versa, if the spin button is editable). 
18683         See testgtk for examples.
18684
18685 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18686
18687         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18688         new one.
18689         
18690         * configure.in: set gtk+ version to 1.3.0.