]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
ask apps for COMPOUND_TEXT instead of TEXT correctly interpret the return
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
2
3         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
4         COMPOUND_TEXT instead of TEXT
5         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
6         interpret the return value of g_string_to_compound_text()
7         (#55152)
8
9 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
10
11         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
12         fail if iter is NULL. (#58347)
13
14 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
15
16         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
17         some off-by-one issues, fixing selection of line-ends. (#50323)
18
19 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
20
21         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
22         functions in order to make mouse operation work again in the
23         color wheel. (#58604)
24
25 2001-08-07  James Henstridge  <james@daa.com.au>
26
27         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
28         the accelerator when the accel object is changed.  Fixes bug
29         #58628.
30
31 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
32
33         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
34         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
35         (gnome bugzilla #58202)
36
37 2001-08-06  Havoc Pennington  <hp@pobox.com>
38  
39         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
40         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
41         it was expecting a GdkWindow, not a GdkWindowImplX11.
42  
43         Also, we were getting the window rect in screen coords 
44         and the screen rect in window coords then intersecting 
45         them; instead, get window rect in window coords.
46  
47         Finally, there were codepaths that resulted in a stuck server grab
48         (when the window was fully onscreen, or on gdk_image_new()
49         failure); make the server ungrab thing a bit more
50         robust/consistent.
51
52 2001-08-06  Sven Neumann  <sven@gimp.org>
53
54         * gdk/gdkpango.c (gdk_pango_context_destroy): 
55         check if info->colormap != NULL before unref'ing it. It might have
56         been set to NULL using gdk_pango_context_set_colormap().
57
58 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
59
60         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
61         Fix conversion from float to int so that we don't get
62         skew in the int => float => int roundtrip. 
63         (#58120, reported by Vitaly Tishkov). Also fix problem
64         where if no alpha was set, the returned alpha
65         from (say) set_current_alpha() was returned as 1, not 65535.
66
67 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
68
69         * gtk/gtklist.c (gtk_list_clear_items): Fix
70         problem with selecting a new focus child.
71
72         * gtk/gtklist.c (gtk_list_clear_items): Clear 
73         list->undo/list_focus_child after unparenting
74         child, since unparenting the child can result
75         in list->last_focus_child being set. (#58024)
76
77         * Makefile.am (SUBDIRS): Add target specific pc
78         files to DISTCLEANFILES.
79
80         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
81         (58327, Matthias Clasen)
82
83 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
84
85         * tests/testgtk.c: Patch from Hans (with various modifications),
86         to add the ability to use testgtk as a rough-and-ready
87         benchmark. Try, 'testgtk --bench all:5' (if you want decent
88         numbers, run without a window manager)
89
90 2001-08-04 Alexander Larsson <alexl@redhat.com>
91
92         * gdk/win32/gdkinput.c:
93         Add #ifdef HAVE_WINTAB around wintab.h include.
94
95         * gtk/gtk.def:
96         Removed marshals that have been moved to glib.
97         Commented out plug and socket. They didn't compile for me 
98         on win32.
99
100 2001-08-04  Hans Breuer  <hans@breuer.org>
101
102         * gtk/stocks-icons/makefile.msc : new file
103         * gtk/makefile.msc.in : use it
104
105         * gtk/gtkstyle.c : not all platforms do provide M_PI and
106         friends, but luckily there is G_PI
107
108         * gtk/gtk.def : updated
109
110         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
111         windows WS_POPUP, but only those without a parent. This fixes the 
112         mis-alignment between the selectable (temp, input only) window and 
113         the window text of GtkLabel.
114
115         (gdk_window_show) : respect private->state when actually showing
116         the window.
117
118         (gdk_window_set_transient_for) : Implementation from Wolfgang 
119         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
120         error handling. Should fix #50586.
121
122         * gdk/win32/gdkevents-win32.c : beautify log output
123
124 2001-08-04  Michael Natterer  <mitch@gimp.org>
125
126         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
127         Need to show the image after adding it to the GtkImageMenuItem.
128         This used to work without in testgtk because of the
129         gtk_widget_show_all() at the end of the function.
130         (Closes #54978).
131
132 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
133
134         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
135         (gtk_notebook_set_child_property): fix finding of child's page,
136         since we have to validly deal with labels and menus here as well.
137         (gtk_notebook_get_child_property): fix warning.
138         (gtk_notebook_class_init): property tab_pack is of type
139         GTK_TYPE_PACK_TYPE (enum) not boolean.
140         (gtk_notebook_find_child): don't always warn, we might be looking
141         for a label or menu child.
142         (gtk_notebook_map): fix mapping of panel.
143
144         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
145         widget's mapped state, regardless of the value being set equals
146         old settings, since things like REALIZED(parent) or MAPPED(parent)
147         may have changed since the old value was set. make it an error to
148         invoke this function on a toplevel widget.
149
150 2001-07-31  Darin Adler  <darin@bentspoon.com>
151
152         * gdk/gdkprivate.h:
153         * gdk/x11/gdkx.h:
154         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
155
156         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
157         GTK_OBJECT.
158
159 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
160
161         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
162         scoping error pointed out by matthiasc@poet.de.
163
164 2001-07-31  Sven Neumann  <sven@gimp.org>
165
166         * demos/gtk-demo/appwindow.c
167         * demos/gtk-demo/item_factory.c
168         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
169
170 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
171
172         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
173         argument order for g_signal_has_handler_pending.
174
175 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
176
177         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
178         instead of long deprecated g_scanner_stat_mode().
179
180 2001-07-29  Hans Breuer  <hans@breuer.org>
181
182         * gdk/makefile.msc : build in the backend dir after
183         auto-generating files
184
185         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
186         with code from win32-production-branch.
187
188         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
189         before calling DestroyWindow, which indirectly calls 
190         gdk_window_destroy_notify ()
191
192         (performance patch merged from win32-production-branch)
193         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
194         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
195         R2_COPYPEN rop). It is claimed to be much faster.
196
197 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
198
199         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
200         add an "attributes" property to the text renderer for ATK.
201
202 2001-07-26  Alex Larsson  <alexl@redhat.com>
203
204         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
205         Initialize image->bits_per_pixel from the drawable, not from
206         the root window.
207
208         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
209         Fix cast. argument is an IMPL already.
210
211 2001-07-15  James Henstridge  <james@daa.com.au>
212
213         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
214         (gtk_window_remove_accel_group): same here.
215         (gtk_window_key_press_event): same here.
216
217         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
218         (gtk_widget_remove_accelerator): same here.
219         (gtk_widget_remove_accelerators): same here.
220
221         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
222
223         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
224         instead of GtkObject.
225
226         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
227         now takes GObjects.
228
229         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
230         pass a GObject to gtk_accel_group_entries_from_object.
231         (gtk_item_factory_create_item): s/accel_widget/accel_object/
232
233         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
234
235         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
236
237         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
238         GObjects can have accelerators set now.  Add compatibility
239         defines.
240
241         * gtk/gtkmarshal.list: add missing marshallers.
242
243         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
244         accelerators on plain GObjects.  gtk_accel_group_object_destroy
245         has been converted into a weak reference, and
246         gtk_accel_group_delete_entries is now a destroy notify for that
247         piece of data.
248
249 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
250
251         * gdk/gdkdraw.c: Added a check on the colormap depth to
252         gdk_drawable_set_colormap()
253         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
254         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
255         for pixmaps without visuals (more specifically, bitmaps)
256         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
257         doesn't set a colormap with the wrong depth
258
259
260 2001-07-22  Anders Carlsson  <andersca@gnome.org>
261
262         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
263         expander_height and expander_width properties with a single
264         property, expander_size.
265         (gtk_tree_view_init): Set the tab_offset to expander_size
266         plus some padding.
267         (gtk_tree_view_unrealize): Remove the expand/collapse
268         timeout if it exists.
269         (coords_are_over_arrow): Fix a small bug.
270         (gtk_tree_view_motion_draw_column_motion_arrow): Use
271         expander_size.
272         (gtk_tree_view_draw_focus): Use "treeview" instead of
273         "add-mode" as detail when drawing the focus.
274         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
275         instead of "add-mode" as detail when drawing the focus.
276         (gtk_tree_view_deleted): If we have a node currently being
277         expanded or collapsed, remove the timeout and set the node 
278         to NULL.
279         (gtk_tree_view_queue_draw_arrow): New function that just
280         redraws the arrow of a node.
281         (gtk_tree_view_draw_arrow): Use expander_size instead of
282         expander_width/expander_height, also pass a different
283         expander_style to gtk_paint_expander depending on the 
284         state of the node being drawn.
285         (expand_collapse_timeout): New function for expanding 
286         or collapsing a node depending on the previous state.
287         (gtk_tree_view_real_expand_row): Add timeout and set 
288         correct state for node being expanded.
289         (gtk_tree_view_real_collapse_row): Add timeout and set
290         correct state for node being collapsed.
291
292         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
293         information about the node currently being expanded or
294         collapsed, and also a timeout id.
295
296         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
297         with expander_style for draw_expander.
298
299         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
300         expander_style.
301         (create_expander_affine): New function for creating an 
302         expander affine.
303         (apply_affine_on_point): New function for applying an 
304         affine to a point.
305         (gtk_default_draw_expander): Modified to take expander_style
306         instead of is_open, and to draw the rectangle rotated differently
307         depending on the expander style.
308         (gtk_paint_expander): Replace is_open with expander_style.
309
310         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
311
312         * gtk/gtkenums.h: Add expander style enum.
313
314 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
315
316         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
317         value from gtk_tree_model_get_iter, the model might be empty.
318
319 2001-07-20  Hans Breuer  <hans@breuer.org>
320
321         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
322         gdk/gdkinput.c like the other backends
323
324         * gdk/win32/gdkinput-win32.h :
325         * gdk/win32/gdkinput.c :
326         * gdk/win32/gdkvisual-win32.c :
327         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
328         GdkVisual GObjectification. UNTESTED for pen-devices because
329         I simply have none.
330
331         * gdk/gdk.def :
332         * gtk/gtk.def : updated externals
333
334         * gtk/gtkiconfactory.c :
335         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
336         before passing &error to functions to avoid strange crashes
337         
338         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
339
340         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
341
342         * gtk/makefile.msc.in : updated
343
344 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
345
346         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
347         Add property support. (#51858)
348
349 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
350
351         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
352         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
353         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
354
355 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
356
357         * gtk/gtkcolorsel.c: Add propery support (roughly
358         based on patch from Lee Mallabone, #51014)
359
360         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
361         deprecated, since we already g_warning() on it.
362
363 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
364
365         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
366         typo that sometimes caused selection not to work properly.
367
368         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
369         entry when tabbing in. (#57743)
370         
371         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
372         user drags up above or down below the entry, move
373         to the end or the beginning of the entry. (Suggestion
374         from Jay Cox, #50940)
375
376         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
377         a current selection, then when moving by chars or
378         words, move to the end of the selection rather than
379         from entry->current_pos. (Suggestion from Jay Cox,
380         #50942)
381         
382 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
383
384         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
385         set window->decorated. (Patch from Hidetoshi Tajima,
386         #55846)
387
388 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
389
390         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
391         the widget/child realization/mapping invariants.
392
393         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
394         gtk_widget_[get/set]_child_visible() to control
395         whether visible children of a mapped window are
396         mapped.
397
398         * docs/widget_system.txt: Updated for changes in
399         container contract, and addition of GTK_CHILD_VISIBLE.
400
401         * gtk/gtkcontainer.c: Add generic map()/unmap()
402         functions that work for almost all containers.
403
404         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
405         gtk_widget_set_child_visible() where necessary.
406
407         * gtk/*.c: Remove excess map(), unmap(), and 
408         realization/mapping invariant enforcing code
409         from many containers.
410
411 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
412
413         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
414         Get the foreground color from 'text', nor 'fg'. (#57568)
415
416 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
417
418         * gtk/*.c: Patch from Matthias Clasen to remove remove
419         all instances of g_return_if_fail (foo != NULL); that are
420         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
421         since the second check catches the NULL anyways.
422
423 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
424
425         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
426         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
427         GDK_THREADS_ENTER()/LEAVE() pairs.
428
429         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
430         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
431         pairs. (Problem found by M. Meeks)
432
433 2001-07-18  Darin Adler  <darin@bentspoon.com>
434
435         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
436         that we don't get a g_warning message every time we register a new
437         icon size.
438
439         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
440         using pixel variable of the correct type.
441         
442 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
443
444         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
445         so that using X functions on a GdkWindow is possible, if
446         a little hairy.
447
448         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
449         and ts_origin of a GC, so that external parties can offset/restore
450         a GC, when using gdk_window_get_internal_paint_info().
451
452 2001-07-17  Darin Adler  <darin@bentspoon.com>
453
454         * .cvsignore: Ignore the sgml directory made by gtkdoc.
455         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
456         instead of the deprecated gtk_window_set_policy.
457         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
458         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
459         function to get rid of warning and some code too.
460         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
461         missing const.
462         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
463         unused local.
464         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
465         const.
466         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
467         (gdk_utf8_to_compound_text): Add missing const.
468         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
469         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
470         cast and get rid of an unnecessary one.
471         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
472         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
473         local.
474         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
475         Remove unused local.
476         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
477         missing const.
478         * tests/testsocket.c: (add_child): Add cast so the printf format
479         doesn't make us implicitly depend on what integer type
480         gtk_socket_get_id returns.
481         * tests/testtextbuffer.c: Add missing const.
482         * tests/testtreefocus.c: (main): Remove unused local.
483         * tests/treestoretest.c: (iter_remove): Remove unused local.
484         (uppercase_value): Remove unused function.
485         (make_window): Add statement to quiet the compiler's uninitialized
486         variable warning.
487
488 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
489
490         * gtk/gtkrange.c:
491         (second_timeout): 
492         (initial_timeout): 
493         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
494         (gtk_range_calc_layout): compute the new layout based on an
495         adjustment->value being passed in as argument.
496         (gtk_range_button_press): for button2 slider warps, first recalc
497         the layout, then adjust the value. also, use update_slider_position()
498         for adjusting the value, so we keep pixel quantisation at which we
499         usually operate (upon motion or button releases). the reason for this
500         is that, we can't change the adjustment upon button2 presses to a non
501         quantised value and upon button2 release re-quantise the value since
502         that'd alter the value even if we didn't get any motion events (causing
503         unexpected scroll area warps upon release and/or slider pixel-jitter).
504         (gtk_range_motion_notify): update the slider position from queried
505         coordinates, not event coordinates.
506
507 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
508
509         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
510         the default gc values are: width=0, CapBut, JoinMiter.
511
512 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
513
514         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
515         into account the xpad and ypad when calculating the width and the
516         height of the pixbuf cel.
517
518 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
519
520         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
521         Rename to gtk_radio_menu_item_get_group(), add deprecated
522         alias. (#57044)
523
524         * gtk/gtkfilesel.c: Indentation fix.
525
526 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
527
528         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
529         Hasselmann to fix warnings in compat macros. 
530         (#56773)
531
532         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
533         stupid wrong cast added in last patch.
534
535 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
536
537         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
538         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
539
540 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
541
542         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
543         missing cast.
544
545         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
546         NULL/FALSE return value confusion.
547
548         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
549         problem when scrollbar completely fills range. (Patch
550         from  Matthias Clasen, #57047)
551
552 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
553
554         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
555         clean up when handling events for move-resize emulation.
556         (Problem traced down by Matthias Clasen, #57271)
557
558 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
559
560         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
561           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
562           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
563           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
564           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
565           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
566           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
567         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
568
569 2001-07-09  Peter Williams  <peterw@ximian.com>
570
571         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
572         for when srcdir != builddir
573
574 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
575
576         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
577         gtk_tree_model_get_iter_root.
578
579         * gtk/gtkliststore.c: Add a bunch of g_return statements.
580         (gtk_list_store_iter_n_children): Fix up.
581
582         * gtk/gtktreestore.c: Add a bunch of g_return statements.
583
584 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
585
586         * gtk/gtkwidget.c (gtk_widget_class_init):
587         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
588         restore some workingness.
589
590         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
591         handle of window type for input-only windows.
592
593 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
594
595         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
596         Patch from Gregory Merchan to add 
597         gtk_button_box_set_secondary(), which separates
598         the child into a separate group from the normal
599         buttons. (#56331)
600
601         * gtk/gtkdialog.c: Make help buttons secondary by
602         default.
603
604         * gtk/gtkbbox.c: Added a child property "secondary".
605
606         * gtk/testgtk.c: Turn on the help button for the 
607         color selector to check that it properly appears
608         as secondary.
609
610 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
611  
612         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
613         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
614         Add gdk_set_pointer_hooks() to allow pointer-querying to
615         be hooked by an event record/playback system like GERD.
616         (#56914)
617         
618 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
619
620         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
621         in the right value of initial_emission to
622         gtk_widget_set_style_internal (#57091)
623
624 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
625
626         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
627         Make compile.
628
629         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
630         with calling gtk_widget_set_style_internal() with
631         the old style, not the new style. (#56989)
632
633 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
634
635         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
636           gtk/gtkwidget.c:
637         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
638         not GTK_WIDGET_GET_ANCESTOR ... see 
639         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
640         Indicate the best practice in the docs for gtk_widget_get_toplevel().
641
642         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
643         so GtkPlug can give the correct signals when transforming
644         from a child to a toplevel.
645         
646         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
647         reparentation correctly.
648
649         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
650         Propagate the previous_toplevel argument down properly.
651
652         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
653         of wrong atr list.
654
655         * gtk/gtkplug.[ch]: Add an "embedded" signal.
656
657         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
658         signals.
659
660         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
661         functions gtk_plug_get_id(), gtk_socket_get_id(),
662         to avoid the user having to worry about realization,
663         and gdkx.h.
664
665         * tests/testsocket.c: Extend to try out the new signals
666         and gtk_plug/socket_get_id().
667
668         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
669         setting of underline attributes.
670
671         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
672         DestroyNotify events from SubstructureNotifyMask
673
674         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
675         Switch GDK_WINDOW_TYPE (window) as needed.
676
677         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
678         allow creation of toplevel windows as children of
679         foreign windows.
680
681         * gtk/gtkplug.c: Remove hacks involving changing private
682         fields of GdkWindow.
683
684         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
685         exactly the same signals and notification
686         be emitted for local embedding as for inter-process
687         embedding.
688
689 2001-07-04  James Henstridge  <james@daa.com.au>
690
691         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
692
693 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
694
695         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
696         XEMBED embedding add a _XEMBED_INFO property to the
697         client with version number and a "mapped" flags.
698         Use the mapped flag instead of the racy MapRequestEvent
699
700         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
701         code to reliably set things (when the child is a passive
702         embedder participating in the XEMBED protocol) intead
703         of just being a hack for embedding non-participating
704         programs. Fix various bugs and race conditions.
705         
706         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
707         work by simply making the GtkSocket the gtk parent
708         of the GtkPlug. Set a flag in this case and make
709         the GtkPlug work like a normal container by overriding
710         methods such as check_resize and "chaining past" GtkWindow
711         to GtkBin.
712
713         * gtk/gtkentry.c (gtk_entry_real_activate)
714           gtk/gtkmain.c (gtk_propagate_event): 
715         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
716         
717         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
718         gtk_widget_get_ancestor):
719         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
720         might not give the expected result and recommend
721         an alternative.
722
723         * tests/testsocket.c tests/testsocket_child.c
724         tests/testsocket_common.c tests/Makefile.am: Extended
725         to test different type of adding plugs to sockets
726         (local,active,passive), and to test mapping/unmapping
727         the plug.
728
729         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
730         mark the window as destroyed until after we
731         called _gdk_windowing_window_destroy().
732         (_gdk_windowing_window_destroy() may use GDK functions
733         on the window.)
734
735         * gdk/x11/gdkinput.c: Remove the check for finalization - 
736         devices can be finalized under some circumnstances.
737  
738         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
739         small problem with GDK_TYPE_DEVICE.
740  
741 2001-07-02  Havoc Pennington  <hp@pobox.com>
742
743         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
744         use constants not atoms.
745
746 2001-07-02  James Henstridge  <james@daa.com.au>
747
748         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
749         PANGO_TYPE_TAB_ARRAY.
750
751         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
752         for PANGO_TYPE_TAB_ARRAY.
753
754         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
755         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
756
757         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
758         the file.  Remove Pango types from defs -- they are now defined in
759         libpango.
760
761 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
762
763         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
764
765         * gtk/gtkobject.c (gtk_object_destroy): invoke
766         g_object_run_dispose().
767
768         * gtk/gtkwindow.c: 
769         * gtk/gtkwidget.c: 
770         * gtk/gtkobject.c:
771         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
772         method.
773
774 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
775
776         * gtk/gtktypeutils.c (gtk_type_class): Remove
777         change check for GTK_TYPE_OBJECT derivation to
778         G_TYPE_OBJECTS - it's Tim-approved to use this 
779         for arbitary objects.
780
781         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
782         prefix gtk_container_dequeue_resize_handler().
783
784         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
785         to the hierarachy_changed signal, since you otherwise
786         have to always keep that around.
787
788         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
789         for extra argument to hierarchy_changed.
790
791 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
792
793         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
794         for style to mean "revert to default style"
795
796         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
797           gtk_widget_restore_default_style): Make this functions
798         deprecated aliases for gtk_widget_set_style (widget, NULL).
799
800         * gtk/gtkwidget.[ch]: Remove:
801            gtk_widget_set_default_style ()
802            gtk_widget_push_style ()
803            gtk_widget_pop_style ()
804         These functions interact are overriden by RC files, and
805         thus virtually useless, and complicated.
806
807 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
808
809         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
810         most of the previous global variables in gtkrc.c. This is
811         in preparation for multi-head, since each screen can
812         have different GtkSettings and RC information.
813
814         * gtk/gtkrc.[ch]: 
815
816         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
817         GtkSettings parameter to GtkRcStyle::parse.
818
819         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
820         Add two new settings gtk-theme-name, gtk-key-theme-name,
821         for RC files that are loaded by name after reading
822         the default RC files.
823         
824         * gtk/gtkrc.c: Allow priorities for styles, as wll as
825         bindings.
826
827         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
828         and use it by default for RC files loaded via 
829         gtk-theme-name, gtk-key-theme-name.
830
831         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
832         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
833         tests/testgtkrc: Require pathnames to be absolute.
834
835         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
836         the source when parsing, since the operation of looking up a
837         pixmap from an RC file depends on the parsing context.
838
839         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
840         reset RC styles on all widgets when files are reparsed.
841
842         * tests/testgtk.c (create_rc_file) 
843           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
844         Simplify, now that gtk_rc_reparse_all() resets styles on
845         all widgets itself.
846
847         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
848         return value.
849
850         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
851         GtkSettings argument.
852
853         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
854         gtk_settings_get_global().
855
856         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
857         to get the appropriate GtkSettings for a widget. (For now,
858         just gets the default GtkSetttings.) 
859
860         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
861           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
862         changes.
863
864         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
865         getting a style for a path without actually having a widget.
866         (Allows using a style for a subpart of a widget, for
867         example.)
868
869         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
870         the RC files to be reloaded for just one GtkSettings
871         (not sure how useful this really is.)
872
873         * gtk/gtkrc.h: Deprecate
874         gtk_rc_add_widget_name/widget_class/class_style
875
876 2001-06-30  Alex Larsson  <alexl@redhat.com>
877
878         * gdk/linux-fb/gdkinput-none.c:
879         * gdk/linux-fb/gdkinput.c:
880         * gdk/linux-fb/gdkinputprivate.h:
881         Convert GdkDevice to a GObject.
882
883         * linux-fb/gdkprivate-fb.h:
884         * linux-fb/gdkvisual-fb.c:
885         Convert GdkVisual to a GObject.
886
887 2001-06-29  Alex Larsson  <alexl@redhat.com>
888
889         * gdk/gdkvisual.h:
890         * gdk/gdkcolor.c:
891         * gdk/x11/gdkx.h:
892         * gdk/x11/gdkvisual-x11.c:
893         Convert GdkVisual to a GObject.
894
895         * gdk/gdkinput.h:
896         * gdk/gdkevents.c:
897         * gdk/x11/gdkinputprivate.h:
898         * gdk/x11/gdkinput-gxi.c:
899         * gdk/x11/gdkinput-none.c:
900         * gdk/x11/gdkinput-x11.c:
901         * gdk/x11/gdkinput-xfree.c:
902         * gdk/x11/gdkinput.c:
903         Convert GdkDevice to a GObject.
904
905 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
906
907         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
908         to just plain new, fixing the number of columns, and column types
909         at creation time.
910
911         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
912
913         * gtk/gtkcellrenderertext.c
914         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
915         height to a specific font.
916
917         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
918
919         * tests/*c: change to work with new store models.
920
921 2001-06-29  Havoc Pennington  <hp@redhat.com>
922
923        * Throughout: fixes to compile with G_DISABLE_COMPAT
924         (s/g_signal_connectc/g_signal_connect/,
925         s/g_signal_newc/g_signal_new/,
926         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
927
928 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
929
930         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
931         add path argument to selection callbacks.
932
933 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
934
935         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
936         walk through a model in a depth first manner, with the option to
937         break out.
938
939 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
940
941         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
942         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
943         column and follow it when draged, rather than a location in the
944         view. "expander_column" property and drawing functions changed
945         accordingly.  Fixes bug #55942.
946
947         (gtk_tree_view_{set,get}_expander_column): Now works with a
948         GtkTreeViewColumn* instead of int.
949
950 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
951
952         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
953
954 2001-06-28  Havoc Pennington  <hp@pobox.com>
955
956         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
957         image data to the screen, using a server grab to avoid race
958         conditions.
959
960         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
961         check for NULL return from gtk_image_new_from_stock(), it never
962         returns NULL.
963         (gtk_item_factory_create_item): fix bug where we parsed the stock
964         ID as an inline pixbuf
965
966         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
967
968         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
969         support (should be using binding set here)
970
971         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
972         support (should be using binding set here)
973
974         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
975         support
976
977         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
978
979         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
980
981         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
982
983         * gtk/gtkimcontextsimple.c
984         (gtk_im_context_simple_filter_keypress): keypad
985
986         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
987
988         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
989
990         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
991
992         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
993         should be binding-setted)
994
995         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
996
997         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
998
999         * gtk/gtkcalendar.c: numeric keypad fixes
1000
1001         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
1002         support
1003
1004         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
1005         screwup
1006
1007         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
1008         clip the render area to the drawable's clip region in advance,
1009         so we don't get data from the server that we don't need.
1010
1011         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1012         check return value of gdk_pixbuf_get_from_drawable(), fall back 
1013         to bilevel alpha if we can't get the pixbuf to composite against.
1014
1015         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
1016
1017         * gdk/gdkimage.c (gdk_image_get_colormap): add
1018         gdk_image_set_colormap, gdk_image_get_colormap
1019
1020         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
1021         take a region of the image, instead of converting the entire
1022         image.
1023
1024         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
1025         keybinding signal. Add default bindings for it. Add default
1026         handler for show_help that shows the tooltip for the widget.
1027
1028         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
1029         "close" keybinding signal, remove key press handler.
1030
1031         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
1032         it's not our usual practice to leave a deprecated function around
1033         with a runtime warning, plus we don't want it to appear in docs,
1034         plus if we make them yellow no one will want to change them
1035         anyhow.
1036
1037 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
1038
1039         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
1040         GTK_WIDGET_REALIZE() for resize queueing.
1041
1042         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
1043         GTK_WIDGET_REALIZE() for post event delivery destruction upon
1044         GDK_DESTROY.
1045         
1046         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
1047         sompensate for former (pre-2.0) connect_after() facility.
1048         (gtk_widget_send_expose): 
1049         (gtk_widget_event): assert the widget is realized, since event delivery
1050         to non-realized widgets is essentially a bug. event handlers should
1051         be able to unconditionally rely on widget->window (unless they
1052         emit events on their own which can trigger widget destruction).
1053         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
1054         logic. event delivery happens as follows:
1055         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
1056         b) if !was_handled in (a) and the widget is still realized, emit event-
1057            specific signal (RUN_LAST handler). returns was_handled.
1058         c) emission of GtkWidget::event-after for notification if the widget is
1059            still realized (regardless of was_handled from previous stages, no
1060            class handler). no return value.
1061         d) was_handled gets passed on to caller, to determine further
1062            propagation. if the widget got unrealized meanwhile, was_handled
1063            is returned as TRUE.
1064
1065         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
1066         gdk_event_get_coords().
1067
1068 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
1069
1070         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
1071         age 0, binary age 0. depend on glib 1.3.7.
1072
1073         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
1074
1075         * gtk/gtkmenubar.c: same here.
1076         
1077         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
1078
1079         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
1080
1081         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
1082         
1083         * gtk/gtkmenubar.c (add_to_window): likewise.
1084         
1085         * gtk/gtktextbtree.c: and here...
1086         
1087         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
1088         
1089         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
1090         
1091         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
1092         
1093         * gtk/gtktreeviewcolumn.c:
1094         (_gtk_tree_view_column_set_tree_view): yet again.
1095
1096         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
1097         signal connections without g_signal_connect_data().
1098         
1099         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
1100         demo of the matter.
1101         
1102         * demos/testpixbuf.c (main): running out of equality phrases for the
1103         ChangeLog, but had to adapt connections here as well.
1104         
1105         * demos/testanimation.c (progressive_timeout): and for the fun of it,
1106         tackled this the same way.
1107         
1108         * tests/testtext.c (create_view): ok, it's becoming a pain at this
1109         point, but had enough enery for one more fix.
1110
1111         * tests/testtreecolumns.c (main): stand up man, do your work!
1112
1113         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
1114         fix, either that's been all of it or CVS gtk is broken yet again.
1115         
1116 2001-06-29  James Henstridge  <james@daa.com.au>
1117
1118         The following changes correspond to bug #56812
1119
1120         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
1121         code for GdkDevice.
1122
1123         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
1124         GdkCursor.
1125
1126 2001-06-19  Havoc Pennington  <hp@pobox.com>
1127
1128         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
1129         for mapping a window without fooling with stacking order, but
1130         updating the "withdrawn" flag
1131
1132         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
1133         filtering as soon as possible, moving move resize and wmspec_check
1134         handling after the event filter.  Make default filter apply to all
1135         events, not just those with no GdkWindow wrapped around the X
1136         window. Fix a FIXME about how the window could be a pixmap using 
1137         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
1138
1139         Also, be robust against events not on a known GdkWindow.
1140
1141         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
1142         gdk_x11_ungrab_server): export reference-counted server grabs, so
1143         other people can grab server over a GDK function that also does
1144         so.
1145
1146 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
1147
1148         * gtk/gtktreeviewcolumn.c
1149         (gtk_tree_view_column_pack_start_cell_renderer): New function to
1150         reflect that you can (hypothetically) pack cell renderers into a
1151         column.
1152         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
1153         (gtk_tree_view_column_cell_is_visible): Move more functionality to
1154         the column.
1155         (gtk_tree_view_column_cell_can_focus): Move more functionality to
1156         the column.
1157
1158         * gtk/gtktreeview.c: Move to use new column-packing code.
1159         (gtk_tree_view_real_expand_row): remove totally braindead code.
1160         (gtk_tree_view_real_collapse_row): ditto.
1161
1162 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1163
1164         * gtk/gtktreeviewcolumn.c: Fix a typo.
1165         
1166 2001-06-26  Joel Becker  <jlbec@evilplan.org>
1167
1168         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
1169           at the end of the file
1170
1171 2001-06-26  Havoc Pennington  <hp@redhat.com>
1172
1173         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
1174
1175 2001-06-26  Havoc Pennington  <hp@redhat.com>
1176
1177         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
1178         property
1179
1180 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
1181
1182         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
1183         stupid missing statement
1184
1185         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
1186         private function for ATK.  It notifies you of how many _visible_
1187         children are deleted when a node is deleted.  Should be used by
1188         atk only.
1189
1190 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
1191
1192         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
1193         Use new pango_context_get_metrics() to fix problems
1194         with font lists in descriptions. (#56184, reported by
1195         Jonas Borgström)
1196
1197 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
1198
1199         * gtk/gtkiconfactory.c:
1200         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
1201         item factory so inlined pixbufs actually work.
1202
1203 2001-06-25  Havoc Pennington  <hp@redhat.com>
1204
1205         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
1206         s/RESIZEABLE/RESIZABLE/
1207
1208         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
1209
1210 2001-06-25  Alexander Larsson  <alexl@redhat.com>
1211
1212         * configure.in:
1213         Added --enable-fbmanager. This is some experimental code
1214         that lets several GtkFB apps coordinate their access to the
1215         framebuffer.
1216         
1217         * acconfig.h:
1218         Added ENABLE_FB_MANAGER.
1219
1220         * gdk/linux-fb/Makefile.am:
1221         Added gdkfbmanager and gdkfbswitch.
1222
1223         * gdk/linux-fb/gdkkeyboard-fb.c:
1224         * gdk/linux-fb/gdkmouse-fb.c:
1225         * gdk/linux-fb/gdkprivate-fb.h:
1226         Split device init and open so that
1227         they can be opened and closed while switched
1228         away.
1229
1230         * gdk/linux-fb/gdkmain-fb.c:
1231         Add the basic manager communication.
1232
1233         * gdk/linux-fb/gdkrender-fb.c:
1234         Don't update to the shadow fb if we're
1235         blocked by the fb manager.
1236
1237 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1238
1239         * docs/Changes-2.0.txt: Add note about child property
1240         changes.
1241
1242 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
1243
1244         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
1245         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
1246
1247         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
1248         with un'reffing wrong list reported by Jeff Franks.
1249
1250         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
1251
1252         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
1253         for the default icon. Remove inline XPM.
1254
1255         * gtk/gtkstock.h gtk/gtkiconfactory.c:
1256         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
1257         is used for GTK_STOCK_DND, but it is a bit too small.)
1258
1259         * gtk/stock-icons/stock_dnd_multiple.png
1260         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
1261
1262         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
1263         TRUE when starting a drag. In other cases, we are
1264         just observing. (#52995)
1265
1266         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
1267         function to set the icon for a drag from a GdkPixbuf
1268         or stock ID.
1269
1270         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
1271         Likewise, for drag sources.
1272
1273         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
1274         (Now should be done using the stock system.)
1275
1276 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
1277
1278         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
1279         Removed - didn't work and not particularly useful anyways
1280         if it did. 
1281
1282 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
1283
1284         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
1285         introduced last night that was making things decidedly not work.
1286
1287         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
1288         so that we have getter/setter pairing everywhere it makes
1289         sense. (#55767)
1290
1291         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
1292         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
1293         deprecated compat macro. (#55516)
1294
1295         * gtk/gtklabel.[ch]: Add functions
1296         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
1297         gtk_label_set_label(), which mirror the property API for GtkLabel.
1298         Make gtk_label_get_attributes() only reflect the attributes
1299         set by gtk_label_set_attributes.
1300
1301         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
1302         from gtk_notebook_set_page().
1303
1304 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
1305
1306         * configure.in: Fix tests for XShm.h.
1307
1308         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
1309         gdk_image_new() by use of goto, properly use g_object_unref().
1310
1311 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
1312
1313         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
1314         calls, as GdkImage is an object. these should be g_obejct_unref()
1315         instead but that won't work because of the g_error() statement
1316         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
1317         to spot these places.
1318
1319 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
1320
1321         * modules/input/gtkimcontextxim.c: Fixup some problems with 
1322         text length handling in error cases.
1323
1324         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
1325         a bit to make test actually warn on attempt to allocation
1326         a negative size. (#56101, Matthias Clasen)
1327
1328 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
1329
1330         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1331         noticed by Brian Cameron.
1332         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
1333         Cameron.
1334
1335 2001-06-22  Hans Breuer  <hans@breuer.org>
1336
1337         * gdk/gdk.def : updated externals
1338
1339         * gdk/win32/gdkdrawable-win32.c : corrected some casts
1340         in GDK_NOTEs
1341
1342         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
1343         to translate coordinates to the internal > 16 bit system
1344         Try to handle WM_WINDOWPOSCHANGED to get better performance for
1345         when moving/resizing
1346
1347         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
1348         and gdk_keymap_get_direction (). The latter is untested for
1349         the RTL case
1350
1351         * gtk/gtk.def : updated externals
1352
1353         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
1354         from pango_language_from_string (), not an already freed pointer
1355
1356         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
1357         binary (-kb) to be useable on windoze
1358  
1359 2001-06-21  Alexander Larsson  <alexl@redhat.com>
1360
1361         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
1362         Update to new PangoLanguage changes.
1363         
1364         * gtk/gtkwindow-decorate.c:
1365         * gtk/gtkwindow.[ch]:
1366         Added setting argument to gtk_window_set_has_frame ()
1367         
1368 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
1369
1370         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
1371         the case without XKB properly.
1372
1373         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
1374         unused gtk_rc_auto_parse variable.
1375
1376         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
1377         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
1378         longer needed with GdkPixbuf.
1379
1380         * gtk/gtkrc.c (_gtk_rc_init): Make private.
1381
1382 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
1383
1384         * gtk/gtkentry.h: Mark deprecated functions with
1385         GTK_DISABLE_DEPRECATED.
1386
1387 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1388
1389         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
1390
1391         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
1392
1393         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
1394           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
1395           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
1396           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
1397           to recent changes in Pango.
1398
1399         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
1400           to test whether the basic engine honors them.
1401
1402 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
1403
1404         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
1405         gtk_container_child_get_property().
1406
1407 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
1408
1409         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
1410         (gtk_tree_view_move_cursor_page_up_down): implement.
1411
1412 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
1413
1414         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
1415         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
1416         don't use automatic fixed size buffer for printf-ing floats, doubles
1417         can expand to really _huge_ strings, use g_strdup_printf() instead.
1418
1419 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
1420
1421         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
1422         construct property in 1.2 and still needs to be.
1423
1424         * gtk/gtkwidget.c: "composite_child" is not a settable property.
1425
1426 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
1427
1428         * gtk/gtkliststore.c (gtk_list_store_clear): 
1429         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
1430         clear a model.
1431
1432 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1433
1434         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
1435
1436         * gtk/Makefile.am:
1437         * gtk/gtk.h: disabled GtkPacker compilation.
1438
1439         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
1440
1441         * gtk/gtknotebook.c:
1442         * gtk/gtktable.c:
1443         * gtk/gtkbox.c: ported this over to child properties.
1444
1445         * gtk/gtksettings.c: fetch class properties via
1446         g_object_class_list_properties().
1447
1448         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
1449         child arg interface. use gobjectnotifyqueue.c for child property
1450         notification.
1451
1452         * gtk/gtkwidget.[hc]: provide necessary means for container child
1453         properties, i.e. ::child_notify signal,
1454         gtk_widget_freeze_child_notify(),
1455         gtk_widget_child_notify(),
1456         gtk_widget_thaw_child_notify().
1457
1458         * tests/testgtk.c: removed inferior property handling code, for
1459         property editing, a generic module should be used, and GLE
1460         coincidentally fullfills that purpose.
1461
1462         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
1463         needs to be adapted to g_object_class_list_properties() before this
1464         builds again.
1465
1466 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
1467
1468         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
1469         test if a node is expanded.
1470
1471 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
1472
1473         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1474         where collapsing a selected row would result in the cursor/anchor
1475         getting screwed up.
1476
1477 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1478
1479         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
1480         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
1481         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
1482         Now I can really reorder/sort all Store widgets.  treesorttest
1483         seems to just work now.
1484         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
1485         testtreesort worked through a big coincidence all this time.
1486         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
1487         code.
1488         * tests/testtreecolumns.c: Big 'ol warning at the top letting
1489         people know that this code should never ever ever be copied.
1490
1491 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
1492
1493         * gtk/gtkwindow.h: Fixed a small typo, it should be
1494         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
1495         on line 134.
1496
1497 2001-06-14  Havoc Pennington  <hp@redhat.com>
1498
1499         Docs fixups, and:
1500         
1501         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
1502         GTK_DISABLE_DEPRECATED
1503
1504 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
1505
1506         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
1507         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
1508         finish it off tonight, though it basically works now when it's a
1509         list.  Also, I have a sinking feeling neither GtkTreeStore or
1510         GtkListStore actually resort when adding a new item.  I'll look
1511         into it.
1512
1513 2001-06-14  Havoc Pennington  <hp@redhat.com>
1514
1515         * demos/gtk-demo/main.c (load_file): fix bug identified by
1516         warnings I just added to gtktextbuffer
1517
1518 2001-06-14  Havoc Pennington  <hp@redhat.com>
1519
1520         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1521
1522         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1523
1524         * gtk/gtktextbtree.c: don't leak node data all over the place.
1525
1526         * demos/gtk-demo/main.c (main): create fontify tags for the right
1527         buffer
1528
1529         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1530         to mention tags in the same table can't have the same name,
1531         suggested by Skip Montanaro
1532
1533 2001-06-11  Havoc Pennington  <hp@redhat.com>
1534
1535         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1536         for trying to add two tags with same name to the tag table
1537
1538         * demos/gtk-demo/main.c (main): fix colors ;-)
1539
1540 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1541
1542         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1543         that allows grouping together multiple windows so that grabs
1544         within that set of windows only affect those windows.
1545
1546         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1547         signal for notification when a widget becomes shadowed
1548         by a grab or is no longer shadowed by a grab.
1549
1550         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1551           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1552         insenstive widgets to maintain a grab.
1553
1554 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1555
1556         * docs/README.linux-fb:
1557         Add some example config files that can be used with the URW fonts.
1558         
1559         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1560         Set up the color ramps for DirectColor mode.
1561
1562 2001-06-11  Havoc Pennington  <hp@redhat.com>
1563
1564         * Release 1.3.6
1565          
1566 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1567
1568         * gdk/linux-fb/gdkwindow-fb.c:
1569         Unify shaped window code and make it repaint the area that used
1570         to be part of the shape, but isn't anymore.
1571
1572 2001-06-11  Havoc Pennington  <hp@redhat.com>
1573
1574         * NEWS: Updates
1575
1576         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1577
1578         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1579         
1580 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1581
1582         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1583         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1584         passes zero instead, so do we.
1585         
1586 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1587
1588         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1589         Deep copy dash_list too.
1590         (_gdk_fb_gc_new): Set default cap_style before
1591         setting values.
1592
1593 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1594
1595         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1596         gdk_keymap_get_direction): New functions.
1597
1598 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1599
1600         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1601         gtk_tree_model_get_flags by adding a second flag for atk.
1602
1603         * gtk/gtktreemodel.c: make cursor behavior interact better with
1604         mouse presses.
1605
1606 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1607
1608         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1609         expand_row/collapse_row to be 2 signals each -- test_expand_row
1610         and row_expanded as well as test_collapse_row and row_collapsed.
1611
1612 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1613
1614         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1615         signal name to be changed instead of selection_changed.
1616
1617 2001-06-08  Havoc Pennington  <hp@redhat.com>
1618
1619         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1620         "scroll_offset" property for notification when the layout offsets
1621         may have changed
1622         (gtk_entry_adjust_scroll): add notify for scroll_offset
1623         (gtk_entry_layout_index_to_text_index): function to compensate for
1624         preedit string when doing coordinate stuff on the entry's layout
1625         (gtk_entry_text_index_to_layout_index): inverse function
1626         (gtk_entry_get_layout_offsets): hook to get current position of
1627         the layout      
1628         (gtk_entry_get_layout): hook to get the layout itself.
1629
1630         * gtk/gtklabel.c (gtk_label_get_layout): new function
1631
1632 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1633
1634         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1635         keybinding.
1636         (gtk_tree_view_focus): Fix merge conflict.
1637
1638 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1639
1640         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1641         clean up cursor handling.
1642
1643 2001-06-08  Havoc Pennington  <hp@redhat.com>
1644
1645         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1646         function
1647
1648         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1649         this function
1650
1651 2001-06-08  Alex Larsson  <alexl@redhat.com>
1652
1653         * gtk/gtkcompat.h.in:
1654         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1655         Fixes bug #52892
1656
1657 2001-06-08  Havoc Pennington  <hp@redhat.com>
1658         
1659         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1660         parent still
1661
1662 2001-06-08  Havoc Pennington  <hp@redhat.com>
1663
1664         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1665         don't call g_list funcs on GSList
1666
1667         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1668         gtk_container_focus(), since some widgets have focusable locations
1669         which are not other widgets. These widgets should not have to be 
1670         containers just to manage the focus. For example, GtkHSV is
1671         currently a container for no good reason. Also, this cleans
1672         up the "if (is_container && is_sensitive && is_drawable)
1673         container_focus ()" mess in widget implementations.
1674
1675         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1676         function, and have it just call gtk_widget_child_focus().
1677
1678         * gtk/gtkhsv.c: derive from widget not container
1679         
1680         Throughout: fix to reflect GtkContainer::focus change
1681         
1682 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1683
1684         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1685         range.  Fix bug #55921
1686
1687         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1688         (#55920).
1689
1690 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1691
1692         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1693         and gdk_keymap_get_current_direction().
1694
1695         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1696           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1697         the current locked group, use it to set the keymap
1698         direction.
1699
1700         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1701         to determine whether we draw a split cursor or use
1702         a jumping cursor based on the current direction.
1703
1704         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1705         Obey the split cursor setting. 
1706
1707 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1708
1709         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1710         when toggling on, not when toggling off... (#55906)
1711
1712 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1713
1714         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1715         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1716         in docs. (#55812, Vitaly Tishkov)
1717
1718 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1719
1720         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1721         selection_changed to changed in signal connection to GtkTreeSelection,
1722         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1723
1724 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1725
1726         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1727         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1728         the GtkTreeSelection::changed signal.
1729
1730         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1731         object.
1732
1733         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1734         object.
1735
1736 2001-06-07  Havoc Pennington  <hp@redhat.com>
1737
1738         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1739
1740 2001-06-07  Havoc Pennington  <hp@redhat.com>
1741         
1742         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1743         (not tested yet because with absolute path to srcdir I can't build
1744         atk, but it was broken anyway so this may help) 
1745
1746 2001-06-07  Havoc Pennington  <hp@redhat.com>
1747
1748         * configure.in: output m4macros/Makefile
1749         
1750 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1751
1752         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1753         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1754
1755 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1756
1757         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1758         expansion/collapsing so it only happens in one place.
1759         (gtk_tree_view_real_expand_row): ditto.
1760
1761 2001-06-07  Havoc Pennington  <hp@redhat.com>
1762
1763         * tests/Makefile.am: add missing -I flag
1764
1765         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1766
1767         * configure.in: use pkg-config to see if GModule is
1768         supported; fix to properly turn on included loaders 
1769         when GModule isn't supported; don't use AC_CHECK_LIB 
1770         when libs are not installed yet
1771
1772         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1773
1774         * Makefile.am (SUBDIRS): add m4macros subdir
1775
1776         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1777         dependencies also.
1778
1779 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1780
1781         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1782         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1783
1784 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1785
1786         * gtk/gtktreeview.c
1787         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1788         bindings to expand and collapse rows.
1789         (gtk_tree_view_real_select_cursor_parent): New key binding.
1790         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1791
1792         * gtk/gtkmarshal.list: new
1793         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1794
1795 2001-06-06  Havoc Pennington  <hp@redhat.com>
1796
1797         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1798
1799         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1800         Down to move visually rather than logically, since it confuses 
1801         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1802
1803 2001-06-06  Alex Larsson  <alexl@redhat.com>
1804
1805         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1806         Fix up error messages.
1807
1808 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1809
1810         * gtk/gtktooltips.h: Include gtkwidget.h 
1811         (#55798, Karl Nelson)
1812
1813         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1814         a valid latin-1 character. (Marc Lehmann, #35467)
1815
1816         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1817         (Marc Lehmann, #35467)
1818         
1819 2001-06-05  Alex Larsson  <alexl@redhat.com>
1820
1821         * demos/gtk-demo/appwindow.c (do_appwindow):
1822         Don't swap the order of the args to gtk_widget_destroyed.
1823
1824         * tests/testgtk.c (destroy_properties):
1825         Don't crash when the properties window is destroyed.
1826
1827         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1828         Use with_mnemonics to handle the case of stock items with
1829         underscores in them.
1830
1831 2001-06-05  Havoc Pennington  <hp@redhat.com>
1832
1833         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1834         gtk_text_iter_reorder
1835
1836 2001-06-05  Havoc Pennington  <hp@redhat.com>
1837
1838         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1839
1840 2001-06-05  Havoc Pennington  <hp@redhat.com>
1841
1842         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1843         to the range that was set
1844
1845         * gtk/gtkrange.c: add value_changed signal, primarily 
1846         intended for use with GtkScale
1847         (gtk_range_set_increments): new function
1848         (gtk_range_set_range): new function with weird name
1849         (gtk_range_set_value): new function
1850         (gtk_range_get_value): new function
1851
1852         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1853         from gtk_spin_button_get_value_as_float(). Compat #define
1854         added for get_value_as_float.
1855
1856         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1857
1858         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1859
1860 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1861
1862         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1863
1864 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1865
1866         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1867
1868         * tests/testgtk.c (create_tooltips): Remove usage of
1869         gtk_widget_set().
1870
1871 2001-06-05  Havoc Pennington  <hp@redhat.com>
1872
1873         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1874
1875         Applying patch from Jeff Franks, with function docs added.
1876         
1877         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1878         remove call to set_mnemonic_widget, change docs a bit.  
1879
1880         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1881         new function
1882
1883         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1884         new function
1885
1886         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1887
1888         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1889         function
1890         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1891
1892         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1893         new function
1894
1895         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1896         function        
1897
1898         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1899         auto-selection of mnemonic widget.
1900
1901 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1902
1903         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1904         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1905         (gtk_tree_view_column_set_min_width): ditto.
1906
1907 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1908
1909         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1910         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1911
1912 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1913
1914         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1915         gtk_clist_thaw().
1916
1917 2001-06-04  Havoc Pennington  <hp@pobox.com>
1918
1919         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1920         releases for buttons 6, 7
1921
1922 2001-06-04  Havoc Pennington  <hp@redhat.com>
1923
1924         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1925         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1926         #55562
1927
1928 2001-06-04  Havoc Pennington  <hp@redhat.com>
1929
1930         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1931         where text_view->layout == NULL by assuming its size is 0, 
1932         i.e. same as if we haven't done any reflow. Reported by 
1933         Hidetoshi Tajima #55448 
1934
1935 2001-06-04  Havoc Pennington  <hp@redhat.com>
1936
1937         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1938         and 7 for scroll left/right, from Thomas Broyer
1939
1940 2001-05-10  Havoc Pennington  <hp@redhat.com>
1941
1942         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1943         we need to parse the xsetting as if it were an RC file string.
1944
1945         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1946         value of palette from settings, not from static variable
1947
1948         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1949         xsettings translation table
1950
1951         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1952         hardcoding the toolbar style conflicts with new customizable 
1953         toolbar style philosophy
1954         (gtk_toolbar_class_init): add settings for default toolbar style;
1955         these are used unless the app specifically forces a toolbar style
1956
1957         * gtk/gtksettings.c (settings_install_property_parser): only
1958         return at the start if we warn and parser == NULL
1959
1960         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1961         palette changed handler so we don't notify dead color selections
1962
1963         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1964         xthickness/ythickness of 0 or 1 properly 
1965         (gtk_default_draw_resize_grip): clear the background behind the
1966         resize grips, and align to bottom right if we square the 
1967         area to be drawn.
1968
1969         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1970         statusbar label to 1, so it doesn't make toplevels resize oddly
1971         (gtk_statusbar_size_request): add grip size to request
1972         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1973         the grip size in the request
1974
1975         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1976         bug where showing all on a toplevel makes the toolbar 
1977         button text appear despite the toolbar mode
1978
1979         * gtk/gtkmenubar.c: add internal padding style property
1980
1981         * gtk/gtktoolbar.c: Add internal padding style property; add
1982         shadow type style property
1983
1984         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1985         state; and put Container::border_width outside the frame
1986
1987         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1988         interior focus mode, we just use blinking cursor
1989
1990 2001-06-04  Havoc Pennington  <hp@redhat.com>
1991
1992         * configure.in: Make gdk-pixbuf have same version number as GTK
1993
1994 2001-06-04  Havoc Pennington  <hp@redhat.com>
1995
1996         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
1997         digits greater than 6. If there actually are limits (which there
1998         likely aren't), should clamp to them not warn.
1999         (gtk_spin_button_new_with_range): don't take log of 0
2000         (gtk_spin_button_size_request): use digits to compute size
2001         request, rather than step increment.
2002
2003         * tests/testgtk.c (create_spins): test larger values of digits
2004         
2005         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
2006         font on map not expose, so we don't get weirdness during scrolling
2007
2008 2001-06-04  Havoc Pennington  <hp@redhat.com>
2009
2010         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
2011         Sam Solon, bug #54577, update value even if not drawable.
2012
2013 2001-06-04  Havoc Pennington  <hp@redhat.com>
2014
2015         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
2016         SCROLL_LEFT, reported by Thomas Broyer.
2017
2018 2001-06-04  Havoc Pennington  <hp@redhat.com>
2019
2020         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
2021         Process updates immediately, to prevent funny lag effect
2022         when scrolling, at some mild potential efficiency cost.
2023
2024 2001-06-04  Havoc Pennington  <hp@redhat.com>
2025
2026         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
2027         slider on the click.
2028
2029 2001-06-03  Havoc Pennington  <hp@pobox.com>
2030
2031         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
2032         hscale/vscale details, so we can use it for scrollbar as well.
2033
2034         * tests/testgtk.c (reformat_value): honor digits from GtkScale
2035
2036         * gtk/gtkenums.h (GtkTroughType): Remove this enum
2037         (GtkScrollType): add START and END from GtkTroughType
2038
2039         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
2040         its x/y arguments
2041
2042         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
2043         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
2044         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
2045         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
2046         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
2047
2048         Notable changes in the process:
2049          
2050         - stepper_size style property is the height for vertical 
2051           ranges, width for horizontal; the other dimension matches
2052           the trough size
2053         - add ability to do NeXT-style steppers (and several other styles
2054           that don't make any sense)
2055         - added min_slider_length, fixed_slider_length properties to
2056           GtkScrollbar
2057         - cleaned some private (or at least useless) functions out of
2058           gtkscale.h    
2059         - moved bindings to GtkScale from subclasses, even arrow keys,
2060           since blind users don't know scale orientation.
2061         - change move_slider action signal to use new GtkScrollType,
2062           remove GtkTroughType argument
2063         - digits rounds the values a range will input to the given 
2064           number of decimals, but will not try to force adjustment 
2065           values set by other controllers. That is, we no longer
2066           modify adjustment->value inside a value_changed handler.
2067         - added getters for GtkScale setters
2068         - middle-click begins a slider drag
2069         
2070 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
2071
2072         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
2073         getting the focus code to work.
2074         (gtk_tree_view_class_init): Add a bunch of keybindings.
2075
2076         * gtk/gtktreeviewcolumn.c
2077         (gtk_tree_view_column_set_cell_data_func):
2078         s/GtkCellDataFunc/GtkTreeCellDataFunc.
2079         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
2080         of "properties_changed" to help justify the death of the latter
2081         signal. (-:
2082
2083         * tests/testtreefocus.c (main): Let some columns be focussable to
2084         test focus better.
2085
2086 2001-06-01  Havoc Pennington  <hp@redhat.com>
2087
2088         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
2089         
2090         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
2091         overwrite in overwrite mode if we already deleted the selection
2092         and replaced it with new text.  
2093
2094         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
2095         selection to an empty range, clear the clipboard if we owned it.
2096         (gtk_label_set_selectable): give up selection if we become
2097         unselectable.
2098         (gtk_label_state_changed): override state changed to unselect text
2099         when insensitive
2100         (get_text_callback): add paranoia check that indexes aren't
2101         outside of label->text
2102         (gtk_label_select_region): make -1 for start_offset mean "end of
2103         label," for consistency with GtkEditable
2104
2105         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
2106         GTK_DIALOG_NO_SEPARATOR flag
2107
2108 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
2109
2110         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
2111         notifications on non-existant "enable_arrow_keys".
2112         (#53753, Skip Montanaro)
2113
2114 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
2117         GDK_TYPE_RECTANGLE.
2118
2119         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
2120         of allocation argument be GDK_TYPE_RECTANGLE.
2121
2122 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
2123
2124         * gtk/gtkoptionmenu.c: Account for the fact that the border
2125         width is _outside_ the window. (Fixes #54585, bug found
2126         by Bastien Nocera.)
2127
2128 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
2129
2130         * gtk/gtksettings.c (gtk_settings_get_property): Validate
2131         value from GDK settings against parameter spec.
2132
2133         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
2134         to temporary values and use g_value_transform(), since
2135         thinking that GValue was going to be easy or efficient
2136         to use was, of course, a mistake.
2137
2138         * gtk/gtksettings.c: Add cursor blink setting.
2139         
2140         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
2141
2142         * gtk/gtkentry.c: Add cursor blinking.
2143
2144         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
2145         cursor blink global settings.
2146
2147         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
2148         for :text_position in places where it is missing.
2149
2150 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
2151
2152         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
2153
2154 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
2155
2156         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
2157         not pkg-config. (#51032)
2158
2159         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
2160         (fixes #51952, James Henstridge)
2161         
2162 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
2163
2164         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
2165         Rename to the more correct gtk-go-up.
2166
2167         * gtk/stock-icons/stock_menu_sort_ascending.png:
2168         Added new file.
2169         
2170         * gtk/stock-icons/stock_menu_sort_descending.png:
2171         Changed to show descending instead of ascending.
2172
2173         * gtk/gtkiconfactory.c:
2174         Added menu size icon to sort ascending.
2175
2176         * gtk/stock-icons/Makefile.am:
2177         Added stock_menu_sort_ascending.png.
2178         
2179         * gtk/gtkseparatormenuitem.c:
2180         Use correct typenames.
2181
2182 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
2183
2184         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
2185         gulong as in GSignal.
2186
2187 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
2188
2189         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
2190         instances of GtkCellRenderer in code (all but dnd icon code).
2191         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
2192         there, and I can do multiple Cells per column.
2193
2194         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
2195
2196         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
2197         when model was unreffed prior to removing the row reference.
2198
2199 2001-05-25  Havoc Pennington  <hp@redhat.com>
2200
2201         * gtk/gtkiconfactory.c: fix so that default icons are created if 
2202         you call gtk_stock_list_ids()
2203
2204         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
2205         in list
2206
2207 2001-05-25  Havoc Pennington  <hp@redhat.com>
2208
2209         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
2210         set can render without falling back to missing image icon
2211
2212         * gtk/gtktextview.c (gtk_text_view_size_request): request full
2213         size of text, instead of random values
2214
2215         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
2216         size of tree view, instead of random values
2217
2218         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
2219         image in an appropriate size
2220
2221         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
2222         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
2223
2224         Throughout: fix GTK_STOCK_BUTTON_ instances
2225         
2226         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
2227         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
2228         Add a bunch of new stock items/icons
2229
2230         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
2231         new function, convenience for inserting columns with a data func
2232
2233         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
2234         (_gtk_icon_factory_list_ids): use list of all factories to
2235         generate a list of all known IDs
2236
2237         * gtk/gtkstock.c (gtk_stock_list_ids): replace
2238         gtk_stock_list_items() with a function that returns all IDs known
2239         including those for GtkIconFactory.
2240
2241 2001-05-25  Hans Breuer  <hans@breuer.org>
2242
2243         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
2244         work -> check boxes and radio buttons are drawn now, even on win9x.
2245         Improved line settings a bit, still no clue how to get really dotted
2246         lines on win9x, on NT it's PS_ALTERNATE.
2247
2248         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
2249         GDK_HINT_MIN_SIZE as well
2250
2251         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
2252
2253         * gtk/gtk.def : updated
2254
2255         * gtk/gtktreeprivate.h : change column_drop_func to be a function
2256         pointer not a function pointer pointer
2257
2258         * tests/testdnd.c : include <stdlib.h> for putenv prototype
2259
2260         * tests/testsocket.c : made it compile on win32 again
2261
2262         * tests/makefile.msc : one more test-app uses prop-editor.obj
2263
2264 2001-05-22  Havoc Pennington  <hp@pobox.com>
2265
2266         * gtk/gtkbin.c (gtk_bin_get_child): New function
2267
2268 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
2269
2270         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
2271         to ignore when doing compose processing.
2272
2273 2001-05-22  Joe Shaw  <joe@ximian.com>
2274
2275         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
2276         Simplify as suggested by Havoc. Just get the last iter and work
2277         backward to the tag instead of getting a line and working back from
2278         there. Fixes passing in an invalid offset to
2279         iter_init_from_byte_offset().
2280
2281 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
2282
2283         * gtk/gtktreeview*.h: 
2284         * gtk/gtkcell*.h:
2285         * gtk/gtk*store.h:
2286         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
2287         macros to all objects.
2288
2289 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
2290
2291         * gtk/gtkcellrenderertext.c
2292         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
2293         with very large (TM) amounts of text.  May be moved to
2294         GtkCellRenderer in the future, though I'm not sure it wants to be
2295         this accessible.
2296
2297         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
2298         More sanity brought to this class.  I like it.
2299
2300         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
2301         case.  Kids, don't try this at home.
2302
2303         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
2304         convenience function.
2305
2306         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
2307
2308 2001-05-21  Alexander Larsson  <alexl@redhat.com>
2309
2310         * gtk/gtkfontsel.c:
2311         Added properties. Based on patch by Lee Mallabone.
2312
2313         * gtk/gtkruler.c:
2314         * gtk/gtkhruler.c:
2315         * gtk/gtkvruler.c:
2316         * gtk/gtktext.c:
2317         * gtk/gtktextview.c:
2318         Converted GtkArg to GParam. Based on patches by John Margaglione.
2319
2320         * tests/Makefile.am:
2321         * tests/testtext.c:
2322         Add a property editor to testtext.
2323         
2324 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
2325
2326         * gtk/gtk{h,v,}paned.c: Only show the separator if 
2327
2328         * configure.in: Fixed reversed conditional causing all image
2329         libraries to be linked in.
2330
2331 2001-05-21  Joe Shaw  <joe@ximian.com>
2332
2333         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
2334         that top_y needs to be >= 0.
2335
2336 2001-05-11  Havoc Pennington  <hp@pobox.com>
2337         
2338         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
2339         losing connection to the X server.
2340
2341 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
2342
2343         * configure.in: Start checks for X from pangox/pangoxft
2344         CFLAGS to avoid duplicate libraries.
2345
2346         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
2347
2348         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
2349         to include gobject.
2350         
2351 2001-05-18  Alexander Larsson  <alexl@redhat.com>
2352
2353         * gtk/gtkspinbutton.c:
2354         Convert GtkArgs to GParams. Based on patch by John Margaglione.
2355         Also do size request reasonable for MAXDOUBLE. Previously it printed
2356         the limits to a buffer and overran it. Instead do it using log10() and
2357         limit the width to 10 digits.
2358         
2359         * gtk/gtkwidget.c (gtk_widget_get_property):
2360         Correctly handle setting the parent property to NULL.
2361
2362 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
2363
2364         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
2365         style attributes even if the widget isn't realized.
2366
2367         * demos/gtk-demo/main.c: Use a slightly smaller font.
2368
2369 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
2370
2371         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
2372         This is something that only a widget writer would ever want
2373         to change.
2374
2375         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
2376         gtk_signal_emit_by_name().
2377
2378         * gtk/gtkviewport.c: Fix some warnings.
2379
2380         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
2381         allowing the requisitions of multiple widgets to be grouped
2382         together.
2383
2384         * tests/testgtk.c: Add GtkSizeGroup test
2385
2386         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
2387
2388         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
2389         warnings.
2390
2391         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2392
2393 2001-04-28  Martin Baulig  <baulig@suse.de>
2394
2395         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
2396         to gtk_image_menu_item_set_icon() and made it work if there's already
2397         an image.
2398         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
2399         (gtk_image_menu_item_new_with_label): New function.
2400
2401 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
2402
2403         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
2404         highlighting code!!!!  The result is okay so long as you don't try
2405         to stress it.  It also highlights a bug in the TextView so it's in
2406         an unproportional font right now until it's fixed.
2407
2408         *demos/gtk-demo/*.c: Clean up code a bit to make it
2409         ugly-parser(TM) friendly. (-:
2410
2411 2001-05-17  Joe Shaw  <joe@ximian.com>
2412
2413         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
2414         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
2415         if it is only partially onscreen.
2416
2417 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
2418
2419         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
2420         not by characters.
2421
2422         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
2423         are not zero or one; that is, when graphemes of multiple characters
2424         are involved.
2425
2426         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
2427         FIXME.
2428
2429 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
2430         
2431         * gtk/gtkbbox.c:
2432         Add properties, based on patch by Lee Mallabone.
2433
2434         * gtk/gtknotebook.c:
2435         * gtk/gtktoolbar.c:
2436         Convert from GtkArg to GParam, based on patch by John Margaglione.
2437         
2438         * gtk/gtkhscale.c:
2439         * gtk/gtkvscale.c:
2440         * gtk/gtkhscrollbar.c:
2441         * gtk/gtkvscrollbar.c:
2442         * gtk/gtkrange.c:
2443         Move adjustment property to GtkRange.
2444
2445         * gtk/gtklabel.c:
2446         Setup mnemonics on property changes
2447
2448         * gtk/gtkwidget.c (gtk_widget_get_property):
2449         GdkExtensionMode is an enum, not a flag. Set it with
2450         g_value_set_enum ().
2451
2452         * tests/prop-editor.c:
2453         Better propery editor.
2454
2455         * tests/testgtk.c:
2456         Add new property test. Pass zero to the property editor to
2457         get properties from all derived types.
2458         
2459 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
2460
2461         * autogen.sh (have_automake): Require libtool-1.4,
2462         automake-1.4p1.
2463
2464         * acinclude.m4: Remove libtool macros.
2465
2466         * gdk-pixbuf/Makefile.am: Add dependencies to loade
2467         modules.
2468
2469         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
2470         for libgdk.
2471
2472         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
2473         libgdk.la for libgtk.
2474
2475         * modules/input/Makefile.am: Make modules have full
2476         dependencies.
2477
2478 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
2479
2480         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
2481         #54699 where paths weren't being checked for correctness.
2482
2483 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2484
2485         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
2486         in any order you wan, whether or not the column is added to the
2487         tree, or the tree is realized.  Yay!
2488
2489         * gtk/gtktreeviewcolumn.c
2490         (gtk_tree_view_column_setup_sort_column_id_callback): handle
2491         sorting columns a lot saner
2492
2493         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
2494         new function to actually set wether or not a column is
2495         reorderable.
2496
2497         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
2498         if we have 'em.
2499
2500         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
2501         Fix nasty bug where we were showing the button just before
2502         realizing it.  As a result, the parent window was
2503         tree_view->window instead of tree_view->priv->header_window.
2504
2505         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
2506         to let you easily reorder a list or tree.
2507
2508 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
2509
2510         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
2511         from args to properties.
2512
2513 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
2514
2515         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
2516         from args to properties. (#51957)
2517
2518         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2519         calls to after ->set_property call.
2520
2521 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2522
2523         * tests/prop-editor.c: Block against redundant changes.
2524
2525         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2526         properties.
2527
2528 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2529
2530         * gdk/gdkpixmap.h: Remove creative formatting.
2531
2532 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2533
2534         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2535         property API. (#51669)
2536
2537         * gtk/gtkscale.c: Patch from John Margaglione converting to
2538         property API. (#51891)
2539
2540         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2541         to property API. (#50985)
2542
2543 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2544
2545         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2546         buffering state across expose event, so we still call end_paint().
2547
2548 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2549
2550         * gtk/gtkhsv.c (paint_triangle):
2551         Expose the ring in the triangle at the correct place when
2552         exposing just a part of the triangle.
2553
2554         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2555         Return FALSE, or window focusing will not work.
2556
2557 2001-05-11  Havoc Pennington  <hp@pobox.com>
2558
2559         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2560         #54144
2561
2562         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2563         bug #54330
2564
2565 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2566
2567         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2568         propagate exposes to NULL child.
2569
2570         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2571         against not having one of the scrollbars.
2572
2573         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2574         we don't keep a mnemonic window if we have no mnemonic installed.
2575
2576 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2577
2578         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2579         it has the _important_ side effect of initializing a class.
2580
2581 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2582
2583         * gdk/linux-fb/gdkprivate-fb.h:
2584         Make sure you can compile out the implementation/wrapper assert
2585         macros.
2586
2587         * gdk/linux-fb/gdkdrawable-fb2.c:
2588         Check implementation/wrappers, initialize type for pixmap dummys.
2589
2590         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2591         Hide the cursor if reading from the screen.
2592
2593         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2594         Fix sign bug in tiling code.
2595
2596         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2597         Handle background pixmaps.
2598
2599 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2600
2601         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2602         function to let user control where columns are dragged.
2603
2604         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2605         Escape is pressed.
2606
2607 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2608
2609         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2610         "columns_changed" signal.
2611         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2612         motion code to draw arrows to the side if indicator is outside the
2613         widget.
2614         (gtk_tree_view_map_expanded_rows): Implement.
2615
2616 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2617
2618         * demos/testpixbuf-save.c: 
2619         * demos/testpixbuf-drawable.c:
2620         Include gdkfb.h on linux-fb.
2621
2622 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2623
2624         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2625         New function for getting toplevel window at position.
2626         (gdk_drag_find_window): Use get_toplevel_window () instead
2627         of gdk_window_get_pointer(). (gdk_drag_status): Use
2628         correct context for getting window.
2629
2630         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2631         g_strdup the atom name.
2632
2633         * gdk/linux-fb/gdkwindow-fb.c:
2634         Costmetic fix.
2635
2636         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2637         Add code for changing cursor on linux-fb backend (same as
2638         win32).
2639
2640 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2641
2642         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2643         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2644         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2645         report was not for the development branch of GTK+, but it applies
2646         anyways).
2647
2648 2001-05-04  Havoc Pennington  <hp@redhat.com>
2649
2650         * configure.in: fix some shell typos
2651
2652         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2653
2654         * gtk/gtkimage.c: handle animations
2655
2656         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2657         border_width * 2, not just border_width
2658
2659         * gtk/gtkscale.c: add "format_value" signal to allow people
2660         to override the way values are drawn.
2661         (gtk_scale_get_value_size): fix width/height mistake,
2662         and compute size from actual displayed text, not 
2663         from made-up text.
2664
2665         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2666         signal registration
2667
2668         * tests/testtext.c: Add "Remove all tags" menu item for testing
2669
2670         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2671
2672         * demos/gtk-demo/main.c (main): add hack so we can find modules
2673         without installing gtk
2674
2675         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2676
2677         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2678         factor)
2679         (gtk_cell_renderer_text_set_property): remove some bogus
2680         g_object_notify
2681
2682         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2683         factor
2684
2685         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2686         to layout
2687
2688         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2689         gtk_text_iter_is_first
2690
2691 2001-01-06  Hans Breuer  <hans@breuer.org>
2692
2693         * gdk/gdk.def : updated exports
2694
2695         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2696         gdk won't compile anymore
2697  
2698         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2699         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2700         Improved gdk_flush () to not only do pending drawing operations
2701         but also process all currently pending events. This should make
2702         the behaviour more similar to the X11 version.  
2703
2704         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2705         option needs to be set even if there is no GDK_GC_BACKGROUND.
2706         (gdk_win32_hdc_get) : use predraw_set_background () independent
2707         of value_mask. This allows to draw dashed lines leaving the original
2708         background intact.
2709
2710         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2711         after processing, because we can't reuse it as the X11 version does.
2712
2713         * gtk/gtk.def : updated exports
2714
2715         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2716         would like to get rid of this file again, and use straight
2717         makefile.msc again, as the other Gtk+ subdirs do)
2718
2719         * test/makefile.msc (new file) : build the test apps here
2720
2721 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2722
2723         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2724         strike-through setting
2725         (gdk_draw_layout_line_with_colors): Render strike-through
2726
2727 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2728
2729         * Release 1.3.5
2730
2731         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2732
2733         * NEWS: Updated
2734
2735         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2736         Makefile breakage.
2737
2738 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2739
2740         * demos/gtk-demo/images.c (progressive_timeout): Fix
2741         typo in filename.
2742
2743         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2744         out FIXME warning; just too annoying.
2745
2746 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2747
2748         * gdk/linux-fb/gdkcolor-fb.c:
2749         Better error messages.
2750
2751         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2752         Initialize abs_x and abs_y.
2753         
2754         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2755         Correct handling of stipple offset.
2756
2757         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2758         Treat directcolor framebuffers as truecolor.
2759         
2760 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2761
2762         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2763         dependency on Atk for accessibility support.
2764
2765         * configure.in **/Makefile.am: Major reworking of substituted
2766         variables for CFLAGS/LIBS to make a lot more sane and 
2767         keep the the compile/link lines a bit shorter.
2768
2769         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2770
2771 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2772
2773         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2774         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2775         use _gtk_boolean_handled_accumulator.
2776
2777 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2778
2779         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2780         to fix things so clicking inside selection leaves cursor
2781         at point where clicked. (#50324)
2782
2783         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2784         sane value for default double click time.
2785
2786         * tests/testtext.c (test_init): Really path to input modules.
2787
2788 2001-05-03  Sven Neumann  <sven@convergence.de>
2789
2790         * demos/testpixbuf-save.c: include target-specific headers as
2791         done in testpixbuf-drawable.c
2792
2793 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2794
2795         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2796         new_text_length appropriately when we run into the 
2797         size limit for the entry. (#53445, reported by Jeff Franks)
2798
2799         * tests/testgtk.c (create_entry): Remove most of the
2800         property toggle buttons. Replace with a "Props" button
2801         that brings up a property editor.
2802
2803         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2804         Split the property editor code out for reuse, improve.
2805
2806 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2807
2808         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2809         trap errors around calls to XSetInputFocus since we have
2810         no way of knowing reliably whether we are viewable or
2811         not. (#53947)
2812
2813 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2814
2815         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2816         fix bug in dropping columns.  Moving columns now basically works
2817         modula some fine tuning.
2818
2819 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2820
2821         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2822         autoscroll support.  It mostly works, but could use some fine
2823         tuning.
2824         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2825         Actually move the column.
2826
2827 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2828
2829         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2830           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2831           New default theme! A slighly improved version of the 2.0 Raleigh
2832           theme, with Windows-esque focus/drawing default. 
2833           (GtkWidget::interior_focus defaults to TRUE.)
2834
2835         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2836
2837 2001-04-30  Havoc Pennington  <hp@pobox.com>
2838
2839         * tests/testtext.c (line_numbers_expose): fix to work with
2840         gtk_paint_layout change
2841
2842 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2843
2844         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2845           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2846           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2847           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2848
2849         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2850           with GtkWidget::interior_focus = TRUE better.
2851
2852         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2853         ::default_outside_border for more flexibility.
2854
2855         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2856         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2857         change that had to be made with g_object_get.
2858
2859 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2860
2861         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2862         (gtk_tree_view_move_column_after): Clean up interface. 
2863
2864 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2865
2866         * gtk/gtkpacker.h:
2867         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2868          to gtkenum.h.
2869
2870         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2871         handled in switch).
2872
2873         * gtk/Makefile.am:
2874         (gtk.defs): generate enum portions with  glib-mkenums.
2875         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2876         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2877         
2878         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2879         addition.
2880
2881         * docs/Changes-2.0.txt: keep a note on signal handlers now
2882         not getting emitted during the emission they were connected within.
2883
2884 2001-04-28  Havoc Pennington  <hp@pobox.com>
2885
2886         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2887
2888 2001-04-24  Havoc Pennington  <hp@redhat.com>
2889
2890         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2891         (gtk_text_layout_move_iter_to_next_line): fix these two for
2892         invisible text, lots of other stuff still hosed.
2893
2894         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2895         new function, replaces the get/set palette stuff. This function 
2896         is intended for use by libgnomeui which should set the hook to a
2897         thing which sets the palette in GConf, and we need the
2898         GConf-to-xsettings proxy which will result in the change being
2899         propagated back to the GTK app.
2900
2901         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2902         about unusable signals that it may be because the signal has 
2903         parameters.
2904
2905         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2906         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2907         it.
2908         (gtk_widget_modify_color_component): call
2909         gtk_widget_modify_style() so the rc style will get copied.
2910         (gtk_widget_modify_font): ditto
2911
2912         * gtk/gtkrc.c: make a couple variables static
2913
2914         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2915         help button by default, since it does nothing
2916
2917         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2918         around with UI
2919
2920         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2921         so we can have tooltips
2922
2923         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2924         can have tooltips
2925
2926         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2927         GDK_ENABLE_BROKEN, because its memory behavior is completely
2928         hosed.
2929
2930         * gtk/gtknotebook.c: remove key press handler, replace with
2931         binding set, add numeric keypad support
2932
2933         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2934
2935         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2936
2937         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2938         addition to plain Delete
2939
2940         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2941         GDK_KP_Enter in addition to GDK_Return
2942
2943         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2944         activate on entry instead of key press
2945         (gtk_font_selection_on_clist_key_press): get
2946         rid of this signal handler, not needed with new font sel.
2947
2948         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2949         no-longer-needed emit_stop_by_name(), just return TRUE
2950
2951         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2952         cruft, this widget is no longer focusable.
2953
2954         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2955         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2956         move_slider action signal, add binding set for vscale/hscale, in
2957         the process support numeric keypad
2958
2959         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2960         make GDK_Return and GDK_KP_Enter activate the entry via 
2961         binding set, instead of hardcoded.
2962
2963 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2964
2965         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2966         code.  Some documentation added.
2967
2968 2001-04-27  Havoc Pennington  <hp@redhat.com>
2969
2970         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2971
2972         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2973
2974         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2975         line/para separators
2976         (gtk_entry_create_layout): set single paragraph mode on the layout
2977
2978         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2979         spacing between the image and label; instead, inside a button box 
2980         the button will get extra space that will go there, but if people 
2981         configure button box for 0 chubbiness, then there's no spacing.
2982
2983         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2984         and min/max size style properties, so people can tune their
2985         chubbiness.
2986
2987         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2988         functions
2989
2990         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2991         space_style, and button_relief into style properties, remove
2992         functions for setting them
2993         
2994         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
2995         it back down
2996
2997         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
2998         types from gtk_widget_style_get
2999
3000         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
3001         with a style property.
3002
3003         * gdk/x11/gdkevents-x11.c: namespace the settings
3004
3005         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
3006
3007         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
3008         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
3009         be used. Also, translate doc strings for settings. Also, namespace
3010         the double-click-time property. Also, remove bell properties crap.
3011
3012 2001-04-27  Sven Neumann  <sven@gimp.org>
3013
3014         * Makefile.am: before creating links, check if pkg-config files
3015         exist for the default target. Otherwise link to the pkg-config files
3016         that got installed with this build.
3017
3018 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
3019
3020         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
3021         dragging code.  Revealed some (potential) GdkWindow bugs.
3022
3023         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
3024         _gdk_window_init_position to the end of reparent to fix the case
3025         of reparenting when new_x != old_x and new_y != old_y.
3026
3027 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
3028
3029         * gtk/gtkentry.c (strstr_len): Fix optimization that
3030         was correct for the use here, but completely incorrect
3031         in general.
3032
3033 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
3034
3035         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
3036         until patch adding gtk_window_set_size() is recommitted. 
3037
3038         * **Makefile.am configure.in gdk/x11/gdkim-11.c
3039           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
3040           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
3041           (#10784)
3042
3043 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
3044
3045         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
3046         window == NULL in a number of cases.
3047
3048         * tests/testdnd.c: Set module path for gdk-pixbuf.
3049
3050 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
3051
3052         * gtk/Makefile.am xembed.h: File containing #defines
3053         for XEMBED protocol.
3054
3055         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
3056
3057         - Change protocol from old plug/socket specific protocol
3058           to XEMBED draft
3059         - Various fixes to work with GTK+-2.0
3060
3061         Still quite a bit of work to do here to handle initiation
3062         from the socket side (as specified by XEMBED), to handle
3063         the more advanced features of XEMBED, and to figure out
3064         a good way to handle same-app embedding with less overhead
3065         than using full XEMBED.
3066
3067 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
3068
3069         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
3070         track of whether the toplevel has the focus; only send
3071         focus-in events to the focus widget when the window
3072         actually has the focus.
3073
3074 2001-04-25  Havoc Pennington  <hp@pobox.com>
3075
3076         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
3077         were still in the header
3078
3079 2001-04-24  Alexander Larsson  <alexl@redhat.com>
3080
3081         * gtk/gtkclist.[ch]:
3082         * gtk/gtkctree.c:
3083         When there is a row highlighted for D'n'D it must alse
3084         be painted hightlighted on exposes. Otherwise exposes from
3085         the icon being dragged will mess up the hightlight.
3086
3087         * gtk/gtkfontsel.c:
3088         Don't recenter selected font when exposing the font family
3089         clist. This means you can now actually scroll the font family
3090         list.
3091
3092         * gtk/gtknotebook.c:
3093         Fix focus movement on scrolling tabs that are placed on the left
3094         and right.
3095
3096 2001-04-21  Havoc Pennington  <hp@pobox.com>
3097
3098         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
3099         empty/invisible lines.
3100
3101         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
3102         (gtk_text_iter_set_visible_line_index): new functions to set
3103         indexes excluding invisible text
3104
3105         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
3106         index
3107
3108         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
3109         (gtk_text_iter_get_visible_line_offset): new functions to 
3110         get indexes excluding invisible text
3111
3112         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
3113         bunch of extra padding that served no purpose
3114
3115         * gtk/gtkdialog.c: Make all the spacings configurable via style
3116         properties, for chubbiness configuration in themes
3117
3118         * tests/testtext.c: fix path to the immodules.
3119         
3120 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
3121
3122         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
3123         got munched by #endif.
3124
3125         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
3126
3127         * gtk/gtktreeview.c: Refactored code to clean up a number of
3128         events.
3129
3130         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
3131         values to make consistent with other functions.  Spotted by Jeff
3132         Franks <jcf@tpg.com.au>.
3133
3134         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
3135         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
3136
3137 2001-04-23  Sven Neumann  <sven@gimp.org>
3138
3139         * gtk/Makefile.am
3140         * gtk/gtkplug.c
3141         * gtk/gtksocket.c: on request of Owen, reverted my last change 
3142         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
3143
3144 2001-04-23  Sven Neumann  <sven@gimp.org>
3145
3146         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
3147         compile for non-X11 targets again
3148
3149 2001-04-20  Alexander Larsson  <alexl@redhat.com>
3150
3151         * gtk/gtkcolorsel.[ch]:
3152         API Change. Take GdkColor arguments instead of gdouble *.
3153         Leave the old gtk_color_selection_set_color for compatibility,
3154         but marked deprecated.
3155         Do correct rounding when converting RGB <-> HSV.
3156         
3157         * gtk/gtkcolorseldialog.c:
3158         * tests/testgtk.c:
3159         Use new GtkColorSelection API.
3160
3161         * gtk/gtkhsv.c:
3162         Fix problem selecting colors in triangle when Hue is 330.
3163         Fix some black dots around the HSB triangle.
3164         
3165         * gtk/gtkfilesel.c:
3166         return FALSE from the focus_in_event handler to fix focus problems.
3167
3168 2001-04-18  Havoc Pennington  <hp@redhat.com>
3169
3170         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
3171         set, so keybindings are configurable    
3172         (gtk_window_activate_default): Change to activate the focus widget
3173         instead if there's a focus widget, to be consistent with the
3174         behavior that previously existed in key_press_event
3175
3176 2001-04-18  Havoc Pennington  <hp@redhat.com>
3177
3178         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
3179
3180 2001-04-18  Havoc Pennington  <hp@redhat.com>
3181
3182         Close bug #50615:
3183         
3184         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
3185         the layout
3186
3187         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
3188
3189         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
3190
3191         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
3192         
3193         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
3194         to blue for base, in addition to bg
3195         
3196 2001-04-18  Havoc Pennington  <hp@redhat.com>
3197
3198         * tests/testgtk.c (create_image): allow shrinking the image window
3199         to test that we clip to allocation.
3200
3201         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
3202         #9845
3203
3204         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
3205
3206 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
3207
3208         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
3209         mode on shm segments to 0600. We'll see who complains.
3210
3211         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
3212         _gdk_windowing_window_destroy() AFTER recursing through
3213         children.
3214
3215         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
3216         testsocket_child on X.
3217
3218         * tests/testsocket[_child].c: Fix uses of
3219         gtk_window_get_default_accel_group().
3220
3221         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
3222
3223         * gdk/gdkimage.c: (gdk_image_get):
3224         Deal with the possibility that XGetImage() might return NULL.
3225         Allocate the GdkImagePrivate structure only after XGetImage()
3226         succeeds in order not to dereference a NULL ximage pointer.  This
3227         prevents a core dump when XGetImage() fails - which is unlikely,
3228         but can happen due to race conditions accessing the geometries of
3229         drawables.  An x error will still be triggered, but the gdk image
3230         wrapper at least wont seg fault.
3231         
3232 2001-04-18  Havoc Pennington  <hp@redhat.com>
3233
3234         * gtk/gtkimage.c: fix to properly queue resizes when the image is
3235         set
3236
3237         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
3238         if the insertion point isn't editable
3239
3240         * demos/gtk-demo/images.c: Added a GtkImage demo
3241
3242         * demos/gtk-demo/drawingarea.c: drawing area demo
3243         
3244         * demos/gtk-demo/menus.c (create_menu): cleanups
3245
3246 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
3247
3248         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
3249           gdk/x11/gdkevents-x11.c: Introduce an extra child
3250         of toplevel windows that serves to hold the focus to
3251         avoid events being delivered to embedded windows.
3252
3253         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
3254         some extra variables to clean up code and reduce the
3255         number of casts.
3256
3257         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
3258         guint for 1 bit bit fields, not gboolean.
3259
3260 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
3261
3262         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
3263         not TRUE. (Fixes #52925)
3264
3265 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
3266
3267         * Released 1.3.4
3268
3269         * NEWS: Updated
3270
3271         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
3272         use GTK_TYPE_ENUM.
3273
3274 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
3275
3276         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3277
3278         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
3279         names to compatibility #defines so docs work.
3280
3281         * gtk/gtkenums.h: Remove GtkMenuFactoryType
3282
3283         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
3284
3285         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3286
3287         * tests/testgtkrc: No magenta cursors, please.
3288
3289         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
3290
3291         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
3292         
3293 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
3294
3295         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
3296         grabs, since they are no longer necessary.
3297
3298         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
3299         by signal_connect() and call gtk_button_pressed() rather
3300         than signal_connect_after().
3301
3302         * tests/testgtk.c: Restore radio menu items to combos 
3303         since they'll look OK with Raleigh, and it is easier
3304         than finishing the process of removing them that was
3305         started earlier.
3306
3307 2001-04-16  Hans Breuer  <hans@breuer.org>
3308
3309         * gdk/gdk.def :
3310         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
3311
3312         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
3313         we are interested in the functions return value not the function address
3314         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
3315
3316         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
3317
3318 2001-04-14  Hans Breuer  <hans@breuer.org>
3319
3320         * gdk/gdk.def :
3321         * gdk/makefile.msc : updated
3322
3323         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
3324         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
3325         (the testgtk::text backgound pixmap is drawn again)
3326         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
3327         Win32 Pango change
3328         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
3329
3330         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
3331         Not sure if the returned settings have the right unit, because I couldn't
3332         find any docs for the X version ...
3333
3334         * gtk/gtk.def :
3335         * gtk/makefile.msc.in : updated
3336
3337 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
3338
3339         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
3340         wording problems. (Compared to version from Johannes Stezenbach to
3341         check correctness.)
3342
3343 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
3344
3345         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
3346         this to compile.
3347
3348 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
3349
3350         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
3351         not pixbufpos.
3352
3353         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
3354
3355         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
3356         are unsigned insts, therefore use g_value_set_uint.
3357         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
3358
3359 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
3360
3361         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
3362
3363         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
3364         GTK_TYPE_STRING.
3365
3366         * gtk/gtktreeview.c: New functions to allow initial column
3367         dragging work.
3368
3369         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
3370
3371         * tests/testtreefocus.c: give dave some love.
3372
3373         * tests/testtreesort.c: Modify test to check really long samples.
3374
3375 2001-04-11  Alexander Larsson  <alexl@redhat.com>
3376
3377         * gtk-2.0.m4: Pass pkg-config options
3378         before the other args so it works even if
3379         POSIXLY_CORRECT is set.
3380
3381 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
3382
3383         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
3384         0, interface 0).
3385
3386 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
3387
3388         * gtk/gtkcalendar.c (gtk_calendar_button_press):
3389         check for action_func != NULL
3390
3391 2001-04-04  Sven Neumann  <sven@gimp.org>
3392
3393         * tests/testgtk.c (test_init): corrected path to gtk.immodules
3394
3395 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
3396
3397         * Released Gtk+-1.3.3.
3398
3399 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
3400
3401         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
3402
3403 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
3404
3405         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
3406         files to/from source dir. (if we don't stay in builddir, we
3407         can't reach make-inline-pixbuf.
3408
3409         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
3410         deps.
3411
3412         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
3413         ages 0).
3414
3415 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
3416
3417         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
3418         moved to the GtkTreeSortable interface.
3419
3420         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3421         Make more efficient (fixes #50262).
3422
3423 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
3424
3425         * NEWS: Updated.
3426
3427         * configure.in: Remove support for uninstalled glib.
3428
3429         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
3430         so as not to stop emission.
3431
3432         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3433         is no longer supported.
3434
3435         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
3436         into tests, change build order to build modules before
3437         gtk/.
3438
3439         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
3440         to here.
3441
3442 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
3443
3444         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
3445         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
3446         GPatternSpec. this is actually unlikely to cause breakage in
3447         third-party apps since except for gle, pretty much ever caller
3448         passes NULL here.
3449
3450         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
3451
3452         * *.c: use g_pattern_*() API.
3453
3454         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
3455
3456         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
3457         directions aren't passed in.
3458
3459         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
3460         functionality to be usable from gtkstyle.c as well, give precedence
3461         for conversion to user-supplied parsers.
3462         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
3463
3464         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
3465         _gtk_settings_parse_convert() for rcporperty value conversion.
3466
3467 2001-04-03  Alexander Larsson  <alexl@redhat.com>
3468
3469         * gdk/linux-fb/gdkevents-fb.c:
3470         Add empty gdk_setting_get().
3471
3472 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
3473
3474         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
3475         variable names.
3476         
3477         * gtk/makeenums.pl: touch this so enum files get remade.
3478
3479 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
3480
3481         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
3482         work again when not sorted.
3483
3484         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
3485         and "expand_row" signal, closing bug 52578.
3486
3487         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
3488         support.
3489
3490         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
3491         support.
3492
3493 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3494
3495         * gdk/gdkevents.h: Add GdkEventSetting event for notification
3496         of changes to system settings, gdk_setting_get() to retrieve
3497         a single system setting.
3498
3499         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
3500         to the draft XSETTINGS mechanism.
3501
3502         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
3503         XSETTINGS.
3504
3505         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
3506         of GDK settings changes to the GtkSettings object.
3507
3508         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
3509         double-click-timeout property to GDK.
3510
3511         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
3512         Define GDK boxed types here.
3513
3514         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
3515         gdk/gdkenumtypes.[ch] for enum definitions.
3516
3517         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3518         * gtk/gtk-boxed.defs: Comment out GDK types
3519         * gtk/gtktypeutils.h: Remove GDK types
3520         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3521
3522 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3523
3524         * Applied patch from Ron Steinke to add signal accumulators
3525         so that signals with the convention 'TRUE return means
3526         handled' stop emission on a TRUE return.
3527
3528         * gtk/gtkmain.[ch]: Add private accumulator 
3529         _gtk_boolean_handled_accumulator, used throughout GTK+.
3530         
3531         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3532
3533         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3534         
3535         * gtk/gtkwidget.c: Add accumulators for event signals,
3536         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3537         for ::mnemonic-activate.
3538
3539         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3540
3541 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3542
3543         * gtk/gtkwidget.c: Add missing include.
3544
3545 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3546
3547         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3548         marshaller.
3549
3550         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3551         "changed" signal to "range_changed".
3552
3553         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3554         removing a tree from one model would remove all trees from that
3555         model.
3556         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3557         changed signal instead.
3558
3559 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3560
3561         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3562         chaining up to parent impl, since we have a INPUT_ONLY
3563         window.
3564
3565         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3566         foreground color for the cursor.
3567
3568 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3569
3570         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3571         param spec when caching property values, since we unref it
3572         later when we free the style.
3573
3574         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3575         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3576
3577 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3578
3579         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3580         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3581         stupidity.
3582
3583 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3584
3585         [ First pass at adding style properties. Still needs some definite
3586         fine-tuning. ]
3587
3588         * gtk/gtkbutton.c: Add ::default_spacing style property.
3589          
3590         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3591         ::indicator_spacing style properties.
3592
3593         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3594         style properties.
3595
3596         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3597         rather than a normal property.
3598
3599         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3600         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3601
3602         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3603         Honor ::interior_focus.
3604         
3605         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3606         TRUE.
3607
3608         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3609         Add ::slider_width, ::trough_border, ::stepper_size,
3610         ::stepper_spacing style properties.
3611
3612         * gtk/gtkscale.[ch] Add ::slider-length style property.
3613
3614 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3615
3616         * gdk/linux-fb/gdkwindow-fb.c:
3617         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3618         warnings that were spewed on startup.
3619
3620         * gtk/gtkwindow-decorate.c:
3621         gtk_window_reposition -> _gtk_window_reposition
3622
3623 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3624
3625         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3626         Add boxed type for GtkRequistion. Use it for ::size-request.
3627
3628         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3629         Add a new GtkBorder structure useful for geometry properties
3630         for widgets. Add corresponding GTK_TYPE_BORDER.
3631         
3632         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3633         Support automatic parser selection like
3634         gtk_settings_install_property_parser().
3635
3636         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3637         functionality for use by gtk_widget_class_install_style_property.
3638         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3639
3640 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3641
3642         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3643         g_param_spec_unichar(). 
3644
3645 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3646
3647         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3648         _NET window managers.
3649
3650         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3651
3652 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3653
3654         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3655         bad needs to be nuked, not just deprecated.
3656
3657         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3658         gtk_widget_popup().
3659
3660         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3661         
3662         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3663         widget.
3664         
3665         * docs/Changes-2.0.txt: updates.
3666         
3667 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3668
3669         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3670         for (i = 0; i < 100; i ++)
3671           g_print ("I will confirm it compile before committing\n");
3672
3673 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3674
3675         * gtk/gtktreestore.c: Initial work on implementing the
3676         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3677
3678 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3679
3680         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3681         reference counts around emissions where the widget is used afterwards.
3682         added freeze/thaws around multiple properties being notified.
3683         (_gtk_widget_get_aux_info): cleanups.
3684         
3685         * gtk/gtksettings.c (gtk_settings_install_property): provide
3686         default parsing functions for gdkcolor, enums and flags.
3687
3688         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3689         applied by owen.
3690         backed out gtk_window_get_location(), gtk_window_set_location(),
3691         gtk_window_get_size() and gtk_window_set_size(), these
3692         have to be sorted out wrg x/y/width/height/default_with/default_height
3693         properties.
3694         kept a flag in GtkWindowGeometryInfo to handle user
3695         resetting default sizes.
3696         cleaned up ZVT comments.
3697         bunch of assorted bug fixes, notification fixes.
3698         (_gtk_window_reposition): make this a really internal function.
3699         
3700         * gtk/testgtk.c: fixups.
3701         
3702 2001-03-31  Hans Breuer  <hans@breuer.org>
3703
3704         * config.h.win32.in : disable USE_MMX for msvc build cause
3705         the assembler doesn't fit and is out of my scope. Disable
3706         USE_GMODULE for msvc build as wel. The right way to share
3707         binaries on win32 would be to use libtiff.dll etc. To reduce
3708         installation hassles IMO it's better to include all fileformats
3709         builtin to gdk-pixbuf
3710
3711         * gdk-pixbuf/makefile.msc : new file
3712
3713         * gdk/gdk.def : updated
3714
3715         * gdk/win32/gdkevents-win32.c : don't erase the background if
3716         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3717         buttons
3718         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3719
3720         * gdk/win32/gdkwindow-win32.c : added three new functions like
3721         the X version. Only one is implemented, because the other two
3722         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3723         be default behaviour on win32 anyway ...
3724
3725         * gtk/gtk.def : updated
3726
3727         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3728         from where it was built and add an additional rule to automagically
3729         build gtkmarshal.[hc]
3730
3731         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3732         before array access for the current entry isn't finished
3733
3734         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3735         use g_return_val_if_fail
3736
3737         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3738         for the static array, but let the compiler calculate it. It
3739         makes me wonder if gcc isn't capable to catch bugs like this ...
3740
3741 2001-03-31  James Henstridge  <james@daa.com.au>
3742
3743         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3744         constant "-1" in the aux info structure.
3745
3746 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3747
3748         * gtk/gtkbutton.c (gtk_button_get_property):
3749         * gtk/gtklabel.c:
3750         Remove leaks.
3751         
3752         * gtk/gtkcontainer.c:
3753         * gtk/gtkhscale.c:
3754         * gtk/gtkhscrollbar.c:
3755         * gtk/gtklayout.c:
3756         * gtk/gtkmisc.c:
3757         * gtk/gtkprogress.c:
3758         * gtk/gtkprogressbar.c:
3759         * gtk/gtkrange.c:
3760         * gtk/gtktable.c:
3761         * gtk/gtkviewport.c:
3762         * gtk/gtkvscale.c:
3763         * gtk/gtkvscrollbar.c:
3764         * gtk/gtkwidget.c:
3765         Property patches, based on patches from John Margaglione and Lee Mallabone.
3766
3767 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3768
3769         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3770         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3771         inline API function docs.
3772         (gtk_spin_button_new_with_range): New convenience constructor.
3773         (gtk_spin_button_set_increments): New adjustment helper.
3774         (gtk_spin_button_set_range): New adjustment helper.
3775
3776         * gtk/testgtk.c : added test of the new convenince constructor and
3777         value_changed signals.
3778
3779 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3780
3781         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3782         listen to the reorder signal.
3783
3784 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3785
3786         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3787         to get the aux info structure fo the widget.
3788
3789         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3790         above function.
3791
3792         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3793
3794         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3795         to get the size of the window manager frame, basically the same
3796         code that gdk_window_get_root_origin() had
3797         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3798
3799         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3800         gdk_window_resize() if the window is realized and resizeable
3801
3802         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3803         typo so that setting gravity works
3804
3805         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3806         allocation if auto_shrink is on, even if the default size
3807         has not changed.
3808
3809         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3810         g_return_if_fail
3811
3812 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3813
3814         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3815         reordering/sorting work.  Now pretty much works.
3816
3817         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3818         reorder mostly work.  Still need to get the parity correct.
3819
3820         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3821         signal, so I can listen for the sort_column_changed signal so I
3822         can change my "sort_indicator" property.  Cool.
3823
3824 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3825
3826         [ Patch from Havoc Pennington, hp@redhat.com ]
3827
3828         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3829         Add functions gdk_window_begin_resize_drag/begin_move_drag
3830         to start resizing or moving a toplevel window. This
3831         is done either using the _NET_WM_MOVERESIZE protocol,
3832         or, if that isn't present, by emulation.
3833
3834         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3835         to export the above to GTK+-land.
3836
3837         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3838         
3839         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3840         Move this function into gdkwindow, since we need it
3841         when implementing fallback resizing.
3842
3843         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3844         Fix typo when setting gravity.
3845
3846         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3847         Add an optional (but on by default) resize grip for resizing 
3848         the parent window.
3849
3850 01-03-29  Alexander Larsson  <alexl@redhat.com>
3851
3852         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3853         Don't return TRUE from the event handler, that blocks all
3854         event signals on the tooltip widget. Now you can press buttons
3855         in toolbars again.
3856
3857 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3858
3859         * gtk/testtext.c (create_buffer): Add missing NULL on
3860         valist.
3861
3862         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3863         c-n-p problem with INCONSISTENT property.
3864
3865         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3866
3867         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3868         hook.
3869
3870         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3871         signal as a hook for extending the default popup menu
3872
3873         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3874         use radio menu items for the input method menuitems
3875
3876         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3877         inserted unicode from Ctrl-Shift-hex input method
3878
3879         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3880         validatation here, already done at GtkTextBuffer level.
3881
3882         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3883         popup_menu run action signal and Shift+F10 and Menu keybindings.
3884
3885         * gtk/gtkentry.c: implement a default handler for popup_menu
3886
3887         * gtk/gtktextview.c: implement a default handler for popup_menu
3888
3889         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3890         from a key event
3891         
3892         * gtk/gtklabel.c: remove "trailer" cruft
3893
3894 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3895
3896         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3897         handle reordering of trees.  Seems to mostly work w/ the exception
3898         of the parity flag.
3899
3900         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3901         signal.
3902
3903 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3904
3905         * gtk/gtkwidget.h: c++ fixes.
3906
3907 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3908
3909         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3910         memory.
3911
3912 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3913
3914         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3915         Nils Barth fixing event return values. (#51041)
3916
3917         * gtk/gtkwidget.c: Fix some return values for default
3918         functions.
3919
3920         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3921         return values for trough_keys functions.
3922
3923         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3924         value for add_accelerator (shoudl have been a void
3925         return.)
3926
3927         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3928         Fix return type of EVENT.
3929
3930         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3931         signal return a boolean.
3932
3933 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3934
3935         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3936         reordered signal.
3937
3938         * tests/testtreesort.c (main): fix spelling.
3939
3940 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3941
3942         * gtk/gtkliststore.c: More work on implementing sortable
3943         interface.
3944
3945 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3946
3947         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3948         reference the widgets in the resulting list. (#11821)
3949         This makes this consistent with gtk_container_children.
3950
3951         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3952         uses of gtk_window_list_toplevels.
3953
3954 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3955
3956         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3957         a virtual function to set whether the IM context should use 
3958         the preedit string. (#51922)
3959         
3960 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3961
3962         * gdk/gdkpango.h: Remove stale FIXME comment.
3963
3964 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3965
3966         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3967         Fixed bug that returned NULL if a filename was selected.
3968
3969 2001-03-24  Havoc Pennington  <hp@pobox.com>
3970
3971         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3972         to contain the word "theme"
3973
3974 2001-03-24  Havoc Pennington  <hp@pobox.com>
3975
3976         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3977         slower but finer-grained
3978         (gtk_hsv_focus): get initial focus on the ring or triangle 
3979         according to tab direction
3980
3981         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3982
3983 2001-03-23  Havoc Pennington  <hp@pobox.com>
3984
3985         * gtk/gtkhsv.c: make this somewhat key-navigable
3986
3987         * gtk/gtkfontsel.c: mnemonics
3988
3989         * gtk/gtkgamma.c: mnemonics
3990
3991         * gtk/gtkcolorsel.c: add mnemonics to labels
3992
3993 2001-03-22  Havoc Pennington  <hp@pobox.com>
3994
3995         Applied big patch from Seth Lytle to fix event handler return
3996         values, slightly modified.
3997
3998         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
3999         handled.
4000         (gtk_calendar_key_press): return TRUE for GDK_space triggers
4001         select_day
4002
4003         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
4004         (gtk_clist_button_release): return TRUE if handled
4005
4006         * gtk/gtkcolorsel.c (mouse_release):
4007         (palette_activate): 
4008         (palette_press): 
4009         (palette_new): 
4010         (mouse_press): 
4011         (get_screen_color): 
4012         fixed return type (void to gboolean), return TRUE,
4013         added GTK_SIGNAL_FUNC cast
4014
4015         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
4016         (void to gboolean), and return TRUE
4017         (gtk_combo_button_release): changed return value to TRUE after
4018         gtk_grab_add on combo->popwin
4019
4020         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
4021         collapse or expand
4022
4023         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
4024         button/motion
4025
4026         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
4027         press/release and motion that trigger act
4028
4029         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
4030
4031         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
4032         for GDK_Return
4033         
4034         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
4035         (gtk_list_button_release): return TRUE if selection
4036
4037         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
4038         press
4039
4040         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
4041         (gtk_menu_shell_button_release): chain parent_menu_shell retval
4042
4043         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
4044         nothing triggered
4045         (gtk_notebook_button_release): return TRUE if we do anything
4046
4047         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
4048         (gtk_spin_button_button_release): return TRUE or chained retval
4049
4050         * gtk/gtktext.c (gtk_text_button_press): 
4051         (gtk_text_button_release): return TRUE
4052         (gtk_text_key_press): remove redundant retval code
4053         
4054         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
4055         and sensitive
4056         (gtk_tree_item_subtree_button_click): changed type to gint, and return
4057         TRUE if sensitive
4058
4059         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
4060         return TRUE
4061
4062 2001-03-23  Havoc Pennington  <hp@redhat.com>
4063
4064         * gtk/testgtk.c: fix warnings
4065
4066         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
4067
4068         * gtk/gtktextview.c: fix warnings
4069
4070         * gtk/gtktext.c (find_cursor_at_line): fix warning
4071
4072         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
4073
4074         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
4075         of this function
4076
4077         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4078         fix warning
4079
4080         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
4081
4082         * gtk/gtkfontsel.c: fix warning
4083
4084         * gtk/gtkcolorsel.c: fix warnings
4085
4086 2001-03-23  Havoc Pennington  <hp@redhat.com>
4087
4088         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
4089
4090         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
4091
4092         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
4093         and deprecated gtk_check_menu_item_set_show_toggle().
4094         
4095         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
4096
4097         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
4098
4099         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
4100
4101 2001-03-23  Havoc Pennington  <hp@redhat.com>
4102
4103         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4104         some docs
4105
4106 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
4107
4108         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
4109         this.
4110
4111         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
4112         set_cell to set_value
4113
4114         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
4115         set_cell to set_value
4116
4117 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
4118
4119         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4120         fix braino.
4121         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
4122         support.
4123
4124         * gtk/gtktreeview.c: Addition of initial sortable support.
4125
4126         * gtk/gtktreestore.c: Addition of initial sortable support.
4127
4128         * gtk/gtkliststore.c: Addition of initial sortable support.
4129
4130         * gtk/gtkmarshal.list: yet another marshaller.
4131
4132         * gtk/gtktreedatallist.[ch]: shared code between the store models
4133         for handling sorting headers.
4134
4135 2001-03-22  Havoc Pennington  <hp@redhat.com>
4136
4137         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4138         (gtk_container_unset_focus_chain): Add ability to override the 
4139         focus chain for a container explicitly
4140
4141 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
4142
4143         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
4144         added PROP_MNEMONIC_WIDGET.
4145
4146         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
4147         (gtk_window_remove_mnemonic): 
4148         (gtk_window_add_mnemonic): fixed assertions.
4149         (gtk_window_activate_mnemonic): constrain modifier checks to those
4150         permitted by gtk_accelerator_get_default_mod_mask().
4151         got rid of gtk_window_get_default_accel_group().
4152
4153         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
4154         activatable widgets either by focussing or a warning.
4155         added a signal accumulator to ::activate_mnemonic which stops the
4156         emission once a handler returned TRUE.
4157
4158 2001-03-22  Havoc Pennington  <hp@pobox.com>
4159
4160         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
4161         the stock item label
4162
4163         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
4164
4165         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
4166
4167         * demos/gtk-demo/*.c: Add mnemonics all over the place
4168
4169         * gtk/gtklabel.h: mark parse_uline deprecated
4170
4171 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4172
4173         * gtk/gtkitemfactory.[ch]:
4174         Add support for stock and normal imagemenuitems.
4175         
4176         * gtk/testgtk.c:
4177         Add some tests for mnemonics, stock toolbars, stock
4178         and image menuitems in itemfactory and gdk_window_scroll.
4179
4180 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4181
4182         * gtk/gtkbutton.[ch]:
4183         * gtk/gtkdialog.c:
4184         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
4185         removed accel_group argument. Renamed gtk_button_new_accel() to
4186         gtk_button_new_with_mnemonic() and removed accel_group argument.
4187
4188         * gtk/gtkcheckbutton.[ch]:
4189         New function gtk_check_button_new_with_mnemonic().
4190
4191         * gtk/gtkentry.c:
4192         Override activate_mnemonic and just grab focus.
4193
4194         * gtk/gtkitemfactory.c:
4195         Don't add menu uline accel group, instead use mnemonics support.
4196
4197         * gtk/gtklabel.[ch]:
4198         New support for mnemonics.
4199
4200         * gtk/gtkmarshal.list:
4201         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
4202
4203         * gtk/gtkmenu.[c]:
4204         * gtkmenushell.c:
4205         Use mnemonics instead of accel groups for uline
4206         support in menu items.
4207         Removed gtk_menu_get_uline_accel_group() and
4208         gtk_menu_ensure_uline_accel_group().
4209
4210         * gtk/gtkmenuitem.c:
4211         Override activate_mnemonic to handle switching between
4212         menu items if there are collisions.
4213         
4214         * gtk/gtknotebook.c:
4215         Connect to activate_mnemonic on the tab_label, so that
4216         activating it switches to that notebook page.
4217
4218         * gtk/gtkwidget.[ch]:
4219         Add activate_mnemonic signal. New function
4220         gtk_widget_activate_mnemonic() to emit it.
4221         Default implementation does activate/grab_focus.
4222
4223         * gtk/gtkwindow.[ch]:
4224         Add support for mnemonics in windows.
4225         New functions:
4226         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
4227         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
4228
4229         * gtk/testgtk.c:
4230         Update to function name changes.
4231         
4232 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4233
4234         * gtk/gtkimagemenuitem.[c]:
4235         Add gtk_image_menu_item_new_from_stock()
4236
4237 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
4238
4239         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4240         Fix buglet in meeting.
4241
4242 2001-03-19  Havoc Pennington  <hp@redhat.com>
4243
4244         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
4245         add a bunch of accessor functions. This is because we have
4246         reasonable expectations of extending what fields it contains in
4247         the future.
4248
4249         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
4250         changes
4251
4252         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
4253         GtkIconSource   
4254
4255 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
4256
4257         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
4258         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
4259
4260         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
4261           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
4262           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
4263           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
4264         Change float to double everywhere with the exception of 0<->1.0 alignment
4265         and GtkCurve.
4266
4267 2001-03-19  Tor Lillqvist  <tml@iki.fi>
4268
4269         * gdk/win32/gdkdrawable-win32.c
4270         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
4271         output.
4272
4273         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
4274         gdkwin32.h.
4275
4276 2001-03-18  Tor Lillqvist  <tml@iki.fi>
4277
4278         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
4279         print_event_state, print_event): Use preprocessor macro to make
4280         code more compact. Print also GDK_WINDOW_STATE events.
4281         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
4282         
4283         * gtk/gtk.def
4284         * gtk/makefile.mingw.in: Update.
4285
4286         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
4287         to catch also Cygwin.
4288
4289 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
4290
4291         * gtk/gtkspinbutton.[hc]: added rc-style argument
4292         GtkSpinButton::shadow_type.
4293         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
4294         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
4295         rc-style settings.
4296
4297         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
4298
4299         * gtk/gtkwidget.c: quark cleanups.
4300
4301         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
4302         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
4303         to create_rc_style() (we don't do cloning in standard OO sense).
4304         added per rc style properties.
4305         
4306         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
4307         property values and for caching those. some cleanups.
4308         
4309         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
4310         
4311         * gtk/gtksettings.[hc]: new file for global rc-file properties
4312         (at least currently, should get extended to support X properties
4313         and other communication mechanisms).
4314         
4315         * gtk/gtkwidget.[hc]: added style property support:
4316         (gtk_widget_class_install_style_property_parser): install style
4317         property pspec with parser function for rc-file values other
4318         than LONG, DOUBLE or STRING.
4319         (gtk_widget_class_install_style_property): same as above without
4320         parser (parsers are going to be needed quite infrequently).
4321         (gtk_widget_style_get_property): retrive style property value.
4322         (gtk_widget_style_get_valist): same as above with varargs support,
4323         has NOCOPY semantics.
4324         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
4325
4326 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
4327
4328         * demos/gtk-demo/main.c (row_activated_cb): modified to use
4329         "row_activated" signal.
4330
4331         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
4332         stupidity.  Lets actually pass in the row with this signal...
4333
4334 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
4335
4336         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
4337
4338         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
4339
4340         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
4341         everything into the ::destroy function, and freed a lot more.
4342
4343 2001-03-16  Havoc Pennington  <hp@redhat.com>
4344
4345         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
4346         instead of gint16, to avoid overflow issues, since sizes > 16-bit
4347         are now allowed.
4348
4349 2001-03-16  Havoc Pennington  <hp@redhat.com>
4350
4351         * Applied patch from Nils Barth (bug # 51041) to 
4352         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
4353         in various places.
4354
4355 2001-03-15  Havoc Pennington  <hp@redhat.com>
4356         
4357         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
4358         for properties to set on the tag.
4359
4360         * gtk/testtext.c: fixups to reflect create_tag change
4361         
4362         * gtk/gtktexttag.c (gtk_text_tag_set_property):
4363         background/foreground stipple are objects, not boxed.
4364
4365         * demos/gtk-demo/textview.c: intellihancing
4366
4367 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
4368
4369         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
4370         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
4371
4372 2001-03-16  Alexander Larsson  <alexl@redhat.com>
4373
4374         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
4375         Fix sign error with queued region translations.
4376
4377 2001-03-15  HideToshi Tajima  <tajima@happy>
4378
4379         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
4380         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
4381         * gtk/gtkentry.c (update_im_cursor_location): 
4382         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
4383         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
4384         set_cursor_pos to set_cursor_location in GtkInputContext class
4385
4386 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
4387
4388         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
4389         the location of the cell relative to its area.
4390         * gtk/gtkcell*: modified for above change
4391         * gtk/gtktreeview.c: modified for above change.
4392
4393 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
4394
4395         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
4396          (gtk_tree_view_finalize): actually unref the model.  Thanks to
4397         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
4398
4399 2001-03-14  Havoc Pennington  <hp@redhat.com>
4400
4401         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
4402         
4403         * gtk/gtk.h: remove gtkdata.h
4404
4405         * gtk/Makefile.am: remove gtkdata
4406         
4407         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
4408         not "disconnect" on the adjustments.
4409         
4410         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
4411         GtkData
4412
4413         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
4414         not GtkData
4415
4416         * configure.in: handle case where X render exists, but Pango lacks
4417         Xft support.
4418
4419 2001-03-15 Alexander Larsson  <alexl@redhat.com>
4420
4421         * gtk/gtktoolbar.[ch]:
4422         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
4423         to add stock items to toolbars.
4424
4425         * gtk/Makefile.am:
4426         Remove ../gdk/gdkim.h from gdk_headers.
4427
4428 2001-03-15  Sven Neumann  <sven@gimp.org>
4429
4430         * gdk/gdkim.h: removed
4431         
4432         * gdk/gdkprivate.h
4433         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4434
4435 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
4436
4437         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
4438         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
4439         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
4440         set_cursor_pos() virtual method
4441
4442         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
4443         (gtk_im_context_xim_set_cursor_pos): add implementation for
4444         set_cursor_pos() method
4445
4446         * gtk/gtkentry.c (recompute_idle_func): set current cursor
4447         position to input methods
4448
4449 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
4450
4451         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
4452         code a lot.
4453
4454         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
4455         g_mem_chunk.
4456         (_gtk_tree_data_list_alloc): use g_mem_chunk.
4457         (_gtk_tree_data_list_node_to_value): Fix to switch on
4458         G_TYPE_FUNDAMENTAL.
4459         (_gtk_tree_data_list_value_to_node): Fix to switch on
4460         G_TYPE_FUNDAMENTAL.
4461         (_gtk_tree_data_list_node_copy): Fix to switch on
4462         G_TYPE_FUNDAMENTAL.
4463
4464 2001-03-12  Havoc Pennington  <hp@redhat.com>
4465
4466         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4467         to convert to new property API. Also, change default_width and
4468         default_height get_property to return 0 as the flag value for
4469         "unset"; -1 is not a valid value for these fields.
4470
4471 2001-03-12  Havoc Pennington  <hp@redhat.com>
4472
4473         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
4474         enum with registration for icon sizes, instead of strings.
4475
4476         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
4477         gtkwidget.c: Fix to reflect GtkIconSize
4478         
4479 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4480
4481         Make GtkFB compile and link.
4482         
4483         * gdk/linux-fb/gdkdrawable-fb2.c:
4484         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4485         
4486         * gdk/linux-fb/gdkwindow-fb.c:
4487         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4488         Added gdk_window_shape_combine_region.
4489         Added assorted placeholders for unimplemented new GdkWindow API calls.
4490
4491 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4492
4493         * gtk/gtkfilesel.c:
4494         Add more test when converting filenames from/to utf-8.
4495         Don't allow entering text in the filename entry which isn't allowed in
4496         a filename. Just beep instead.
4497
4498 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4499
4500         * gtk/gtkclist.c:
4501         Scroll using gdk_window_scroll(). Don't wait for exposes.
4502         Move the column headers in an order that makes them flash less.
4503
4504 2001-03-10  Hans Breuer  <hans@breuer.org>
4505
4506         * gdk/gdk.def : updated
4507
4508         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
4509         to offseting the clip_mask at the right place
4510
4511         * gdk/win32/gdkwindow-win32.c : don't create background brushes
4512         for all the gdkClasses, especially not for the input_only case.
4513         Otherwise flickering wont be avoidable, because we don't get
4514         WM_ERASEBKGND message for these windows.
4515
4516         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4517         and fixed massive redraw problems apparently triggered by Alexanders 
4518         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4519         but it seems to work quite well :-)
4520
4521         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4522         prototype
4523
4524 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4525
4526         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4527         (gtk_list_store_set_cell): Fix a stupid typo.
4528
4529 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4530
4531         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4532         select_all not work if you're in SINGLE mode (it doesn't make that
4533         much sense, anyway.)
4534
4535         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4536         handle types more sanely.
4537         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4538         (_gtk_tree_data_list_node_copy): handle types more sanely.
4539
4540         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4541         GValue better. Converts the type as well.
4542
4543         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4544         GValue better. Converts the type as well.
4545
4546 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4547
4548         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4549         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4550         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4551         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4552
4553         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4554         gdk_im/gdk_ic.
4555
4556 2001-03-09  Hans Breuer  <hans@breuer.org>
4557
4558         * gdk/gdk.def : updated
4559
4560         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4561         for their palette
4562
4563         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4564         removing
4565
4566         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4567         removing and implemented Havoc's GdkWindow state functions; 
4568         stick/unstick only as no-op, cause I don't know how to emulate 
4569         on win32 ...
4570
4571         * gtk/gtk.def : updated
4572
4573         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4574
4575         * gtk/gtktypeutils.c : #include <string.h>
4576
4577         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4578
4579 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4580
4581         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4582         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4583         not a boxed.
4584
4585 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4586
4587         * docs/Changes-2.0.txt:
4588         Document expose event->region change and that gtk_widget_event
4589         doesn't allow passing expose events.
4590
4591         * gdk/gdkevents.h:
4592         Add region to expose event.
4593         
4594         * gdk/gdkevents.c:
4595         Handle event->region in gdk_event_copy() and gdk_event_free().
4596
4597         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4598         Generate expose_event->region when creating expose events.
4599
4600         * gdk/x11/gdkevents-x11.c:
4601         Generate expose events with regions when translating X events.
4602
4603         * gtk/gtkcontainer.[ch]:
4604         Default expose handler that propagates expose events to NO_WINDOW
4605         children. New function gtk_container_propagate_expose()
4606
4607         * gtk/gtkwidget.[ch]:
4608         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4609         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4610         expose events. New function gtk_widget_send_expose() to send expose
4611         events. New function gtk_widget_region_intersect() to calculate
4612         window/region intersections.
4613         
4614         * gtk/gtkmain.c (gtk_main_do_event):
4615         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4616         Use gtk_widget_send_expose() to send expose events.
4617         
4618         * gtk/gtkbin.c:
4619         * gtk/gtkbox.c:
4620         * gtk/gtkfixed.c:
4621         * gtk/gtkimagemenuitem.c:
4622         * gtk/gtklist.c:
4623         * gtk/gtkpacker.c:
4624         * gtk/gtktable.c:
4625         * gtk/gtktree.c:
4626         Remove expose handler, using the default container implementation
4627         instead.
4628         
4629         * gtk/gtkbutton.c:
4630         * gtk/gtkcheckbutton.c:
4631         * gtk/gtkeventbox.c:
4632         * gtk/gtkfixed.c:
4633         * gtk/gtkhandlebox.c:
4634         * gtk/gtklayout.c:
4635         * gtk/gtklistitem.c:
4636         * gtk/gtkmenu.c:
4637         * gtk/gtkmenubar.c:
4638         * gtk/gtkmenuitem.c:
4639         * gtk/gtknotebook.c:
4640         * gtk/gtkoptionmenu.c:
4641         * gtk/gtkpaned.c:
4642         * gtk/gtkscrolledwindow.c:
4643         * gtk/gtktogglebutton.c:
4644         * gtk/gtktoolbar.c:
4645         * gtk/gtktreeitem.c:
4646         * gtk/gtkviewport.c:
4647         Chain expose handler to parent class handler. Use
4648         gtk_container_propagate_expose() to propagate exposes.
4649
4650         * gtk/gtkclist.c (check_exposures):
4651         * gtk/gtktext.c (process_exposes):
4652         Use gtk_widget_send_expose instead of gtk_widget_event.
4653
4654 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4655
4656         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4657
4658 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4659
4660         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4661         unref the nodes.   Fixes bug #50058.
4662
4663         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4664         "::ref_iter" to "::ref_node".
4665         (gtk_tree_model_unref_node): change "::unref_iter" to
4666         "::unref_node". Fixes bug #50064.
4667
4668 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4669
4670         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4671         support for invisible cells.
4672          (gtk_tree_view_bin_expose): ditto
4673
4674 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4675
4676         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4677         on gobjects.
4678
4679         * tests/testtreefocus.c (main): New test file.
4680
4681         * tests/testtreeview.c: update to latest glib changes.
4682
4683         * tests/testtreecolumns.c: update to latest glib changes.
4684
4685 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4686
4687         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4688
4689 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4690
4691         * *.c: added accumulator data argument to g_signal_newc()
4692         functions.
4693
4694         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4695         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4696         * gtk/treestoretest.c (make_window):
4697         s/g_signal_connect/g_signal_connectc/.
4698
4699         * gtk/gtktextbuffer.c: completed signal arg fixups,
4700         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4701
4702 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4703
4704         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4705         G_CONST_RETURN.
4706
4707         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4708         ::hierarchy-changed signal when a widget changes
4709         from anchored to unanchored or vice versa.
4710         (anchored means 
4711          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4712         Use a private flag to keep track of this efficiently.
4713
4714 2001-03-07  Havoc Pennington  <hp@redhat.com>
4715
4716         * gtk/testgtk.c (create_spins): uglify so that size request gets
4717         tested.
4718
4719         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4720         request on values for upper/lower, completes #6152
4721
4722 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4723
4724         * Makefile.am: Remove gtk-config-2.0 again.
4725         (Grrrr, pkg-config. And stops make loops.)
4726
4727 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4728
4729         * gtk/gtksignal.[hc]: removed old emission hook API.
4730         
4731         * docs/Changes-2.0.txt: fixed sections.
4732         
4733         * gtk/gtktextbuffer.c: signal arg fixups.
4734
4735 2001-03-07  Havoc Pennington  <hp@redhat.com>
4736
4737         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4738
4739         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4740         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4741         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4742         validation and the redraw which is higher priority than the
4743         validation.
4744
4745 2001-03-07  Havoc Pennington  <hp@redhat.com>
4746
4747         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4748         (gtk_entry_set_property): remove trailer
4749
4750         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4751         (gtk_entry_get_width_chars): new functions, to set size request to 
4752         a given number of characters
4753
4754         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4755
4756         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4757         (gtk_dialog_get_has_separator): new function
4758         (run_delete_handler): fix to not emit "response" signal
4759         because we already did in the delete event handler installed
4760         at dialog creation time.
4761         
4762         * gtk/gtkdialog.h: add a has_separator property,
4763         add GTK_DIALOG_NO_SEPARATOR flag
4764
4765 2001-03-07  Havoc Pennington  <hp@redhat.com>
4766
4767         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4768         off decorations for a window.
4769
4770         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4771         changes
4772
4773         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4774         to get location of PangoLayout inside the label, closes #51198
4775
4776         * gtk/testgtk.c (create_bbox): fix up button box usage
4777
4778         * gtk/testcalendar.c (create_calendar): fix up button box usage
4779
4780         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4781
4782         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4783
4784         * gtk/gtkhbbox.h: deprecations
4785
4786         * gtk/gtkvbbox.h: deprecations
4787
4788         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4789         emulate deprecated gtk_button_box_get_spacing
4790
4791         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4792         the "set global default" functions
4793         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4794         GtkBox base class
4795
4796         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4797
4798         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4799         render the icon, return the missing image icon.
4800
4801         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4802         image icon if the load fails.   
4803
4804         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4805         when no image is found; should be the Netscape "missing image"
4806         icon eventually but for now is a random image
4807
4808         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4809         role for the session manager
4810
4811         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4812
4813         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4814         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4815
4816         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4817
4818 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4819
4820         * gtk/*.c: marshaller fixes.
4821         
4822         * gtk/gtkmarshal.list: extreme cleanup.
4823
4824         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4825         param spec for now.
4826
4827         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4828         where appliable.
4829
4830         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4831         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4832         which are not reference counted:
4833         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4834         PangoFontDescription, GtkTreeIter and GtkTreePath.
4835
4836 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4837
4838         * gtk/gtktreeselection.h: 
4839         * gtk/gtktreemodel.c:
4840         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4841         file should be included directly, and gobject/gmarshal.h
4842         as well as gtk/gtkmarshal.h even can't be included directly.
4843
4844         * Makefile.am: grr, install gtk-config-2.0.
4845
4846         * gtk/testgtk.c:
4847         * gtk/simple.c:
4848         * gtk/gtkmenu.c:
4849         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4850         passing "*signal*::*" args to gtk_widget_set().
4851         
4852         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4853         
4854         * gtk/*.c: removed trailer arg from property setters and getters.
4855         macro fixups.
4856
4857 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4858
4859         * gtk/gtklabel.c (set_markup): Removed warning
4860
4861 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4862
4863         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4864         field to allow you to hide cell renderers.
4865
4866         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4867
4868         * gtk/gtktreeview.c: Add support for invisible cells.
4869
4870 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4871
4872         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4873         Add "clicked" signal back to columns.
4874
4875         * ChangeLog: remove conflict markers.
4876
4877 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4878
4879         * gtk/gtkbutton.c: Add animation of activation by, on 
4880         activate, pressing the button, and adding a timeout that 
4881         releases the button after 250ms or on key release and
4882         emits ::clicked. (#51501)
4883
4884         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4885         action area, we connect to ::clicked instead of ::activate
4886         so the dialog stays up through the animation.
4887
4888 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4889
4890         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4891         check the ignore_enter flag for the menu shell that
4892         the item is actually a child of, not for attached
4893         submenus. (#51536)
4894
4895 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4896
4897         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4898         special key-press grab handling for widgets within
4899         GtkWindows. Otherwise, fall through to normal case.
4900
4901         This prevents key events being sent twice to GtkInvisible
4902         widgets, which can cause all sorts of mischief.
4903
4904 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4905
4906         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4907         widget is in effect, give the grab widget a first
4908         crack at KEY_PRESS/RELEASE events. (#424)
4909
4910 2001-03-06  James Henstridge  <james@daa.com.au>
4911
4912         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4913         offset for the window_state_event to point at window_state_event
4914         rather than no_expose_event.
4915
4916 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4917
4918         * gtk/gtkimmodule.h: fix busted /* comment */
4919
4920 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4921
4922         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4923         object properties.
4924
4925 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4926
4927         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4928         add object properties.
4929
4930         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4931         to add object properties.
4932
4933         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4934         object properties.
4935
4936         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4937         add object properties.
4938
4939         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4940         object properties.
4941
4942 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4943
4944         * gtk/gtktreemodel.c: renamed "child_toggled" to
4945         "has_child_toggled".
4946
4947         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4948         handle new signal name.
4949
4950         * gtk/gtktreestore.c: Updated to handle new signal name.
4951         * gtk/gtklisttore.c: Updated to handle new signal name.
4952         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4953
4954 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4955
4956         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4957         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4958
4959 2001-03-05  Michael Natterer  <mitch@gimp.org>
4960
4961         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4962         pixbuf-engine coincidentially also failed to make one of it's
4963         parent_class pointers static, causing overwriting of GtkLabel's
4964         parent_class pointer in pixbuf_style_class_init().
4965         (Will commit the fix to the pixbuf-engine too).
4966
4967 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4968
4969         * gdk/gdkwindow.h:
4970         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4971         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4972         gdk_window_set_icon_list for net wmspec functionality.
4973
4974         * gdk/x11/gdkwindow-x11.c:
4975         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4976         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4977         gdk_window_set_icon_list.
4978         Added gdk_wmspec_change_state helper function and used it in the code.
4979         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4980
4981         * gtk/gtkdialog.c (gtk_dialog_init):
4982         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4983
4984         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4985         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4986
4987         * gtk/gtkwindow.c:
4988         new function gtk_window_set_type_hint.
4989         On realize, set type hint and modal hint.
4990
4991         * gtk/gtkwindow.h:
4992         Added type_hint field and gtk_window_set_type_hint.
4993
4994 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4995
4996         * gtk/gtklabel.[ch]:
4997         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
4998         New function gtk_label_get_accel_keyval () to get the underline accelerator
4999         of the label. Setting the label pattern overrides other attributes.
5000
5001 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
5002
5003         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
5004         Added missing initializers to gtk_rc_style_init().
5005
5006 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
5007
5008         * gtk/gtktextview.c: fixed bug #51097 about setting 
5009         gtk_text_view_set_border_window_size() if the widget is 
5010         already realized.
5011
5012 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
5013
5014         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
5015
5016         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
5017         comment. Won't do to have duplicated doc comments between
5018         the platform subdirs.
5019
5020 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
5021
5022         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
5023           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
5024
5025         Detectable auto-repeat - make a repeating key generate
5026         press/press/press/release instead of press/release pairs.
5027
5028         If we have Xkb and XkbSetDectableAutoRepeat supports
5029         that, we do it that way. Otherwise, when we get
5030         a release event, we check ahead with XPending to see
5031         if the next key is a KeyPress with the same keycode
5032         and timestamp. (Not 100% reliable, but pretty close.)
5033           
5034 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5035         
5036         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5037         special key-press grab handling for widgets within
5038         GtkWindows. Otherwise, fall through to normal case.
5039  
5040         This prevents key events being sent twice to GtkInvisible
5041         widgets, which can cause all sorts of mischief.
5042  
5043 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5044  
5045         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5046         widget is in effect, give the grab widget a first
5047         crack at KEY_PRESS/RELEASE events. (#424)
5048  
5049 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
5050
5051         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
5052         to extend the selection. (Roughly based on patch
5053         from Jay Cox, #50939)
5054
5055         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
5056         to properly handle previous GDK_BUTTON_PRESS. 
5057         (Patch from Jay Cox, #50938)
5058
5059         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
5060         '\0' back along with the deleted text. (#51148)
5061
5062 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
5063
5064         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
5065         the group when extracting it from the X keyboard event.
5066
5067         * modules/input/Makefile.am modules/input/imipa.c: 
5068         Simple module for entering IPA. (Do we need a 
5069         gtk-stupid-input-tricks CVS module?)
5070
5071 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
5072
5073         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
5074         const.
5075
5076         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
5077
5078         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
5079         is no focus widget for the dialog currently, grab the focus as well
5080         as the default.
5081
5082         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
5083         the action area's children to iterate through, not the
5084         dialog's children.
5085
5086 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
5087
5088         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
5089         Add plug-socket tests. (Won't work worth a darn until I commit
5090         the rest of the plug-socket changes, but no reason these
5091         can't go into CVS now.)
5092
5093 2001-03-02  Havoc Pennington  <hp@redhat.com>
5094
5095         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
5096         _gdk_region_get_xrectangles()
5097
5098         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
5099
5100         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
5101
5102         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
5103         function, contributed by Ron Steinke    
5104
5105         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
5106         gdk_net_wm_supports
5107
5108         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
5109         New function, contributed by Ron Steinke
5110
5111         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
5112         used to line up the text in the entry when using the entry for
5113         editable sheet cell hacks
5114
5115         * gtk/testgtk.c (create_entry): test the activate_default setting
5116         on GtkEntry
5117
5118         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
5119         cause the entry to activate the default button for a dialog when 
5120         activated
5121         (gtk_entry_get_activates_default): new function
5122
5123 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
5124
5125         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
5126         Hwang to move call to sync_selection() up a few lines
5127         to before the row list is modified, to fix crash when
5128         removing rows in the undo_selection list.
5129
5130         (Test case provided by Daniel Elstner:
5131
5132         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
5133
5134 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
5135
5136         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
5137         of tree->root_tree in parent_set rather than _map(), 
5138         fixing #50892 in a bit better manner.
5139
5140 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
5141
5142         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
5143
5144 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
5145
5146         * gtk/gtkstyle.c : Remove duplicate fwd decl for
5147         gtk_default_draw_shadow.
5148
5149 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
5150
5151         * gdk/gdkimage.c (gdk_image_new): Remove excess 
5152         warning, make warnings more verbose, treat a error
5153         in shmat as permanent, and don't try again.
5154         (#51163, Ed Randall.)
5155
5156 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
5157
5158         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
5159         delay for the first click before starting to scroll.
5160         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
5161
5162         * gtk/gtktext.c: GtkText should have I-beam cursor. 
5163         (based on gtk-enf-990513-1.patch, Eric Fisher.)
5164
5165 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
5166
5167         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
5168         cleanup to remove some references to unused
5169         ->xoffset, ->yoffset.
5170
5171 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
5172
5173         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
5174         mask. (#51039, fix from Martin Maierhofer)
5175
5176 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
5177
5178         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
5179         for unshifted + and shifted = for non-us keyboards.
5180         Make <Control>+ and <Control>- work as well as 
5181         <Control>KP_Plus, <Control>KP_Minus for recursive
5182         open/close.  (#2682, René Seindal)
5183
5184 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
5185
5186         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
5187         the active menu item before deactivating the menu,
5188         so gtk_menu_popdown doesn't change the history. (#50964)
5189         
5190 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
5191
5192         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
5193         draw lines with text_gc rather than black_gc.
5194         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
5195
5196 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
5197
5198         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5199         Move handling of buttons fully in gtktreeviewcolumn.  This code is
5200         less interrelated then it was, but it still requires the
5201         GtkTreeView to map it.
5202
5203         * test/testtreecolumn.c: Now I can add a column to one view,
5204         remove it, add it to the another view, remove it, then re-add it
5205         to the first.  Nifty.
5206
5207 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
5208
5209         * docs/tutorial/gtk-tut.sgml: Minor corrections
5210
5211 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
5212
5213         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
5214         GtkRowReference.
5215
5216 2001-02-28  Havoc Pennington  <hp@redhat.com>
5217
5218         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
5219         draw_default
5220         (gtk_widget_draw_focus): remove this function; we could instead
5221         make it just gtk_widget_draw(), but in most cases I think the
5222         result would be broken user code, so think it's better to have
5223         that code not compile and get fixed
5224         (gtk_widget_draw_default): ditto
5225
5226         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
5227         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
5228         
5229         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
5230         widgets lose/get the default, instead of calling draw_default
5231         
5232         * docs/Changes-2.0.txt: note about all this
5233
5234         Then fixed every widget in GTK, I won't list all the filenames.
5235
5236 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
5237
5238         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
5239         _gtk_tree_row_reference_deleted.
5240         (inserted_callback): Proxy out to
5241         _gtk_tree_row_reference_inserted.
5242         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
5243         get around signal emission ordering problem.
5244
5245         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5246         fix to work with SINGLE 
5247         (_gtk_tree_selection_internal_select_node): Major sanitization on
5248         selections.  SINGLE now seems to work.
5249
5250         * tests/Makefile.am: add testtreecolumn.c:
5251
5252         * tests/testtreecolumn.c: New test.  Mostly points out selection
5253         bugs currently, but will test columns later.
5254
5255         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
5256         selection bug.  I hate touching this code -- it's scary.
5257
5258 2001-02-26  Havoc Pennington  <hp@redhat.com>
5259
5260         * gtk/testgtk.c: test the window state stuff
5261
5262         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
5263         window come to the user's attention as if it were just created
5264         (gtk_window_iconify): new function
5265         (gtk_window_deiconify): new function
5266         (gtk_window_stick): new function
5267         (gtk_window_unstick): new function
5268         (gtk_window_maximize): new function
5269         (gtk_window_unmaximize): new function
5270
5271         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
5272
5273         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
5274
5275         * gdk/x11/gdkevents-x11.c: create window state events when
5276         appropriate
5277         (gdk_wmspec_supported): new function
5278
5279         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
5280         iconification before showing the window
5281         (gdk_window_deiconify): new function
5282         (gdk_window_stick): new function
5283         (gdk_window_unstick): new function
5284         (gdk_window_maximize): new function
5285         (gdk_window_unmaximize): new function
5286
5287         * gdk/gdkwindow.c: store the window state in the window; 
5288         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
5289         window->mapped.
5290         (gdk_window_get_state): return the current window state
5291
5292         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
5293         (gdk_event_get_state): handle GDK_WINDOW_STATE
5294         (gdk_synthesize_window_state): function to create the window state
5295         events
5296
5297         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
5298         event, for changes to "window state" such as maximized, sticky, 
5299         etc.
5300         
5301         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
5302         focuses a window
5303
5304         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
5305         finds out if we support a given WM spec hint
5306
5307 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
5308
5309         * docs/faq/gtk-faq.sgml: New question re memory leaks.
5310
5311 2001-02-25  Hans Breuer  <hans@breuer.org>
5312
5313         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
5314         cause we want to loose those prototypes only in the latter case
5315
5316         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
5317         GdkPixmapImplWin32 because it itsn't derived from it. Use the
5318         impl member variable instead
5319
5320         * gtk/gtk.def : updated
5321
5322         * gtk/gtklist.c : 
5323         * gtk/gtkmenus.c : include <string.h> for memset ()
5324
5325         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
5326         for everthing built here, but for gtk-x.x.dll only. This solves
5327         problem of indifferent gtk type definitions
5328
5329 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
5330
5331         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
5332
5333 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
5334
5335         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
5336         column that is exposed.
5337
5338         (_gtk_tree_view_update_size): Changed name from set_size, and
5339         changed function to do more work, and not force people calling it
5340         to figure out the size.  Simplifies a lot of code elsewhere.
5341
5342 2001-02-23  Alexander Larsson  <alexl@redhat.com>
5343
5344         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
5345         return solid masks for xpms that have no transparent color.
5346         This makes the ..._create_from_xpm... API backwards
5347         compatible.
5348
5349 2001-02-23  Tor Lillqvist  <tml@iki.fi>
5350
5351         * README.win32: Update. Mention the gtk-1-3-win32-production
5352         branch.
5353
5354         * gdk/win32/bdfcursor.c: New file. A program that generates
5355         xcursors.h. Thanks to Stefan Ondrejicka.
5356
5357         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
5358         compact format.
5359
5360         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
5361
5362         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
5363         function, uses xcursors.h.
5364         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
5365         cursor from inline data instead of using LoadCursor() to generate
5366         it from a resource.
5367
5368         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
5369         event, must check the Windows message for mouse button state, as
5370         the GDK event state might not have been built if it is
5371         undelivered. Remove one goto.
5372
5373         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
5374         SetCursor() if the current cursor as returned by GetCursor() is
5375         the window's previous cursor. The ChildWindowFromPoint() test
5376         apparently didn't work correctly.
5377
5378         * gdk/win32/rc/*.cur: Remove.
5379
5380         * gdk/win32/rc/gdk.rc.in: Remove cursors.
5381
5382         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
5383
5384         * gtk/makefile.{mingw,msc}.in: Updates.
5385
5386 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
5387
5388         * gtk/gtktreemodel.h: add functions for signal emission.
5389
5390         * gtk/gtktreestore.c: move to use above functions instead of
5391         g_signal_emit.
5392
5393         * gtk/gtkliststore.c: ditto
5394
5395 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
5396
5397         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
5398         GObject instead of GtkObject.
5399
5400         * gtk/gtkliststore.c: ditto.
5401
5402         * gtk/gtktreemodelsort.c: ditto.
5403
5404         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
5405         GtkTreeModelIface, instead of in each model.
5406
5407 2001-02-21  Havoc Pennington  <hp@redhat.com>
5408
5409         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
5410         unbreak this function
5411
5412         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
5413         properties
5414
5415         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
5416         properties
5417
5418         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
5419         properties
5420
5421         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
5422         mean unset the max length
5423
5424 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
5425
5426         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
5427         Changed name to be set_cell_data_func to make it clear what
5428         the functino does.  Close bug #51069.
5429
5430 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
5431
5432         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5433         have memory actually freed.  Keeps box running longer.
5434
5435 2001-02-21  Alexander Larsson  <alexl@redhat.com>
5436         
5437         * gtk/gtkseparatormenuitem.[ch]:
5438         Added new menu separator item. The drawing and size handling
5439         is still done in GtkMenuItem, but the API is a bit more sane.
5440         
5441         * gtk/Makefile.am:
5442         Add gtkseparatormenuitem.[ch].
5443
5444         * gtk/gtk.h:
5445         Add gtkseparatormenuitem.h.
5446         
5447         * gtk/gtkentry.c:
5448         * gtk/gtkmenufactory.c:
5449         * gtk/gtktextview.c:
5450         Use the new API for menu separators.
5451         
5452         * demos/gtk-demo/menus.c (create_menu):
5453         Add some GtkSeparatorMenuItem demo code.
5454
5455 2001-02-20  Havoc Pennington  <hp@redhat.com>
5456
5457         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
5458         Lee Mallabone
5459
5460         * gtk/gtkarrow.c: Convert to new property API, patch from 
5461         Lee Mallabone
5462
5463 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
5464
5465         * tests/testtreeview.c (toggled_callback): fix to reflect change
5466         in GtkTreeModelStore.
5467
5468 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
5469
5470         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
5471         function to create an icon set from a pixbuf.
5472
5473 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5474
5475         * gtk/gtkcellrenderertext.[ch]:
5476         Add a "markup" property.
5477
5478         * gtk/treestoretest.c:
5479         Use the markup property, remove some leftover stuff from
5480         GtkTreeModelMapping.
5481
5482 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5483
5484         * gtk/gtklabel.c (gtk_label_set_selectable):
5485         Queue a redraw if the selectable setting was changed.
5486
5487 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5488
5489         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5490         Actually copy the whole gc, not just the public parts.
5491         
5492         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5493         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
5494         labels.
5495
5496 2001-02-19  Havoc Pennington  <hp@pobox.com>
5497
5498         * gdk/gdkwindow.c: docs
5499
5500         * gdk/gdkrgb.c: docs
5501
5502         * gdk/gdkregion-generic.c: docs
5503
5504         * gdk/gdkgc.c (gdk_gc_set_values): docs
5505
5506         * gdk/gdkdraw.c: docs
5507
5508         * gdk/gdkdrawable.h: deprecate drawable get/set data
5509
5510 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
5511
5512         * demos/gtk-demo/dialog.c: Add simple new demo.
5513
5514 2001-02-19  Havoc Pennington  <hp@redhat.com>
5515
5516         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5517         insert_child_anchor signal, bug #50245
5518
5519         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5520         from create_child_anchor, so the anchor is passed in
5521
5522         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5523         (_gtk_widget_segment_new): have the child anchor object passed in, 
5524         instead of creating it.
5525
5526         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5527         to gtk_text_buffer_get_modified
5528
5529 2001-02-19  Havoc Pennington  <hp@redhat.com>
5530
5531         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5532         changed GLib without fixing GTK
5533
5534         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5535         functions to have an underscore in front. Most of them should 
5536         probably just go away, but for starters don't export them.
5537         Bug #50482
5538
5539 2001-02-19  Havoc Pennington  <hp@redhat.com>
5540
5541         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5542         excluded by default
5543
5544         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5545         clean up the old code a bit
5546
5547         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5548         inconsistent state
5549
5550         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5551         draw inconsistent state
5552
5553         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5554         (create_menu): add inconsistent test
5555
5556         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5557         new function
5558         (gtk_check_menu_item_get_inconsistent): new function
5559         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5560         state (using etched in for now)
5561
5562         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5563         draw inconsistent state
5564
5565         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5566         function, used when the user has selected a range of stuff in
5567         different states
5568         (gtk_toggle_button_get_inconsistent): accessor for that
5569         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5570         don't know what else to do)
5571
5572 2001-02-19  Hans Breuer <hans@breuer.org>
5573
5574         * gtk/gtk.def : updated exported symbols
5575
5576         * gtk/makefile.msc.in : updated
5577
5578         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5579         a colormap, when invoked from testgtk::entry. I'm not sure where
5580         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5581         avoids immediate crashing ...
5582
5583         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5584         any objections ?
5585
5586         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5587         0 parameter. At least msvc doesn't like macros with var args. 
5588         I simply removed the extra 0, was it a feature or a typo ?
5589
5590         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5591         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5592         because the value assignment to the internal struct wasn't working.
5593         I'm not absolutely sure. The problem could have been resolved by
5594         changing the "func" declartion in the struct, but was the pointer
5595         to the function pointer intended ?
5596
5597         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5598
5599         * gdk/gdk.def : updated exported symbols
5600
5601         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5602         only use SetDIBitsToDevice if there is a palette at the drawable
5603         and the image is GDK_VISUAL_PSEUDO_COLOR
5604
5605         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5606
5607         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5608
5609         * gdk/*/makefile.msc : updated
5610
5611 2001-02-19  Havoc Pennington  <hp@redhat.com>
5612
5613         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5614         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5615
5616         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5617         (gdk_key_repeat_restore): nuke
5618
5619         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5620         (gdk_init_check): no atexit func
5621
5622         * gdk/gdkrgb.h: mark some stuff deprecated
5623
5624         * gdk/gdkcolor.h: mark some stuff deprecated
5625         
5626         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5627
5628         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5629
5630 2001-02-16  Havoc Pennington  <hp@redhat.com>
5631
5632         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5633         scroll steps.
5634
5635         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5636         steps, and add Ctrl-arrow shortcuts for paging visually as with
5637         HScale, since Page Up and Page Down move logically.
5638
5639         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5640         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5641         
5642         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5643         steps
5644         (gtk_range_scroll): handle the visual steps
5645
5646         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5647         scroll steps
5648
5649         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5650         steps, not the logical ones.
5651
5652         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5653         (scroll_vertical): handle up/down steps
5654
5655 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5656
5657         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5658         Copy data and free data with free().
5659
5660         * gdk-pixbuf/gdk-pixbuf.c:
5661         * gdk-pixbuf/io-jpeg.c:
5662         * gdk-pixbuf/io-png.c:
5663         Use g_try_malloc/g_free instead malloc/free.
5664         
5665         * gdk-pixbuf/test-gdk-pixbuf.c:
5666         Must... initialize... gobject...
5667         
5668         * gdk-pixbuf/pixops/timescale.c:
5669         * gtk/gtkcalendar.c:
5670         Use g_malloc instead of malloc.
5671         
5672 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5673
5674         * gtk/testgtkrc:
5675         Comment out property assignments, these don't work yet.
5676
5677 2001-02-17  Havoc Pennington  <hp@pobox.com>
5678
5679         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5680         bit.
5681
5682 2001-02-17  Havoc Pennington  <hp@pobox.com>
5683
5684         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5685         shadowed variables that had broken size request in some cases,
5686         leading to bogus tooltips (#50996)
5687
5688 2001-02-06  Jon K Hellan  <hellan@acm.org>
5689
5690         Implement fast browsing of tooltips, bug #50619
5691         
5692         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5693         and last_popdown
5694         
5695         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5696         use_sticky_delay and last_popdown.
5697         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5698         time of popdown.
5699         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5700         is NULL.
5701         (gtk_tooltips_recently_shown): New static function.  Return true
5702         if < sticky_delay has elapsed since last popdown.
5703         (gtk_tooltips_event_handler): Display window after sticky_delay
5704         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5705         since last popdown.
5706         
5707 2001-02-17  Havoc Pennington  <hp@pobox.com>
5708
5709         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5710         instead of (). #6394
5711
5712         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5713         G_CONST_RETURN, make it return by reference, #50473
5714         
5715 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5716
5717         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5718         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5719         setup fields contain garbage (e.g. subwindow, breaking
5720         gdk_drawable_ref() upon event copy).
5721         (gtk_menu_stop_navigating_submenu_cb): same here.
5722
5723         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5724         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5725         * gtk/gtkclist.c (vertical_timeout): 
5726         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5727         default-zero-intialization for unions to memset(,0,), as unions are
5728         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5729         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5730
5731         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5732         g_closure_sink() warning.
5733
5734         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5735         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5736         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5737         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5738         
5739 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5740
5741         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5742         gtk_*_store_get, and moved to GtkTreeModel.
5743
5744         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5745
5746         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5747
5748         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5749
5750         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5751         set the func.
5752
5753         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5754         freeze/thaw notify between setting all the properties for a cell.
5755
5756         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5757
5758 2001-02-15  Havoc Pennington  <hp@redhat.com>
5759
5760         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5761         the X coordinates so they're with respect to the line, rather than 
5762         with respect to the layout.
5763
5764         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5765         Mallabone
5766
5767         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5768         and inverted test
5769
5770         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5771         #50806
5772
5773         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5774
5775         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5776         gtk_text_iter_is_end
5777
5778         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5779         rename gtk_text_buffer_get_end_iter
5780
5781         * gtk/testgtk.c (create_labels): Add test for selectable
5782
5783         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5784         the selection stuff. This code is kind of broken since it doesn't 
5785         use the theme engine.
5786
5787         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5788         fix infinite loop and y offset problem
5789         (gdk_draw_layout_line_with_colors): fix foreground color handling
5790
5791         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5792         that makes the label selectable.
5793         
5794         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5795         layout when the style is set, since fonts etc. could have changed.      
5796
5797 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5798
5799         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5800
5801         * gtk/gtktreemodelsimple.[ch]: removed.
5802
5803 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5804
5805         * gtk/gtktreemodelmapping.[ch]:
5806         New files. Implement GtkTreeModelMapping.
5807         
5808         * gtk/Makefile.am:
5809         Add gtktreemodelmapping.[ch].
5810         
5811         * gtk/gtk.h:
5812         Add gtktreemodelmapping.h
5813
5814         * gtk/treestoretest.c:
5815         Test the GtkTreeModelMapping
5816
5817 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5818
5819         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5820         have a demo, we might as well pass in real values.  Thanks to
5821         clahey for pointing this out.
5822
5823 2001-02-14  Havoc Pennington  <hp@pobox.com>
5824
5825         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5826         "static" to a private function
5827         (gtk_image_menu_item_class_init): remove destroy handler,
5828         add "image" object property
5829
5830 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5831
5832         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5833         Add a shortcut if the window and the current clip_region doesn't
5834         overlap. This is needed when there are a lot of windows in a
5835         window. The layout test in testgtk is a good test.
5836
5837         * gdk/linux-fb/gdkwindow-fb.c:
5838         Whitespace fix.
5839
5840 2001-02-13  Sven Neumann  <sven@convergence.de>
5841
5842         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5843
5844 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5845
5846         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5847         Don't reference last_cursor if it is null. Fixes crash when rotating
5848         the screen before having moved the mouse.
5849
5850         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5851
5852         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5853
5854         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5855         when using 90 or 270 degrees rotation.
5856
5857 2001-02-12  Havoc Pennington  <hp@pobox.com>
5858
5859         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5860         it always set the foreground, even if we were only using
5861         a stipple.
5862         (gdk_draw_layout_line_with_colors): new function, allow
5863         override colors
5864         (gdk_draw_layout_with_colors): new function, allow override
5865         colors
5866         (gdk_pango_layout_line_get_clip_region): function to get the clip
5867         region for a logical text range
5868         (gdk_pango_layout_get_clip_region): get the clip region for a
5869         logical text range
5870
5871         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5872         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5873         the right number of arguments.
5874
5875         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5876         enhance the function to check that node data corresponds to a 
5877         view still belonging to the tree.
5878
5879         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5880         GtkTreePath
5881         (gtk_tree_view_inserted): ditto
5882         (gtk_tree_view_child_toggled): ditto
5883
5884         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5885         simplify this code.
5886
5887         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5888         a PangoAttrList
5889
5890         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5891
5892         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5893
5894         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5895         size in the size request 
5896         (gtk_menu_bar_size_allocate): consider toggle size here
5897
5898         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5899         that displays a widget in the toggle slot
5900
5901         * gtk/testgtk.c: test GtkImageMenuItem
5902
5903         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5904         
5905         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5906         request and allocation
5907
5908         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5909
5910         * gtk/gtkcheckmenuitem.c
5911         (gtk_check_menu_item_toggle_size_request): ditto
5912         
5913 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5914
5915         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5916         reference.
5917
5918         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5919         and refuse to initialize GTK+ if they fail.
5920
5921 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5922
5923         * configure.in: Add check for gtk-doc version.
5924
5925 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5926
5927         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5928         where the xpad/ypad was only being used on one side!
5929
5930 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5931
5932         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5933         function, copied from X11 version.
5934
5935         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5936         DestroyCursor failures. The reason for the problem (despite the
5937         inconsistent messages from GetLastError()) was that
5938         DestroyCursor() cannot be called while a cursor is set in a
5939         window. Set the new cursor first and then destroy the old one.
5940         Thanks to jpe@archaeopteryx.com.
5941
5942         * gdk/win32/gdkcc-win32.c: Remove.
5943
5944         * gdk/win32/Makefile.am: Remove from here, too.
5945         
5946         * gdk/gdk.def
5947         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5948
5949         * gtk/gtk.def
5950         * gtk/makefile.mingw.in: Updates.
5951
5952 2001-02-08  Havoc Pennington  <hp@redhat.com>
5953
5954         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5955         add a widget to a bin that already has a child.
5956
5957         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5958
5959         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5960         
5961         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5962
5963         * gdk/gdk.h: remove gdkcc.h
5964
5965         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5966
5967         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5968         GdkPixbuf, since the previous implementation was GdkColorContext
5969         dependent.
5970
5971         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5972         
5973 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5974
5975         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5976         a sane value!
5977
5978 2001-02-08  Havoc Pennington  <hp@redhat.com>
5979
5980         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5981         lighten them.
5982
5983 2001-02-08  Havoc Pennington  <hp@redhat.com>
5984
5985         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5986         validation idle
5987
5988         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5989         cell renderer
5990
5991         * demos/pixbuf-demo.c (timeout): remove deprecated
5992         gtk_widget_draw
5993
5994         * demos/testpixbuf-save.c (main): remove deprecated
5995         gtk_drawing_area_size
5996
5997         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
5998         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
5999         at the start of the allocation.
6000         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
6001         unsetup or NULL model.
6002
6003         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
6004         even/odd/sorted cells in the tree view.
6005
6006         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6007         bugfixes
6008
6009         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
6010         backgrounds with draw_flat_box using different detail for even/odd
6011         rows.
6012
6013         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
6014         row, so we can draw the alternating colors thing
6015
6016         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
6017         property from a synonym property, notify for the synonym.
6018         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
6019         (gtk_text_tag_get_property): Always return the font, even if
6020         all its fields aren't set
6021
6022         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
6023         store the attr list; it leaves us with no way to change attributes
6024         in _render according to the render flags, and no way to implement
6025         get_property. Instead store all the specific text attributes. 
6026         Separate whether an attribute is enabled from its value. Sync all
6027         properties with GtkTextTag, make them all consistent, etc.
6028
6029         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
6030         renderers can highlight the sort row/column     
6031
6032         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
6033         accessor functions to get values; this has the side effect of
6034         showing up which accessor functions were missing. Added those.
6035
6036         * gtk/gtktreeviewcolumn.h: Replace set_justification with
6037         set_alignment, to be consistent with GtkLabel, GtkMisc
6038
6039         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
6040         arrow.
6041
6042         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
6043
6044         * gtk/gtktreesortable.h: updates in here
6045
6046 2001-02-07  Sven Neumann  <sven@convergence.de>
6047
6048         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
6049         pango dimensions after painting the background. We used to draw
6050         gigantic flat boxes here.
6051
6052 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
6053
6054         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
6055         error introduced with earlier commit) (pointed out by
6056         Ollie Lho)
6057
6058 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
6059
6060         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
6061         which are no longer necessary.
6062
6063 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
6064
6065         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
6066
6067 2001-02-04  Tor Lillqvist  <tml@iki.fi>
6068
6069         * gdk/gdk.def
6070         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
6071         Provide dummy implementations.
6072
6073 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
6074
6075         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
6076
6077         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
6078         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
6079         deprecated this function.
6080
6081         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
6082         argument.
6083
6084 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
6085
6086         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
6087
6088 2001-02-03  Havoc Pennington  <hp@pobox.com>
6089
6090         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
6091         Mikael Hermansson with patch from Mikael (if there was a toggle
6092         start one after the first character in the range, this function
6093         was broken). Bug #50380
6094
6095 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
6096
6097         * configure.in: Remove confusing comment about X11.
6098
6099 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
6100
6101         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
6102         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
6103         
6104 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
6105
6106         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
6107         it breaks things on BSD. If you want to compile GTK+ with
6108         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
6109         when configuring, since GTK+ simply can't be "pure ANSI" 
6110         in the header files it uses. (#8170, Greg Hudson)
6111
6112 2001-02-02  Havoc Pennington  <hp@redhat.com>
6113
6114         * gtk/gtkwindow.c: docs
6115
6116         * gtk/gtkwidget.c: docs
6117         (gtk_widget_set_colormap): add a reference to the colormap
6118         (gtk_widget_get_default_colormap): add a reference to the colormap
6119
6120         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
6121
6122         * gtk/gtktextiter.c: docs
6123
6124         * gtk/gtkmain.c (gtk_propagate_event): docs
6125
6126         * gtk/gtkpaned.c (gtk_paned_get_position): docs
6127         (gtk_paned_set_position): docs
6128
6129         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
6130         sort interface, no implementation yet.
6131
6132         * demos/testpixbuf.c (new_testrgb_window): replace
6133         gtk_drawing_area_size() with gtk_widget_set_usize()
6134
6135         * demos/testpixbuf-drawable.c (main): ditto
6136         
6137         * gtk/testgtk.c: remove use of GtkStatusbarMsg
6138
6139         * gtk/gtktextbuffer.c: docs
6140
6141         * gtk/gtkstock.c: docs
6142
6143         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
6144
6145         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
6146
6147         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
6148         
6149         * gtk/gtkimage.c: add some docs in here
6150         (gtk_image_size_request): change name of
6151         gtk_widget_render_stock_icon
6152         (gtk_image_get_icon_set): don't dup returned string
6153         (gtk_image_get_icon_set): don't dup returned string
6154
6155         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
6156         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
6157         and gtkiconfactory.h functions
6158
6159         * gtk/gtkiconfactory.c: add some docs in here
6160
6161         * gtk/gtkmain.c (gtk_get_default_language): document
6162         (gtk_get_current_event): document
6163         (gtk_get_current_event_state): document
6164         (gtk_get_event_widget): document
6165
6166         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
6167
6168         * gtk/gtkcontainer.c: Add some documentation
6169         (gtk_container_add): give a more explanatory warning on adding an
6170         already-parented widget, this is kind of a FAQ and also a common
6171         typo that's easier to debug with a nice warning 
6172
6173         * gtk/gtkcellrenderertoggle.c
6174         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
6175         adding this, it's useless
6176         (gtk_cell_renderer_toggle_set_active): remove
6177         (gtk_cell_renderer_toggle_get_radio): add
6178
6179         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
6180         the NULL cell renderer, that doesn't make any sense to me. 
6181
6182         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
6183         demo code should never use deprecated features.
6184
6185         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
6186         code should never use deprecated features.
6187
6188         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
6189         gtk_widget_queue_clear_area deprecated
6190
6191         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
6192         deprecated
6193
6194         * gtk/gtklabel.h: mark gtk_label_get() deprecated
6195
6196         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
6197         a GdkImage deprecated, replaced by new consistently-named
6198         functions       
6199
6200         * gtk/gtkmain.h: Mark gtk_exit() deprecated
6201
6202         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
6203
6204         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
6205         deprecated
6206
6207         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
6208         so it won't appear in docs and confuse people.
6209
6210         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
6211
6212         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
6213         macros deprecated. (can't mark the type itself deprecated, since
6214         GtkProgressBar is not deprecated and we need the type decl to use
6215         GtkProgressBar)
6216
6217         * gtk/gtkpixmap.h: Mark deprecated
6218
6219         * gtk/gtkoldeditable.h: Mark deprecated
6220
6221         * gtk/gtklist.h: Mark deprecated
6222
6223         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
6224         for anything anymore.
6225
6226         * gtk/gtkctree.h: Mark deprecated
6227
6228         * gtk/gtkclist.h: Mark deprecated
6229
6230         * gtk/gtkpreview.h: Mark deprecated
6231
6232         * gtk/gtkpacker.h: Mark deprecated
6233
6234         * gtk/gtktipsquery.h: Mark deprecated
6235
6236         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
6237
6238         * gtk/gtkvruler.h: Add comment that it will move out of GTK
6239
6240         * gtk/gtkhruler.h: Add comment that it will move out of GTK
6241
6242         * gtk/gtkruler.h: Add comment that it will move out of GTK
6243
6244         * gtk/gtkgamma.h: Add comment that it will move out of GTK
6245
6246         * gtk/gtkcurve.h: Add comment that it will move out of GTK
6247
6248 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
6249
6250         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
6251         gdk_colormap_sync private since it was never exported
6252         in a header file.
6253
6254         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
6255         colormap->colors[] for StaticGray, StaticColor colormaps.
6256
6257         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
6258         was being used as if it was image->bits_per_pixel.
6259
6260         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
6261         for the image in the GdkImage structure since it isn't
6262         reconstructable, and we need it to handle packed types
6263
6264         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
6265         the assumption that on Win32 image->bits_per_pixel == image->depth,
6266         always.
6267
6268         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
6269
6270         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
6271         warning message if no converter can be found. 
6272
6273 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
6274
6275         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
6276         chars to isupper() / tolower(). (#567)
6277
6278         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
6279         to clear up 64-bit warnings. (#567)
6280
6281 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
6282
6283         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
6284         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
6285
6286         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
6287         since some people set $(libdir) separately. (#1290, David Kaelbling)
6288
6289 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
6290
6291         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
6292         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
6293         MAXPATHLEN, but the code here depends on a fixed value.)
6294         (#4524)
6295
6296 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
6297
6298         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
6299         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
6300
6301 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
6302
6303         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
6304         viewable there is no way that moving the node will cause the 
6305         focus row to become not viewable, so omit check on the visibility
6306         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
6307
6308 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
6309
6310         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
6311         selection before inserting new text.
6312
6313 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
6314
6315         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
6316         Make the sensitivity of the reparented child track that of
6317         the original parent menu item. (#34218, David Hodson)
6318
6319         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
6320         the case where the current item is destroyed properly.
6321
6322         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
6323         some edge cases with child-less menuitems.
6324         
6325 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
6326
6327         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
6328         key pop down window. (#12074, Jon K Hellan)
6329
6330 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
6331
6332         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
6333         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
6334         The solution here isn't perfect - you get an extraneous
6335         emission of "toggle", which could conceivably confuse an app,
6336         but better than the current situation. LXR search seems to
6337         indicate that no apps in GNOME CVS connect to "toggle".
6338
6339 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
6340
6341         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
6342         gtk_public_h_sources to directly here to avoid warning when
6343         building srcdir != builddir. (#9656)
6344
6345 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
6346
6347         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
6348         handlers in gtkrange.c return the proper values (TRUE == handled)
6349         (#10316).
6350
6351         This is just the tip of the iceberg, but gtkrange.c is the
6352         most common place where the propagation is problematical,
6353         and also a place where it is almost certainly safe to change
6354         this in the stable branch.
6355
6356         (You don't want right click popups on a range control or anything...)
6357
6358 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
6359
6360         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
6361         area on focus out, even if a background pixmap isn't set.
6362         (#13941)
6363         
6364 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
6365
6366         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
6367         to deal with setting the shape properly when scrolling arrows are
6368         turned on, but not visible because there is sufficient space.
6369         (#13432)
6370
6371 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
6372
6373         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
6374         items with submenus, destroy the item along with the submenu.
6375         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
6376         properly.
6377
6378         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
6379         later.
6380
6381 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
6382
6383         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
6384         the focus widget sometimes wasn't drawn with the default if there
6385         was no default widget.
6386
6387         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
6388         unreference pixmaps. 
6389
6390         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
6391         for some extra safety.
6392
6393 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
6394
6395         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
6396         the text of a cell to the old pointer value better, by
6397         copying the new text before freeing the old text. Some code
6398         cleanup. (#8079, Karl Nelson)
6399
6400 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
6401
6402         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
6403         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
6404
6405 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
6406
6407         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
6408         item from a menu, check to see if it matches 
6409         menu->old_active_menu_item, and if so, unref and clear
6410         old_active_menu_item (Patch from Pavel Cisler)
6411
6412         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
6413         menu_shell->active_menu_item, if it is the child being
6414         removed. (Patch based on that of Gene Ragan, #50337)
6415
6416 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
6417
6418         * gdk/linux-fb/gdkselection-fb.c: 
6419         * gdk/linux-fb/gdkcolor-fb.c: 
6420         * gdk/linux-fb/gdkdrawable-fb2.c: 
6421         * gdk/linux-fb/gdkfont-fb.c: 
6422         * gdk/linux-fb/gdkim-fb.c: 
6423         * gdk/linux-fb/gdkinput.c: 
6424         * gdk/linux-fb/gdkkeyboard-fb.c: 
6425         * gdk/linux-fb/gdkmain-fb.c: 
6426         * gdk/linux-fb/gdkrender-fb.c: 
6427         A bunch of whitespace cleanup.
6428         
6429 2001-01-30  Havoc Pennington  <hp@pobox.com>
6430
6431         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6432         #ifdef GTK_ENABLE_BROKEN.
6433
6434         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
6435         GTK_ENABLE_BROKEN just before including the broken headers.
6436         
6437         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
6438         deprecated types registered.
6439
6440         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
6441         we have to test the broken stuff.
6442
6443         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
6444         
6445 2001-01-30  Havoc Pennington  <hp@redhat.com>
6446
6447         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
6448         here where prev pointer was set to the wrong thing
6449
6450         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
6451         (gtk_tree_path_is_descendant): new function
6452
6453         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
6454         cached length
6455         (gtk_list_store_get_iter): don't modify iter if we can't get the
6456         path.
6457
6458         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
6459         
6460         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
6461         GtkTreeDragDest
6462
6463         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
6464         was causing segfault
6465
6466         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
6467         pointer to NULL
6468
6469         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
6470
6471         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
6472         on returning FALSE
6473         (gtk_list_store_iter_children): ditto
6474         (gtk_list_store_iter_nth_child): ditto
6475         (gtk_list_store_iter_nth_child): ditto
6476         (gtk_list_store_iter_parent): ditto
6477
6478         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
6479         on iter->user_data != NULL instead of silently accepting it.
6480         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
6481         we are returning TRUE.
6482         (gtk_tree_store_iter_children): ditto
6483         (gtk_tree_store_iter_nth_child): ditto
6484         (gtk_tree_store_iter_parent): ditto
6485         (gtk_tree_store_insert): remove handling of parent->user_data ==
6486         NULL, replace with parent == NULL       
6487
6488         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
6489         and a comment explaining things
6490
6491         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
6492         interface support to GtkTreeStore.
6493
6494         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
6495         FALSE if no prev, fix
6496
6497         * gtk/gtktreeview.c (set_source_row): use a row reference
6498         (set_dest_row): use a row reference
6499
6500 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
6501
6502         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
6503         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
6504         (gtk_tree_selection_select_iter): The same as above.
6505
6506 2001-01-26  Havoc Pennington  <hp@redhat.com>
6507
6508         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
6509         which holds a handle to a specific row (particular set of values
6510         in the model, i.e. pointer-identity row).
6511
6512         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
6513         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
6514         Still need to use it for the src/dest row saved on the drag context.
6515
6516 2001-01-26  Havoc Pennington  <hp@redhat.com>
6517
6518         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6519
6520         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6521         not offset by TREE_VIEW_HEADER_HEIGHT
6522         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6523         TREE_VIEW_HEADER_HEIGHT
6524
6525         * configure.in (included_loaders): for me, --with-included-loaders
6526         generates the error "the specified loader yes does not exist",
6527         i.e. the arg defaults to "yes", so change test for value ""
6528         to test for value "yes", and include all loaders in that case.
6529
6530         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6531
6532         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6533         handle TREE_VIEW_VERTICAL_SEPARATOR
6534         (gtk_tree_view_bin_expose): fix to consider the row offset as
6535         pointing halfway into vertical separator.       
6536         (gtk_tree_view_draw_node_focus_rect): ditto
6537
6538         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6539         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6540         (TRUE) to be called.
6541
6542         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6543         debug mode where the invalid region is colored in on invalidate,
6544         so you can see the flicker and know whether your redraw code is 
6545         doing a good job.
6546
6547         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6548         tree window coordinates (clip rect is in tree window coords)
6549
6550         * gtk/Makefile.am: add gtktreednd.[hc]
6551
6552         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6553
6554         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6555         drag-and-drop data operations on a model (so we can set up tree
6556         drag-and-drop automatically)
6557
6558         * gtk/testgtk.c: Add a window to change sensitivity in the
6559         GtkLabel test; add a way to change the entry frame in GtkEntry
6560         test
6561
6562         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6563         (gtk_entry_get_has_frame): new functions to remove the frame
6564         around an entry
6565         (gtk_entry_size_request): shrink requisition if no frame
6566         (gtk_entry_draw_focus): don't draw frame if no frame
6567
6568         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6569         checks inside a cell renderer
6570         (gtk_default_draw_option): ditto for options
6571
6572         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6573         children from the alignment, not the button
6574         (gtk_tree_view_column_init): ref/sink the column, to emulate
6575         GObject refcounting.
6576
6577         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6578         
6579         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6580         Use theme functions to draw the toggles 
6581
6582         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6583
6584         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6585         GdkPangoAttrEmbossed to use in rendering insensitive text
6586
6587         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6588
6589         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6590         using new GDK features
6591         
6592 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6593
6594         * gtk/gtkimage.c:
6595         Splitted gtk_image_clear into gtk_image_clear() and
6596         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6597         to avoid leaks.
6598
6599         * gtk/gtklabel.c (set_markup):
6600         Don't leak text.
6601
6602         * gtk/gtktextlayout.c:
6603         Always free display->shaped_objects.
6604
6605         * gtk/testgtk.c (create_clist):
6606         Don't leak custom style.
6607
6608 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6609
6610         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6611         Don't leak image. Simplify using gdk_colormap_query_color().
6612         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6613
6614         * linux-fb/gdkcolor-fb.c:
6615         Implemented gdk_colormap_query_color.
6616
6617 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6618
6619         * linux-fb/gdkcursor-fb.c:
6620         Don't leak built-in cursors.
6621
6622         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6623         Don't leak tmp_points.
6624
6625         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6626         Don't modify desc. Don't leak font if the PangoFont
6627         isn't found.
6628         
6629         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6630         Free dash_list.
6631
6632         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6633         Don't leak string.
6634         
6635 2001-01-20  Havoc Pennington  <hp@pobox.com>
6636
6637         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6638         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6639         me, matches Pango
6640
6641 2001-01-22  Havoc Pennington  <hp@redhat.com>
6642
6643         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6644
6645         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6646
6647         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6648         Remove, move back to gdk-pixbuf
6649
6650         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6651         to all the word functions
6652
6653         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6654         before doing anything on NULL layout or if we don't have the focus
6655
6656         * gtk/testtext.c (fill_example_buffer): "justification"
6657
6658         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6659         to be called "justification" not "justify"
6660
6661         * demos/gtk-demo/textview.c (create_tags): "justification"
6662         
6663         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6664
6665 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6666
6667         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6668         Don't leak visible_region. Use visible_region instead of region.
6669         
6670         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6671         Don't do extra gdk_drawable_ref(). This is not X.
6672         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6673         gdk_fb_focused_window is ref:ed.
6674         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6675         windows.
6676
6677 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6678
6679         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6680         Don't leak the PangoFontDescriptor.
6681
6682 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6683
6684         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6685         when not realized.
6686         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6687         (gtk_tree_view_realize): add scroll_to support
6688         (gtk_tree_view_finalize): add a finalize method.  Populate.
6689         (gtk_tree_view_insert_column): ref and sink the column.
6690         (gtk_tree_view_append_column): ref and sink the column.
6691         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6692         individual nodes.  Should make the code much more efficient, if
6693         actually used.
6694
6695 2001-01-19  Havoc Pennington  <hp@redhat.com>
6696
6697         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6698         byte_offset variable was being used to mean both "offset into
6699         layout" and "offset into buffer line" which was no longer true
6700         with addition of preedit string; fix
6701
6702 2001-01-19  Havoc Pennington  <hp@redhat.com>
6703
6704         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6705
6706         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6707         function
6708
6709         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6710         implement
6711
6712         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6713         scroll_to_cell, matches TextView scroll functions better
6714         (gtk_tree_view_tree_to_widget_coords): new function
6715         (gtk_tree_view_widget_to_tree_coords): new function
6716         (gtk_tree_view_get_visible_rect): new function
6717         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6718         (gtk_tree_view_draw_node_focus_rect): new function moved from
6719         draw_focus, also, use width of bin_window as width of the focus
6720         rect
6721         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6722         already-expanded rows
6723         (gtk_tree_view_get_cell_rect): new function
6724         (gtk_tree_view_get_path_at_pos): return the click position
6725         relative to the passed-in cell
6726         (gtk_tree_view_set_expander_column): new function
6727
6728         * configure.in: remove gtk-config-2.0 chmod
6729
6730         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6731         and properly handle drags with targets we don't understand
6732         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6733         scrolling anyway
6734         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6735         mark invisible
6736
6737         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6738         function
6739         (gtk_drag_dest_get_target_list): new function
6740         (gtk_drag_dest_set_target_list): new function
6741         
6742         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6743
6744         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6745         related to drag-and-drop
6746
6747 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6748
6749         * gdk/linux-fb/gdkprivate-fb.h:
6750         Define EMULATE_GDKFONT.
6751         Add extra pango_font stuff to GfkFontPrivate.
6752         
6753         * gdk/linux-fb/gdkdrawable-fb2.c:
6754         * gdk/linux-fb/gdkfont-fb.c:
6755         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6756         emulation using PangoFont.
6757
6758 2001-01-17  Havoc Pennington  <hp@pobox.com>
6759
6760         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6761         all the non-deprecated set_foo functions. Added missing object
6762         properties, and added g_object_notify() to setters. 
6763         Wrote docs.
6764         
6765 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6766
6767         * gtk/gtkmain.c
6768         * gtk/gtkrc.c: (Win32) Use the new
6769         g_win32_get_package_installation_(sub)directory() functions.
6770
6771         * config.h.win32.in: New file.
6772         
6773         * config.h.win32: Removed.
6774
6775         * configure.in: Output config.h.win32.
6776
6777         * Makefile.am: Add it to EXTRA_DIST.
6778
6779         * gtk/gtk.def: Update.
6780
6781 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6782
6783         * gtk/gtklabel.c (gtk_label_size_request): Set the
6784         attributes onto the PangoLayout even if they are newly
6785         created from label->pattern.
6786
6787 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6788
6789         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6790
6791         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6792         structures in functions. Fixes bug where gtk_dataset_*
6793         was accidentally still being used in one place, causing
6794         every dest side event to be treated independently.
6795
6796         * gtk/gtkdnd.c: Remove last vestages of handling
6797         ::draw (fixes warning)
6798         
6799         * gtk/gtkentry.[ch]: Add drag and drop support.
6800
6801         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6802         new function gtk_check_drag_threshhold() for checking
6803         to check if (dx,dy) has exceeded the threshhold for starting
6804         a drag and use it everywhere.
6805
6806 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6807
6808         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6809         add -I{includedir}/gtk-2.0.
6810
6811         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6812         gdk/gdk-pixbuf.h: Doc fixups.
6813         
6814         * gtk/gtkobject.h: Remove trailing , from enum
6815
6816 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6817
6818         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6819         Doh! Mixed up x and y.
6820
6821         * gdk/linux-fb/gdkglobals-fb.c:
6822         Removed gdk_fb_pointer_grab_window_events,
6823         added _gdk_fb_pointer_grab_owner_events and
6824         _gdk_fb_keyboard_grab_owner_events.
6825
6826         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6827         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6828         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6829         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6830         Send crossing events after ungrab finished.
6831         (gdk_keyboard_grab): Set ..._owner_events
6832         (type_masks): Move out of function.
6833         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6834         gdk_fb_keyboard_event_window): New functions, return the
6835         window an event should be targeted at. Handles grabs and
6836         event propagation. Can return NULL.
6837         (gdk_event_make): Remove event_mask checking. Now always
6838         returns an event.
6839                 
6840         * gdk/linux-fb/gdkkeyboard-fb.c:
6841         * gdk/linux-fb/gdkproperty-fb.c:
6842         * gdk/linux-fb/gdkselection-fb.c:
6843         Use new event_window/gdk_event_make() behaviour.
6844         
6845         * gdk/linux-fb/gdkmouse-fb.c:
6846         Use new event_window/gdk_event_make() behaviour.
6847         Only send motion events if in the same window.
6848         If grabbed, use cursor from window if sibling of grabbed
6849         window, and cursor from grabbed window otherwise.
6850
6851         * gdk/linux-fb/gdkprivate-fb.h:
6852         Update gdk_fb_window_send_crossing_events, gdk_event_make
6853         and grab varaible declarations. Add gdk_fb_*_event_window().
6854
6855         * gdk/linux-fb/gdkwindow-fb.c:
6856         Use new event_window/gdk_event_make() behaviour.
6857         Keep correct track of focus window.
6858         (gdk_window_set_events): Set all specific button motion masks
6859         if GDK_BUTTON_MOTION_MASK set.
6860
6861         * gtk/gtkdnd.c (gtk_drag_update):
6862         Free info->last_event if gdk_drag_motion returned FALSE.
6863
6864 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6865
6866         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6867         Eliminate redraws when input-only windows are shown or
6868         hidden. Thanks to jpe@archaeopteryx.com.
6869
6870 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6871
6872         * docs/faq/gtk-faq.sgml: FAQ update:
6873           - Update to bugzilla
6874           - Add GTK+ and security/SUID/SGID
6875           - Add DnD question
6876
6877 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6878
6879         * gdk/linux-fb/gdkdnd-fb.c:
6880         Some cleanups.
6881         
6882 2001-01-15  Havoc Pennington  <hp@pobox.com>
6883
6884         * tests/testtreeview.c: add test stuff for CellRendererToggle
6885
6886         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6887         accessor
6888
6889         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6890         only toggle on button press (would do release like GtkButton, but
6891         we'd need implicit grab code for treeview cells)
6892
6893 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6894
6895         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6896
6897         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6898         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6899
6900         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6901         to g_{locale,filename}_{to,from}_utf8 to match current API.
6902
6903         * gtk/makefile.msc.in (gtk_OBJECTS)
6904         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6905
6906         * gtk/gtk.def: Update.
6907
6908 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6909
6910         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6911         implementaion that more closely mimics the events that an X server
6912         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6913         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6914         with nested preview widgets, for instance, more responsive when
6915         you move the mouse quickly into them.
6916         (find_window_for_pointer_event): Make it actually compile.
6917         (gdk_event_translate): Set send_event to the value of
6918         InSendMessage (). This doesn't really mean the same as X11's
6919         send_event flag, but is close enough, says jpe@archaeopteryx.com
6920
6921 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6922
6923         * gdk/linux-fb/gdkdnd-fb.c:
6924         Implemented drag and drop.
6925         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6926         when it tries to free and then copy the same event (info->last_event).
6927         I am not sure about why this happens, but will continue looking.
6928
6929 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6930
6931         * gdk/linux-fb/gdkwindow-fb.c:
6932         Use gdk_window_invalidate_rect instead of
6933         gdk_window_invalidate_rect_clear to minimise flashing.
6934         When hiding windows you need to clear the root window though.
6935
6936 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6937
6938         * gdk/linux-fb/gdkdrawable-fb2.c:
6939         For optization, add an full_shapes argument to gdk_fb_clip_region.
6940         If this is false, only the cliprects of the shapes are used.
6941
6942         * gdk/linux-fb/gdkprivate-fb.h:
6943         Export gdk_fb_window_peek_shape.
6944         Add full_shapes to gdk_fb_clip_region.
6945
6946         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6947         When moving a window, don't clear everything under the it, just the
6948         root window. Makes stuff faster and flash less.
6949         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6950         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6951         offset of the shape.
6952         
6953
6954 2001-01-12  Havoc Pennington  <hp@redhat.com>
6955
6956         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6957         current invalid region, fixes redraw bug while scrolling the 
6958         text widget
6959
6960         * gtk/gtktextview.c, gtk/gtktextview.h:
6961         Rearrange the scrolling/validation/etc. code in a major way, 
6962         so it seems to make sense to me. Probably isn't genuinely that
6963         much better, but...
6964
6965         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6966         notifies
6967
6968         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6969
6970 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6971
6972         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6973         Hide mouse pointer while rotation. Show it afterwards.
6974
6975 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6976
6977         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6978         windows in consideration when generating clip region.
6979
6980         * gdk/linux-fb/gdkfb.h:
6981         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6982
6983         * gdk/linux-fb/gdkprivate-fb.h:
6984         Add shape to GdkWindowFBDatat.
6985         exported gdk_fb_window_get_abs_shape().
6986         removed gdk_fb_draw_lines declaration.
6987
6988         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6989         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6990         send focus changes when there is a grabbed window.
6991         (gdk_window_get_pointer): Handle shaped windows.
6992         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6993         (gdk_fb_window_peek_shape): Returns the shape for a window,
6994         handles GDK_FB_USE_CHILD_SHAPE.
6995         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
6996         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
6997         (gdk_window_shape_combine_mask): Implement.
6998
6999         * gtk/gtkwindow-decorate.c:
7000         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
7001         setting the shape of a window makes the window transparent.
7002
7003 2001-01-11  Havoc Pennington  <hp@redhat.com>
7004
7005         * gtk/gtktreemodelsimple.h: Oops, broke some macros
7006
7007 2001-01-10  Havoc Pennington  <hp@redhat.com>
7008
7009         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
7010         add this function, bug 40251
7011
7012         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7013         of type macro   
7014
7015 2001-01-11  Alexander Larsson  <alexl@redhat.com>
7016
7017         * acconfig.h:
7018         Added ENABLE_SHADOW_FB
7019
7020         * configure.in:
7021         Added --disable-shadowfb
7022
7023         * gdk/linux-fb/gdkcursor-fb.c:
7024         Update shadowfb when updating cursor
7025
7026         * gdk/linux-fb/gdkdrawable-fb2.c:
7027         Added wrappers for shadowfb that calls  the normal drawable
7028         methods, but calls gdk_shadow_fb_update(bounding box) when
7029         GdkWindows are drawed to.
7030         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
7031         which also returns the bounding box.
7032
7033         * gdk/linux-fb/gdkfb.h:
7034         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
7035
7036         * gdk/linux-fb/gdkgeometry-fb.c:
7037         Update shadowfb when scrolling window.
7038
7039         * gdk/linux-fb/gdkglobals-fb.c:
7040         Add _gdk_fb_screen_angle.
7041         
7042         * gdk/linux-fb/gdkkeyboard-fb.c:
7043         Test code for screen rotation. Shift-F2 in the xlate driver
7044         rotates the screen.
7045
7046         * gdk/linux-fb/gdkmain-fb.c:
7047         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
7048
7049         * gdk/linux-fb/gdkmouse-fb.c:
7050         Use fb_width/height instead of modeinfo.xres/yres.
7051
7052         * gdk/linux-fb/gdkprivate-fb.h:
7053         Added fb_men, fb_width, fb_height & fb_stride. When using
7054         shadow fb these can differ from the framebuffer stuff.
7055         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
7056         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
7057         _gdk_fb_screen_angle. Removed CM, RP.
7058
7059         * gdk/linux-fb/gdkrender-fb.c:
7060         Added code for shadowfb handling and screen rotation using
7061         shadowfb.
7062
7063         * gdk/linux-fb/gdkwindow-fb.c:
7064         Use fb_mem, fb_stride, fb_width, fb_height.
7065         Added recompute_rowstride to reset the rowstride of all windows.
7066         Added gdk_fb_recompute_all() which recomputes rootwindow size,
7067         window abs positions and window rowstrides. Usefull when the
7068         rotation has changed.
7069
7070 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
7071
7072         * docs/faq/gtk-faq.sgml: update to make web site updating easier
7073
7074 2001-01-10  Havoc Pennington  <hp@redhat.com>
7075
7076         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
7077         where sibling == iter
7078         (gtk_tree_store_insert_after): handle sibling == iter
7079         (gtk_tree_store_prepend): remove stamp checks
7080         (gtk_tree_store_insert_before): ditto
7081         (gtk_tree_store_append): ditto
7082         (gtk_tree_store_get_path): ditto
7083         (gtk_tree_store_get_value): ditto
7084         (gtk_tree_store_iter_has_child): ditto
7085         (gtk_tree_store_iter_n_children): ditto
7086         (gtk_tree_store_iter_nth_child): ditto
7087         (gtk_tree_store_insert_after): ditto
7088         (gtk_tree_store_is_ancestor): ditto
7089         (gtk_tree_store_iter_depth): ditto
7090         (gtk_tree_store_insert_before): assert that sibling's parent is
7091         the same as the passed-in parent
7092         (gtk_tree_store_insert_after): assert that sibling's parent is
7093         the same as the passed-in parent
7094
7095         
7096         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
7097         function to get the first iterator in a model
7098         
7099         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
7100         conventionally the "root" in this sense is just NULL afaict.
7101
7102         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
7103         where sibling == iter
7104         (gtk_list_store_insert_after): handle case where sibling == iter
7105
7106         * tests/testtreeview.c (run_automated_tests): fairly lame basic
7107         automated tests for ListStore, TreeStore
7108
7109         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
7110         (gtk_list_store_insert): update tail pointer, and fix it to work
7111         (gtk_list_store_insert_before): update tail pointer, and fix it to work
7112         (gtk_list_store_append): use tail to be faster
7113         (gtk_list_store_prepend): fix it, update tail pointer
7114         (gtk_list_store_insert_after): fix it, update tail pointer
7115
7116         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
7117         the list
7118
7119 2001-01-09  Havoc Pennington  <hp@redhat.com>
7120
7121         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
7122         is NULL due to a pending resize
7123
7124         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
7125         column width to values less than 1
7126
7127         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
7128         width to be between min/max width, and still set the width 
7129         even if autosize is turned on, so the tree view can use this 
7130         function in order to autosize.
7131         (gtk_tree_view_column_init): set initial width to 1 not 0
7132
7133         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
7134         setter function to modify column width, so we get notification
7135         (gtk_tree_view_insert_iter_height): ditto
7136         (gtk_tree_view_calc_size): ditto
7137         (gtk_tree_view_check_dirty): ditto
7138
7139         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
7140         properties to change all the interesting attributes of the tree
7141         view column.
7142         (gtk_tree_view_column_set_header_clickable): rename set_clickable
7143         (gtk_tree_view_column_get_clickable): add
7144         (gtk_tree_view_column_set_cell_renderer): don't unset the current
7145         attributes; assume a cell renderer with equivalent object
7146         properties has been swapped in. Do g_object_notify().
7147         (gtk_tree_view_column_set_visible): g_object_notify
7148         (gtk_tree_view_column_get_sizing): rename from get_col_type
7149         (gtk_tree_view_column_set_sizing): g_object_notify
7150         (gtk_tree_view_column_set_width): add g_object_notify
7151         (gtk_tree_view_column_set_min_width): ditto
7152         (gtk_tree_view_column_set_max_width): ditto
7153         (gtk_tree_view_column_set_title): ditto
7154         (gtk_tree_view_column_set_clickable): ditto
7155         (gtk_tree_view_column_set_widget): ditto
7156         (gtk_tree_view_column_set_justification): ditto
7157
7158 2001-01-09  Havoc Pennington  <hp@redhat.com>
7159
7160         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
7161         there are no rows in the model
7162
7163         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
7164         NULL, then return the start of the list
7165
7166         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
7167         if we can't get any rows from an empty model 
7168
7169         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
7170         extraneous * after function pointer typedef usage
7171
7172         * Makefile.am: don't specify full path to cp and rm
7173
7174         * gtk/gtkcellrenderertextpixbuf.c
7175         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
7176         NULL before dereferencing, fixes a segfault that happened from
7177         time to time
7178
7179         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
7180         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
7181         and reindent the function
7182         (gtk_cell_renderer_pixbuf_get_size): indentation
7183
7184         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
7185         we quit it
7186         (gtk_dialog_add_buttons_valist): add g_return_if_fail
7187         (gtk_dialog_set_default_response): New function, to set default
7188         button
7189         (gtk_dialog_set_response_sensitive): New function, to set 
7190         sensitivity of buttons
7191
7192         * gtk/gtkcellrendererpixbuf.c
7193         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
7194         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
7195
7196         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7197         handle any G_TYPE_OBJECT subclass, not just the base class, and 
7198         also boxed types.
7199         (_gtk_tree_data_list_value_to_node): ditto
7200
7201         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
7202         --gtk-debug=tree
7203
7204         * gtk/gtkmain.c: add GTK_DEBUG_TREE
7205
7206         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
7207
7208 2001-01-09  Tor Lillqvist  <tml@iki.fi>
7209
7210         * gdk/win32/gdkevents-win32.c: Implement better mouse
7211         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
7212         (find_window_for_pointer_event): New function.
7213         (gdk_event_translate): Use it when handling mouse events.
7214
7215 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
7216
7217         * configure.in:
7218         Added --with-included-loaders option
7219
7220         * gdk-pixbuf/Makefile.am:
7221         * gdk-pixbuf/gdk-pixbuf-io.c:
7222         Add support for including selected gdk-pixbuf loaders only.
7223
7224         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
7225         gtk_window_set_has_frame):
7226         Added inline documentation.
7227
7228         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
7229         * docs/reference/gdk/tmpl/windows.sgml:
7230         Added inline documentation.
7231
7232 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
7233
7234         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
7235         realizing buttons that have already been realized.
7236
7237 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
7238
7239         * tests/testtreeview.c (main): Show menu items before adding to
7240         option menu.
7241
7242         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
7243         around if we kill them.
7244
7245         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7246         Return if we pass in a NULL model.
7247
7248 2001-01-08  Havoc Pennington  <hp@redhat.com>
7249
7250         * tests/testtreeview.c: hack on this some
7251
7252         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
7253         gtk_tree_store_set_valist, v is for arrays, valist for varargs
7254         list
7255         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
7256
7257         * gtk/gtkliststore.h: Add varargs set() and get() convenience
7258         functions
7259
7260 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7261
7262         * gtk/gtkwindow-decorate.[hc]:
7263         * gtk/Makefile.am:
7264         New files. Contains an implementation of a minimal WM for
7265         linux-fb.
7266
7267         * gtk/gtkwindow.h:
7268         Add the possibility for GtkWindows to specify a frame. This
7269         is used for the window decoration code, but could concievably
7270         be used for X programs too (xmms style windows).
7271         GtkWindow->frame is the toplevel window if the window is framed.
7272         The signal frame_event gets all events that are targeted to
7273         GtkWindow->frame.
7274         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
7275         
7276         * gtk/gtkwindow.c:
7277         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
7278         Call out to gtkwindow-decorate.c for WM support in linx-fb.
7279
7280 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7281
7282         * docs/README.linux-fb:
7283         Correct filename ~/.pangoft2_aliases
7284
7285         * gdk/gdkwindow.h:
7286         Added new function gdk_window_get_decorations.
7287
7288         * gdk/linux-fb/gdkfb.h:
7289         Removed _gdk_window_get_decorations declaration.
7290         Renamed _gdk_window_set_child_handler to
7291         gdk_fb_window_set_child_handler.
7292
7293         * gdk/linux-fb/gdkwindow-fb.c:
7294         Renamed _gdk_window_set_child_handler to
7295         gdk_fb_window_set_child_handler.
7296
7297         * gdk/x11/gdkwindow-x11.c:
7298         New function gdk_window_get_mwm_hints().
7299         Implemented gdk_window_get_decorations.
7300
7301         * docs/reference/gdk/tmpl/windows.sgml:
7302         * docs/reference/gdk/gdk-sections.txt:
7303         Added gdk_window_get_decorations docs.
7304         
7305 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
7306
7307         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
7308         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
7309         gdk_fb_window_send_crossing_events):
7310         Possibly send focus events when the mouse moves from one
7311         window to another.
7312
7313 2001-01-07  Tor Lillqvist  <tml@iki.fi>
7314
7315         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
7316         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
7317         to match current API.
7318
7319         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
7320         environment variable is set, don't call g_error when on a
7321         palettized (PseudoColor) display. Some people want to use GTK+ 
7322         in 256-colour mode even though works only partially.
7323
7324         * gdk/gdk.def
7325         * gtk/gtk.def
7326         * gtk/makefile.mingw.in: Update.
7327
7328 2001-01-05  Havoc Pennington  <hp@redhat.com>
7329
7330         * tests/testtreeview.c: hack on this a bit
7331
7332         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
7333         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
7334
7335         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
7336         was spelled incorrectly
7337         (GTK_IS_TREE_MODEL_SIMPLE): ditto
7338
7339         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
7340         from gtk_tree_view_set_headers_active   
7341
7342         * gtk/gtktexttag.c:
7343         (gtk_text_tag_get_property): handle PROP_DIRECTION
7344         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
7345         properties, bug 40235
7346
7347         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
7348         forward_to_line_end
7349
7350 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
7351
7352         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
7353         modules/input/gtkimcontextxim.c: Adapt to new prototypes
7354         for unicode,locale,filename conversion functions.
7355
7356 2001-01-05  Havoc Pennington  <hp@redhat.com>
7357
7358         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
7359         broken if called on the first position in the buffer.
7360
7361         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
7362         forward_to_delimiters to be called only if we aren't already at
7363         the delimiters.
7364
7365 2001-01-05  Havoc Pennington  <hp@redhat.com>
7366
7367         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
7368
7369 2001-01-05  Alexander Larsson  <alexl@redhat.com>
7370
7371         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
7372         colormap in here. Sync from X port.
7373         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
7374         Sync from X port.
7375         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
7376         This happens now and then, and i don't think it is a bug.
7377         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
7378         != endpoint.
7379         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
7380         GDK_LINE_SOLID.
7381
7382         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
7383         some of the fields filled in at least.
7384
7385         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
7386         miLineArcD is no more, remove it from the function definition.
7387
7388 2001-01-04  Havoc Pennington  <hp@redhat.com>
7389
7390         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
7391         this
7392
7393         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
7394         user_data instead of tree_node
7395
7396         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
7397         TREE_VIEW_COLUMN_SIZE
7398
7399         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
7400         "size" field to "width" finishes bug 40061
7401
7402         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
7403         for bitfields, bug 40268
7404
7405 2001-01-04  Havoc Pennington  <hp@redhat.com>
7406
7407         Rename some stuff:
7408         
7409         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
7410
7411         s/GtkModelSimple/GtkTreeModelSimple/g;
7412         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
7413         s/gtk_model_simple/gtk_tree_model_simple/g;
7414         s/gtkmodelsimple/gtktreemodelsimple/g;
7415
7416         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
7417
7418         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
7419         s/column_set_col_type/column_set_sizing/g;
7420
7421         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
7422         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
7423
7424         s/GtkCellRendererType/GtkCellRendererState/g;
7425         
7426         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
7427         (gtk_cell_renderer_toggle_class_init): change "state" property to
7428         "active", to match GtkToggleButton
7429         (gtk_cell_renderer_toggle_get_active): new function, bug
7430         40269
7431         (gtk_cell_renderer_toggle_set_active): new function
7432         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7433         state through gtk_cell_renderer_set_active
7434
7435 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
7436
7437         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
7438         temporarily until they work again.  Brought up to date with
7439         changes in the model.
7440         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
7441         model.
7442
7443 2001-01-04  Havoc Pennington  <hp@redhat.com>
7444
7445         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
7446         equal to the line length, then position iterator before paragraph 
7447         separators. Fixes crash reported by Mikael Hermansson when
7448         pressing left arrow from the start of a line.   
7449
7450         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
7451         about byte indexes off the end
7452         (iter_set_from_char_offset): add g_error about char offsets
7453         off the end
7454
7455 2001-01-03  Havoc Pennington  <hp@redhat.com>
7456
7457         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
7458
7459         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
7460         of private functions; remove inclusion of private headers.
7461
7462         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
7463         function, so we don't need private functions in gtktextdisplay.c
7464
7465         * gtk/gtktextiterprivate.h: underscore-ification
7466
7467         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
7468         to instead say "only useful to implement widgets"
7469
7470         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
7471         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
7472         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
7473
7474         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
7475         This function was completely broken
7476
7477         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
7478
7479         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
7480
7481         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
7482
7483         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
7484
7485         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
7486
7487         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
7488
7489         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
7490         gtk_paint_layout
7491
7492         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
7493         gtk_paint_layout
7494
7495         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
7496         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
7497         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
7498         which were not implemented.     
7499
7500         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
7501         insert_pixbuf signal. Rename delete_text to delete_range since it
7502         also deletes pixbufs and child anchors. This almost closes bug
7503         40245 (still need to deal with child anchors)
7504
7505         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
7506         insert_pixbuf, change signal names as appropriate, change types of
7507         signals taking marks/tags to have the specific type, not just
7508         G_TYPE_OBJECT
7509         
7510         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
7511         closes bug 40051
7512
7513         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
7514         unnecessary remove_contents() call
7515         (gtk_option_menu_class_init): add a "changed" signal, closes
7516         bug 40039
7517         (gtk_option_menu_update_contents): emit "changed" if the 
7518         active menu item changes
7519
7520         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7521         cast to GtkObject, reported by Jonas Borgstrom
7522         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7523         we can't do stuff with side effects in finalize. Instead, spew a
7524         warning if the loader isn't closed.
7525
7526         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7527         colormap in here, non-X ports probably need to sync to this change
7528
7529         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7530         assertion that colormap != NULL, you can set the colormap to NULL
7531         if you like.
7532         
7533         * Makefile.am: remove gtk-config-2.0
7534
7535         * configure.in: Use pkg-config to locate GLib. Remove
7536         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7537         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7538         Use pkg-config to locate Pango. Output correct Pango libs to
7539         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7540
7541         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7542         files
7543         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7544         X11 pc files
7545
7546         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7547         unref from here
7548
7549 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7550
7551         * configure.in:
7552         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7553
7554 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7555
7556         * gtk/gtktextlayout.c
7557         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7558         variable when moving back onto a single line.
7559
7560 2001-01-01  Havoc Pennington  <hp@redhat.com>
7561
7562         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7563
7564         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7565
7566         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7567         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7568
7569 2001-01-01  Havoc Pennington  <hp@redhat.com>
7570
7571         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7572
7573         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7574         GtkTextAttributes
7575
7576         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7577         #40246
7578         (gtk_text_attributes_copy_values): rename from 
7579         gtk_text_attributes_copy
7580         (gtk_text_attributes_copy): a more standard GTK copy function, 
7581         which returns a new object
7582
7583 2001-01-01  Havoc Pennington  <hp@redhat.com>
7584
7585         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7586         
7587         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7588         don't fill in tree_view->priv->selection, kind of an unexpected
7589         side effect
7590
7591         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7592         gtkintl.h
7593         
7594         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7595         gtkintl.h
7596         (gtk_cell_renderer_get_property): remove calls to g_value_init
7597
7598         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7599         gtkintl.h
7600
7601         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7602         and include gtkintl.h
7603         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7604         property names
7605
7606         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7607         GtkTreeSelection
7608         (_gtk_tree_selection_new_from_with_view): rename, return
7609         GtkTreeSelection
7610         (_gtk_tree_selection_set_tree_view): rename with uscore
7611         (gtk_tree_selection_get_selected): fill in the "model" out param
7612         first, so it gets filled in even if we return at the top of the 
7613         function
7614         (gtk_tree_selection_real_select_all): add a comment and an else{}
7615         to clarify this a bit
7616         (gtk_tree_selection_real_unselect_all): add the same else{}
7617
7618         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7619         set_tree_view to have underscore prefixes, move them to the
7620         private header, fix return type of new_with_tree_view
7621         (struct _GtkTreeSelection): mark struct
7622         fields private  
7623
7624         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7625         GtkTreeModelFlags, not a guint
7626         (gtk_tree_path_prev): return gboolean not gint
7627         (gtk_tree_path_up): return gboolean not gint
7628
7629         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7630         return GtkTreeModelFlags, not a guint
7631
7632         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7633         that child model is non-null before unrefing it
7634         (g_value_int_compare_func): make this a qsort compare func, not 
7635         a boolean predicate
7636
7637         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7638         (add -umn to the end), and mark it unimplemented
7639         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7640         I don't see what it's for - doesn't the model always sort itself?
7641         (gtk_tree_model_sort_set_compare): this had the wrong signature
7642
7643         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7644         Fix the docs to say that it destructively replaces existing
7645         attributes (previously said that it added attributes).
7646         (gtk_tree_view_column_set_visible): canonicalize bool before
7647         equality testing. Also, check for realization before
7648         hiding/showing the tree_column->window; if this window could exist
7649         before realization, then it's busted and needs fixing, we can't 
7650         create GDK resources pre-realization. Also, remove
7651         superfluous queue_resize(), since set_size() does that for us.
7652         (gtk_tree_view_column_set_col_type): check realization before 
7653         using tree_column->window
7654
7655         * gtk/gtktreedatalist.c: fix filename in copyright notice
7656
7657 2000-12-31  Havoc Pennington  <hp@pobox.com>
7658
7659         * gtk/gtktextview.c: Rearrange all the
7660         scroll-while-dragging-or-selecting code to be different, not
7661         necessarily better. ;-)
7662         (gtk_text_view_scroll_to_mark): Change this
7663         function to take within_margin as a fraction instead of a pixel
7664         value, and to take alignment arguments (indicating where to align 
7665         the mark inside the visible area)
7666         
7667         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7668         to GtkObject
7669
7670         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7671         behavior so that offsets past the end of the line are not 
7672         allowed, and an offset equal to the line length moves the iterator
7673         to the next line
7674         (gtk_text_iter_set_line_index): make parallel change
7675         (gtk_text_iter_get_bytes_in_line): add this function
7676         
7677         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7678         of byte indexes off the end of the line; byte index at the end of
7679         the line now returns FALSE and doesn't fill in the requested
7680         values, byte index past the end of the line is an error.  Also,
7681         don't allow -1 offset anymore, since its meaning is unclear.
7682
7683         This change exposes some bug in visual cursor motion, where we
7684         end up with a huge invalid byte index; needs fixing. Symptom of 
7685         bug is a crash when you hit up arrow.
7686         
7687         (_gtk_text_line_char_locate): match the change to byte_locate
7688
7689         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7690         from start of line properly. fixes bug reported by Mikael
7691         Hermansson where backspace would delete all text before the
7692         cursor.
7693
7694 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7695
7696         * gdk/win32/gdkwindow-win32.c
7697         (gdk_window_impl_win32_get_visible_region): New function, as in
7698         the X11 backend.
7699         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7700         instead of duplicating the same code here.
7701
7702         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7703         GDK_COLORMAP macro.
7704
7705         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7706         destroy function.
7707         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7708         access that.
7709
7710         * gtk/gtk.def: Update.
7711
7712         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7713
7714 2000-12-30  Havoc Pennington  <hp@pobox.com>
7715
7716         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7717         colormap on input only windows, to avoid special cases all over
7718         the code for these windows.
7719
7720 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7721
7722         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7723         we are on a palettized display ("PseudoColor" in X11), as the code
7724         for that doesn't work anyway, and never has.
7725
7726 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7727
7728         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7729         Don't use isprint() for chars > 255.
7730
7731 2000-12-21  Havoc Pennington  <hp@redhat.com>
7732
7733         * tests/testtreeview.c: more work
7734
7735 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7736
7737         * docs/README.linux-fb:
7738         Update the docs to the new pangoft2 way.
7739
7740 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7741
7742         * configure.in:
7743         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7744         pango version.
7745         Remove modules/linux-fb/Makefile.
7746
7747         * gdk/linux-fb/gdkdrawable-fb2.c:
7748         Render glyphs using freetype.
7749
7750         * gdk/linux-fb/gdkfb.h:
7751         Add new fb-specific functions needed for managing windows.
7752
7753         * gdk/linux-fb/gdkmain-fb.c:
7754         Remove gdk_font_init/fini() calls.
7755
7756         * gdk/linux-fb/gdkpango-fb.c:
7757         Remove old implementation. Use pangoft2 instead.
7758
7759         * gdk/linux-fb/gdkprivate-fb.h:
7760         Remove PangoFBFont and related stuff.
7761
7762         * gdk/linux-fb/gdkwindow-fb.c:
7763         Implement drawable->get_visible_region.
7764         Implement support for _gdk_window_set_child_handler () and
7765         _gdk_window_get_decorations().
7766
7767         * modules/Makefile.am:
7768         Remove linux-fb subdir.
7769
7770         * modules/linux-fb/*:
7771         Removed all.
7772         
7773 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7774
7775         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7776         calls, as they are no longer needed.
7777
7778         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7779         
7780         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7781         figure out how to emit a signal on an interface.
7782
7783 2000-12-20  Havoc Pennington  <hp@redhat.com>
7784
7785         * tests: new directory to contain tests, gtk/test* should move
7786         here sometime (with appropriate on-cvs-server hackery)
7787
7788         * tests/testtreeview.c, tests/Makefile.am: a test
7789         
7790         * configure.in (AC_OUTPUT): add tests/Makefile
7791
7792         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7793         and "invisible_set" which were missing
7794
7795         * gtk/gtkrbtree.h: some cheesy indentation fix
7796         
7797 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7798
7799         * gtk/gtkinvisible.c (gtk_invisible_realize):
7800         Attach the style to the window so that the style it is not
7801         leaked when unrealizing the window.
7802
7803 2000-12-18  Havoc Pennington  <hp@redhat.com>
7804
7805         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7806         begin/end user action where appropriate
7807         (gtk_text_view_commit_handler): add begin/end user action
7808
7809         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7810         bracket interactive operations with begin/end user action pair.
7811         
7812         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7813         "interactive" arg from insert_text and delete_text signals.
7814         Add begin_user_action, end_user_action signals
7815         (gtk_text_buffer_begin_user_action): 
7816         (gtk_text_buffer_end_user_action): New functions to delimit 
7817         a user-visible action
7818
7819         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7820         signals.
7821         
7822 2000-12-18  Havoc Pennington  <hp@redhat.com>
7823
7824         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7825         was pretty non-working.
7826
7827         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7828         by passing the length to g_utf8_validate().
7829
7830 2000-12-16  Havoc Pennington  <hp@pobox.com>
7831
7832         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7833         Port to GObject, can go back in gdk-pixbuf after setting up 
7834         a gdk-pixbuf-marshal.h header over there.
7835
7836         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7837         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7838         args
7839         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7840         set
7841         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7842         here, do it when we create the buttons later
7843         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7844         (gtk_tree_view_map): paranoia checks that column->button is shown 
7845         and unmapped
7846         (gtk_tree_view_size_request): only request visible children.
7847         Move header size calculation in here, for cleanliness, and 
7848         to maintain invariants for child widgets if we eventually 
7849         let users set different children inside the buttons
7850         (gtk_tree_view_map_buttons): factor out code to map buttons,
7851         since it was being called several times
7852         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7853         windows instead of just moving them; their height may change 
7854         if we allow random widgets in there, or the theme changes.
7855         (gtk_tree_view_size_allocate): move button size allocation 
7856         above emitting the scroll signals, to ensure a sane state when we
7857         hit user code
7858         (gtk_tree_view_button_release): remove queue_resize after
7859         tree_view_set_size(), set_size() will handle any resize queuing
7860         that's needed
7861         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7862         draw_focus goo
7863         (gtk_tree_view_focus): use gtk_get_current_event() and
7864         gdk_event_get_state()
7865         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7866         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7867         semicolon
7868         (gtk_tree_view_create_button): show the button here
7869         (gtk_tree_view_button_clicked): actually emit the clicked signal
7870         on the column
7871         (_gtk_tree_view_set_size): return right away if the size is
7872         unchanged, as a cheesy optimization
7873         (gtk_tree_view_setup_model): rename set_model_realized to 
7874         setup_model to match the flag that indicates whether we've 
7875         called it
7876         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7877         exist, because set_scroll_adjustment does that and it shouldn't
7878         matter what order you call these in
7879         (gtk_tree_view_get_vadjustment): ditto
7880         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7881         for paranoia
7882         (gtk_tree_view_set_headers_visible): call
7883         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7884         (gtk_tree_view_append_column): clarify whether the return value
7885         is the count of columns before or after, and do the increment 
7886         separately from the return statement so you can tell from the code.
7887         (gtk_tree_view_remove_column): ditto
7888         (gtk_tree_view_insert_column): ditto
7889         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7890         outside the existing range, the docs say that outside-range
7891         columns are allowed, so we handle them as documented. (Presumably
7892         this allows a nice loop with column != NULL as test.)
7893         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7894         mean (left/right/center etc.).
7895         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7896         (gtk_tree_view_expand_row): add docs
7897         (gtk_tree_view_collapse_row): add docs
7898
7899         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7900         function to emit the clicked signal on a column
7901         
7902         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7903         state of an event
7904         (gdk_event_get_time): don't treat GDK_SCROLL 
7905         as a button event, remove default case from switch so gcc 
7906         will whine if we don't explicitly handle all event types
7907
7908         * gtk/gtktreeselection.h: added some FIXME 
7909         
7910         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7911         "columns" to "n_columns" and "column" to "columns" for clarity
7912
7913 2000-12-16  Havoc Pennington  <hp@pobox.com>
7914         
7915         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7916         stuff. This should make e.g. the delete key work again in the
7917         text widget...
7918         (gtk_text_iter_forward_cursor_positions): handle negative count
7919         (gtk_text_iter_backward_cursor_positions): handle negative count
7920         (gtk_text_iter_forward_word_ends): handle negative count
7921         (gtk_text_iter_backward_word_starts): handle negative count
7922
7923         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7924         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7925         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7926         GObject. No doubt will cause breakage.
7927
7928         * demos/gtk-demo/textview.c: remove hacks around
7929         non-GObject-ification of the text objects
7930
7931         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7932         the text tag
7933         
7934 2000-12-14  Havoc Pennington  <hp@pobox.com>
7935
7936         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7937         that we have Xrender
7938
7939 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7940
7941         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7942         Add two virtualized functions gdk_drawable_get_clip_region - to
7943         get the clip region when drawing.
7944         
7945         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7946         use invalidate_region.
7947
7948         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7949         region.
7950
7951         * acconfig.h configure.in: Check for Xft. For now, assume
7952         that if Xft is found, Pango was compiled with Xft support
7953         as well.
7954
7955         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7956         gdk_colormap_query_color().
7957         
7958         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7959         with Xft if appropriate.
7960
7961         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7962         a pangoxft context if we have XFT and the environment
7963         variable GD_USE_XFT is set.
7964         
7965         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7966         and also possibly an XftDraw structure.
7967
7968         * gtk/gtkfontsel.c: Handle the case where the font from the
7969         style doesn't match any of the fonts a bit better.
7970         
7971         * gtk/testgtk.c: Add tabs between directional segments for
7972         hebrew/arabic test. (Not really necessary, just a little
7973         prettier.)
7974
7975 2000-12-14  Havoc Pennington  <hp@redhat.com>
7976
7977         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7978         reading a file
7979
7980 2000-12-14  Havoc Pennington  <hp@redhat.com>
7981
7982         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7983         unused call to get_last_line()
7984
7985         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7986         here until boxed is working (and maybe after that - we should
7987         really not gratuitously break old code)
7988
7989         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7990         specific types for font_desc and tabs args, move them to
7991         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7992         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7993
7994         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
7995         use GTK_TYPE_POINTER for signal signatures as a hack-around
7996
7997         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
7998         PangoTabArray
7999
8000         * gtk/gtktextlayout.c (line_display_iter_to_index): 
8001         make static
8002         (line_display_index_to_iter): make static
8003
8004         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8005         to marshal a string not a boxed
8006
8007         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
8008
8009         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
8010         since the UTF-8 isn't validated yet
8011
8012         * gtk/gtktextsegment.c (char_segment_check_func): don't require
8013         lines to end in '\n'
8014         
8015         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
8016         forward_to_delimiters, and grapheme boundaries
8017         (gtk_text_view_delete_from_cursor): properly handle non-newline
8018         delimiters, and grapheme boundaries
8019
8020         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
8021         to gtk_text_iter_forward_to_delimiters, and make it work properly
8022         if empty lines end with a character other than '\n'
8023
8024         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
8025         position
8026
8027 2000-12-15  Tor Lillqvist  <tml@iki.fi>
8028
8029         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
8030
8031         * gtk/gtk.def
8032         * gdk/gdk.def: Update.
8033
8034         * gdk/win32/gdkmain-win32.c
8035         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
8036         gdkmain-win32.c here.
8037
8038         * gdk/win32/makefile.mingw.in (all): No need to make
8039         gdk-win32res.o here, the makefile one step up will call us to make
8040         it.
8041
8042         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
8043         gdkkeys-win32.
8044
8045         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
8046
8047         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
8048         call to g_source_add().
8049
8050         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
8051         leak. Thanks to Andreas Kemnade.
8052
8053 2000-12-13  Havoc Pennington  <hp@pobox.com>
8054
8055         * gtk/gtktextbtree.h: Remove double _ in front of some functions
8056
8057         * gtk/gtktext*.[hc]: update accordingly
8058         
8059 2000-12-13  Havoc Pennington  <hp@pobox.com>
8060
8061         * gtk/gtktextbtree.h: Put _ in front of every function in this 
8062         header file
8063
8064         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
8065
8066 2000-12-13  Alex Larsson  <alexl@redhat.com>
8067
8068         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
8069         Add support for ps2 intellimouse.
8070
8071         * gdkkeyboard-fb.c:
8072         Move shift-F1 repaint handling to xlate handler only.
8073         
8074         * docs/README.linux-fb:
8075         Add imps2 to docs.
8076         Document the new refresh keys.
8077         
8078 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
8079
8080         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
8081
8082         * gtk/gtkbox.c: change property types from (u)long to (u)int for
8083         ::position and ::padding.
8084
8085         * gtk/gtkcontainer.c: make ::border_width an INT property.
8086
8087         * gtk/gtkpacker.c: make ::position an INT property.
8088
8089         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
8090         guard against NULL h/v scrollbars, since this is used at construction
8091         time.
8092
8093         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
8094         internal gtk_clist_constructor().
8095
8096         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
8097         gtk_ctree_constructor().
8098
8099         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
8100         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
8101
8102         * docs/reference/Makefile.am: fun stuff, disabled docs generation
8103         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
8104
8105         * gtk/gtkwidget.[hc]:
8106         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
8107         and gtk_widget_get().
8108         (gtk_widget_new): use g_object_new_valist().
8109         (gtk_widget_set): use g_object_set_valist().
8110
8111         * gtk/gtkobject.[hc]:
8112         removed gtk_object_arg_get_info(), gtk_object_getv(),
8113         gtk_object_query_args(), gtk_object_newv(),
8114         gtk_object_class_add_signals(),
8115         gtk_object_class_user_signal_new(),
8116         gtk_object_class_user_signal_newv(),
8117         gtk_object_arg_set(), gtk_object_arg_get(),
8118         gtk_object_args_collect(),
8119         gtk_object_default_construct(),
8120         gtk_object_constructed(),
8121         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
8122         removed nsignals, signals and n_args members from GtkObjectClass.
8123         (gtk_object_new): use g_object_new_valist().
8124         (gtk_object_set): use g_object_set_valist().
8125         (gtk_object_get): use g_object_get_valist().
8126         
8127         * gtk/gtkcompat.h: define gtk_object_default_construct().
8128         
8129         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
8130         g_object_new().
8131
8132         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
8133         fucntions, cleaned up method assignments (make sure your structures
8134         are setup properly before calling out). removed all GTK_CONSTRUCTED
8135         hacks ;)
8136
8137 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
8138
8139         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
8140         off-by-one error in checks. (Dave Lambert)
8141
8142 2000-12-12  Alexander Larsson  <alexl@redhat.com>
8143
8144         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
8145         Don't free gdk_fb_keyboard twice.
8146
8147 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
8148
8149         * gtk/testgtk.c:
8150         (create_tooltips): 
8151         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
8152         use GObject swapped_signal:: properties instead.
8153
8154         * gtk/gtkcellrenderertoggle.c: 
8155         * gtk/gtkcellrenderertextpixbuf.c: 
8156         * gtk/gtkcellrenderertext.c: 
8157         * gtk/gtkcellrendererpixbuf.c: 
8158         * gtk/gtkcellrenderer.c:
8159         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
8160         missing warnings for invalid property ids, install properties
8161         with g_object_class_install_property() now.
8162         
8163         * gtk/gtksignal.c:
8164         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
8165         
8166 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
8167         
8168         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
8169         to determine if a window is the focus widget within
8170         its toplevel.
8171
8172         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
8173         to be boolean.
8174
8175         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
8176         of the case where the container CAN_FOCUS to here instead
8177         of having it in each individual move-the-focus place.
8178
8179         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
8180         focusing to be geometric in a much more obvious sense. Arrowing
8181         around is still non-intuitive because it isn't perfect and
8182         because entries, etc, grab the arrow keys, but it at least
8183         usually will do what you expect now.
8184         
8185         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
8186         file.
8187
8188         * gtk/gtknotebook.c: Change tabs to be a single item in
8189         the focus chain. Make movement of focus on tabs with arrow
8190         keys wrap around.
8191         
8192         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
8193         CHECK_FIND_CHILD macro to give informative error messages
8194         instead of silent returns.
8195
8196         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
8197         flag since we handle GdkReturn on the tabs.
8198
8199         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
8200         windows rather than sending expose events directly.
8201
8202         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
8203         definition for GtkNotebookPage into .c file, since it is private.
8204
8205         * gtk/testgtk.c (create_notebook): Add option for 
8206         testing borderless notebook.
8207
8208         * gtk/testgtk.c (page_switch): Removed egregious poking
8209         around in GTK+ internals.
8210
8211         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
8212
8213         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
8214         properly through gtk_clist_focus. Make the title headers a
8215         single item in the tab-focus chain, and make left-right wrap
8216         around.
8217
8218         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
8219         focus method so that wrapping around works properly.
8220
8221         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
8222         that is handled for the widget now. 
8223
8224 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
8225
8226         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
8227         widgets as TOPLEVEL.
8228
8229         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
8230         TOPLEVEL widgets are containers.
8231
8232         * gtk/gtkinvisible.h: Remove useless include.
8233
8234 2000-12-11  Havoc Pennington  <hp@redhat.com>
8235
8236         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
8237         Handle chopping off \r\n and 0x2029 in addition to \n before
8238         passing to PangoLayout
8239
8240         * gtk/gtkimcontextsimple.c
8241         (gtk_im_context_simple_get_preedit_string): 
8242         return an empty string if no match is pending
8243
8244         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
8245         assertion that the returned preedit string was sane
8246
8247         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
8248         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
8249         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
8250
8251 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
8252
8253         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
8254         Fix up finalizer to chain to its parent.
8255
8256 2000-12-11  Alexander Larsson  <alexl@redhat.com>
8257
8258         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
8259         Clearified the difference between the keyboard types. Wrote a note
8260         about the magic sysrq key to get out of raw mode.
8261
8262 2000-12-09  James Henstridge  <james@daa.com.au>
8263
8264         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
8265         member to hold masks for detecting the start of a protocol packet.
8266         (mouse_devs): add packet start masks for ps2 and ms device types.
8267         Left the mask for fidmour blank, as I have no idea what it should
8268         be.
8269         (handle_mouse_io): skip bytes until we get to the start of a
8270         packet.  My Logitech mouse seems to be passing an extra NULL pad
8271         byte, and GPM does a similar thing here.
8272         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
8273         this is the ms mouse driver.
8274         (gdk_fb_mouse_ms_packet): fix up button handling, which was
8275         completely broken except for button1.  It was checking the wrong
8276         bit in the packet for the status of the right mouse button, and
8277         wrongly assuming right == button2 rather than 3.  I fixed that and
8278         also added support for middle button (button2).
8279
8280 2000-12-08  Havoc Pennington  <hp@redhat.com>
8281
8282         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
8283         that cause a segfault on text insertion
8284
8285         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
8286         warning
8287
8288         * gtk/gtktextiter.c (test_log_attrs): use
8289         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
8290
8291         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
8292         Get log attrs for a line, using a cache stored on the buffer
8293         
8294         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
8295         reported by Jeff Franks
8296
8297 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8298
8299         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
8300         /dev/ttyS0 -> /dev/mouse
8301
8302 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8303
8304         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
8305         Added dummy gdk_fontset_load.
8306
8307 2000-12-08  Alexander Larsson  <alexl@redhat.com>
8308
8309         * docs/README.linux-fb:
8310         * docs/Makefile.am:
8311         Initial GtkFB docs.
8312         
8313         * gdk/linux-fb/Makefile.am:
8314         Define GDK_DATA_PREFIX.
8315
8316         * gdk/linux-fb/gdkmain-fb.c:
8317         Fix typo.
8318         Change default display to /dev/fb0.
8319
8320         * gdk/linux-fb/gdkpango-fb.c:
8321         Add $(prefix)/share/fonts/ to font path.
8322         
8323 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8324
8325         * gdk/linux-fb/gdkkeyboard-fb.c:
8326         New file containing the abstracted keyboard driver. Most code
8327         taken from gdkinput-ps2.c
8328
8329         * gdk/linux-fb/gdkinput-ps2.c:
8330         Removed file.
8331         
8332         * gdk/linux-fb/Makefile.am:
8333         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
8334
8335         * gdk/linux-fb/gdkcolor-fb.c:
8336         display->fb was renamed to display->fb_fd.
8337
8338         * gdk/linux-fb/gdkcursor-fb.c:
8339         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8340
8341         * gdk/linux-fb/gdkinput.c:
8342         Moved gdk_input_init here from gdkinput-ps2.c
8343
8344         * gdk/linux-fb/gdkmain-fb.c:
8345         display->fb was renamed to display->fb_fd.
8346         Now the tty and the console is opened here instead
8347         of in the keyboard driver. Also check GDK_VT to see what
8348         tty to open.
8349         Move gdk_beep () here from gdkinput-ps2.c
8350         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8351
8352         * gdk/linux-fb/gdkmouse-fb.c:
8353         Add header.
8354         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8355         Return correct keyboard modifiers.
8356         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
8357
8358         * gdk/linux-fb/gdkprivate-fb.h:
8359         Add tty and vt info to display.
8360         Add orignal modeinfo storage to display
8361         Update global functions
8362
8363         * gdk/linux-fb/gdkwindow-fb.c:
8364         Added gdk_fb_window_find_focus().
8365         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8366
8367 2000-12-07  Havoc Pennington  <hp@pobox.com>
8368
8369         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
8370         function, noticed by Alex
8371
8372 2000-12-06  Elliot Lee  <sopwith@redhat.com>
8373
8374         * configure.in: Detect freetype properly
8375
8376         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
8377         above.
8378
8379 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8380
8381         * gdk/linux-fb/Makefile.am:
8382         Add gdkmouse-fb.c
8383         
8384         * gdk/linux-fb/gdkmouse-fb.c:
8385         New file. Abstracted the mouse drivers a bit.
8386
8387         * gdk/linux-fb/gdkcursor-fb.c:
8388         The cursor hide/show functions was moved here from gdkinput-ps2.c.
8389
8390         * gdk/linux-fb/gdkinput-ps2.c:
8391         Removed old mouse handling code. Moved cursor handling code
8392         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
8393         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
8394         gdk_mouse_get_info.
8395
8396         * gdk/linux-fb/gdkmain-fb.c:
8397         Pass NULL pointers for x,y in gdk_mouse_get_info call.
8398
8399         * gdk/linux-fb/gdkprivate-fb.h:
8400         Removed public gdk_fb_find_common_ancestor, added and renamed
8401         functions for the new mouse handling code.
8402
8403         * gdk/linux-fb/gdkwindow-fb.c:
8404         Moved gdk_fb_window_send_crossing_events here. added global
8405         variable gdk_fb_window_containing_pointer. made
8406         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
8407         renamed to gdk_mouse_get_info.
8408
8409 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8410
8411         * gdk/linux-fb/gdkevents-fb.c:
8412         Update to match latest gmain/gsource changes.
8413
8414         * gdk/linux-fb/gdkinput-ps2.c:
8415         Bogus gdk_keymap_get_entries_for_keycode implementation so that
8416         it links. Will be implemented later.
8417
8418 2000-12-03  Havoc Pennington  <hp@pobox.com>
8419
8420         * gdk/Makefile.am: add gdkkeys.[hc]
8421
8422         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
8423         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
8424
8425         * acconfig.h, configure.in: add checks and command line options
8426         for XKB
8427
8428         * gdk/x11/gdkkeys-x11.c: Implement the above functions
8429         
8430         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
8431         and group in the key event
8432
8433         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8434         field with the low-level hardware key code, and a group
8435         field with the keyboard group
8436
8437         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
8438         and declare a couple globals used for keymap handling
8439         
8440         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
8441         hold down Shift-Control and type a hex number to get a Unicode 
8442         character corresponding to the hex number
8443         (gtk_im_context_simple_get_preedit_string): Fix cursor position
8444         (return bytes not chars)
8445
8446 2000-12-05  Elliot Lee  <sopwith@redhat.com>
8447
8448         * gdk/gdkcolor.h: Make GdkColor specify element sizes
8449         to avoid waste on 64-bit platforms.
8450
8451 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
8452
8453         * INSTALL: Fix link to PNG home, remove reference
8454         to fribidi.
8455
8456         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
8457         
8458         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
8459         tested.)
8460
8461         * gtk/gtkcheckmenuitem.c: Permanently turn on
8462         always_show_toggle.
8463
8464         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
8465         be NULL. (Vladimir Klebanov, #26545)
8466
8467         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
8468         some signed/unsigned comparison problems. (#6510,
8469         David Kaelbling)
8470
8471         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
8472         return type to boolean (Oskar Liljeblad, #18648)
8473
8474 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8475
8476         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
8477         Remove bogus colormap setting.
8478
8479 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8480
8481         * gdk/linux-fb/gdkcolor-fb.c:
8482         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
8483
8484         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
8485         Must set colormap.
8486         
8487 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
8488
8489         * docs/tutorial/gtk-tut.sgml: DND updates
8490
8491 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
8492
8493         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8494         Remove old debug g_warning().
8495         (gdk_fb_draw_drawable): The src argument can be either a wrapper
8496         or an implementation, just pass the implementation to draw_drawable_2.
8497         
8498         * gdk/linux-fb/gdkprivate-fb.h:
8499         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
8500
8501         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8502         clear and invalidate area when window is destroyed.
8503         (send_map_events): Remove old commented out code.
8504
8505 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8506
8507         * gdk/linux-fb/gdkpango-fb.c:
8508         Use italic instead of oblique in font aliases.
8509         
8510         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
8511         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
8512         other unsupported functions.
8513
8514 2000-12-04  Havoc Pennington  <hp@redhat.com>
8515
8516         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8517
8518         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8519
8520         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8521
8522         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8523         hack to avoid infinite loops (synthetic expose event) - 
8524         Owen has more appropriate fixes in a branch he'll check in later.
8525
8526         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8527         separator, CR, and CRLF as line ends
8528
8529         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8530         into lines using pango_find_paragraph_boundary(); other bits of
8531         the widget are still going to be broken if the boundary isn't '\n'
8532         though
8533
8534 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8535
8536         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8537         multiply.
8538
8539         * gdk/linux-fb/gdkpango-fb.c:
8540         Copied some 26.6 scaling macros from pango to clean up the rounding.
8541         (pango_fb_font_get_glyph_info): Correct sign on x value.
8542
8543         * gdk/linux-fb/gdkprivate-fb.h:
8544         Removed unreferenced external functions.
8545
8546         * modules/linux-fb/Makefile.am: Use ` instead of '.
8547
8548         * modules/linux-fb/basic.c:
8549         Remove dead code. In particular the dummy lang engine which broke all
8550         pango layouts in GtkFB. Don't include tables-big.i anymore.
8551
8552         * modules/linux-fb/tables-big.i:
8553         Upgrade to latest version from pango. Left for reference, basic_ranges
8554         moved to basic.c.
8555         
8556 2000-12-04  Havoc Pennington  <hp@redhat.com>
8557
8558         Fix bugs Alex found:
8559         
8560         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8561         to "draw"
8562
8563         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8564
8565         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8566
8567         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8568         implementation in here, apparently the expose() implementation was
8569         dead code.
8570
8571 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8572
8573         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8574         Return positive descent.
8575
8576 2000-12-02  Havoc Pennington  <hp@pobox.com>
8577
8578         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8579         method and signal
8580         
8581         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8582         calls gdk_window_process_updates() to push the exposes through
8583         (gtk_widget_class_init): No more draw signal, no
8584         gtk_widget_real_draw()  
8585         
8586         * gtk/gtkbin.c (gtk_bin_draw): remove
8587
8588         * gtk/gtkbox.c (gtk_box_draw): remove
8589
8590         * gtk/gtkbutton.c (gtk_button_draw): remove
8591
8592         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8593
8594         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8595
8596         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8597
8598         * gtk/gtkclist.c (gtk_clist_draw): remove
8599
8600         * gtk/gtkentry.c (gtk_entry_draw): remove
8601
8602         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8603
8604         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8605
8606         * gtk/gtkframe.c (gtk_frame_draw): remove
8607
8608         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8609
8610         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8611
8612         * gtk/gtklayout.c (gtk_layout_draw): remove
8613
8614         * gtk/gtklist.c (gtk_list_draw): remove
8615
8616         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8617
8618         * gtk/gtkmenu.c (gtk_menu_draw): remove
8619
8620         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8621
8622         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8623
8624         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8625
8626         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8627
8628         * gtk/gtkpacker.c (gtk_packer_draw): remove
8629
8630         * gtk/gtkrange.c (gtk_range_draw): remove
8631
8632         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8633
8634         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8635
8636         * gtk/gtktable.c (gtk_table_draw): remove
8637
8638         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8639
8640         * gtk/gtktext.c (gtk_text_draw): remove
8641
8642         * gtk/gtktextview.c (gtk_text_view_draw): remove
8643
8644         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8645
8646         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8647
8648         * gtk/gtktree.c (gtk_tree_draw): remove
8649
8650         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8651
8652         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8653
8654         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8655
8656         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8657
8658         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8659
8660         * gtk/gtkwindow.c (gtk_window_draw): remove
8661
8662 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8663
8664         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8665         a GtkToggleButton is both insensitive and active, it was being
8666         drawn by the GtkButton draw handler which doesn't check the
8667         state. Now it's calling gtk_toggle_button_paint instead.
8668         
8669 2000-12-01  Havoc Pennington  <hp@redhat.com>
8670
8671         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8672         dangling pointers to the appearance attributes from the 
8673         line display
8674
8675         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8676         width/height to mean "full width/height of drawable"
8677
8678         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8679         click to select word/line
8680         
8681         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8682         when getting log attrs. Get a slice, so that pixmaps and stuff
8683         are properly handled.
8684
8685         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8686         paste into the selection (replaces selection now, previously
8687         crashed or added to selection). Reveals longstanding btree bug -
8688         select multiple lines, middle-click on the selection, boom. This
8689         isn't related to my changes though.
8690
8691         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8692         PangoLogAttrs changes
8693         (gtk_entry_move_backward_word): ditto
8694
8695         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8696         functions return bool whether the iter moved onto a
8697         dereferenceable position.
8698  
8699         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8700         functions for motion in terms of display lines.
8701
8702         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8703         get the buffer a mark is inside
8704         
8705 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8706
8707         * gdk/linux-fb/Makefile.am:
8708         * modules/linux-fb/Makefile.am:
8709         Freetype 2 final uses freetype-config
8710
8711         * gdk/linux-fb/gdkpango-fb.c:
8712         Upgrade to use Freetype 2 final.
8713         More flexible support for font aliases, this also fixes a bug with
8714         GtkFontSelector, as the aliases must be visible in the font/family list,
8715         or GtkFontSelector reads uninitialized memory.
8716
8717 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8718
8719         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8720         XGetIMValues to properly terminate variable argument list, and do
8721         NULL return check for ic_values and xim_styles.
8722
8723         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8724         Restore preedit state after XmbResetIC().
8725         
8726         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8727         XvaCreateNestedList() should take XvaNestedList, but not
8728         XvaNestedList*.
8729
8730         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8731         preedit_draw_callback, preedit_caret_callback): Match
8732         "preedit-changed" signal name to "preedit_changed" to be
8733         consistent to the spec.
8734
8735         * gtk/gtkimcontextsimple.c (check_table):
8736         Match "preedit-changed" to "preedit_changed" to be consistent
8737         to the spec.
8738
8739 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8740
8741         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8742         gc->clip_region == NULL>
8743
8744 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8745
8746         Changes by Hans Breuer:
8747         
8748         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8749         Dont't use negative width and height as max_hints. This fixes
8750         Owen's recent testgtk changes for win32.
8751
8752         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8753         gdk_win32_hdc_release): These are exported and may be called with
8754         other drawable types than our GdkDrawableImplWin32 (?).
8755
8756         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8757         so always #define USE_BACKING_STORE.
8758
8759         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8760         of printf for debugging output.
8761
8762         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8763         
8764         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8765
8766         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8767         declaration.
8768
8769         * gtk/gtktexttypes.h: Ditto.
8770
8771         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8772         (GDK_VoidSymbol) also if in case of arg check failure.
8773
8774         * gtk/gtkimcontextsimple.c
8775         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8776         position to the pointer, but to the variable it points to.
8777
8778         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8779
8780         * gtk/gtk.def: Updates.
8781
8782 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8783
8784         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8785         GTK_TYPE_TREE_MODEL.
8786
8787 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8788
8789         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8790         Set the size of the font from the description.
8791         (gdk_text_width): Gross hack that calculates the width
8792         of text by text_length * size/2. This is necessary because
8793         GtkLabel does some ugly gtk_string_width call to calculate
8794         an good size.
8795         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8796
8797 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8798
8799         * docs/tutorial/gtk-tut.sgml: DND updates
8800
8801 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8802
8803         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8804         If you pass width or height == 0 to gdk_window_clear_area they
8805         should be calculated from the window size.
8806
8807 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8808
8809         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8810         a grab, but no grab-cursor, use the cursor from the grabbed
8811         window. (gdk_fb_window_send_crossing_events): Send normal
8812         enter/leave notifications if grab and owner_events == TRUE.
8813
8814 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8815
8816         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8817         Do implicit button grabs, even if the window doesn't
8818         want the event.
8819         (gdk_fb_window_send_crossing_events): If there is a
8820         grab, only the grabbed window gets normal enter/leave
8821         notifications. On ungrab go from grabbed window to current.
8822         Don't send any notification to b when propagating from c -> b.
8823         If setting a grab on window, don't set prev_window.
8824         (handle_mouse_input): Send enter/leave events to the window the
8825         mouse is over, not the grabbed one.
8826         
8827 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8828
8829         * gdk/gdkregion-generic.c: Zap warning.
8830         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8831         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8832
8833 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8834
8835         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8836         The cursor should be hidden if it is part of either the
8837         source or destination region. Not only if it is in both.
8838         (gdk_window_set_transient_for): Silence warnings.
8839
8840 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8841
8842         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8843         The default mode in X is Pie Arcs, therefore that is
8844         what Gtk+ uses.
8845
8846 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8847
8848         * gdk/linux-fb/gdkinput-ps2.c:
8849         Implement correct EnterNotify/LeaveNotify:
8850         (gdk_fb_window_send_crossing_events): New function that sends
8851         all GdkCrossingEvents from the last mouse-window to the specified
8852         destination.
8853         (gdk_fb_window_visibility_crossing): Removed function.
8854         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8855         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8856         instead of gdk_window_get_pointer() for better readability.
8857
8858         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8859         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8860
8861         * gdk/linux-fb/gdkprivate-fb.h:
8862         removed gdk_fb_window_visibility_crossing, added
8863         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8864
8865         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8866         New function that finds the least common ancestor of two windows.
8867         (gdk_window_show, gdk_window_hide):
8868         Use gdk_fb_window_send_crossing_events.
8869         (gdk_fb_window_move_resize): Send configure events to toplevel
8870         windows. Use gdk_fb_window_send_crossing_events.
8871
8872 2000-11-27  Havoc Pennington  <hp@redhat.com>
8873
8874         * gtk/gtkprivate.h (enum): Remove a trailing comma
8875
8876 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8877
8878         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8879         the "changed" callback of the adjustment.  We need to redraw the
8880         spin button's arrows when the adjustment's range changes.
8881         (adjustment_changed_cb): Draw the arrows.
8882         (gtk_spin_button_value_changed): Draw the arrows.
8883
8884 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8885
8886         * gdk/linux-fb/gdkselection-fb.c:
8887         Initial selection implementation.
8888
8889         * gtk/gtkselection.c:
8890         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8891         requestor in gtk_selection_request.
8892         
8893         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8894         Added gdk_selection_property atom.
8895
8896         * gdk/linux-fb/gdkprivate-fb.h:
8897         Export _gdk_selection_window_destroyed.
8898         Removed mask_off_x/y from GdkCursorPrivateFB.
8899         Removed hbearing, added top, left to PangoFBGlyphInfo.
8900
8901         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8902         Call _gdk_selection_window_destroyed
8903         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8904         the root window has been created.
8905         (static_dx_hack, static_dy_hack, compare_draw_rects,
8906         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8907         in region. They are already sorted. Instead just traverse them in
8908         reverse if draw_direction < 0.
8909         
8910         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8911         Double-clicks must be sent after the normal button_press.
8912         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8913         
8914         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8915         Pass _gdk_fb_screen_gc instead of NULL.
8916
8917         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8918         Initialize gdk_selection_property.
8919         (gdk_event_make): Remove unused code.
8920
8921         * gdk/linux-fb/gdkcursor-fb.c:
8922         Make the pixmap for the cursor the same size as the mask. Also remove
8923         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8924         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8925         Now the whole cursor is visible.
8926
8927         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8928         Fix bug where xdest+height instead of ydest+height was used
8929         to calculate if the source and dest overlapped. This fixes the
8930         redraw bug when the main window in testgtk was scrolled when
8931         partially covered by a tall window.
8932         Copy rectangles in region in order depending on draw_direction.
8933         Also moved the draw_direction flipping of start_y and end_y into
8934         the gc functions, as this might not be what all of them want.
8935         (gdk_fb_draw_lines): Support dashed lines.
8936         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8937         so that the text is positioned correctly (was 1 pixel high).
8938
8939         gdk/linux-fb/gdkgc-fb.c:
8940         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8941         all lines were drawn a pixel to short. Also checked the default of
8942         the rest of the values, and they're the same as X now.
8943
8944         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8945         Clean up pixel positioning of the glyphs. Just use bgy->top and
8946         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8947         to all divisions to get correct rounding behaviour.
8948
8949         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8950         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8951         Moved start_y/end_y flip into draw_drawable implementations.
8952         Flip also x rendering when draw_direction < 0.
8953         Remove unneccesary multiply with draw_direction.
8954
8955 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8956
8957         * docs/tutorial/gtk-tut.sgml:
8958           - get rid of gtk_toggle_button_toggled FUD
8959           - start DND section - needs work - based on:
8960                 http://wolfpack.twu.net/docs/gtkdnd/
8961
8962 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8963
8964         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8965         Correct calculation of font metrics. Now GtkEntrys have sane
8966         size.
8967
8968 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8969
8970         * gdk/gdktypes.h:
8971         Add new type GdkSpan
8972         
8973         * docs/reference/gdk/gdk-sections.txt,
8974         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8975         gdk/gdkregion.h:
8976         Implement and document gdk_region_spans_intersect_foreach.
8977
8978         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8979         Add new file gdkrender-fb.c which contains all core
8980         rendering code.
8981         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8982         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8983         (optimized rectangle fillers).
8984
8985         * gdk/linux-fb/gdkdrawable-fb2.c:
8986         Move all rendering code to gdkrender-fb.c.
8987         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8988         Use the new span intersection functions in gdk_fb_fill_spans.
8989         gdk_fb_draw_rectangle() clips filled rectangles and calls
8990         gc->fill_rectangle with the result.
8991         gdk_fb_fill_spans() gets extra argument "sorted".
8992
8993         * gdk/linux-fb/gdkevents-fb.c:
8994         Remove unused includes and defines.
8995         New function gdk_fb_get_time() to get correct time for events.
8996
8997         * gdk/linux-fb/gdkinput-ps2.c:
8998         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
8999         Make sure to set the time of all events.
9000
9001         * gdk/linux-fb/gdkmain-fb.c:
9002         Use gdk_fb_get_time ().
9003
9004         * gdk/linux-fb/gdkprivate-fb.h:
9005         New virtual GC calls: fill_span & fill_rectangle.
9006         Export gdk_fb_get_time().
9007         gdk_fb_fill_spans() gets extra argument "sorted".
9008
9009         * gdk/linux-fb/mi*.c:
9010         Use GdkSpan instead of GdkRectangle.
9011         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
9012         from XFree 4 source)
9013         
9014 2000-11-22    <jrb@redhat.com>
9015
9016         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
9017         reversing the order in an if statement will do.  Doing so managed
9018         to make the treemodelsort half work.  Other half will follow after
9019         I get the insert function fully fixed.
9020
9021 2000-11-21  Elliot Lee  <sopwith@redhat.com>
9022         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
9023         more than 2 bits. Besides, I need to implement an evil hack. :)
9024
9025 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
9026
9027         * docs/tutorial/gtk-tut.sgml: minor corrections
9028
9029 2000-11-20  Jonathan Blandford <jrb@redhat.com>
9030         * gtk/gtktreemodelsort.h: Add convertion functions to let you
9031           convert to and from relative path's and iters.
9032
9033         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
9034           testing sorting functions a bit better.  Currently broken -- will
9035           fix in morning.
9036
9037 2000-11-20  Havoc Pennington  <hp@redhat.com>
9038
9039         * gtk/gtkwidget.c: Documented a bunch of functions in here
9040         (gtk_widget_realize): Warn if you try to realize
9041         a widget with no parent that isn't a toplevel
9042         (gtk_widget_intersect): return a gboolean
9043
9044 2000-11-20  Havoc Pennington  <hp@redhat.com>
9045
9046         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
9047         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
9048         scrolling to be implemented in GDK to finish. Also, right now
9049         we just size_allocate all children on every layout change,
9050         which is pretty lame. Test commented out of testtext.c, 
9051         until it works better.
9052
9053 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
9054
9055         * gdk/linux-fb/gdkdrawable-fb2.c:
9056         Removed unused arguments from gdk_fb_drawable_get_pixel().
9057
9058         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
9059         Renamed fidur specific mouse packet data in MouseDevice to
9060         generic. Used it in ps2 mouse handling code to avoid blocking
9061         reads.
9062
9063 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
9064
9065         * demos/gtk-demo/main.c: Changed to have the list become
9066         non-italic when the demo window is destroyed through an external
9067         event (like a close button).  Doing so found three bugs in the
9068         widget.
9069
9070         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
9071
9072         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
9073         we actually set the cell.
9074
9075         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
9076
9077         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
9078         free a leaked path.  Thanks memprof.
9079
9080 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
9081
9082         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
9083         off-by-one error when destroying allocated segments
9084         on failure. (Elliot)
9085
9086 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
9087
9088         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
9089         memleaks found by Evan Martin.
9090
9091 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
9092
9093         * Released 1.3.2
9094         
9095         * NEWS: Updates for 1.3.2
9096
9097 2000-11-17  Tor Lillqvist  <tml@iki.fi>
9098
9099         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
9100         but in general for window system specific events.
9101
9102         * gtk/gtk.def
9103         * gtk/makefile.mingw.in
9104         * gtk/makefile.msc.in: Update.
9105         
9106         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
9107
9108 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
9109
9110         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
9111         distribute gtk.immodules.
9112
9113         * gtk/Makefile.am (install-data-local): Don't install the
9114         gtk.immodules file created for the uninstalled modules;
9115         instead run gtk-query-immodules after install
9116
9117 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9118
9119         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
9120         -rpath to the right install location.
9121
9122         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
9123         -export-dynamic.
9124
9125         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
9126         properly.
9127
9128 2000-11-15  Havoc Pennington  <hp@pobox.com>
9129
9130         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
9131         patch from Mikael Hermansson to temporarily stop blinking while
9132         the user is using the keyboard to type or navigate. 
9133
9134         Also, when blinking, stay on for longer than we stay off. Also,
9135         return from start_cursor_blink if !cursor_visible, to save
9136         checking that flag all over the place before we call
9137         start_cursor_blink.
9138
9139 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
9140
9141         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
9142         only contain a "fontset" line, which is now ignored.
9143
9144         * gtk/gtkentry.c (gtk_entry_button_release): Make 
9145         double-click-to-select-word work.
9146         
9147 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
9148
9149         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
9150         Don't move back one char when we are actually at the end of the 
9151         paragraph.
9152
9153 2000-11-15  Robert Brady  <robert@suse.co.uk>
9154
9155         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
9156         'o' < 'p'.
9157         
9158         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
9159         bind_textdomain_codeset.
9160
9161         (gtk_init_check): Make the warning about translating default:LTR
9162         sterner.
9163         
9164 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
9165
9166         * **/Makefile.am : remove unecessary rules for win32-specific
9167         config-substituted targets. If you want these rules, use
9168         --enable-maintainer-mode (called automatically by autogen.sh).
9169         Stops a lot of unneccessary make-time warnings.
9170
9171         * gtk/gtktext{layout,display}.c: Factor in total width as
9172         well as screen when figuring alignment for word-wrap as well as
9173         no wrap; this is necessary to handle lines that cannot be wrapped
9174         at all.
9175
9176 2000-11-15  Havoc Pennington  <hp@redhat.com>
9177
9178         * gtk/testtext.c: Implement essential color cycling feature
9179
9180 2000-11-15  Havoc Pennington  <hp@redhat.com>
9181
9182         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
9183         when we invalidate the main window.
9184
9185         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
9186         GtkTextView will now invalidate the side windows for us when text
9187         changes.
9188
9189 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
9190
9191         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
9192         unconditionally, since we may need to update the horizontal
9193         scrollbars even if the height didn't change.
9194
9195         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
9196         the extra attrs, since some of them affect size.
9197
9198         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
9199         x_offset correctly.
9200
9201 2000-11-15  Havoc Pennington  <hp@redhat.com>
9202
9203         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
9204         don't move the first line out into the margin, instead move the
9205         whole paragraph in order to make space for the first line within 
9206         the margin
9207
9208 2000-11-15  Havoc Pennington  <hp@redhat.com>
9209
9210         * gtk/gtktextview.c (changed_handler): offset redraw rect by
9211         xoffset in addition to yoffset, so horizontal scrolling doesn't
9212         break redraws
9213
9214 2000-11-15  Havoc Pennington  <hp@redhat.com>
9215
9216         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
9217         from the cursor
9218         (render_layout_line): fix reversed test that caused weird
9219         underlines to get drawn
9220
9221 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9222
9223         * gdk/linux-fb/gdkprivate-fb.h:
9224         Fix debug macros.
9225         
9226 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9227
9228         * gdk/linux-fb/gdkprivate-fb.h:
9229         Added virtual functions set_pixel, get_color,
9230         fill_span and draw_drawable to the GC.
9231         Added global _gdk_fb_screen_gc to use instead of
9232         NULL when drawing to the screen.
9233         Added _gdk_fb_gc_calc_state() prototype.
9234
9235         * gdk/linux-fb/gdkgc-fb.c:
9236         Call _gdk_fb_gc_calc_state() on any gc state change.
9237
9238         * gdk/linux-fb/gdkglobals-fb.c:
9239         Add _gdk_fb_screen_gc
9240                 
9241         * gdk/linux-fb/gdkdrawable-fb2.c:
9242         _gdk_fb_gc_calc_state() calculates best functions
9243         for the GC state and depth.
9244         Moved bpp specialized code to separate functions.
9245         Added optimized 24 bpp AA draw_drawable.
9246
9247         * gdk/linux-fb/gdkevents-fb.c:
9248         Silence gcc warning.
9249
9250         * gdk/linux-fb/gdkimage-fb.c:
9251         Use _gdk_fb_screen_gc
9252
9253         * gdk/linux-fb/gdkwindow-fb.c:
9254         Init and use _gdk_fb_screen_gc
9255
9256         * gdk/linux-fb/mitypes.h:
9257         Remove unused types.
9258
9259 2000-11-14  Havoc Pennington  <hp@pobox.com>
9260
9261         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
9262         to pixels
9263
9264 2000-11-14  Havoc Pennington  <hp@pobox.com>
9265
9266         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
9267
9268         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
9269         unknown char, no real reason we were using a variable. 
9270         Remove gtk_text_unknown_char variable. Fix all the text widget
9271         files accordingly.
9272
9273         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
9274         since the Unicode spec seems to prefer that character for our
9275         purposes.
9276
9277 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
9278
9279         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
9280         value of g_getenv() isn't freeable, so g_strdup it.
9281
9282         * modules/input/inuktitut.c: Inuktitut input method.
9283
9284         * modules/input/Makefile.am: Build this.
9285         
9286 2000-11-14  Elliot Lee  <sopwith@redhat.com>
9287
9288         * gtk/Makefile.am: Install gtk.immodules, needed for operation
9289         of gtk programs.
9290
9291 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
9292
9293         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
9294         reversed > that was causing Home to go to end of previous line.
9295
9296         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
9297         modified-keypresses (leave for bindings.)
9298
9299         * modules/input/Makefile.am: Remove useless -export-dynamic
9300         from module LDFLAGS.
9301
9302 2000-11-14  Havoc Pennington  <hp@redhat.com>
9303
9304         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
9305         higher.
9306
9307         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
9308         account. Also, render rise, underline, background, etc. for
9309         pixbufs as well as text. Also, draw underlines one pixel higher.
9310
9311         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
9312         PangoAttribute for the rise, so it gets drawn properly. Also,
9313         add the GtkTextAppearance attribute for pixbuf/widget segments
9314         as well; we should go ahead and have rise, underline, background,
9315         stipple work for those
9316
9317         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
9318         Pango
9319
9320 2000-11-15  Tor Lillqvist  <tml@iki.fi>
9321
9322         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
9323
9324         * gtk/gtk.def: Update.
9325
9326         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
9327         included.
9328         (gtk_rc_get_im_module_file): Use run-time installation directory
9329         on Win32.
9330
9331         * gdk/win32/rc/gdk.rc: Remove.
9332         * gdk/win32/rc/gdk.rc.in: New file.
9333         * gdk/win32/rc/Makefile.am: New file
9334         * gdk/win32/Makefile.am: Corresponding changes.
9335
9336         * gtk/gtk.rc: Remove.
9337         * gtk/gtk-win32.rc.in: New file.
9338         * gtk/Makefile.am: Corresponding changes.
9339
9340         * configure.in: Corresponding changes.
9341
9342         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
9343         has a built gtkcompat.h. Developers using CVS code on Win32 can
9344         hand-edit it from gtkcompat.h.in.
9345
9346         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
9347         gtkcompat.h from gtkcompat.h.win32.
9348
9349 2000-11-14  Havoc Pennington  <hp@redhat.com>
9350
9351         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
9352         to default to GDK_ACTION_MOVE if the drag is within a single
9353         widget. Defaults to GDK_ACTION_COPY between widgets.
9354
9355 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
9356
9357         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
9358
9359         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
9360
9361         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
9362         srcdir != builddir
9363
9364         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
9365
9366         * configure.in (GTK_VERSION): Up to 1.3.2
9367
9368         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
9369         gtkimcontextxim.h
9370
9371         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
9372         missing doc comment.
9373
9374 2000-11-14  Alexander Larsson  <alexl@redhat.com>
9375
9376         * modules/linux-fb/basic.c:
9377         Use the glib iconv wrappers.
9378
9379 2000-11-13  Havoc Pennington  <hp@pobox.com>
9380
9381         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
9382         still more bugs.
9383
9384         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
9385         scroll the GdkWindows before realization.
9386
9387 2000-11-13  Havoc Pennington  <hp@redhat.com>
9388
9389         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
9390         where GC didn't always get updated properly
9391
9392         * demos/gtk-demo/textview.c (create_tags): Use subattributes
9393         of fonts instead of setting the entire font
9394
9395         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
9396         setting entire font
9397
9398         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
9399
9400         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
9401         a bunch of individually-settable font attributes. You can still 
9402         use the "font" and "font_desc" args, they just set all the font
9403         attributes at once.
9404
9405 2000-11-13 Elliot Lee <sopwith@redhat.com>
9406
9407         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
9408
9409 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
9410
9411         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
9412         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
9413
9414         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
9415         work better.
9416
9417 2000-11-13  Havoc Pennington  <hp@redhat.com>
9418
9419         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
9420         the module file.
9421
9422         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
9423         dest->language
9424
9425         * gtk/testtext.c: Test pixels above/below/inside paragraphs
9426         settings
9427
9428         * gtk/gtktextview.c: Implement object args and setters/getters for
9429         all the aspects of the GtkTextAttributes that are not set from
9430         GtkWidget attributes. This is spacing, justification, margins,
9431         etc.
9432
9433         (gtk_text_view_set_arg)
9434         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
9435         args
9436         (gtk_text_view_class_init): Add args for justify, left_margin,
9437         right_margin, indent, and tabs
9438         
9439
9440         * gtk/gtktextlayout.c (set_para_values): fix to display indent
9441         attribute properly
9442
9443         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
9444         replace with indent attribute
9445
9446         * gtk/gtktextlayout.c (set_para_values): multiply indent by
9447         PANGO_SCALE
9448
9449         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
9450         rearranging code to do that
9451         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
9452         i.e. don't subtract the top_margin first, just to keep
9453         all margin-futzing in one place.
9454
9455         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
9456
9457         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
9458         special case of last line, Pango now handles this itself.
9459         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
9460         Y coordinate
9461         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
9462         (find_display_line_above): wasn't moving the byte index as it
9463         iterated over lines, so always returned byte 0. Also, port to use
9464         PangoLayoutIter.
9465         (find_display_line_below): same problem as
9466         find_display_line_above. Also, port to use PangoLayoutIter.
9467
9468 2000-11-13  Alexander Larsson  <alexl@redhat.com>
9469
9470         * gdk/linux-fb/*.[ch]:
9471         Massive reindent to gtk+ standard. My hands hurt.
9472
9473         * gdk/linux-fb/gdkcolor-fb.c:
9474         Move GdkColorPrivateFB from inherited to windowing_data
9475
9476         * gdk/linux-fb/gdkcursor-fb.c:
9477         _gdk_cursor_new_from_pixmap made static
9478
9479         * gdk/linux-fb/gdkdnd-fb.c:
9480         GdkDragContextPrivate moved to windowing_data
9481
9482         * gdk/linux-fb/gdkdrawable-fb2.c:
9483         Removed endian.h, use glib endianness macros instead
9484         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
9485         and GDK_DRAWABLE_IMPL_FBDATA
9486
9487         * gdk/linux-fb/gdkfont-fb.c:
9488         Add empty gdk_font_load(). Needed for linking of Gtk+.
9489
9490         * gdk/linux-fb/gdkimage-fb.c:
9491         Removed endian.h, use glib endianness macros instead
9492         Moved GdkImagePrivateFB to windowing_data
9493         gdk_image_new_bitmap didn't always allocate enough
9494         memory.
9495
9496         * gdk/linux-fb/gdkinput-ps2.c:
9497         Added semi-working support for MS serial mice.
9498
9499         * gdk/linux-fb/gdkprivate-fb.h:
9500         s/GdkWindowPrivate/GdkWindowObject/
9501         Removed GdkWindowPrivate typedef
9502         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
9503         Removed GDK_DRAWABLE_P
9504         Move GdkColorPrivateFB from inherited to windowing_data
9505         Moved GdkImagePrivateFB to windowing_data
9506
9507         * gdk/linux-fb/gdkvisual-fb.c:
9508         Removed some unused debug code.
9509
9510         * gdk/linux-fb/gdkwindow-fb.c:
9511         Use stock cursors instead of including X headers.
9512         s/GdkWindowPrivate/GdkWindowObject/
9513
9514         * gdk/linux-fb/mitypes.h:
9515         Removed unused types.
9516
9517         * modules/linux-fb/basic.c:
9518         Use the pango fribidi wrappers.
9519
9520 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9521
9522         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9523         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9524         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9525         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9526         GEqualFunc where applicable.
9527         
9528         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9529         pango_font_description_equal as changed in pango.
9530         
9531         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9532
9533         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9534
9535         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9536
9537         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9538
9539         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9540
9541         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9542
9543         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9544         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9545
9546         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9547         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9548
9549 2000-11-12  Havoc Pennington  <hp@pobox.com>
9550
9551         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9552         dir to datadir/gtk+-2.0/demo
9553
9554         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9555         sorts of text widget and Pango font bugs. Urgh.
9556
9557         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9558
9559         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9560         tree that you should double click to see the demo. Fix 
9561         types of variables to reflect changed return values from 
9562         GtkTreeStore and GtkTreeViewColumn constructors.
9563
9564         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9565         newly-created buffer to prepare for GObject semantics
9566
9567         * gtk/testtext.c: don't leak the buffer with GObject semantics
9568
9569         * gtk/testtextbuffer.c: ditto
9570         
9571 2000-11-12  Havoc Pennington  <hp@pobox.com>
9572
9573         Rename this testgtk to gtk-demo to avoid confusion, and 
9574         install it so people can use it as a supplement to 
9575         the documentation.
9576         
9577         * demos/gtk-demo: Moved from demos/testgtk
9578
9579         * demos/testgtk: Removed
9580
9581         * configure.in: make Makefile in gtk-demo
9582         
9583         * demos/gtk-demo/Makefile.am: Install sample source to 
9584         datadir/gtk-demo (maybe there's a better place?), and 
9585         rename the binary to gtk-demo
9586         
9587         * demos/gtk-demo/main.c (load_file): Load installed sample
9588         source if source isn't found in pwd.
9589
9590 2000-11-09  Havoc Pennington  <hp@pobox.com>
9591
9592         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9593         argument to set the char displayed when visibility == FALSE
9594         (gtk_entry_create_layout): If !entry->visible, replace 
9595         all chars with the "invisible char"
9596
9597         * gtk/testgtk.c: Test the invisible_char deal
9598         
9599 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9600
9601         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9602         can't get a native font in the right encoding.
9603
9604 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9605
9606         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9607         respectively.
9608
9609 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9610
9611         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9612         Fix warning when moving between paragraphs.
9613
9614         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9615         delete => delete_from_cursor, insert => insert_at_cursor
9616
9617 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9618
9619         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9620
9621         * modules/input/imthai-broken.c: A Thai input method for use if
9622         Thai keys are really generating Latin1 keysyms.
9623
9624         * modules/input/Makefile.am: Build these.
9625
9626 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9627
9628         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9629         g_filename_{to,from}_utf8 now takes an extra parameter.
9630
9631         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9632         strftime into UTF-8.
9633
9634         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9635         calendars.
9636
9637         (gtk_calendar_paint_day_names): Draw day names in the right 
9638         place.
9639         
9640 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9641
9642         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9643         problem with using result of g_get_charset() backwards -
9644         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9645
9646         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9647         negative min_width/height and max_width/height to
9648         mean "requisition"; this allows setting a window
9649         to be user-resizable in only one direction easily.
9650
9651         * gtk/testgtk.c (create_main_window): Remove hard-coded
9652         usize - set a default size in the vertical direction.
9653
9654 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9655
9656         * gtk/gtkrange.c: Add some missing casts. Support 
9657         2 and 3 button clicks on the arrows to mean 
9658         "move by pages" and "jump to end". (Like gtkspinbutton)
9659
9660 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9661
9662         * gdk/win32/makefile.msc : reflect build module changes
9663
9664         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9665         from GdkPixmap*, cast implementation member instead.
9666
9667         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9668         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9669         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9670         more Gdi functions return value checking. 
9671         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9672         GdkImagePrivateWin32 *.
9673
9674         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9675         menus useable again. Add #pragma message to keep reminded on this issue.
9676         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9677         windows. This allows to enable backing store on Win32!
9678
9679         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9680         in drawable is of impl type. Correct specific type checks appropriate.
9681  
9682         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9683         GDK_WINDOW_DESTROYED before allocating new resources.
9684
9685         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9686
9687         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9688         (gdk_window_foreign_new) initialize parent handle.
9689         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9690
9691         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9692         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9693         problems (e.g. main buttons in testgtk). 
9694
9695 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9696
9697         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9698         gtk_widget_activate for GDK_Return.
9699
9700         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9701         of preedit cursor position.
9702
9703 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9704
9705         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9706         static.
9707
9708 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9709
9710         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9711         out support for multiple locales; that simple doesn't
9712         work reliably with current Xlib
9713
9714         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9715         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9716         Add support for positioning the cursor within the preedit string.
9717
9718 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9719
9720         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9721         at XIM input method module.
9722
9723         * gtk/gtktextview.c: Check for bindings after passing
9724         events to im context filter.
9725
9726 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9727
9728         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9729         empty attribute lists properly.
9730
9731 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9732
9733         * gtk/queryimmodules.c (main): Return non-zero exit
9734         status if errors were encountered querying any
9735         modules.
9736
9737         * modules/input/Makefile.am (moduledir): remove
9738         leftover bin program target.
9739
9740         * docs/make-todo: Fix typo in error message.
9741
9742 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9743
9744         * configure.in: Add modules/input/Makefile
9745
9746 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9747
9748         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9749         don't include gtkthemes.h.
9750
9751         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9752         to point
9753
9754         * gtk/Makefile.am: Add new .c and .h files, build 
9755         gtk-query-immodules and use it to create a gtk.immodules
9756         file for use of test programs.
9757
9758         * gtk/gtkpreview.c: remove extra blank line.
9759
9760 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9761
9762         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9763         Add the ability to add extra tables beyond the default
9764         one, and also the ability to have compose sequences 
9765         that are prefixes of other compose sequences. 
9766
9767         * gtk/gtkimcontextsimple.c: Export a preedit string which
9768         consists of possible candidates for keystrokes that have
9769         been entered but not yet committed.
9770
9771         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9772         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9773
9774         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9775         Add a function to add input-method switching menu items
9776         to a menu.
9777
9778         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9779         when switching input methods.
9780
9781         * gtk/gtkimcontextsimple.[ch]: Change the format of
9782         the compose table to allow compose tables of different
9783         lengths / sequence.
9784
9785 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9786
9787         * gtk/gtkimmodule.[ch]: Support routines for loading
9788         GtkIMContext implementations dynamically at runtime.
9789
9790         * modules/input/imcyrillic-translit.c: A sample input
9791         method (based on GtkIMContextSimple with an extra table),
9792         which demonstrates preedit strings and the module
9793         system for input modules
9794
9795         * gtk/queryimmodules.c: Program to query the available
9796         input modules and write the results into a file.
9797          
9798         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9799         extra config options "im_module_file" (cache file for
9800         input method modules), and "im_module_path" - path
9801         to look for modules when generating cache file.
9802
9803         This doesn't scale.
9804
9805 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9806
9807         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9808         generic code from gtkthemes into a new abstraction
9809         GtkModule which has the logic for implementing
9810         a loadable module which implements a number of 
9811         GObject types.
9812
9813 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9814
9815         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9816         a class into an interface  
9817         
9818         * gtk/gtkoldeditable.[ch]: Move the old editable
9819         implementation into here, so legacy widgets can
9820         still rely on the implemenation. GtkOldEditable
9821         exports GtkEditable. Make selection handling
9822         code use new text conversion functions (and
9823         handle UTF-8 as a side-effect). Use GtkClipboard
9824         for CLIPBOARD.
9825
9826         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9827         Adopt to match above changes.
9828
9829         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9830         avoid GtkOldEditable implementation. Restructure
9831         to reduce number of places that modify state directly.
9832         Move to GtkBindingSet. Display the preedit string.
9833         Queue recomputation of PangoLayout and scroll position
9834         to improve effiency of doing complex changes naively.
9835         Add a menu with cut/copy/paste and input method selection.
9836
9837 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9838
9839         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9840         to set preedit string and attributes; display preedit string by
9841         inserting string and attributes at cursor when creating the
9842         GtkTextLineDisplay.
9843
9844         * gtk/gtktextlayout.c: Move all conversions between byte
9845         positions in PangoLayout and GtkTextIter into new functions
9846         line_display_iter_to_index/index_to_iter that properly
9847         handle the preedit string.
9848
9849         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9850         it to return const char * (eventually will end up
9851         as GCONST char *, most likely.)
9852
9853         * gtk/gtktextview.[ch]: Handle the preedit string, call
9854         gtk_im_context_reset() as necessary, add a menu to switch
9855         input methods.
9856         
9857         * gtk/gtktextlayout.[ch]: Remove useless
9858         gtk_text_layout_get_log_attrs() function.
9859
9860 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9861
9862         * gdk/gdk.def
9863         * gtk/gtk.def: Update.
9864
9865         * gdk/win32/*.c: Add last argument to g_type_register_static()
9866         calls.
9867
9868         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9869
9870         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9871         generated by older wheel mouse drivers. Get the correct y
9872         coordinate from WM_MOUSEWHEEL messages.
9873
9874         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9875         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9876         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9877         Debugging functions.
9878
9879         * gdk/win32/gdkprivate-win32.h: Declare them.
9880
9881         * gdk/win32/gdkinput-win32.h: Add declaration for
9882         gdk_input_window_destroy().
9883
9884         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9885
9886 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9887
9888         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9889         function to help handle keeping things in sync.
9890
9891 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9892
9893         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9894         BOXED marshallers.
9895
9896         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9897         (gtk_list_store_class_init): use the new BOXED marshallers.
9898
9899         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9900         new_with_values to new_with_types.
9901         (gtk_tree_store_get_column_type): add this.
9902         (gtk_tree_store_class_init): use the new BOXED marshallers.
9903
9904         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9905         mirror some POINTER marshallers.
9906
9907 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9908
9909         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9910         allow more interesting iterators.  Also, made the lifecycle of
9911         iterators more explicit.
9912
9913         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9914
9915         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9916         types.
9917
9918 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9919
9920         * demos/testgtk/menus.c:
9921         Changes to make the new testgtk compile after
9922         gtk_menu_append was removed.
9923
9924         * gdk/linux-fb/gdkdrawable-fb2.c
9925         (gdk_fb_get_depth, gdk_fb_get_visual,
9926         gdk_drawable_impl_fb_class_init): Implement
9927         these drawable functions. Now GtkImages work again.
9928
9929         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9930
9931         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9932         
9933         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9934         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9935         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9936         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9937
9938 2000-11-08  Havoc Pennington  <hp@pobox.com>
9939
9940         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9941         visible_set args, don't know where these had gone, I thought they
9942         used to be there
9943
9944         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9945         now we can test the feature and see that it's totally broken.
9946
9947 2000-11-08  Havoc Pennington  <hp@pobox.com>
9948
9949         Make DND copy pixbufs and tags when source and target share a 
9950         tag table.
9951         
9952         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9953         in-process GTK_TEXT_BUFFER_CONTENTS target
9954         (gtk_text_view_drag_data_received): Paste from
9955         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9956
9957 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9958
9959         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9960         API changes.
9961
9962         * gtk/gtkmenu.c: Add support for scrolling menus.
9963         Remove gtk_menu_append/prepend/insert, these have been moved to
9964         gtkcompat.h as #defines.
9965
9966         * gtk/gtkcompat.h.in:
9967         Add compatibility #defines for gtk_menu_append/prepend/insert
9968
9969         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9970         GtkMenuPositionFunc gets an extra argument push_in.
9971         gtk_menu_append/prepend/insert removed.
9972         
9973         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9974         positioning behaviour to fit to scrolling menus.
9975
9976         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9977         into menuitem->submeny. That is wrong, and broke torn
9978         off submenus of torn off menus, since they were unrealized
9979         when the first menu was unrealized.
9980
9981         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9982         gtk_menu_shell_select_item() since these need to be overridden in
9983         GtkMenu.
9984
9985         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9986         positioning behaviour to fit to scrolling menus.
9987         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9988         the current item so that it is prelighted when the menu pops up.
9989         This is a workaround to the fact that the menu doesn't get the
9990         initial enter event (due to grabs).
9991
9992         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9993         s/gtk_menu_append/gtk_menu_shell_append/
9994
9995         * gtk/gtknotebook.c:
9996         s/gtk_menu_insert/gtk_menu_shell_insert/
9997
9998         * gtk/testgtk.c (create_menu, create_menus):
9999         Create the first menu with 50 items so that menu scrolling
10000         can be tested.
10001         
10002         
10003         Patch from Jonathan Blandford  <jrb@redhat.com>
10004
10005         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
10006         system to handle size requests.  First, we ask what the size of
10007         the toggle is.  Then, when allocating the size, we allocate the
10008         toggle_size first.  This way we can have multiple menu-item
10009         classes w/o needing a seperate class for each.
10010
10011         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
10012         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
10013
10014         * gtk/gtkcheckmenuitem.c
10015         (gtk_check_menu_item_toggle_size_request): New function to handle
10016         the toggle size-request.
10017
10018 2000-11-07  Havoc Pennington  <hp@redhat.com>
10019
10020         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
10021         Half-ass somewhat fix this function, so that scrolling to the
10022         insertion point works. Pango hacking is in the future to really
10023         fix it.
10024
10025         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
10026         length of data, no longer used.
10027
10028         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
10029         method contents in here, get rid of destroy method
10030         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
10031         that were backward. Remove debug spew.
10032         (cut_or_copy): Make the clipboard work with insert_range to
10033         preserve tags and pixbufs, not just the primary selection.
10034
10035 2000-11-07  Havoc Pennington  <hp@redhat.com>
10036
10037         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
10038         to gtk_text_mark_get_visible
10039
10040         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
10041         bug that was generating an invalid iterator
10042
10043         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
10044         ensure_char_offsets() in front of code placing the iter in an
10045         invalid state.
10046
10047         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
10048         make override_location arg const
10049         (paste): Replace the selection if we paste into the 
10050         current selection
10051
10052         * gtk/gtkselection.h: Remove "GtkSelectioData"
10053         (struct _GtkSelectionData): move the definition here.
10054
10055         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
10056         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
10057
10058         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
10059
10060         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
10061         (gtk_text_buffer_insert_range_interactive): implement
10062         (gtk_text_buffer_get_tags): Remove, replaced by
10063         gtk_text_iter_get_tags()
10064
10065         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
10066         limit parameter, to avoid infinite linear scan.
10067         (gtk_text_iter_backward_search): Add search limit
10068         (gtk_text_iter_forward_find_char): Add search limit
10069         (gtk_text_iter_backward_find_char): Add search limit
10070
10071 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
10072
10073         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10074         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
10075         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
10076         gdk/linux-fb/gdkwindow-fb.c:
10077         use g_object_new() instead of g_type_create_instance() which
10078         is a private function for fundamental type implementations.
10079
10080         * gdk/linux-fb/gdkinput-ps2.c:
10081         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
10082         instead just store the current modifier state. Add a (somewhat broken)
10083         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
10084         Rename exported function gdk_input_ps2_get_mouseinfo to
10085         gdk_input_get_mouseinfo.
10086
10087         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
10088         gdk/linux-fb/gdkwindow-fb.c:
10089         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
10090         
10091
10092 2000-11-02  Havoc Pennington  <hp@redhat.com>
10093
10094         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
10095         use stock buttons. Should be 100% source compatible, appropriate
10096         filesel fields now point to dialog->vbox and dialog->action_area.
10097         On the bizarre side, dialog->action_area and filesel->action_area
10098         are not the same widget.
10099         (gtk_file_selection_init): Put some padding around the selection
10100         entry, so it isn't touching the GtkDialog separator.    
10101
10102         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
10103         use stock buttons, etc. Should also be source compatible.
10104         Set the dialog default title in _init not _new().
10105         
10106         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
10107         Use stock buttons; don't put a button box inside the existing
10108         dialog button box. Don't bother with push/pop colormap anymore.
10109
10110         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
10111         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
10112         for message dialog, and necessary for the font selection and color
10113         selection with help and apply buttons.
10114         
10115         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
10116         to the created button widget. Set GTK_CAN_DEFAULT on the button.
10117         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
10118         between buttons, put less padding around the action area.
10119         (gtk_dialog_run): Exit on unmap rather than on destroy. 
10120         This will also exit the loop if the widget is hidden.
10121         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
10122         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
10123         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
10124         special-case delete event.
10125
10126         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
10127         formatting
10128         
10129 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
10130
10131         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
10132         button to temporarily disable position recording in the
10133         "saved position" test.
10134
10135 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
10136
10137         * gtk/gtkthemes.c: added compat code that temporarily implements
10138         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
10139         going to be revamped by owen's upcoming GtkModule patches, but
10140         untill then people want gtk to build, right? ;)
10141
10142 2000-11-04  Havoc Pennington  <hp@pobox.com>
10143
10144         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
10145         list
10146
10147         * docs/Changes-2.0.txt: Add note about
10148         gtk_container_get_toplevels()
10149
10150         * gtk/gtktextview.h: formatting
10151         
10152         * gtk/gtktextview.c: don't start descriptions with "Returns",
10153         confuses gtk-doc
10154
10155 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
10156
10157         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
10158         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
10159
10160 2000-11-03  Havoc Pennington  <hp@redhat.com>
10161
10162         * gtk/gtktexttagtable.c: Docs
10163         (gtk_text_tag_table_size): return a signed int
10164
10165         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
10166         (gtk_text_tag_event): make the event_object a GObject
10167
10168         * gtk/gtktextview.c: Write API docs for all functions.
10169
10170         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
10171         for gtk_text_view_get_window_type() called on one of the private
10172         windows.
10173
10174         * gtk/gtktextview.c: Instead of accessing text_view->buffer
10175         directly, call get_buffer() which demand-creates a default
10176         buffer. So gtk_text_view_new() can be used to create a view with a
10177         default buffer in it, if you just want an empty text box users can
10178         put data in. Useful for GUI builders also.
10179
10180 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
10181
10182         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
10183         the charset encodign portion MUST be in lowercase.
10184         * gtk/gtkrc.az: added file for Azeri language
10185
10186 2000-11-03  Havoc Pennington  <hp@redhat.com>
10187
10188         Get widgets working on the btree/buffer side. Display of them 
10189         still doesn't work.
10190         
10191         * gtk/gtktextview.c: start implementing child widget stuff
10192
10193         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
10194
10195         * gtk/gtktextlayout.c: handle embedded widgets
10196
10197         * gtk/gtktextdisplay.c: handle embedded widgets
10198
10199         * gtk/gtktextchild.c: Implement all the child anchor goo
10200
10201         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
10202         function
10203
10204         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
10205         (insert_pixbuf_or_widget_segment): abstract out common portions of 
10206         creating a child anchor or a pixbuf segment.
10207         (gtk_text_btree_create_child_anchor): new function
10208         (gtk_text_btree_unregister_child_anchor): new function
10209
10210         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
10211         allocate_child signal on GtkTextLayout
10212
10213         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
10214         values
10215         (gtk_text_iter_get_child_anchor): new function
10216
10217         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
10218         default handler for the changed signal, which calls
10219         gtk_text_buffer_set_modified(), instead of just always emitting
10220         changed then calling set_modified() manually. I guess this is
10221         maybe more flexible. It seems logical.
10222
10223 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
10224
10225         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
10226         now.
10227
10228         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
10229
10230 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
10231
10232         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
10233         been marked static.
10234
10235 2000-11-02  Havoc Pennington  <hp@redhat.com>
10236
10237         * gtk/testgtk.c (create_labels): had a test backward
10238
10239         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
10240         fields, so the dest GC ends up with the correct clip origin, 
10241         etc. Fixes a bug where colored labels didn't redraw 
10242         properly.
10243
10244 2000-11-02  Alexander Larsson  <alexl@redhat.com>
10245
10246         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10247         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
10248         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
10249         Add last argument to t_type_register_static call.
10250         
10251         * gdk/linux-fb/gdkdrawable-fb2.c:
10252         Add last argument to t_type_register_static call.
10253         export the get_image drawable virtual function.
10254
10255         * gdk/linux-fb/gdkimage-fb.c:
10256         Add last argument to t_type_register_static call.
10257         rename gtk_image_get to _gdk_fb_get_image and
10258         export it for use by gdkdrawable-fb2.
10259
10260         * gdk/linux-fb/gdkprivate-fb.h:
10261         export _gdk_fb_get_image.
10262
10263         * gdk/linux-fb/gdkselection-fb.c:
10264         Add new api call stubs.
10265
10266         * gtk/Makefile.am:
10267         Missing ( in linux-fb part.
10268
10269         * modules/linux-fb/Makefile.am:
10270         Must link with gdk_pixbuf or get unresolved symbol.
10271
10272 2000-11-01  Havoc Pennington  <hp@pobox.com>
10273
10274         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
10275         GTK_TYPE_TEXT_ITER and BOXED marshallers
10276
10277         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
10278
10279         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
10280         
10281         * gtk/gtk-boxed.defs: add GtkTextIter
10282
10283         * gtk/gtkmarshal.list: Add marshallers for text widget that 
10284         properly use OBJECT and BOXED
10285
10286 2000-11-01  Havoc Pennington  <hp@redhat.com>
10287
10288         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
10289
10290         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
10291         before returning it. 
10292         
10293 2000-11-01  Havoc Pennington  <hp@redhat.com>
10294
10295         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10296         Clip the rectangle to be rendered to the drawable, since
10297         get_from_drawable() requires a region within the drawable
10298
10299 2000-11-01  Havoc Pennington  <hp@redhat.com>
10300
10301         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
10302         from coordinates.
10303
10304 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
10305
10306         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
10307         it isn't NULL.
10308
10309 2000-11-01  Havoc Pennington  <hp@pobox.com>
10310
10311         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
10312         on a label
10313         (gtk_label_finalize): unref the attr list if any.
10314
10315         * gtk/testgtk.c (create_get_image): close test on second click
10316         (make_message_dialog): close dialog if it exists
10317
10318         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
10319
10320         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
10321         gdk-pixbuf
10322
10323         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
10324         from Pango markup format
10325         (gtk_label_set_markup_with_accel): ditto but with accelerator
10326         parsing
10327
10328         * gtk/gtkimage.c (gtk_image_expose): reformatting.
10329
10330         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
10331         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
10332         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
10333         call gdk_window_get_origin().
10334
10335         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10336         implement GDK_PIXBUF_ALPHA_FULL
10337         
10338 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
10339
10340         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
10341         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
10342         g_signal_handlers_disconnect_matched to block/unblock and disconnect
10343         multiple handlers respectively, instead of only treating the
10344         first handler found (bug reported by owen).
10345
10346 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
10347
10348         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
10349
10350         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
10351
10352         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
10353         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
10354         gtk/gtktreeviewcolumn.h: Fixed inline docs.
10355
10356         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
10357         widget.  Needs writing someday.
10358
10359         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
10360         the docs.
10361
10362 2000-10-30  Havoc Pennington  <hp@redhat.com>
10363
10364         * gtk/gtktextview.h, gtk/gtktextview.c:
10365         Rename delete_at_cursor delete_from_cursor, and 
10366         move to move_cursor.
10367
10368 2000-10-30  Havoc Pennington  <hp@redhat.com>
10369
10370         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
10371         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
10372         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
10373         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
10374         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
10375         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
10376         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
10377         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
10378         gtktexttypes.h, gtktextview.c, gtktextview.h:
10379
10380         Massive reindentation and reformatting. Arg alignment and comments
10381         still need fixing in various places.
10382
10383 2000-10-30  Havoc Pennington  <hp@redhat.com>
10384
10385         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
10386         to be named insert_at_cursor and delete_at_cursor so C++ can
10387         handle them.
10388
10389 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10390
10391         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
10392         to get a double directory separator in case the home directory
10393         ends with one. This would cause trouble especially on Windows,
10394         where the path will be confused with the syntax for an an UNC
10395         (network share) path \\server\share\path.
10396         (gtk_rc_add_initial_default_files): Ditto.
10397
10398 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
10399
10400         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
10401
10402         * gtk/gtktextview.c: Use correct marshallers.
10403
10404 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
10405
10406         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
10407         use new iter stuff, and added all the appropriate signals et al.
10408
10409         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
10410         code is internal to gtk only.
10411
10412 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10413
10414         * gtk/gtk.def
10415         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
10416         glib-genmarshal etc.
10417
10418 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
10419
10420         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
10421         parallel builds.
10422
10423 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
10424
10425         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
10426
10427 2000-10-27  Robert Brady  <robert@suse.co.uk>
10428
10429         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
10430         en_GB (British), ia (Interlingua).
10431
10432 2000-10-26  Havoc Pennington  <hp@redhat.com>
10433
10434         * gtk/gtktextiter.c (my_strrstr): fix constness warning
10435
10436         Fixed output of:
10437         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
10438         
10439         * gtk/gtktextsegment.c (char_segment_new): rename
10440         (_char_segment_new_from_two_strings): rename
10441         (_toggle_segment_new): rename
10442         
10443         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
10444         (make_clipboard_widget): make it static
10445         (text_get_func): static
10446         (text_clear_func): static
10447
10448         * gtk/gtkcolorsel.c (adjustment_changed): make this function
10449         static
10450         (hex_changed): make it static
10451         (hsv_changed): make it static
10452         (opacity_entry_changed): make it static
10453
10454         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
10455         (toggle_segment_check_func): rename with _gtk
10456
10457         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
10458         (_widget_segment_new): rename
10459         (_widget_segment_add): rename
10460         (_widget_segment_remove): rename
10461         (_widget_segment_ref): rename
10462         (_widget_segment_unref): rename
10463
10464         * gtk/gtktextmark.c (_mark_segment_new): Rename
10465         _gtk_mark_segment_new   
10466
10467 2000-10-26  Havoc Pennington  <hp@redhat.com>
10468
10469         * gtk/gtkmarshal.list: add new marshallers used by the text widget
10470         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10471         types
10472
10473         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
10474         marshaller types
10475
10476         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
10477         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
10478         license on these files.
10479
10480         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
10481         work.
10482
10483         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
10484         runtime random number different for each tree, instead of 
10485         a constant I made up.
10486
10487 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
10488
10489         * gtk/Makefile.am: buncha cleanups, kludged build sources
10490         dependencies with a Makefile: oldest-source-stamp dependancy
10491         for the moment. automake is really fighting us here, with
10492         intentionally not allowing user-defined rules or dependancies
10493         prior to it's -include $(DEP_FILES) statement. sucks rocks!
10494
10495         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
10496         to public headers. tehy have a comment stating that they are
10497         "semi-public" aren't included by gtk.h and if enums popup there,
10498         they can be /*< skip >*/-ed.
10499
10500         * gtk/gtktextlayout.h: 
10501         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
10502         added LGPL... <SIGH>
10503
10504 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
10505
10506         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
10507         GtkTreeIter.  Added iterators everywhere.
10508
10509         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
10510
10511         * gtk/gtktreeviewselection.c: Changed to use the iterators.
10512
10513         * gtk/gtktreestore.c: Changed to use the iterators.
10514
10515         * gtk/gtkliststore.c: Commented out the code.  Will convert to
10516         iterators tomorrow.
10517
10518         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10519         iterators tomorrow.
10520
10521         * gtk/treestoretest.c: Changed to use iterators.
10522
10523         * demos/testgtk/main.c: Moved to use the new iterator system.
10524
10525 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10526
10527         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10528         localization misbehaviour.
10529
10530         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10531         a useless type without copy/free.
10532
10533         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10534         of GTK_TYPE_CTREE_NODE.
10535
10536 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10537
10538         * gtk/gtksignal.c:
10539         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10540         applicable.
10541
10542         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10543         gtk_selection_data_copy and gtk_selection_data_free
10544         do GtkSelectionData work as params in signals.
10545
10546 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10547
10548         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10549         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10550         couldn't they at least give it a non-standard name?
10551         
10552         * gtk/gtktextlayout.c: arg! yet another implementation of
10553         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10554
10555         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10556         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10557         home. now i know this _is_ a conspiracy.
10558
10559         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10560         ::state-changed.
10561
10562         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10563         (gtk_accel_group_create_add): marshaller signature fixups.
10564
10565         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10566         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10567
10568         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10569         anymore.
10570
10571 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10572
10573         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10574         due to the signal system changes, it wouldn't build currently. to
10575         be fixed soon.
10576
10577         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10578
10579         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10580         so it needs gtk_marshal_VOID__ENUM() instead of
10581         gtk_marshal_NONE__UINT().
10582
10583         * gdk/gdk*.c: adapted type registration functions.
10584
10585         * gtk/gtkbindings.c:
10586         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10587         gone.
10588
10589         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10590
10591         * gtk/gtkobject.c:
10592         (gtk_object_destroy):
10593         (gtk_object_shutdown): fixed recursion guards. basically we have to
10594         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10595         is called during ::destroy, and avoid recursion there.
10596
10597         * gtk/gtktypeutils.c:
10598         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10599         boxed_copy/boxed_free. this needs a more general solution based on a
10600         publically installed code-generator utility.
10601
10602         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10603         glib's gobject has support for that now.
10604         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10605
10606 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10607
10608         * gtk/gtksignal.[hc]:
10609         * gtk/gtkmarshal.[hc]:
10610         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10611         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10612         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10613         care of that.
10614
10615         * *.c: marshaller name fixups.
10616
10617         * gtk/gtkmarshal.list: added a comment briefing the format.
10618
10619 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10620
10621         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10622         compatibility macros here now. more specifically, most of
10623         the API is preserved (yes, _most_, nonwithstanding the
10624         following exceptions listed, the API is stil lHUGE ;)
10625         things that got removed completely:
10626         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10627         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10628         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10629         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10630         gtk_signal_remove_emission_hook().
10631         non-functional functions variants:
10632         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10633         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10634         not supported anymore.
10635         (gtk_signal_compat_matched): new internal function to aid
10636         implementation of the compatibility macros, it  provides
10637         functionality to block/unblock/disconnect handlers based
10638         on func/data.
10639
10640         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10641
10642         * *.c: adaptions to new type registration API signatures.
10643
10644 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10645
10646         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10647
10648 2000-10-25  Robert Brady  <robert@suse.co.uk>
10649
10650         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10651         gdk_property_delete): If window == NULL, assume the root window.
10652         (restoring the behaviour that was in 1.2).
10653         
10654         * gtk/testtext.c (save_buffer): Allow creation of new files when
10655         saving.
10656
10657         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10658         calls to read().
10659
10660 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10661
10662         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10663
10664         * gdk/win32/gdkdrawable-win32.c
10665         * gdk/win32/gdkimage-win32.c
10666         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10667         X11 backend.
10668
10669         * gdk/win32/gdkcc-win32.c
10670         * gdk/win32/gdkcolor-win32.c
10671         * gdk/win32/gdkfont-win32.c
10672         * gdk/win32/gdkinput-win32.c
10673         * gdk/win32/gdkmain-win32.c
10674         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10675
10676 2000-10-24  Havoc Pennington  <hp@redhat.com>
10677
10678         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10679         it a static function
10680
10681         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10682         redraw text when a tag is applied to it.
10683
10684         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10685         (gtk_text_tag_affects_nonsize_appearance): private functions to
10686         see if a tag requires various kinds of redraw/layout to be queued
10687         up.
10688
10689         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10690
10691         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10692         at the start of the buffer, so search works by default
10693
10694         * gtk/gtktextiter.c (lines_match): init match_start always
10695
10696         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10697         function, get iter at a line + a byte index
10698
10699         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10700         to set byte position within a line
10701         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10702
10703 2000-10-23  Havoc Pennington  <hp@redhat.com>
10704
10705         * gtk/testtext.c: Re-enable the "find" dialog
10706
10707         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10708         
10709         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10710         the arguments to gdk_draw_drawable were in the wrong order
10711         (gdk_window_paint_init_bg): This function was ignoring the
10712         init_region, instead of clipping to it, so the entire backing
10713         pixmap was cleared on every begin_paint()
10714         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10715         was in here again, the loop kept using the same GtkWindowPaint
10716         over and over.
10717         (gdk_window_begin_paint_region): Fix a bug where we had two
10718         x_offset instead of x_offset and y_offset
10719
10720         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10721         before we get the image.
10722         (gdk_draw_drawable): get the composite before we draw the drawable.
10723         (gdk_drawable_real_get_composite_drawable): default
10724         get_composite_drawable implementation that returns the drawable 
10725         itself
10726
10727         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10728         get_composite_drawable virtual function
10729
10730         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10731         list-walking bug
10732
10733         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10734         make this work if the source drawable is a GdkDrawableImplX11
10735         instead of a public drawable type. This is really broken; the
10736         problem is that GdkDrawable needs a virtual method get_xid(), but
10737         of course that doesn't work in practice. Enter RTTI.
10738
10739         Also, improve mismatched depth message.
10740
10741         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10742         GdkPixmap
10743
10744         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10745         install _gdk_x11_get_image as our implementation of get_image
10746         
10747         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10748         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10749
10750         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10751         gdk_drawable_get_image
10752
10753         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10754
10755         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10756         get_image
10757
10758         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10759         trailing semicolon after for loop
10760
10761 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10762
10763         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10764         where font_desc for widget's context lagged widget's font_desc by
10765         one step.
10766
10767 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10768
10769         * gdk/win32/gdkgc-win32.c
10770         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10771
10772         * gtk/makefile.mingw.in
10773         * gtk/gtk.def: Updates.
10774
10775         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10776         library.
10777
10778         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10779
10780         * gtk/makefile.msc: Remove
10781
10782         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10783
10784         * gtk/Makefile.am: Add it.
10785
10786         * configure.in: Generate it.
10787
10788         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10789         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10790         something even if not implemented, to satisfy picky MSVC.
10791
10792         Patches by Hans Breuer:
10793         
10794         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10795         SetBkMode() and SetTextAlign() before calling
10796         pango_win32_render().
10797
10798         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10799         Set hcliprgn to NULL after destroying it.
10800         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10801
10802         * gdk/win32/gdkgeometry-win32.c
10803         (_gdk_windowing_window_queue_antiexpose): More effective
10804         implementation.
10805
10806         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10807         depth as default, not the visual's.
10808
10809         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10810         against empty title.
10811
10812         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10813         IMAGE_PRIVATE_DATA.
10814
10815         * gdk/win32/gdkimage-win32.c: Use it.
10816
10817 2000-10-22  Robert Brady  <robert@suse.co.uk>
10818
10819         * configure.in: Check for bind_textdomain_codeset
10820
10821         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10822         present, make use of it.
10823
10824         Add a translatable string "default:LTR" which, if translated
10825         to "default:RTL", will cause the default direction to be
10826         Right-to-Left.
10827
10828         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10829         direction if marked as flippable.
10830
10831         * gtk/gtkhscale.c: Mark widget as flippable.
10832         
10833 2000-10-04  Havoc Pennington  <hp@redhat.com>
10834
10835         * gtk/testgtk.c (create_buttons): create some stock buttons
10836         with the default accel group
10837         (create_image): test some new GtkImage features
10838         (make_message_dialog): test GtkMessageDialog
10839         (create_modal_window): fix someone's bizzarro indentation
10840
10841         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10842         GTK_WIN_POS_CENTER_ON_PARENT. 
10843         Add "destroy with parent" setting, which means the window goes
10844         away with its transient parent.
10845         (gtk_window_get_default_accel_group): get the default accel group
10846         for the window.
10847         (gtk_window_set_destroy_with_parent): set/unset destroy with
10848         parent flag
10849         (gtk_window_read_rcfiles): invalidate icon set caches
10850         after reloading rcfiles 
10851
10852         * gtk/gtkenums.h (GtkWindowPosition): add
10853         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10854         on its parent window when the dialog is mapped for the first time.
10855
10856         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10857         a simple message dialog class
10858         
10859         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10860         handler to emit response signal, and maybe later it would
10861         honor a hide_on_delete flag - though that isn't there yet.
10862         Set border width on the vbox to 2, so we get some padding.      
10863         Use a button box for the action area.
10864         (gtk_dialog_key_press): synthesize a delete event if Esc
10865         is pressed and the GtkWidget key press handler didn't 
10866         handle the escape key.
10867         (gtk_dialog_new_with_buttons): new function creates a dialog
10868         with some default buttons in it.
10869         (gtk_dialog_add_action_widget): add an activatable widget
10870         as a button in the dialog - you can also add a non-activatable
10871         widget by accessing the action area directly.
10872         (gtk_dialog_add_button): add a simple button - stock ID or 
10873         label - to the action area
10874         (gtk_dialog_response): emit response signal
10875         (gtk_dialog_run): block waiting for the dialog, return 
10876         the response. Override normal delete_event behavior, so that 
10877         delete_event does nothing inside gtk_dialog_run().
10878
10879         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10880         emitted when an action widget is clicked or the dialog gets
10881         delete_event
10882
10883         * gtk/gtk.h: add gtkmessagedialog.h
10884
10885         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10886
10887 2000-10-18  Havoc Pennington  <hp@redhat.com>
10888
10889         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10890         where any number of empty lines would get skipped
10891
10892         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10893         edge.
10894
10895         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10896         warning about invalid iterators (explain more thoroughly)
10897         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10898
10899         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10900         big
10901
10902         * demos/*.c: Add error handling
10903
10904         * gtk/gtktextbuffer.c: don't modify const iterators
10905
10906         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10907
10908         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10909         on file load
10910
10911         * gtk/gtkiconfactory.c: Update to reflect addition of error
10912         handling to gdk-pixbuf loaders
10913
10914 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10915
10916         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10917         move to new modularized testgtk.
10918
10919 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10920
10921         * gtk/gtktreeview.c: Draw the arrows correctly.
10922
10923         * gtk/gtktreemodel.c: Added user docs.
10924
10925         * gtk/gtk.h: remove gtktreedatalist.h.
10926
10927         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10928         parent when generating my type.
10929
10930         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10931         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10932
10933 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10934
10935         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10936         GtkTreeModel from object to interface.
10937
10938 2000-10-16  Havoc Pennington  <hp@redhat.com>
10939
10940         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10941         compilation
10942
10943 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10944
10945         * gtk/gtktreeselection.c: Add API documentation to all public
10946         functions.
10947
10948         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10949         functions.
10950
10951 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10952
10953         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10954         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10955         docs to all public functions.
10956
10957         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10958         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10959         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10960         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10961         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10962         issue.
10963
10964 2000-10-14  Robert Brady  <robert@suse.co.uk>
10965
10966         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10967
10968 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10969
10970         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10971         values other then G_TYPE_STRING.
10972         * gtk/gtktreeselection.c: Minor commenting updates.
10973         * gtk/gtktreeview.c: Format updates.
10974
10975 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10976
10977         * README.win32: Update.
10978
10979         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10980         lines that had been deleted by mistake (?).
10981
10982         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10983         also the case fg==white and bg==black (but still not randomly
10984         coloured cursors). Thanks to Wolfgang Sourdeau.
10985
10986         * gdk/win32/*.c: Silence gcc -Wall.
10987
10988         * gtk/gtk.def: Add missing entry points.
10989
10990         Fixes by Hans Breuer:
10991
10992         * gdk/makefile.msc
10993         * gdk/win32/makefile.msc: Update.
10994
10995         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
10996         some MSVC thing, presumably), cause breakpoint on failures. Add
10997         GDK_NOR case. Call g_log_set_always_fatal.
10998
10999         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
11000         should be pased by reference.
11001         
11002         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
11003         
11004         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
11005
11006         * gdk/win32/gdkevents-win32.c
11007         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
11008
11009         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
11010         implementation object.
11011
11012         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
11013         not just windows.
11014         
11015         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
11016         Use the wrapper object.
11017         
11018 2000-10-06  Havoc Pennington  <hp@redhat.com>
11019
11020         * Makefile.am (SRC_SUBDIRS): contrib subdir
11021
11022         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
11023         so it can be used in Xlib version
11024
11025         * demos/testpixbuf.c (update_timeout): error checking from 1.0
11026         tree
11027
11028         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
11029         change from 1.0 tree that returns first frame of animation
11030         if the loaded file is an animation.
11031
11032         * contrib: add new directory to hold stuff that comes with GTK+
11033         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
11034         
11035         * configure.in: add contrib/*
11036
11037 2000-10-05  Havoc Pennington  <hp@redhat.com>
11038
11039         * demos/testpixbuf-save.c: add pixbuf save test
11040
11041         * demos/Makefile.am: add testpixbuf-save.c
11042
11043 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
11044
11045         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
11046         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
11047         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
11048         * gtk/gtktreeselection.[ch]: Replaced
11049         "node_selected"/"node_unselected" signal with "selection_changed"
11050         signal.
11051
11052 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11053
11054         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
11055         tree widget.
11056
11057 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11058
11059         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
11060         drawing.
11061
11062 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
11063
11064         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
11065         Move list pointer forwards before removing item from
11066         list. (Crash reported by Salmaso Raffaele)
11067
11068         * gdk/gdkwindow.h: Remove spurious trailing ,
11069
11070         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
11071         dependencies on uninstalled libraries, sorry folks.
11072
11073 2000-10-04  Havoc Pennington  <hp@redhat.com>
11074
11075         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
11076         gtk/gtkiconfactory.c: Fix copyrights    
11077
11078         * demos/testpixbuf.c: add inline pixbuf test
11079         
11080 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
11081
11082         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
11083         Add gdk_window_iconify.
11084
11085         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
11086         (gdk_window_set_geometry_hints): Add win_gravity
11087         to geometry structure.
11088
11089         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
11090         Implement _NET_WM_PING.
11091
11092         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
11093         Set _NET_WM_PID on the client leader.
11094
11095         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
11096         Handle UTF-8 better.
11097
11098         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
11099         UTF-8 better, set _NET_WM_NAME as well. Only set
11100         icon name if it hasn't previously been explicitely 
11101         set.
11102
11103 2000-10-03  Havoc Pennington  <hp@redhat.com>
11104
11105         * gtk/testtextbuffer.c: clean up trailing whitespace,
11106         add extensive tests for tag toggle iteration.
11107         
11108         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
11109         distance
11110
11111         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11112         optimize case where the tag root is on level 1
11113         (gtk_text_line_previous_could_contain_tag): attempt to implement
11114         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
11115         functionality
11116
11117         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
11118         Implement this, though not very efficiently.
11119
11120         * gtk/gtktextiterprivate.h: reformat
11121
11122         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
11123         iterator
11124
11125         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
11126         this to properly revalidate the iterators.
11127
11128         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
11129         properly at the end of the line (and therefore on empty lines)
11130
11131         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
11132         maybe we should return a value...
11133
11134 2000-10-03  Tor Lillqvist  <tml@iki.fi>
11135
11136         * config.h.win32: Guard definition of alloca(). glib.h now handles
11137         that.
11138
11139         * gdk/gdk.def
11140         * gtk/gtk.def: Add new entry points.
11141
11142         Changes just to make GTK+ build without errors on Win32. No hope
11143         of it working in its current state, though...:
11144         
11145         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
11146         some functions from the X11 backend, just to make GTK+ build.
11147
11148         * gdk/makefile.mingw.in
11149         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
11150         number. Add new object files.
11151
11152         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
11153         GetMessageTime to get timestamp (where on X11 uses
11154         gdk_x11_get_server_time()).
11155
11156 2000-10-02  Havoc Pennington  <hp@pobox.com>
11157
11158         * gtk/gtktextview.c: text_window_* weren't static and should have
11159         been.
11160         Start work on child widgets; not yet complete, syncing to 
11161         office computer.
11162
11163         * gtk/gtktextchild.h: change this to contain a public interface,
11164         starting work on child interfaces.
11165         * gtk/gtktextchildprivate.h: move private interfaces here
11166
11167         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
11168
11169         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
11170         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
11171         gtk/gtktextmark.c: copyright notices
11172
11173         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
11174         internal functions      
11175
11176         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
11177         internal function
11178
11179         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11180         Reformatting    
11181
11182 2000-09-30  Havoc Pennington  <hp@pobox.com>
11183
11184         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
11185         NULL start/end pointers
11186
11187         * gtk/gtktextbuffer.c: Write some docs
11188         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
11189         NULL, so you can just check whether there's a selection.        
11190
11191         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
11192         cleanup_line or segments_changed ourselves, it gets done 
11193         in unlink_segment
11194
11195         * gtk/gtktextmark.h:
11196         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
11197         
11198         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
11199
11200         * gtk/gtktextmark.c: delete some more old Tk cruft
11201
11202         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
11203         mark before removing it, so we can emit MARK_DELETED with a valid
11204         pointer.
11205         (gtk_text_buffer_mark_set): hold ref across signal emission
11206
11207         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
11208         whining about attempts to delete special marks
11209
11210         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
11211         underscore, since it's internal.
11212
11213         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
11214         now implemented in terms of iterators in gtktextiter.h
11215
11216         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
11217         New function, destructively sets contents of buffer. Also 
11218         a convenient way to clear the buffer by setting text to ""
11219
11220         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
11221         multiline string literal
11222
11223         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
11224         text changes.
11225
11226         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
11227         is not dereferenceable
11228         (gtk_text_iter_forward_lines): fix return value
11229
11230 2000-09-29  Havoc Pennington  <hp@redhat.com>
11231
11232         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
11233
11234         * gtk/gtktextview.c: Implement drag thresholding; change functions 
11235         that set border window size to have nicer name
11236         (gtk_text_view_mark_set_handler):  Fix this to have the 
11237         right signature.
11238
11239         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
11240
11241         * gtk/testtext.c: Update with API changes, put line numbers on 
11242         both sides.
11243         
11244         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
11245         with this
11246
11247         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
11248         pixbuf; delete a big block of #if 0 Tk code
11249
11250         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
11251         insert_pixmap with insert_pixbuf
11252
11253 2000-09-29  Martin Baulig  <baulig@suse.de>
11254
11255         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
11256         confusion with the GdkPixbuf of the GNOME 1.x platform.
11257
11258 2000-09-29  Havoc Pennington  <hp@pobox.com>
11259
11260         * gtk/gtktextview.c: Implement the side windows.
11261
11262         * gtk/testtext.c: Implement simple line numbering in the 
11263         left side window; seems to make scrolling sloooow. Oops.
11264         Also, cursor blink is for some reason causing redraws
11265         of the line numbers. Should investigate...
11266
11267 2000-09-28  Havoc Pennington  <hp@redhat.com>
11268
11269         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
11270         scrolling child windows, and draw focus rectangle properly.
11271         
11272         (gtk_text_view_buffer_to_window_coords):
11273         Coordinate transformation to deal with all these freaking windows
11274         and offsets
11275         (gtk_text_view_window_to_buffer_coords): transform the other way
11276
11277         * gtk/testtext.c (create_buffer): Update to match Pango API change
11278
11279         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
11280         anonymous tags
11281         (foreach_unref): don't emit remove signal from finalize, just
11282         set tag's parent to NULL
11283
11284 2000-09-26  Havoc Pennington  <hp@redhat.com>
11285
11286         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
11287         Fix some warnings       
11288
11289 2000-09-26  Havoc Pennington  <hp@redhat.com>
11290
11291         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
11292         headers into the private header list
11293
11294         * Makefile.am (pkgconfig_DATA): install pkg-config files
11295
11296         * configure.in: add pkg-config files
11297
11298         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
11299
11300         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
11301         outstanding icon caches on theme change.
11302
11303         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
11304         important types:
11305
11306         (GtkIconSource): Specification for creating a pixbuf 
11307         appropriate for a direction/state/size triplet from 
11308         a source pixbuf or filename
11309
11310         (GtkIconSet): List of GtkIconSource objects that are used to
11311         create the "same" icon (e.g. an OK button icon), and cache for
11312         rendered icons
11313
11314         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
11315         up the icon set for a given stock ID.  GTK maintains a stack of
11316         GtkIconFactory to search, and applications or libraries can add
11317         additional icon factories on top of the stack
11318         
11319         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
11320         the set of GtkIconSource specified for a given stock ID into 
11321         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
11322         RcStyle, under the specified stock ID.
11323
11324         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
11325         render_icon used to derive a GdkPixbuf from a GtkIconSource.
11326         This allows people to theme how prelight, insensitive, etc. are
11327         done.
11328
11329         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
11330         icon factories for a style, and return the resulting 
11331         icon set if any.
11332
11333         (gtk_style_render_icon): Render an icon using the render_icon 
11334         method in the GtkStyleClass.
11335
11336         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
11337         Use the style for a given widget to look up a stock ID, get the
11338         icon set, and render an icon using the render_icon method 
11339         of the style
11340
11341         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
11342         (contains information about a stock item), the built-in stock item
11343         IDs, and functions to add/lookup stock items.
11344
11345         * gtk/stock-icons/*: Stock icons that come with GTK
11346
11347         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
11348         a button based on a GtkStockItem
11349         (gtk_button_new_accel): Takes a uline string and accel group, and
11350         installs the accelerator.
11351
11352         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
11353         image-display widget.
11354
11355 2000-09-25  Havoc Pennington  <hp@redhat.com>
11356
11357         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
11358
11359         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
11360         Fix a bug when removing node data, we didn't properly 
11361         re-splice the linked list after removing the data.
11362
11363         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
11364         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
11365
11366         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
11367
11368         * gtk/gtktextlayout.c (set_para_values): Set tab array 
11369         for the layout from the GtkTextTag.
11370
11371         * gtk/gtktexttypes.h: delete tab and search cruft, 
11372         remove g_convert() in favor of GLib version
11373
11374         * gtk/gtktexttypes.c: remove tab implementation from here,
11375         move to Pango
11376
11377         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
11378         tab stuff using new PangoTabArray from Pango
11379
11380         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
11381         unused border_width stuff
11382
11383 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
11384
11385         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
11386         glib) and now useless utf_to_latin1() latin1_to_utf()
11387
11388         * gtk/gtktextview.[ch]: Change ::move_insert and
11389         ::delete_text action signals to ::move and ::delete;
11390         create the signals with the right enumeration type,
11391         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
11392         C-v bindings, change Home, End to move to beginning/end
11393         of line, Add C-Home C-End to move to beginning/end
11394         of buffer. Change ::cut_text to ::cut_clipboard, etc;
11395         combine ::scroll_text into ::move; use new GtkSelectionData
11396         functions to simplify DND text handling.
11397         
11398         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
11399         deletion enumerations here, rename enumeration values to 
11400         be consistently plural.
11401
11402         * gtk/gtktextbuffer.c: Use new clipboard interfaces
11403         for cut/copy/paste and primary selection.
11404
11405         * gtk/gtktextbuffer.[ch]: Remove excess time and
11406         'interactive' arguments from cut/copy/paste;
11407         rename cut to cut_clipboard, etc; remove
11408         gtk_text_buffer_get_clipboard_contents().
11409
11410         * gtk/gtktextlayout.[ch]: Add 
11411         gtk_text_layout_move_iter_to_line_end() to move the iter to 
11412         line ends.
11413
11414         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
11415         Functions to set or get a UTF-8 string on the selection
11416         data.
11417
11418         * gtk/gtkclipboard.[ch]: New, simplified selection handling
11419         interfaces.
11420
11421         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
11422         created widgets - one of these is useless if we don't.
11423
11424         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
11425         a public function clear all targets registered for the
11426         widget.
11427
11428         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
11429         Never call gtk_widget_realize() - that was just asking
11430         for bizarre side-effects.
11431
11432         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11433         gdk_selection_owner_set even if the widget is the
11434         same so that we reliably update the timestamp on
11435         the server.
11436
11437         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
11438         gdk_x11_get_server_time() function.
11439         
11440         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
11441         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
11442         Add some tricky filtering on serial numbers for
11443         selection clear events to fix up long-standard
11444         race condition FIXME's in gtkselection.c.
11445
11446         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
11447         routines to convert from utf8 to compound text or
11448         STRING and from a text property to UTF-8.
11449
11450         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
11451         a convenience function gdk_get_current_event_time().
11452
11453         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
11454         and free selection_data->data properly
11455
11456 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
11457
11458         * gtk/gtkthemes.c: Remove some unecessary includes.
11459
11460 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
11461
11462         * gtk/gtktextdisplay.c
11463         * gtk/gtktextlayout.c
11464         * gtk/gtktexttag.c
11465         * gtk/gtktexttag.h
11466         * gtk/testtext.c: Change the overstrike property to strikethrough,
11467         to closer match pango.
11468
11469 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
11470
11471         * gtk/gtktextview.c: Fix up visibility so that focus,
11472         cursor_visible and blink interact properly.  Reenable cursor blink
11473         which had been roughly disabled. Make blink and focus
11474         properly per-view.
11475
11476         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
11477         Add a flag for whether to display insertion cursor and
11478         a function to set the flag.
11479
11480         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
11481         get_line_y() to get_line_yrange(), to be a bit more generally
11482         useful.
11483
11484 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
11485
11486         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
11487           do stop_navigating_submenu, to clear last timeout properly.
11488           Also in gtk_menu_motion_notify move ignore_enter above
11489           the conditional to make it always happen as suggested by Owen
11490
11491 2000-09-07  Tor Lillqvist  <tml@iki.fi>
11492
11493         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
11494
11495         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
11496         w32api headers.
11497
11498         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
11499         declarations.
11500
11501         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
11502         (gdk_win32_get_colormap): A line had been deleted by mistake.
11503
11504         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
11505         (gdk_event_translate): Handle more virtual keycodes to be able to
11506         generate GDK events for Control-comma, Control-period, etc.
11507
11508         * gtk/gtk.def: Add some missing entry points.
11509
11510 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
11511
11512         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
11513         Doc comment fixing. (Mostly non-matching parameter names.)
11514
11515         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
11516         comments a little to avoid looking like a doc comment.
11517
11518         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11519         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11520         conversions be changed to GError?)
11521
11522         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11523         Move private #defines into .c file.
11524
11525         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11526         order of argument addition, remove duplicates.
11527
11528         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11529         parent class is FrameClass, not BinClass.
11530
11531         * gtk/gtk.h: Add gtkinvisible, which was missing.
11532         (It's occasionalyl useful for client apps, if seldom.)
11533
11534         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11535         #define.
11536
11537 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11538
11539         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11540         coordinates when creating window, instead of GDK-space
11541         coordinates. (Avoid BadValue on too large windows.)
11542
11543 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11544
11545         * configure.in (use_mmx_asm): Remove conftest* after use along the
11546         lines of AC_TRY_COMPILE.        
11547         
11548         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11549         of g_dirname, which is deprecated.
11550         (gtk_rc_parse_any): Removed calls to
11551         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11552
11553         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11554         Removed calls to g_hash_table_{freeze,thaw}, as they are
11555         deprecated now.
11556
11557         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11558         instead of g_basename.
11559         
11560 2000-09-04 Elliot Lee <sopwith@redhat.com>
11561         
11562         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11563         ANSI warning.
11564
11565 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11566
11567         * gtk/gtkwidget.h:  Add some documenting comments about 
11568           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11569           just as owen said on irc.
11570
11571         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11572           set HAS_DEFAULT.  Only set it if there isn't another window
11573           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11574           it if the widget is not the focused window with RECEIVES_DEFAULT.
11575           This fixes weird double default bugs in dialogs which has things
11576           call gtk_window_set_default at times.
11577
11578 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11579
11580         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11581         Nils Barth and David Santiago to improve submenu
11582         navigation. The patch does this by creating a triangular
11583         region from the point where the pointer leaves the
11584         menu to the submenu.  While the pointer is in
11585         that region and a timeout has not expired, events 
11586         that would cause the active submenu to change are
11587         ignored.
11588
11589 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11590
11591         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11592         moving a toplevel window immediately after sizing it would
11593         result in it being sized back to the old size since 
11594         impl->width, impl->height aren't updated until we hear
11595         back from the server. There is still a (longstanding) bug
11596         here that gdk_window_get_size() will give the wrong size
11597         until we do hear back.
11598
11599 2000-08-31  Havoc Pennington  <hp@redhat.com>
11600
11601         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11602         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11603         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11604         Rename GtkTextStyleValues to GtkTextAttributes
11605
11606 2000-08-31  Havoc Pennington  <hp@pobox.com>
11607
11608         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11609         for rapid testing whether an iterator is the end iterator
11610         (gtk_text_btree_new): init end line cache
11611         (gtk_text_line_is_last): use fast cached line to 
11612         see if we're the last line.
11613         (get_last_line): use cached line here too, should 
11614         speed up some random unrelated code.
11615         
11616 2000-08-30  Havoc Pennington  <hp@pobox.com>
11617
11618         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11619         signals.
11620
11621         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11622         delete_text signals. This allows the signals to be used for
11623         implementing undo.
11624
11625         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11626         provide "interactive" argument when emitting insert_text or
11627         delete_text signal.
11628         
11629 2000-08-30  Havoc Pennington  <hp@pobox.com>
11630
11631         * gtk/gtktextbuffer.c: Docs
11632
11633 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11634
11635         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11636         from switch statements, since Tor removed the enumeration
11637         value.
11638         
11639         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11640         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11641
11642 2000-08-29 Elliot Lee <sopwith@redhat.com>
11643         * */*.h: Use G_GNUC_CONST.
11644
11645 2000-08-27  Havoc Pennington  <hp@pobox.com>
11646
11647         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11648         minor indentation fixes, inserted some FIXME about stuff I
11649         realized was broken while documenting it.
11650         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11651         GTK convention  
11652
11653 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11654
11655         * gtk/testgtk.c (create_styles): Fix double free of
11656         font desc.
11657
11658 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11659
11660         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11661         
11662         * gtk/testgtk.c (create_styles): Add a test for modifying
11663         the style through gtk_widget_modify_*.
11664
11665         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11666         a function to get the current modifier style.
11667
11668         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11669         of the passed in GtkRcStyle instead of ref'ing it.
11670
11671         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11672
11673 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11674
11675         * gdk/gdkimage.h
11676         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11677         shared memory image+pixmap GdkImage type, or
11678         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11679         I am dropping that.
11680
11681         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11682         actually call gtk_init_abi_check(), passing also
11683         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11684
11685         * gtk/gtk.def
11686         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11687         New functions, used to check that the GTK+-using code has been
11688         compiled using the correct compiler and switches. In particular,
11689         with gcc one has to use the -fnative-struct switch as GTK+ is
11690         compiled with that.
11691
11692 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11693
11694         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11695         ->prev fields when merging lists. (Found simultaneously
11696         by Pawel Salek and Jakub Jelinek)
11697
11698 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11699
11700         * gdk/gdk.def
11701         * gtk/gtk.def: Add missing entries.
11702
11703         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11704         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11705
11706         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11707         function. Dummy implementation at this point.
11708
11709         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11710         rules. Undefine GTK_COMPILATION when compiling the test programs.
11711         
11712         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11713
11714 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11715
11716         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11717         to convert back and forth from UTF-8 and the "system" (or "current
11718         locale") charset when necessary. Indentation/spacing cleanup.
11719
11720 2000-08-10  Havoc Pennington  <hp@redhat.com>
11721
11722         * Makefile.am (snapshot): Change the format of the snapshot
11723         version to match glib
11724
11725         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11726         from EXTRA_DIST since it doesn't seem to exist
11727
11728 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11729
11730         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11731         version of the directory name (not the UTF-8 one) when building
11732         the path name to stat().
11733
11734 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11735
11736         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11737         PANGO_ATTR_SHAPE set.
11738
11739 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11740
11741         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11742         Peter Osterlund to simplify the code while keeping the
11743         functionality the same.
11744
11745 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11746
11747         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11748         is_viewable() test further inside the function, since removing the 
11749         window from the redraw list without clearing ->update_area
11750         was also very broken.
11751
11752 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11753
11754         * configure.in: Check for <unistd.h>.
11755
11756 2000-08-01  Martin Baulig  <baulig@suse.de>
11757
11758         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11759         to display the message that this is a development version of GTK+.
11760
11761 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11762
11763         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11764         was depending on widget->allocation instead of the width of text_area,
11765         which was incorrect for subclasses like GtkSpinButton.
11766
11767         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11768         with width == 1 tests that should be width == -1.
11769
11770 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11771
11772         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11773         (broken, Elliot, every single window blank on X) custom code with call
11774         to gdk_window_is_viewable() which a) prevents code duplicate and
11775         b) works. 
11776
11777 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11778
11779         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11780         to get the GDK_PARENT_ROOT() macro to work.
11781         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11782         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11783         of, windows that aren't shown.
11784         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11785         pointer grab stuff.
11786
11787 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11788
11789         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11790           s/gtk_main_iteration/g_main_iteration/
11791
11792           Did this already in change:
11793                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11794           don't know how it got reverted.
11795
11796 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11797
11798         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11799         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11800
11801         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11802         not gdk_pixbuf.
11803
11804 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11805
11806         * configure.in,po/{sp,sr}.po: Added Serbian files
11807
11808 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11809
11810         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11811
11812         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11813         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11814         GIOChannel implementation.
11815
11816         * gdk/win32/gdkinput.c
11817         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11818
11819         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11820         definition to match prototype.
11821
11822         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11823
11824 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11825
11826         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11827         function, to allow handling image formats that cannot be detected
11828         by looking at content alone.
11829
11830 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11831
11832         * docs/tutorial/*.gif *.jpg *.eps
11833           Update these to the same look-n-feel.
11834           Why does including images in DocBook suck so badly?
11835
11836 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11837
11838         * gtk/gtktable.c: applied patch from Phil Thompson
11839         <phil@river-bank.demon.co.uk> that enables space settings for
11840         the last row/columns as well.
11841
11842 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11843
11844         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11845         updates the license headers to the GNU Lesser General Public License,
11846         as well as updating the copyright year to 2000.
11847
11848 2000-07-26  Robert Brady  <rwb197@zepler.org>
11849
11850         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11851           and po/Makefile, was installing and looking for them under gtk20
11852           and gtk2 respectively.
11853
11854 2000-07-25  Havoc Pennington  <hp@redhat.com>
11855
11856         * gtk/testtext.c: Comment out some stuff that depends on the rest
11857         of my patches.
11858
11859 2000-07-25  Havoc Pennington  <hp@redhat.com>
11860
11861         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11862         buffer
11863
11864 2000-07-25  Havoc Pennington  <hp@redhat.com>
11865
11866         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11867         widget changes.
11868
11869         * gtk/gtktextview.h: To be consistent with usage of "line"
11870         throughout the API to mean "newline-terminated thingy", change
11871         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11872         to MOVEMENT_LINE.
11873
11874         (GtkTextView): Add flags for default editability, and whether to
11875         show the cursor. Add functions to get/set that. Add 
11876
11877         (gtk_text_view_get_iter_location): new function
11878
11879         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11880         gtktextlayout.h
11881         (g_convert): Add g_convert temporarily, will go in glib in a bit
11882         
11883         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11884         GtkTextTagTableForeach instead of brokenly using GHFunc.
11885         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11886
11887         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11888         moved to public header.
11889
11890         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11891         "invisible", since "elide" was a bad name.
11892         (gtk_text_tag_get_priority): Added
11893
11894         (GtkTextStyleValues): put this in public header, along with
11895         functions to use it.
11896
11897         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11898         longer include gtktextbtree.h.
11899
11900         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11901         gtk_text_mark_deleted
11902
11903         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11904         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11905         to make this possible. Now we only need to install
11906         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11907         (However the Makefile.am isn't changed yet because of the
11908         logistics of merging gtk-hp-patches piecemeal)
11909
11910         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11911         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11912         gtk_text_iter_get_line is now used in the public API for a
11913         different purpose.
11914
11915         * gtk/gtktextiter.h: Clean up function names to be more
11916         consistent. Always call char offset "offset" and byte index
11917         "index". A "line" is always a line number. 
11918
11919         (gtk_text_iter_is_last): new function, more efficient than 
11920         the existing way to check
11921         (gtk_text_iter_is_first): new function, also more efficient
11922
11923         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11924
11925         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11926         gtk_text_iter_forward_char, etc.
11927
11928         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11929         forward_find_tag_toggle, since this isn't a linear search
11930
11931         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11932
11933         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11934         New functions, search for a buffer substring.
11935
11936         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11937         interactive and default editable (since we need to store that info
11938         until we receive the selection data).
11939
11940         Remove all the _at_char and at_line etc. versions of functions;
11941         only have iterator versions.
11942
11943         Add _interactive() versions of functions, that consider the
11944         editability of text. (FIXME add interactive flag to the 
11945         insert/delete signals per Darin's suggestion)
11946
11947         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11948         tag table if necessary
11949
11950         Remove declaration of gtk_text_buffer_get_iter_from_string
11951
11952         (_gtk_text_buffer_get_btree): private/internal function, added.
11953         
11954
11955         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11956         (gtk_text_line_is_last): new function
11957
11958 2000-07-25  Havoc Pennington  <hp@redhat.com>
11959
11960         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11961         using GtkProgressBar. See Changes-2.0.txt for details.
11962
11963         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11964         "pulse_step" which are the equivalent of
11965         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11966         Implement new API.
11967         
11968         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11969         (use_text_format) to mark whether text set on the progress bar is
11970         a format string. Deprecate entire GtkProgress interface.
11971
11972         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11973         (gtk_progress_build_string): make this a no-op if use_text_format
11974         is FALSE
11975
11976         * docs/Changes-2.0.txt: Describe progress bar changes.
11977
11978 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11979
11980         * Makefile.am: Include the build directory.
11981
11982         * configure.in: Generate build/Makefile, build/win32/Makefile,
11983         gdk/, gdk/win32/, and gtk/makefile.mingw.
11984
11985         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11986         Add GETTEXT_PACKAGE.
11987         
11988         * gdk/gdk.def
11989         * gtk/gtk.def: Updates.
11990
11991         * gdk/gdkfont.h
11992         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11993         need them any longer.
11994
11995         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
11996
11997         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
11998         PANGOWIN32_LIBS and gdk_pixbuf.
11999
12000         * gdk/win32: Compiles, but no doubt doesn't work at all.
12001
12002         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
12003
12004         * gdk/win32/gdkinput.c: New file, temporarily.
12005         
12006         * gdk/win32/gdkinput-win32.h: New file
12007
12008         * gdk/win32/gdkinputprivate.h: Remove.
12009
12010         * gdk/win32/gdkpango-win32.c: New file.
12011
12012         * gtk/makefile.mingw.in: New file
12013
12014         * gtk/makefile.cygwin: Removed
12015         
12016         * gtk/Makefile.am: Update accordingly.
12017
12018         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
12019         made externally visible.
12020
12021         * gtk/gtkmain.c: Use it.
12022         
12023         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
12024         is enough.
12025
12026         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
12027
12028 2000-07-24 Elliot Lee <sopwith@redhat.com>
12029         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
12030         individual backends already.
12031         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
12032         again. Yes, there really is a good reason for this, if you are using the gdkregion
12033         internals, and if you're not, why do you care?
12034         * gdk/gdkwindow.c: Fix inverted condition
12035         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
12036         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
12037         * gtk/gtkrange.c: Redraw trough when moving.
12038         * gtk/gtktypeutils.c: Fix warning by adding const cast.
12039         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
12040
12041 2000-07-23  Tor Lillqvist  <tml@iki.fi>
12042
12043         * configure.in: Check for mkstemp and sigsetjmp. Output
12044         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
12045
12046         More work on GDK for Win32. Still in an intermediate state.
12047
12048         * gdk/makefile.cygwin
12049         * gdk/win32/makefile.cygwin: Removed.
12050         
12051         * gdk/makefile.mingw.in
12052         * gdk/win32/makefile.mingw.in: New files.
12053
12054         * gdk/Makefile.am
12055         * gdk/win32/Makefile.am: Generate and distribute them.
12056
12057         * gdk/win32/gdkwindow-win32.h
12058         * gdk/win32/gdkdrawable-win32.h
12059         * gdk/win32/gdkpixmap-win32.h: New files.
12060
12061         * gdk/win32/gdkcolor-win32.c
12062         * gdk/win32/gdkcursor-win32.c
12063         * gdk/win32/gdkdrawable-win32.c
12064         * gdk/win32/gdkgc-win32.c
12065         * gdk/win32/gdkimage-win32.c
12066         * gdk/win32/gdkprivate-win32.h
12067         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
12068         Rename fields and variables called xcursor, xid, etc (these names
12069         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
12070
12071 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
12072
12073         * gtk/gtkentry.[ch]: Fix some problems with vertical
12074         alignment.
12075
12076         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
12077         char/byte confusion.
12078
12079 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
12080
12081         * gtk/gtktextview.c (changed_handler): Fix bug where
12082         redraw wasn't being done properly when height of
12083         dirty region changed.
12084
12085         * demos/Makefile.am: Remove various references to
12086         -lgmodule
12087
12088 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
12089
12090         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
12091         PangoAttrShape to reserve space for pixmaps, add 
12092         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
12093         in the display functions.
12094         
12095         * gtk/testgtk.c (create_layout): Set some more exotic
12096         scrolled window options
12097
12098         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
12099         Add function to set the shadow type of a window, to allow
12100         putting a shadow around widgets such as GtkLayout or GnomeCanvas
12101         which don't draw their own frame.
12102
12103 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
12104
12105         * docs/tutorial/package-db-tutorial.sh: New file for
12106           packaging DocBook format tutorial
12107
12108 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
12109
12110         * docs/tutorial/gtk-tut.sgml: Minor updates
12111
12112         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
12113
12114 2000-07-19  Tor Lillqvist  <tml@iki.fi>
12115
12116         * gtk/gtksignal.c: Fix C++ comment.
12117
12118         * gtk/gtkimmulticontext.c
12119         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
12120         don't return value from void functions.
12121
12122         * gtk/gtk.def: Add gtk_rc_style_unref.
12123
12124 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12125
12126         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
12127         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
12128         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
12129         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
12130         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
12131         gtk/gtktypeutils.h: Include files outside of the extern "C"
12132         block. Makes some C++ compiler happy. Reported by Denis Vakatov
12133         <vakatov@peony.nlm.nih.gov>.
12134
12135 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
12136
12137         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
12138           Completes first pass. Hurrah!
12139
12140 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
12141
12142         * docs/tutorial/gtk-tut.sgml: More clean ups.
12143
12144 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
12145
12146         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
12147         paint the background of the text area which was accidentally
12148         removed at some point.
12149
12150         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
12151           
12152          - Move most of the functionality from the theme vtable
12153            into GtkRcStyleClass and GtkStyleClass. The moved
12154            vtable functions were changed a bit in the move to
12155            work better in their new home.
12156
12157          - Get rid of the engine and engine_data fields from
12158            GtkRcStyle and GtkStyle; instead the theme
12159            engine derives theme-specific subclasses of GtkRcStyle
12160            and GtkStyle
12161
12162          - Add extra dlsym() found entry point to themes,
12163            theme_create_rc_style().
12164
12165         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
12166         in gtk_style_real_copy.
12167
12168         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
12169         to register a type associated with an engine. (The engine
12170         won't be unloaded as there is an instance of the type.)
12171
12172
12173 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
12174
12175         * docs/tutorial/gtk-tut.sgml: Clean ups.
12176
12177 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
12178
12179         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
12180           of cleaning up to do.
12181
12182 2000-07-15  Tor Lillqvist  <tml@iki.fi>
12183
12184         * gdk/testgdk.c: New file, quick hack to test backends for
12185         pixel-by-pixel correctness of the most simple graphic operations.
12186
12187 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
12188
12189         * Really release 1.3.1
12190         
12191         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
12192         include structure.
12193
12194 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
12195
12196         * Released 1.3.1
12197
12198 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
12199
12200         * gtk/gtktextlayout.c: use FALSE for size_only most
12201         of the time when calling gtk_text_layout_get_line_display()
12202         to avoid causing double reshapes when a redraw follows
12203         immediately after.
12204
12205 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
12208         appropriate region and gdk_window_process_updates() so trough
12209         updating doesn't lag behind the window being scrolled.
12210
12211         * gdk/gdkgc.c: Make parent_class pointer static.
12212          
12213 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
12214
12215         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
12216         include <string.h>.
12217          
12218         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
12219         cut-and-paste error in computing memory offset for 4 channels.
12220
12221 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
12222
12223         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
12224         gtk_rc_append_default_pixmap_path(), since it wasn't
12225         adding an interesting path and we don't have a meaningful
12226         default for this value.
12227
12228 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
12229
12230         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
12231         gtk-config to gtk-config-2.0 move gtk_.m4 to
12232         gtk-2.0.m4
12233
12234         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12235         gdk/Makefile.am demos/Makefile.am: Change 
12236         library names to libgtk-1.3.la, etc, so that we
12237         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
12238
12239         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12240         gdk/Makefile.am gdk/x11/Makfile.am
12241         Move include files into /usr/include/gtk-2.0, 
12242         /usr/lib/gtk-2.0/include/
12243          
12244         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
12245         gtk/gtkintl.h: Change package for gettext from 
12246         gtk+ to gtk20. Put hack in autogen.sh to modify
12247         po/Makefile.in.in after gettextize to make this
12248         possible.
12249
12250         * gtk+.spec: Some updates, not tested.
12251
12252         * gdk-pixbuf/Makefile.am: Move loaders into
12253         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
12254
12255         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
12256         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
12257         to THEMENAME/gtk-2.0/. Move engine directory  to
12258         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
12259         
12260 2000-07-12  Tor Lillqvist  <tml@iki.fi>
12261
12262         Win32 changes, still doesn't build though.
12263
12264         * gdk/makefile.cygwin
12265         * gdk/win32/makefile.cygwin
12266         * gtk/makefile.cygwin: Updates.
12267
12268         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
12269         default values for fg and bg pixel as X11 does (0 and 1), not
12270         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
12271         Use 0 for pen width by default (treated as 1 anyway later, but for
12272         apps that might check the value in the GdkGC).
12273         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
12274         interface to gdk_gc_predraw and _postdraw.
12275
12276         * gdk/win32/gdkwin32.h
12277         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
12278
12279         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
12280         extraneous semicolon.
12281
12282         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
12283
12284         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
12285         not the Win32 bitspixel value.
12286
12287         * gdk/win32/gdkcc-win32.c:
12288         * gdk/win32/gdkcolor-win32.c 
12289         * gdk/win32/gdkprivate-win32.h
12290         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
12291         GDK object structure.
12292
12293 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
12294
12295         * docs/tutorial/gtk_tut_12.es.sgml (name): 
12296         * docs/tutorial/gtk_tut_it.sgml (name): 
12297         * docs/tutorial/gtk_tut_fr.sgml (name): 
12298         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
12299         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
12300
12301 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
12302
12303         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
12304           small changes.
12305
12306 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
12307
12308         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
12309         a bug here, never been here and never fixed anything ;(
12310         (don't segfault if tree->root_tree is NULL, which happens prior
12311         to widget realization, but puke instead).
12312
12313 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
12314
12315         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
12316         add the necessary tokens.
12317
12318         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
12319         (gtk_rc_style_to_style): copy thicknesses.
12320         (gtk_rc_init_style): apply thicknesses.
12321         (gtk_rc_parse_style): parse xthickness and ythickness.
12322
12323         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
12324
12325         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
12326         (gdk_window_new): 
12327         (_gdk_windowing_window_init): 
12328         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
12329         (gdk_pixmap_create_from_data): 
12330         (gdk_bitmap_create_from_data): 
12331         (gdk_pixmap_new): 
12332         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12333         (gdk_image_new): 
12334         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
12335         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
12336         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
12337         (gdk_colormap_get_system): 
12338         (gdk_colormap_new): 
12339         * gdk/gdkwindow.c (gdk_window_init): 
12340         * gtk/gtkstyle.c (gtk_style_new):
12341         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
12342         * gdk/gdkpixmap.c (gdk_pixmap_init): 
12343         * gtk/gtkrc.c (gtk_rc_style_new):
12344         use g_object_new() instead of g_type_create_instance() which
12345         is a private function for fundamental type implementations.
12346
12347 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
12348
12349         * configure.in: Add check for db2html
12350
12351 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
12352
12353         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
12354         hack to set glib_debug_objects based on gtk_debug_flags.
12355
12356 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
12357
12358         * INSTALL.in: Update the Prerequisites section.
12359
12360         * Makefile.am demos/Makefile.am docs/Makefile.am
12361         docs/tutorial/Makefile.am gdk/x11/Makefile.am
12362         gdk/linux-fb/Makefile.am: Dist fixes
12363
12364 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
12365
12366         * NEWS: 10,000 foot view of 1.3.1 changes.
12367
12368 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
12369
12370         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
12371         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
12372         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
12373         gdk/x11/gdkmain-x11.c: 
12374
12375         Patch from George Lebl to add a GdkGrabStatus enumeration to use
12376         as a return value of gdk_*_grab(). Previously, we just
12377         returned the X11 values directly.
12378
12379 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
12380
12381         * gdk/x11/Makefile.am: Patch from George Lebl to 
12382         install all the headers in the right place.
12383
12384 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
12385
12386         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
12387           initial conversion to DocBook.
12388
12389 2000-07-04  Tor Lillqvist  <tml@iki.fi>
12390
12391         * README.win32: Improve a bit.
12392
12393         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
12394         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
12395         Alt+0nnn on the numpad (used to enter characters by numeric code
12396         from current DOS or ANSI codepage) working correctly, as in other
12397         Windows apps.
12398
12399         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
12400         same argument validity tests as in X11 version.
12401         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
12402
12403         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
12404         definitions in case missing from headers.
12405
12406         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
12407         destroy the window-specific cursor.
12408         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
12409         calling GetModuleHandle(NULL).
12410         (gdk_window_set_cursor): Reworked to always copy the passed cursor
12411         with CopyCursor before setting it as the window-specific
12412         cursor. It is OK for the caller to destroy the GdkCursor (and thus
12413         also its Windows cursor) after calling this function. Destroy any
12414         previous window-specific cursor.
12415
12416 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
12417
12418         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
12419         font charset is iso8859-1, not iso-8859-1.
12420
12421 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
12422
12423         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
12424         Use g_get_charset() instead of g_get_codeset().
12425
12426         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
12427         Comment out some strdup'ing functions to keep timj
12428         happy until we finish fighting this out.
12429
12430 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
12431
12432         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12433         <= width or height.
12434
12435         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
12436         from 1.2 for parent/child states.
12437
12438         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
12439         of typos.
12440
12441         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
12442         event structures, replace with a generic axes field. Replace 
12443         deviceid/sourec with GdkDevice *device.
12444
12445         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
12446         to extract particular axis use value from event. (Also
12447         can be used for normal X/Y.)
12448
12449         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
12450         allow for arbitrary number of axes, namespace everything
12451         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
12452         everywhere.
12453
12454         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
12455         Get rid of the gdk_input_vtable setup if favor of simply
12456         defining the functions in gdkinput-none/gxi/xfree.c in
12457         a similar fashion to the way that the port structure is 
12458         done.
12459
12460         * gtk/gtkdnd.c: Fix fields of synthesized button press event
12461         for new event structures. 
12462
12463         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
12464         new device interfaces.
12465
12466 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
12467
12468         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
12469         set the initial text.
12470
12471         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
12472         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
12473         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
12474         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
12475
12476         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12477         pango_layout_set_font_description to simplify.
12478
12479 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
12480
12481         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12482         pango_layout_set_font_description to simplify.
12483
12484 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
12485
12486         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
12487         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
12488         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
12489
12490         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
12491         PANGO_PIXELS() macro.
12492
12493 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
12494
12495         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
12496         that returns a PangoContext owned by the widget and updated to
12497         match future changes in the widget. Also, make 
12498         gtk_widget_create_pango_layout() use this context. If we ever
12499         add a ::changed signal to PangoContext, this will make things
12500         much more convenient. 
12501
12502         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
12503         in the appropriate places instead of destroying the layouts and
12504         creating new ones.
12505
12506         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
12507         in a few strategic places.
12508
12509 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
12510
12511         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
12512         gtk_widget_size_request() on reparented child, if one. Otherwise,
12513         queue_resize() on the child never results in it getting size-requested
12514         at all.
12515
12516         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12517         in option menus, so that (with luck) people won't copy it into
12518         their apps in the future.
12519
12520         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12521         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12522         a lot of problems with changing the size of the menu's menu
12523         items after adding it to the option menu.
12524
12525         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12526
12527         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12528         the text direction for a widget changes.
12529
12530         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12531         ::direction_changed to get rid of various hacks.
12532
12533 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12534
12535         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12536         name.
12537
12538 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12539
12540         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12541         flag to the structure. Do not call XFreePixmap on pixmaps created
12542         by gdk_pixmap_foreign_new().
12543
12544 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12545
12546         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12547         value using GdkRGB functionality given GdkColormap and GdkColor.
12548         (name not final, waiting for inspiration.)
12549         
12550         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12551         set the foreground/background of a GC using the GC's colormap
12552         and GdkRGB. (name not final, waiting for inspiration.)
12553
12554         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12555         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12556
12557         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12558         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12559         purely a function of the corresponding colormap. Make
12560         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12561
12562         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12563         gdk_pixbuf_*create_from_xpm_* in terms of
12564         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12565         code.
12566
12567         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12568         advantage of the new draw_rgb_32_image_dithalign.
12569
12570         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12571
12572         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12573         on each created GC.
12574
12575         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12576
12577         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12578         which we initialize from the drawable when the GC is created,
12579         if the drawable has a colormap.
12580
12581         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12582
12583         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12584
12585         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12586
12587 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12588
12589         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12590         actually returning expose events, make sure to set
12591         the count field properly.
12592
12593         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12594         accidentally reintroced bug which always cleared
12595         the graphics_exposures value. 
12596
12597 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12598
12599         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12600
12601 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12602
12603         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12604
12605 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12606
12607         * docs/faq/gtk-faq.sgml: Start of Section 6.
12608
12609 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12610
12611         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12612         
12613         (Fixes problem with drawing childless frames. Pointed out
12614         by and a first patch from Anders)
12615         
12616         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12617         compute a child_allocation, even if we don't have a child.
12618
12619         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12620         Always chain to the parent's impl, even if we don't have a child.
12621
12622 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12623
12624         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12625         use multiple parts of it instead of creating a bunch of separate
12626         segments, since the maximum number of segments per system is not
12627         large. (This might be worth backporting to GTK+-1.2.x if we make a
12628         new release )
12629
12630         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12631         structure in preparation for per-colormap GdkRGB.
12632
12633         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12634         to False when we get EINVAL from shmget so that the caller of
12635         gdk_image_new can retry with a smaller segment size.
12636
12637 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12638
12639         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12640
12641 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12642
12643         * configure.in: make the current version number 1.3.1 (binary age 0,
12644         interface age 0).
12645         
12646         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12647         gtkcompat.h is all we want.
12648
12649         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12650         GLib primitive types. fixed g_type_register_fundamental() argument
12651         ordering.
12652
12653         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12654         compiles.
12655
12656         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12657         object code cleanup, comment trigraph fixes, etc...
12658
12659 2000-06-23  Havoc Pennington  <hp@redhat.com>
12660
12661         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12662         instead of making up a bogus name for first_para_mark
12663
12664         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12665         0 as a context ID
12666
12667 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12668
12669         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12670
12671 2000-06-21  Havoc Pennington  <hp@pobox.com>
12672
12673         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12674         we didn't check window->bg_pixmap != GDK_NO_BG.
12675
12676         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12677         gdk-pixbuf
12678
12679 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12680
12681         * docs/faq/gtk-faq.sgm: Move file to here.
12682           TODO: Update Makfile.am 
12683
12684 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12685
12686         * docs/gtk-faq.sgm: Add Section 2
12687
12688 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12689
12690         * docs/gtk-faq.sgm: New file. Start of DocBook
12691           version of the FAQ.
12692
12693 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12694
12695         * configure.in (GDK_PIXBUF_MAJOR): Define version
12696         numbers for GDK_PIXBUF_*, as they get substituted
12697         into a header file. Need to consider versioning
12698         for gdk-pixbuf more carefully later.
12699
12700 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12701
12702         Work with srcdir != builddir.   
12703         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12704         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12705         * demos/testpixbuf.c: Likewise.
12706         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12707         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12708         <gdk/x11/gdkx.h>.
12709         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12710         "gdk-pixbuf.h".
12711         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12712
12713 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12714
12715         * TODO.xml: Change 1.4 version numbers to 2.0.
12716
12717 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12718
12719         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12720         fixups to GTK+ standard.
12721
12722 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12723
12724         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12725         gdk-pixbuf.
12726
12727         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12728         fixups for GObject.
12729
12730         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12731         gdk-pixbuf with GDK dependencies moved into GDK.
12732         
12733         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12734         move gdk-pixbuf-loader here until GObject has signals.
12735
12736         * demos/: New directory of demos. Move demos from
12737         gdk-pixbuf here.
12738
12739         * demos/pixbuf-init.c: Small bit of code to check for
12740         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12741         set GDK_PIXBUF_MODULEDIR appropriately.
12742
12743         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12744         define which no longer makes sense.
12745
12746 2000-06-21  Havoc Pennington  <hp@redhat.com>
12747
12748         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12749         gtk_get_default_language
12750
12751         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12752         new function to get the default language
12753
12754         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12755         s/gtk_text_view_style_values/gtk_text_style_values/
12756
12757         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12758         Add a "language" field to tags.
12759
12760         (gtk_text_tag_set_arg): Fix bug in setting
12761         "bg_full_height_set" tag.
12762
12763 2000-06-21  Havoc Pennington  <hp@redhat.com>
12764
12765         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12766         in the interfaces
12767
12768         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12769         stuff instead when possible.
12770
12771         * gtk/gtktexttypes.h: Delete some unused constants
12772
12773         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12774         testtextbuffer.c: use glib instead of custom unicode routines
12775
12776 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12777
12778         * docs/es/: Removed mistakenly added generated sgml
12779
12780         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12781         Remove outdated info files.
12782
12783         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12784         Moved tutorial files into subdir
12785
12786         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12787         subdir.
12788
12789         * docs/man/gtk_button.pod: Remove. (contents will be
12790         integrated into gtk-reference button page.)
12791
12792         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12793         docs/faq/Makefile.am: Adjust for new organization
12794
12795 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12796
12797         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12798         not $(MKINSTALLDIRS)
12799
12800 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12801
12802         * gtk/testgtk.c (create_text): Finish the job Elliot started
12803         of removing font setting test for text widget. (Since text widget
12804         and GdkFont are not deprecated, and cause portability problems.)
12805
12806 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12807
12808         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12809         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12810         Remove use of libunicode in favor of new GLib functions.
12811
12812         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12813         nano-x, framebuffer. The X11 include is just a hack until we get
12814         the necessary functions in gdkcolor.h, so there is no reason to
12815         add other includes of platforms.
12816
12817         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12818         window bigger than the screen change.
12819
12820         * gtk/testgtk.c: Revert some random changes from Elliot
12821         that had no particular point and were causing testgtkrc
12822         not to function correctly.
12823         
12824         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12825         because GdkSegment and GdkRegionBox have the same fields,
12826         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12827         results in clearer code.
12828
12829         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12830         gdk_input_translate_coordinates): Fix missed GdkObjectification
12831
12832 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12833
12834         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12835         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12836
12837 2000-06-20  Havoc Pennington  <hp@redhat.com>
12838
12839         * modules/linux-fb/Makefile.am: Make this compile
12840         without framebuffer enabled
12841
12842         * gdk/linux-fb/Makefile.am: Add conditional to not build
12843         framebuffer unless specified in configure
12844
12845         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12846         the size of the target instead of source if -1 was passed for
12847         width/height
12848
12849         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12850         width/height confusion.
12851
12852 2000-06-19  Havoc Pennington  <hp@redhat.com>
12853
12854         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12855         GDK_DRAWABLE_XID. In the future, we probably want to make it
12856         faster with G_DISABLE_CHECKS turned on.
12857
12858 2000-06-14  Havoc Pennington  <hp@redhat.com>
12859
12860         * gdk/Makefile.am: add gdkpixmap.c
12861
12862         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12863         s/gdk_image_init/_gdk_windowing_image_init
12864
12865         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12866         ref/unref
12867
12868         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12869
12870         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12871         GdkWindowType is now non-deprecated; 
12872         change gdk_window_get_type() compat to be
12873         gdk_window_get_window_type().
12874
12875         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12876
12877         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12878         virtual GObject. Make all functions call into the vtable.
12879         Move gdk_image_put() guts in here. Remove GdkDrawableType
12880         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12881         draw_image, get_depth, get_size, set_colormap, get_colormap,
12882         get_visual added to the vtable.
12883         
12884         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12885         GObject. Virtualize everything. 
12886         (gdk_gc_new_with_values): remove check for destroyed window,
12887         because now GdkWindow::create_gc will check this.
12888         (gdk_gc_set_values): New function to set GC values, this 
12889         was already implemented but wasn't in the header
12890
12891         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12892
12893         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12894         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12895         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12896         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12897         _gdk_windowing_window_init, rename gdk_image_init to
12898         _gdk_windowing_image_init.
12899         
12900         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12901         (gdk_draw_layout): Remove check for destroyed window, 
12902         because all the drawable methods already check it.
12903         
12904         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12905         Add gdkpixmap.c which contains implementation of GdkDrawable
12906         virtual table (by chaining to a platform-specific implementation
12907         object).
12908         
12909         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12910         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12911         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12912         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12913         GdkColormapPrivate. 
12914
12915         * gdk/gdktypes.h: #include <glib-object.h>
12916
12917         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12918         Move most functionality to platform-specific implementation
12919         object. GdkWindow itself now handles the backing store, then
12920         chains to the platform-specific implementation.
12921         (gdk_window_get_window_type): return GdkWindowType of the window.
12922         (gdk_window_peek_children): New routine, returns the children of 
12923         a GdkWindow
12924         (gdk_window_get_children): Was in X11-specific code and did 
12925         XQueryTree. Changed to simply return a copy of window->children; 
12926         so it can go in cross-platform code.
12927         
12928         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12929
12930         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12931         GdkColormap; just changed to use the new private data instead
12932         of casting to GdkColormapPrivate.
12933
12934         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12935         gdk_cursor_new().
12936
12937         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12938         (private data member in the GObject). 
12939         (xdnd_manager_source_filter): Function had broken 
12940         error handling, fix it (use gdk_error_trap_push).
12941
12942         * gdk/x11/gdkdrawable-x11.c: This file now implements
12943         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12944         base class is purely for the convenience of the X port,
12945         and not part of the interface to cross-platform GDK.
12946
12947         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12948         
12949         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12950         specific to X, and returned by the create_gc virtual method
12951         of GdkDrawableImplX11. 
12952         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12953         rather than gchar, this was also changed in the GdkGC vtable.
12954         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12955         mask is 0, return immediately, instead of checking every flag.
12956         This is faster, and keeps us from segfaulting if values is NULL
12957         and the mask contains some nonzero flags.
12958
12959         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12960         GdkWindow.
12961
12962         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12963         GdkWindowPrivate is gone.
12964
12965         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12966
12967         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12968         remove the image_put stuff that got transferred to GdkDrawable.
12969         
12970         * gdk/x11/gdkinput.c: renamings
12971
12972         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12973
12974         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12975
12976         * gdk/x11/gdkprivate-x11.h: indentation fixes
12977
12978         * gdk/x11/gdkproperty-x11.c: renamings
12979
12980         * gdk/x11/gdkselection-x11.c: renamings
12981
12982         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12983         implements the platform-specific "impl" object.
12984         Moved gdk_window_get_children to gdk/gdkwindow.c
12985
12986         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12987         that no longer exist. Add declaration of GdkGCX11 object here.
12988         Fix all the macros to still work. 
12989
12990         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12991         GdkDragContext from the boxed types since they are now GObjects.
12992
12993         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12994         moved xthickness/ythickness into the instance. GtkStyleClass
12995         functions are now in the standard vtable for GtkStyle, so you have
12996         to create a GObject subclass to write a theme engine.
12997         (gtk_style_copy): fixed a leaked PangoFontDescription
12998         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
12999         can be the standard GObject function.
13000         
13001         * Throughout GTK:
13002         s/style->klass->[xy]thickness/style->[xy]thickness
13003         s/pango_layout_unref/g_object_unref/
13004
13005         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
13006         
13007         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
13008         accessing GDK internals.
13009
13010         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
13011         accessing GDK internals.
13012
13013 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13014
13015         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
13016
13017         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
13018         problem by calculating event position relative to the trough
13019         rather than the slider.
13020         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
13021
13022         * gdk/gdkgc.h: Add GDK_NOR.
13023
13024         * configure.in, Makefile.am: Add modules top level dir
13025         * configure.in: Only use pangox library if building x11 target.
13026         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
13027
13028 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13029
13030         * gtk/gtkcolorsel.c: Change private class member to be named
13031         private_data throughout the file.
13032
13033         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
13034         private_data to avoid clashing with keyword.
13035
13036 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13037
13038         * gdk/gdkdnd.h: Add comment to remove warning.
13039
13040 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
13041
13042         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
13043         Byelorussian language; changed the Makefile and file names 
13044         to reflect that.
13045
13046 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
13047
13048         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
13049         rather than gdk_window_hide; this makes things work
13050         correctly if the window is programmatically hidden while
13051         iconified.
13052
13053 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
13054
13055         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
13056         cut and paste typo where wrong pixmap was being
13057         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
13058
13059 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
13060
13061         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
13062         Add helper function to compute format / bytes 
13063         relationship. Use in a couple places to fix up
13064         errors which assume 8 * format.
13065
13066         * gtk/gtkselection.c (gtk_selection_request): Use 32
13067         rather than 8 * sizeof (GdkAtom), to work correctly
13068         on Alpha.
13069
13070 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
13071
13072         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
13073         libgtk.la
13074         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
13075         versions
13076
13077         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
13078         checking macros return NULL since the function has a return value.
13079
13080 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
13081
13082         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
13083         GTK+ from building at all.
13084
13085         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
13086
13087 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
13088
13089         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
13090         gtk/Makefile.am: make it possible to configure gtk for different
13091         targets on the same platform. The library name is now 
13092         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
13093         flag. Only the x11 target compiles right now.
13094         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
13095         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
13096         * gdk/nanox/gdk*generic*: delete generic region code.
13097         * gdk/linux-fb/gdk*generic*: delete generic region code.
13098         * README.nanox: update information.
13099         
13100 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
13101
13102         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
13103         prepend not append. (Pointed out by Brett Hall.)
13104
13105 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
13106
13107         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
13108
13109 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
13110
13111         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
13112         need this later, and this makes sure that the atexit for
13113         glib gets called after that for GDK, so atexits are
13114         properly ordered for object leak checking.
13115
13116         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
13117
13118         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
13119         pango_x_shutdown_display()
13120
13121         * gtk/simple.c (main): Close window on destroy.
13122
13123 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
13124
13125         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
13126         to treat initial creation different from setting with 
13127         regards to the graphics-exposures parameter, so add a parameter
13128         indicating whether this is initial or not.
13129
13130 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
13131
13132         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
13133         to sort of work by adding an extra return_exposes arg
13134         to gdk_event_translate() - it might be better to simply
13135         deprecate the function altogether and force people to rewrite
13136         without it. gdk_window_scroll() handles most of it, and where
13137         gdk_window_scroll() doesn't work, simply redrawing more does.
13138
13139         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
13140         assertion.
13141
13142         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
13143
13144         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
13145         bunch of pretty much useless /* Print debugging info */ comments 
13146         which had drifted away from the code they were commenting.
13147
13148 2000-06-02  Havoc Pennington  <hp@pobox.com>
13149
13150         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
13151         is in working order.
13152         
13153         * gtk/testtext.c: Change to reflect anonymous mark API
13154
13155         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
13156
13157         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
13158         field, which was unused.
13159
13160         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
13161         saves some typing.
13162
13163         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
13164
13165         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
13166         flag on the insertion point and selection bound
13167
13168         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
13169         make mark-manipulation functions take a GtkTextMark* instead of a
13170         mark name.
13171         
13172         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
13173         GtkTextMarkBody; will be used to detect attempts to delete
13174         the permanent marks (insert and selection bound)
13175
13176         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
13177
13178 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
13179
13180         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
13181         flag to on.
13182
13183         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
13184         Honor DOUBLE_BUFFRED_FLAG
13185
13186         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
13187         function to set the DOUBLE_BUFFERED flag.
13188
13189         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
13190         or not exposes done on the widget should be double-buffered.
13191
13192         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
13193         to be what would be expected. (Fixes problem with a
13194         g_return_if_fail() validating a TextDirection enumeration)
13195
13196 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
13197
13198         * gtk/gtkwidget.c: Remove all references to 
13199         offscreen flag which was no longer used.
13200
13201         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
13202
13203         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
13204         for non-null label_widget->parent.
13205
13206         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
13207         which no longer was used.
13208
13209         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
13210
13211         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
13212         for null arguments.
13213
13214         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
13215         check for destroyed windows.
13216
13217 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
13218
13219         * gtk/gtkimmulticontext.c: Add a finalize method and unref
13220         the slave context there.
13221
13222         * gtk/gtkinvisible.[ch]: Make reference counting behavior
13223         identical to GtkWindow.
13224
13225 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
13226
13227         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
13228         pangox to here, so we can write them independent of rendering
13229         system, using GDK primitives.
13230
13231         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
13232         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
13233         since we have a rendering-system independent implementation in
13234         terms of draw_glyphs().
13235         
13236         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
13237         function to render a single line.
13238
13239         * gdk/x11/gdkpango.c: Move the guts of this file mostly
13240         into ../gdkpango.c, which simplifies things, since we
13241         don't have to deal with raw X gc's.
13242
13243 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
13244
13245         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
13246         get the logical attributes for a given GtkTextLine.
13247
13248 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
13251         g_locale_get_codeset() to g_get_codeset() change.
13252
13253 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
13256         descriptions.
13257
13258         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
13259         the entry.
13260
13261         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
13262         redoing (vastly simplifying) for Pango. Still needs quite
13263         a bit of work. (Size selection is currently poor. List of 
13264         predefined sizes is not a good idea, since all of these
13265         sizes won't necessarily be distinct.)
13266
13267 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
13268
13269         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
13270         CODESET results for LANG=C.
13271
13272 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
13273
13274         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
13275         which takes a stringized pango font description;
13276         ignore the older 'font' and 'fontset' declarations.
13277
13278         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
13279         field with a GdkFont derived via gdk_font_from_description(),
13280         for compatibility. (Should we just remove it entirely?
13281         Probably too much compatibility breakage, but people
13282         should be migrating to the new Pango stuff as quickly
13283         as possible.)
13284
13285 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
13286
13287         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
13288
13289 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
13290
13291         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
13292         redoing; there are some bugs in size allocation right
13293         now, the semi-existant distinction between header / day
13294         fonts was removed, but, with Pango, could actually
13295         be made functional in a nice way.
13296         
13297         * gtk/testcalender: Move calender from examples into this
13298         directory as a test program. (We really need to restrcture
13299         testgtk into a whole directory full of tests for every
13300         widget or functionality group, separated into multiple .c
13301         files.)
13302
13303 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
13304
13305         * gtk/testgtk.c (file_exists): Fix stupid typo that
13306         was keeping RC file from being loaded.
13307
13308         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
13309         RC file font code.
13310
13311 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
13312
13313         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
13314         Add function to load a GdkFont from a PangoFontDescription.
13315
13316 2000-05-29  Tor Lillqvist  <tml@iki.fi>
13317
13318         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
13319         variable should be of type GdkEventPrivate.
13320
13321 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
13322
13323         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
13324         to have any widget for the label, use a GtkLabel widget
13325         to display the text. (Based partially on a patch from
13326         Anders Carlson.)
13327
13328         (Quite a bit of code reorganization - strip 90% of the
13329         guts out of gtkaspectframe and add a single virtual
13330         func to GtkFrameClass - compute_child_allocation.)
13331
13332 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
13333
13334         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
13335         (Removed clist->row_center_offset field because caching
13336         it wasn't saving time or code, added private function
13337         _gtk_clist_create_cell_layout()).
13338
13339 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
13340
13341         * gtk/gtkaccellabel.c: Pangoized.
13342
13343         * gtk/[hv]ruler.c: Pangoized
13344
13345 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
13346
13347         * gtk/gtkfilesel.c (gtk_file_selection_init):
13348         Use gtk_clist_set_column_auto_resize() to remove need
13349         need for manual column width computations.
13350
13351 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
13352
13353         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
13354         ensuring Pango correctness, and considerably simplifying the
13355         code.
13356         
13357         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
13358
13359         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
13360         getting of numbers of lines.
13361
13362         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
13363         to the actual requested width of the lable, not to the wrap
13364         width we set.
13365
13366         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
13367
13368         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
13369           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
13370
13371         * gtk/gtktextview.c: Fix structure inheritance.
13372
13373         * gtk/gtkprogressbar.c: Pangoize.
13374
13375 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
13376
13377         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
13378         in a function.
13379
13380         * gtk/gtktextlayout.c (find_display_line_above): Fixed
13381         bug with computing line tops.
13382
13383         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
13384
13385 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13386
13387         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
13388         and y_offset coordinates to do what we need now. (The offset between
13389         buffer and layout coordinates has been reintroduced, but is a 
13390         bit different than before.)
13391
13392         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
13393         handle the adjustments ourselves, and scroll as necessary using
13394         the new gdk_window_scroll().
13395         
13396         The advantage of this is that when we are incrementally revalidating,
13397         we are essentially rearranging things around the visible portion
13398         of the screen. With the old setup, the visible portion of the
13399         screen was moved around in the layout, so scrolling and redrawing
13400         to track that caused jumping of the display. Since we now
13401         control the scrolling ourselves, we can suppress this and
13402         only redraw when things actually change.
13403
13404 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
13405
13406         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
13407         the region not just redisplay it after-all, since we store the
13408         cursors in the LineDisplay. (Ugly interactions here between
13409         GtkLayout and GtkTextBTree here.)
13410         
13411         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
13412
13413 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13414
13415         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
13416         Added function to scroll contents of a window while keeping the
13417         window constant. Works by XCopyArea or guffaw-scrolling depending
13418         on the details of how the window is set up. (guffaw-scrolling
13419         still needs to be filled in.)
13420
13421 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
13422
13423         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
13424         move the debugging that was tied to a global variable
13425         to that.
13426
13427         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
13428
13429         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
13430         validated flag, in line data instead of setting height/width to
13431         -1. This allows us to perform operations with partially invalid
13432         buffer (using the old size for invalid lines) and thus to do
13433         incremental vaidation. Keep height/width aggregates up to date
13434         when deleting text and rebalancing the tree.
13435
13436         * gtk/gtktextbtree.[ch]: Add functions validate a line
13437         (gtk_text_btree_validate_line), and to validate up
13438         to a number of pixels (gtk_text_btree_validate).
13439
13440         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
13441         that indicates that something is changed and a revalidation
13442         pass is needed. Change ::need_repaint to ::changed, and
13443         make it take old and new yranges instead of a rectangle.
13444
13445         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
13446         the line_data_destroy() function from 
13447         gtk_text_btree_add_view() to a virtual function in 
13448         GtkTextLayout
13449
13450         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
13451         since we are handling partial repaints in a different fashion
13452         now.
13453
13454         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
13455         of the selection instead of queueing a repaint on the
13456         entire widget.
13457
13458         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
13459         get_selection_bounds() down to btree, make the function
13460         in buffer a wrapper around the btree function.
13461
13462         * gtk/gtktextlayout.[ch]: Add functions to check if the
13463         layout is valid and to recompute either a range of pixels
13464         aroudn a line or a certain total number of pixels.
13465
13466         * gtk/gtktextlayout.[ch]: Cache a single line display;
13467         now that we only redraw the needed portions, the hit rate
13468         for this cache is quite high.
13469         
13470         * gtk/gtktextview.[ch]: Keep track of the first paragraph
13471         on the screen so that when re-laying-out the buffer, we can
13472         keep the same place. This requires connecting to ::value_changed
13473         on the adjustments
13474
13475         * gtk/gtktextview.[ch]: Add idle functions to revalidate
13476         the buffer after we receive an ::invalidated signal.
13477         
13478 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
13479
13480         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
13481         to max of allocation and layout size, not just to the
13482         layout size.
13483
13484         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
13485         Invalidate window so it gets redrawn properly.
13486
13487         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
13488         to mean the entire window.
13489
13490         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
13491         into public header.
13492
13493 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13494
13495         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
13496         to get the name of a mark.
13497
13498         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
13499         to find the paragraph from a y position.
13500
13501 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
13502
13503         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
13504         nodes have width/height >= 0, not > 0.
13505
13506 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
13507
13508         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
13509         Add a size_only flag, so when we only need the size, we don't create
13510         useless appearance attributes.
13511
13512         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
13513         duplicate setting of font description.
13514
13515         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
13516
13517 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13518
13519         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13520         EXTRA_DIST. It does not work well when the file that
13521         everything depends on is not in the tarball.
13522
13523 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13524
13525         * gtk/testgtk.c: Some hacks and fixes so that it basically
13526         works when not sitting in the GTK+ build tree.
13527
13528 2000-05-03  Havoc Pennington  <hp@redhat.com>
13529
13530         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13531         Properly determine the ordering of the tag root and the current
13532         line within the tree. Previous algorithm only worked if the tag
13533         root's immediate parent was the common root of both the current
13534         line and the tag root.
13535
13536 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13537
13538         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13539         alignment.
13540
13541         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13542         the widget text directional dynamically.
13543
13544         * gtk/gtktextview.[ch]: Added functions to get and set default
13545         wrap mode.
13546
13547 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13548
13549         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13550         in cursor location computation.
13551
13552 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13553
13554         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13555         vadjusment values properly when layout gets smaller.
13556
13557         * gtk/gtktextview.c (need_repaint_handler): Areas being
13558         passed in are far completely inaccurate, and sometimes
13559         too small, so, for now, just queue a redraw on the
13560         whole visible region.
13561
13562 2000-04-25  Havoc Pennington  <hp@redhat.com>
13563
13564         * gtk/gtktextbtree.c (summary_destroy): new function to 
13565         destroy tag summary nodes
13566         (gtk_text_line_next_could_contain_tag): this function was 
13567         totally broken if the line passed in wasn't below the tag
13568         root. Fix it.
13569         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13570         "wildcard" case, we have to do a linear scan. Blah.
13571         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13572         we have to do the linear scan
13573         (tag_removed_cb): When a tag is removed from the tag table, 
13574         remove the GtkTextTagInfo node from the btree.
13575         (gtk_text_btree_spew): Implement the spew function, for 
13576         our debugging pleasure.
13577
13578 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13579
13580         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13581         a problem with referring to the wrong buffer.
13582
13583         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13584
13585         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13586         font description to gtk_style_new() - otherwise things
13587         don't work without a .gtkrc file.
13588
13589         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13590         tags table if we create it ourself, too.
13591
13592         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13593         it was conflicting with XKB modifiers.
13594
13595         * gtk/gtktextview.[ch]: Add simple support for 
13596         GtkIMContext.
13597
13598 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13599
13600         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13601         with deletion from last commit.
13602
13603 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13604
13605         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13606         in the context from the current locale.
13607         
13608         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13609         context, not hardcoded value.
13610
13611         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13612         not logical.
13613
13614 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13615
13616         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13617         attributes - that doesn't handle partial-glyph selection
13618         properly. Instead use new pango_layout_line_get_x_ranges()
13619         functionality to draw the selection.
13620
13621         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13622         now properly handles out-of-range coordinates.
13623
13624         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13625
13626         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13627         public.
13628
13629         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13630         for paragraphs opposite to the base direction of the widget.
13631
13632         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13633
13634         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13635         causes Arabic words to reshape as you cursor through.
13636
13637         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13638         cursor position when moving vertically with the arrow keys and
13639         scrolling with page-up/page-down. (Arrow keys save only the X,
13640         scrolling saves both X and Y.)
13641
13642         This means you can line-up / line-down or page-up / page-down
13643         without losing your place, and also that moving vertically
13644         with the cursor keys keeps the same X position, not the same
13645         character count:
13646
13647         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13648         arrow keys move by display lines, not paragraphs.
13649
13650 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13651
13652         * gtk/gtklayout.c: Make sure that the bin window is at least
13653         as big as the allocation. (Should we also make sure that the
13654         bin window is big enough to completely cover widget->window?)
13655
13656         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13657         function to get the onscreen rectangle.
13658
13659         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13660         for offsets in window coordinates.
13661
13662 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13665         confusion.
13666
13667         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13668         from the widget direction.
13669
13670         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13671         Add a "direction" attribute.
13672
13673         * gtk/gtktextview.c: global s/tkxt/text_view/.
13674
13675         * gtk/testtext.c: Added long block of text in Arabic, to test out
13676         the direction attributes. (Some problems with the shaping system
13677         for arabic become obvious - like the fact the cursor splits words
13678         into unjoined pieces.)
13679
13680 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13681
13682         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13683
13684         * gtk/gtktextlayout.c: Fix up alignment.
13685
13686         * gtk/testtext.c: Add some tests for centering, wrapping.
13687
13688 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13689
13690         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13691         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13692         If we wrote GTK+-specific layout-render function this could just replace
13693         the draw_layout() operation in the vtable.
13694
13695         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13696         pango_layout_get_cursor_pos() and use that function.
13697
13698         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13699         is a non-static symbol.
13700
13701         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13702         with gtk_text_btree_find_line_by_y()
13703
13704         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13705         renderer that handles GtkTextAppearance attributes.
13706
13707         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13708
13709           - Move the values in the style that don't affect geometry into a
13710             GtkTextAppearance structure.
13711           - Change underline to take a PangoUnderline and "font" a string
13712             representation of a font description
13713           - Add a "font_desc" attribute which takes a FontDescription structure.
13714
13715         * gtk/gtktextlayout.[ch]:
13716
13717           - Get rid of the display-line list per each line. Instead, we
13718             generate, on demand, a GtkTextLineDisplay structure which]
13719             contains a PangoLayout * and other necesary information
13720             (offsets, cursor locations) for displaying a paragraph.
13721           - Get rid of the code to wrap lines, create display chunks,
13722             etc. Instead, we just go through a paragraph and convert
13723             it into the necessary inputs to a PangoLayout.
13724           - Implement a new attribute type, GtkTextAttrAppearance. This
13725             holds a GtkTextAppearance, and is used to pass colors, 
13726             stipple, etc, through from the layout to the display without
13727             having to use lots and lots of individual attributes.
13728           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13729             in terms of PangoLayout functions.
13730         
13731         * gtk/gtktextview.c: 
13732          
13733           - Handle passing the necessary PangoContext to the layout
13734           - Some fixups in painting to deal with the automatic backing store
13735             and offsetting of GTK+-1.4
13736           - Add a style_set handler so that the default style reacts
13737             properly to theme changes.
13738         
13739         * gtk/gtktext?*.[ch]: Random code-style fixes.
13740
13741         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13742
13743 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13744
13745         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13746         in original form preparatory to Pango-ization and gdkimcontext-ization.
13747
13748 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13749
13750         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13751         so that we can derive from gtkimcontext in language bindings properly.
13752
13753 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13754
13755         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13756         Add a compose table including (almost) all the compose combinations
13757         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13758         data in the XIM implementation.
13759
13760         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13761         Moved functions to convert keyvalues from and to unicode here from
13762         the win32 port and made them public.
13763
13764 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13765
13766         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13767
13768 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13769
13770         * gtk/gtkimcontext.[ch]: Base class for new input context system
13771
13772         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13773         the real input context implementation to be loaded from modules
13774         and switched on the fly.
13775
13776         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13777         context that just does direct keysymbol => unicode translation.
13778
13779         * gtk/gtkentry.[ch]: Start switching editing over to using
13780         GtkInputContext. (No handling of preedit yet.)
13781
13782 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13783
13784         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13785         many substitutions. (klass should not be subsituted.)
13786
13787 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13788
13789         * configure.in: Add checks for Pango
13790
13791         * configure.in docs/Makefile.am: Add test for sgml2html
13792         and allow 'make dist' without building html, but print out
13793         warnings in that case. (For making snapshots)
13794
13795         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13796         Add Pango libraries and C flags
13797
13798         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13799         Add function (gdk_draw_layout) to draw a pango layout.
13800
13801         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13802         for getting Pango contexts for GDK.
13803
13804         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13805
13806         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13807         editing.
13808
13809         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13810         keysym => unicode translations. More languages can be added
13811         here, but real input-method support is needed.
13812
13813         * docs/Changes-1.4.txt: Added note about entry behavior.
13814         
13815         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13816         to set the reading direction for a widget and the global direction.
13817         Add test which allows toggling the global direction. Two private
13818         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13819
13820         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13821           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13822
13823         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13824
13825         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13826         underlining now handled by Pango.
13827
13828         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13829         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13830         is temporary.)
13831
13832         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13833         convenience functions for creating contexts and layouts for widgets.
13834
13835         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13836
13837 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13838
13839         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13840         titles to be active, even if they aren't visible.
13841         (gtk_clist_column_titles_passive):  Ditto.
13842
13843 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13844
13845         * gtkmenu.c:
13846         * gtkmenu.h:
13847         * gtktypeutils.h: Spelling/grammar fixes in comments.
13848
13849 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13850
13851         * gdk/nanox/*.h: add missing header files.
13852
13853 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13854
13855         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13856         send_event to TRUE.
13857         (gtk_drawing_area_size): queue a resize.
13858
13859 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13860
13861         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13862         the handlers, also invalidate them. bug nailed down by Karl Nelson
13863         <kenelson@ece.ucdavis.edu>.
13864
13865 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13866
13867         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13868         "(nil)" foundries, patch from Grigorios Magklis.
13869
13870         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13871         on non-available fonts, based on a patch by Grigorios Magklis
13872         <maglis@cs.rochester.edu>.
13873
13874 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13875
13876         * gdk/x11/gdkregion-generic.c: If a region does not have any
13877         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13878         instead of GDK_OVERLAP_RECTANGLE_IN.
13879
13880 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13881
13882         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13883         OFFSCREEN, as it is no longer necessary.
13884
13885 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13886
13887         * gtk/gtkcolorsel.c: Patch from David Santiago
13888         <mrcooger@cyberverse.com> to change things so that the 
13889         indicator of the active palette entry is done independently,
13890         not via the focus, since it should always be visible.
13891
13892 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13893
13894         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13895         refcount leaks as in the X11 backend.
13896
13897         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13898         cosmetics.
13899
13900         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13901         backend. Add _gdk_windowing_window_destroy().
13902
13903         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13904         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13905         either, but these probably do exist on nanox?)
13906         
13907         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13908         which isn't necessarily defined by <math.h>.
13909
13910         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13911         ancestry past GtkObject.
13912
13913         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13914         from DLL on Win32.
13915
13916         * gtk/gtk.def: Update corresponding to recent changes.
13917
13918         * gtk/makefile.{cygwin,msc}: Updates.
13919
13920 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13921
13922         * docs/Changes-1.4.txt: A bit of editing.
13923
13924         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13925         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13926         to clear the update area for the window, and clear it
13927         when hiding a window.
13928
13929         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13930         if window destroyed.
13931
13932         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13933
13934         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13935         gdk_window_destroy() to the generic code, since there was a lot of 
13936         window-system-independent logic it in. Add a function:
13937         
13938          _gdk_window_destroy() 
13939
13940         to the internal API to destroy a window without unreferencing it.
13941         Add a function:
13942
13943          _gdk_windowing_window_destroy()
13944
13945         That does the windowing-system-dependent part of destroying 
13946         the window.
13947
13948 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13949
13950         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13951
13952 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13953
13954         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13955         Make gtk_widget_shape_combine_mask() keep a reference count on
13956         the pixmap since it keeps it around.
13957
13958 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13959
13960         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13961         leak.
13962
13963         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13964         leak with event filters.
13965
13966 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13967
13968         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13969         signal handlers with the right data arguments. (Fixes
13970         some warnings when a widget was repeatedly set as a drag
13971         destination.)
13972
13973         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13974         window so we can avoid avoid setting the DND properties on the
13975         toplevel window repeatedly.
13976
13977 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13978
13979         * gdk/win32/gdkwin32.h: Define more message types missing from
13980         mingw headers.
13981
13982         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13983         call gdk_window_destroy_notify(). It was never called. This
13984         probably meant that the GdkWindow was never freed. Thanks Owen for
13985         noticing (!).
13986
13987         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13988         window as destroyed before calling DestroyWindow(). DestroyWindow()
13989         causes a call to the window procedure (gdk_WindowProc), which
13990         calls gdk_event_translate(), which calls
13991         gdk_window_destroy_notify(), which gets confused unless the window
13992         is set as destroyed.
13993
13994         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
13995         this function to indicate it's win32 only. Put inside #ifdef
13996         G_ENABLE_DEBUG.
13997
13998         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
13999         debugging function. (gdk_event_translate:) Add a default branch
14000         that uses the above function to print debug messages with all
14001         Windows messages symbolically.
14002
14003         * gdk/win32/gdkprivate-win32.h: Declare it, and
14004         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
14005
14006 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
14007
14008         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
14009         public header file.
14010
14011 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
14012
14013         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
14014
14015         * gtk/gtktext.c: made the adjustments no-construct args, simply
14016         provide default adjustments.
14017         (gtk_text_destroy): release adjustments.
14018
14019         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
14020         adjustment argument non-construct.
14021
14022         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
14023         instead of in finalize.
14024         (gtk_progress_get_text_from_value): 
14025         (gtk_progress_get_current_text): 
14026         (gtk_progress_set_value): 
14027         (gtk_progress_get_percentage_from_value): 
14028         (gtk_progress_get_current_percentage): 
14029         (gtk_progress_set_percentage): 
14030         (gtk_progress_configure): ensure an adjustment is present.
14031
14032 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
14033
14034         * gtk/gtkcolorsel.[hc]:
14035         * gtk/gtkcolorseldialog.[hc]:
14036         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
14037         their parent implementation, use bit fields for boolean values, don't
14038         create unused widgets, usage of glib types, braces go on their own
14039         lines, function argument alignment, #include directives etc. etc. etc..
14040
14041         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
14042
14043 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
14044
14045         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
14046
14047         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
14048         of NULL.
14049
14050         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
14051         to freed data.
14052         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
14053
14054         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
14055         to NULL when the toplevel is getting destroyed.
14056         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
14057         (gtk_menu_destroy): 
14058         (gtk_menu_init): store the information of whether we have to
14059         readd the initial child ref_count during destruction in a new
14060         GtkMenu field needs_destruction_ref_count.
14061
14062         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
14063         here, those reading: learn from my mistake! ;)
14064         in order for set_?adjustment to support a default adjustemnt if
14065         invoked with an adjustment pointer of NULL, the code read (pseudo):
14066         if (v->adjustment) unref (v->adjustment);
14067         if (!adjustment) adjustment = adjustment_new ();
14068         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
14069         now imagine the first unref to actually free the old adjustment and
14070         adjustment_new() creating a new adjustment from the very same memory
14071         portion. here, the latter comparision will unintendedly fail, and
14072         all hell breaks loose.
14073         (gtk_viewport_set_hadjustment):
14074         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
14075         after unreferencing it.
14076
14077         * gtk/gtkcontainer.[hc]: removed toplevel registration
14078         functions: gtk_container_register_toplevel(),
14079         gtk_container_unregister_toplevel() and
14080         gtk_container_get_toplevels() which had wrong semantics
14081         anyways: it didn't reference and copy the list.
14082
14083         * gtk/gtkwindow.c: we take over the container toplevel registration
14084         bussiness now. windows are registered across multiple destructions,
14085         untill they are finalized. the initial implicit reference count
14086         users are holding on windows is removed with the first destruction
14087         though.
14088         (gtk_window_init): ref & sink and set has_user_ref_count, got
14089         rid of gtk_container_register_toplevel() call. add window to
14090         toplevel_list.
14091         (gtk_window_destroy): unref the window if has_user_ref_count
14092         is still set, got rid of call to
14093         gtk_container_unregister_toplevel().
14094         (gtk_window_finalize): remove window from toplevel list.
14095         (gtk_window_list_toplevels): new function to return a newly
14096         created list with referenced toplevels.
14097         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
14098
14099         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
14100         adjustment a non-construct arg.
14101         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
14102         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
14103         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
14104
14105         * gtk/gtkrange.c: added some realized checks.
14106         (gtk_range_destroy): get rid of the h/v adjustments in the
14107         destroy handler instead of finalize. remove timer.
14108         (gtk_range_get_adjustment): demand create adjustment.
14109
14110         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
14111         we simply create them on demand now and get rid of them in
14112         the destroy handler.
14113         (gtk_viewport_destroy): get rid of the h/v adjustments in the
14114         destroy handler instead of finalize.
14115         (gtk_viewport_get_hadjustment): 
14116         (gtk_viewport_get_vadjustment): 
14117         (gtk_viewport_size_allocate): demand create h/v adjustment
14118         if required.
14119
14120         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
14121         gtk_widget_real_destroy () functionality.
14122         (gtk_widget_real_destroy): reinitialize with a new style, instead
14123         of setting widget->style to NULL.
14124
14125 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
14126
14127         * gtk/gtkcalendar.c:
14128         * gtk/gtkbutton.c: ported _get_type() implementation over to
14129         GType, either to preserve memchunks allocation facilities,
14130         or because Gtk+ 1.0 GtkTypeInfo was still being used.
14131
14132         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
14133         over. prepare for ::destroy to be emitted multiple times.
14134         removed reference tracer magic. chain into GObjectClass.shutdown()
14135         to emit ::destroy signal.
14136
14137         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
14138         fundamental.
14139
14140         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
14141         cludge.
14142
14143         * gtk/gtksocket.c:
14144         * gtk/gtkplug.c:
14145         * gtk/gtklayout.c:
14146         * gtk/gtklabel.c:
14147         * gtk/gtkargcollector.c:
14148         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
14149         not being a fundamental anymore, and to work with the new
14150         type system (nuked fundamental type varargs clutter).
14151
14152         * gtk/*.c: install finalize handlers in the GObjectClass
14153         part of the class structure.
14154         changed direct GTK_OBJECT()->klass accesses to
14155         GTK_*_GET_CLASS().
14156         changed direct object_class->type accesses to GTK_CLASS_TYPE().
14157
14158         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
14159         GType. made most of the GTK_*() type macros and Gtk* typedefs
14160         simple wrappers around macros and types provided by GType.
14161         most notably, a significant portion of the old API vanished:
14162         GTK_TYPE_MAKE(),
14163         GTK_TYPE_SEQNO(),
14164         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
14165         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
14166         GTK_TYPE_ARGS,
14167         GTK_TYPE_CALLBACK,
14168         GTK_TYPE_C_CALLBACK,
14169         GTK_TYPE_FOREIGN,
14170         GtkTypeQuery,
14171         gtk_type_query(),
14172         gtk_type_set_varargs_type(),
14173         gtk_type_get_varargs_type(),
14174         gtk_type_check_object_cast(),
14175         gtk_type_check_class_cast(),
14176         gtk_type_describe_tree(),
14177         gtk_type_describe_heritage(),
14178         gtk_type_free(),
14179         gtk_type_children_types(),
14180         gtk_type_set_chunk_alloc(),
14181         gtk_type_register_enum(),
14182         gtk_type_register_flags(),
14183         gtk_type_parent_class().
14184         replacements, where available are described in ../docs/Changes-1.4.txt.
14185         implemented compatibility functions for the remaining API.
14186
14187         * configure.in: depend on glib 1.3.1, use gobject module.
14188
14189 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
14190
14191         * TODO.xml: Various updates to current status.
14192
14193 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
14194
14195         * gtk.m4: Print out version when test succeeds.
14196
14197 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
14198
14199         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
14200         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
14201         
14202         (Original triangle color selector from Simon Budig
14203         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
14204         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
14205         Santiago <mrcooger@cyberverse.com>)
14206
14207         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
14208         out into a separate widget.
14209
14210         * gtk/testgtk.c: Add some checkbuttons for toggling palette
14211         and opacity controls.
14212
14213 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
14214
14215         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
14216         snuck in prematurely.
14217
14218 2000-05-07  Tor Lillqvist  <tml@iki.fi>
14219
14220         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
14221         had deleted a ! operator by mistake, which caused
14222         GDK_SELECTION_CLEAR events never to be generated, which caused
14223         only the first copy to the clipboard from an gtkeditable to
14224         actually cause a copy to the Windows clipboard.
14225
14226 2000-05-06  Tor Lillqvist  <tml@iki.fi>
14227
14228         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
14229         compilation, too. Current mingw gcc distributions include the
14230         necessary headers. Also the necessary IIDs are now in mingw
14231         headers/libraries, and own definitions unnecessary.
14232
14233         More hacking on OLE2 DND, still doesn't work though, and thus
14234         ifdeffed out.
14235
14236         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
14237         here, too.
14238
14239 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
14240
14241         * gdk/nanox/*: nano-X port work in progress.
14242         * gdk/simple.c: simple test for Gdk.
14243         * README.nanox: notes about the port: read this first!
14244         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
14245         with nano-X.
14246
14247 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
14248
14249         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
14250         gdk_window_clear() into common code, implement in terms of
14251         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
14252         not redirected to the backing rectangle.
14253
14254 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14255
14256         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14257         EXTRA_DIST. It does not work well when the file that
14258         everything depends on is not in the tarball.
14259
14260 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
14261
14262         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
14263         with recursion where process_updates() is called from
14264         an expose handler. (GtkTextView is highly broken in
14265         doing this, but it should work, so it is a nice test
14266         case.)
14267
14268 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14269
14270         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
14271         handle the case where updates are queued during processing of
14272         updates.
14273
14274 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14275
14276         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
14277         window is on gdk_display - use that instead of segfaulting.
14278
14279 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
14280
14281         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
14282         broken and require an empty arg, give it to them.
14283
14284 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
14285
14286         * gtk/gtklabel.h: indentation fixes.
14287
14288 2000-05-02  Tor Lillqvist  <tml@iki.fi>
14289
14290         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
14291         draw too narrow or too low arcs, they seem to fail, at least with
14292         some display drivers.
14293
14294         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
14295
14296         Large changes to the Win32 backend, partially made necessary by
14297         the changes to the backend-independent internal
14298         structures. Attempts to implement similar backing store stuff as
14299         on X11. The current (CVS) version of the Win32 backend is *not* as
14300         stable as it was before the no-flicker branch was merged. A
14301         zipfile with that version is available from
14302         http://www.gimp.org/win32/. That should be use by "production"
14303         code until this CVS version is usable. (But note, the Win32
14304         backend has never been claimed to be "production quality".)
14305
14306         * README.win32: Add the above comment about versions.
14307
14308         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
14309
14310         * gdk/gdk.def: Update.
14311
14312         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
14313         presumably be replaced by some more better mechanism as 1.4 gets
14314         closer to release shape.
14315
14316         * gdk/makefile.{cygwin,msc}: Update.
14317
14318         * gdk/win32/*.c: Correct inclusions of the backend-specific and
14319         internal headers. Change code according to changes in these. Use
14320         gdk_drawable_*, not gdk_window_* where necessary.
14321
14322         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
14323         our old DND.
14324
14325         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
14326         to interpret single characters as UTF-8. Thanks to Hans Breuer.
14327         Use correct function name in warning messages.
14328
14329         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
14330         GSourceFuncs gdk_event_prepare and gdk_event_check.
14331         (gdk_event_get_graphics_expose): Do implement, use
14332         PeekMessage. Thanks to Hans Breuer.
14333         (event_mask_string): Debugging function to print an GdkEventMask.
14334         (gdk_pointer_grab): Use it.
14335
14336         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
14337         (old) book I used claimed was Hangul actually is CJK Unified
14338         Ideographs Extension A. Also, Hangul Syllables were missing.
14339         Improve logging.
14340
14341         * gdk/win32/gdkgc-win32.c: Largish changes.
14342
14343         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
14344         g_win32_getlocale() from GLib, and not setlocale() to get current
14345         locale name.
14346
14347         * gdk/win32/gdkprivate-win32.h
14348         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
14349         gdkwin32.h, similarily as in the X11 backend.
14350
14351         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
14352         assignment was used instead of equals in if test. Thanks to Hans
14353         Breuer.
14354
14355         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
14356         the X11 version.
14357
14358         * gdk/win32/makefile.{cygwin,msc}
14359         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
14360         path to the Win32 headers that works also with the mingw compiler.
14361
14362         * gtk/gtkstyle.c: Include <string.h>.
14363
14364 2000-04-26  Havoc Pennington  <hp@redhat.com>
14365
14366         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
14367         replacing the broken gtk_label_get ()
14368
14369 2000-04-15  Havoc Pennington  <hp@pobox.com>
14370
14371         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
14372         this keeps scanner scripts from getting confused.
14373
14374         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
14375         data, rather than void
14376
14377 2000-04-15  Tor Lillqvist  <tml@iki.fi>
14378
14379         * gtk/gtkclist.c (gtk_clist_motion)
14380         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
14381         with is_hint FALSE, get x and y from the event. They used to be
14382         used uninitialised. The Win32 backend never sends motion events
14383         marked as hints. This for instance fixes the annoying file and
14384         font selector behaviour in the Win32 version.
14385
14386 2000-04-14  Tor Lillqvist  <tml@iki.fi>
14387
14388         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
14389         gtk_private_n_signals variables, they are used by some software,
14390         sigh.
14391
14392         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
14393         installation directory from the Registry, where the installer
14394         should have put it.
14395
14396 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
14397
14398         * gdk/x11/Makefile.am: Fix problem with installation directory for
14399         gdkx.h
14400
14401         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
14402         <mrcooger@cyberverse.com> so that when selecting menus with the
14403         mouse, the first item will not be selected, but when selecting
14404         with an accelerator, or navigating left-right on a menubar with
14405         the menus popped up, the first item will be selected.
14406
14407 2000-04-05  Dan Damian  <dand@dnttm.ro>
14408
14409         * configure.in: Added "ro" to ALL_LINGUAS.
14410
14411 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
14412
14413         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
14414         indentation.
14415
14416         * Makefile.am (EXTRA_DIST): Fix typo.
14417
14418         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
14419         to catch gdkconfig.h
14420
14421         * gtk/gtkitemfactory.c: Added FIXME.
14422
14423 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
14424
14425         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
14426         s/return_if_fail/return_val_if_fail/g and add a return value.
14427
14428 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14429
14430         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
14431         merge slipup.
14432
14433         * gdk/gdkinput.h: Fix missing line from merge.
14434
14435 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
14436
14437         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
14438         instead of gdkprivate.h.
14439
14440 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
14441
14442         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
14443         parent class to correctly be GtkDialogClass.
14444
14445 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
14446
14447         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
14448         toplevel windows and their immediate children by their parents,
14449         since the size of toplevel windows is out of our immediate
14450         control and we don't get any real benefit from trying to track
14451         this size for clipping.
14452
14453         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
14454         for input_only windows.
14455
14456         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
14457         to fix some hacks and make sure that we don't try to set the
14458         background of input only windows.
14459
14460 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
14461
14462         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
14463         the _really_ internal stuff, and leave gdkprivate.h for the fake private
14464         stuff that we've traditionally exposed.
14465
14466         * gdk/**.c: Use gdkinternals.h where appropriate.
14467
14468         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
14469         not include gdkprivate-x11.h, move all stuff of conceivable public
14470         interest into gdkx.h; keep all really private stuff in
14471         uninstalled header gdkprivate-x11.h.
14472
14473         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
14474         image->image_put on windows through a new function _gdk_window_draw_image()
14475         to allow us to do backing store for images. (Sort of ugly)
14476
14477         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
14478         contexts locally so that we can offset them properly when drawing 
14479         onto backing pixmaps.
14480
14481         * gdk/gdkinput.h: Reindented
14482
14483         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
14484         pixmap or color for the window, so we can properly initialize
14485         our double-buffer pixmaps, and also so that we temporarily set
14486         a background of None while scrolling.
14487
14488         * gdk/gdkregion.h: Revise region boolean operators to have an
14489         interface that is actually convenient - switch from creating new
14490         regions on every op, to "methods" that modify existing regions
14491         (A = A OP B). 3 argument forms which allow dest == src, would also
14492         be possible, but the current interfaces seem to map nicely
14493         onto what needs to be done. (There is quite a lot of region
14494         code in GDK now.)
14495
14496         * gdk/gdkregion.h: Add constructor from rectangle and a copy
14497         operator.
14498
14499         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
14500         gdkpoly-generic.h: Copy region code from Xlib, switch it over
14501         to 32 bit coordinates, modify it to be mostly GTK+ style
14502         and to have interfaces that match gdkregion.h.
14503
14504         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
14505         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
14506         create a backing pixmap and redirect all drawing to
14507         that backing pixmap until a matching gdk_window_end_paint().
14508
14509         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
14510         Create a special drawable class for GtkWindow's that 
14511         redirects the drawing to the backing pixmap as necessary
14512         and then calls the real operations in _gdk_windowing_window_class.
14513
14514         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
14515         Store invalid region for each window. Generate expose events for invalid
14516         region in an idle. This replaces both the expose compression
14517         and the redrawing queuing in GTK+. It is both more efficient and
14518         simpler than either one individually and far more so then the
14519         combination.
14520
14521         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14522         Emulate 32 bit coordinates for windows with 16 bit coordinates
14523         by offsetting drawing, guffaw scrolling techniques and
14524         mapping/unmapping child windows as necessary.
14525
14526         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14527         where, when invalid regions are processed, the region is stored,
14528         and if expose events come in that are detectably duplicate
14529         the processed exposes (by comparison of event serial numbers),
14530         the stored region is subtracted out of those exposes.
14531
14532         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14533         regions newly exposed when scrolling or resizing windows.
14534         This, combined with forcing processesing of queued invalidated
14535         regions, gives nice flicker-free scrolling.
14536
14537         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14538         invalidated regions after every scroll.
14539
14540         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14541         emulation in GDK. Its, for all practical purposes just a
14542         GtkViewport/GtkFixed hybrid now.
14543
14544         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14545         (16-bit) structures as necessary instead of just casting.
14546
14547         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14548         in terms of the structures from gdkregion-generic.c, using appropriate
14549         offsets from GDK to X11 coordinates. Cache clip mask and
14550         origin and ts origin locally and only flush to the server
14551         when drawing, to avoid constantly setting and resetting these
14552         values when offsetting GC's for scrolling and backing pixmaps.
14553
14554         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14555
14556         * gtk/gtkcontainer.c: Call process_all_updates at end
14557         of resizing to reduce flicker. (Avoids having redraw
14558         lag arbitrarily behind resize under some circumstances)
14559
14560         * gtk/gtkentry.c: Remove old backing store code, and simply take
14561         advantage of the new backing store capabilities of GDK.
14562
14563         * gtk/gtkmain.c: Simple implementation of widget backing
14564         store - simply push a paint while handling each expose.
14565         (Should really be configurable widget for widget.)
14566         
14567         * gtk/gtkwidget.c: Remove all the old complicated redraw
14568         code, and simply invalidate the GDK windows from
14569         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14570         debugged complexity ... gone to the winds.)
14571
14572         Remove all the code for suppressing expose events while
14573         resizes are pending; this isn't needed since the invalid
14574         areas won't be processed until after the resizes are
14575         processed, since they are in a lower priority idle.
14576
14577 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14578
14579         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14580         and height of dest rectangle for non-intersecting rectangles.
14581
14582 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14583
14584         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14585         for GdkRectangle.
14586
14587 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14588
14589         * gdk/gdk{events,image,private,types,window}.h
14590          gdk/x11/gdkinputprivate.h: Change all coordinates
14591          from int16 to int. Also, Change width and height from
14592          unsigned to signed to avoid all the stupid C 
14593          signedness bugs.
14594
14595 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14596
14597         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14598         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14599         Add some more detailed checking.
14600
14601         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14602         New function to retrieve the depth of a drawable.
14603
14604         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14605         field, reorder fields to save memory. 
14606
14607 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14608
14609         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14610         of the background image instead of scaling the background down to
14611         a line.
14612
14613         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14614         which temporarily set slider to wrong size.
14615
14616         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14617         queue_clear().
14618
14619 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14620
14621 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14622
14623         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14624
14625 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14626
14627         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14628         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14629
14630         * gdk/win32/gdkfont-win32.c
14631         * gdk/win32/gdkproperty-win32.c
14632         * gdk/win32/gdkselection-win32.c
14633         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14634         now declared such.
14635
14636 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14637
14638         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14639
14640 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14641
14642         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14643         is called without trapping X errors.
14644
14645 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14646
14647         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14648         way into the fontset lists.
14649
14650 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14651
14652         * gtk/gtkthemes.h: add extern "C" scope.
14653
14654 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14655
14656         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14657         to make appends to the list constant. (gtk-guy-990901-0.patch)
14658
14659 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14660
14661         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14662         for the typename hash table.
14663
14664 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14665
14666         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14667         to make sure we never divide by zero. 
14668         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14669
14670 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14671
14672         * gtk/gtkfontsel.c: Apply patch from
14673         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14674         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14675
14676         Also, some cleanups in atom handling.
14677
14678 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14679
14680         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14681         not GtkWidget.
14682
14683 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14684
14685         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14686         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14687         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14688         more guint wrap-around bugs before going to bed.
14689
14690 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14691
14692         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14693         guint wrap arounds in allocation.width.
14694
14695         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14696         process untill we fit the allocation given.
14697
14698 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14699
14700         * gtk/gtkwidget.c:
14701         (gtk_widget_unrealize): guard widget access with ref/unref
14702         around signal emission.
14703         (gtk_widget_hide): same here, but also check its destroyed
14704         state before queueing a resize.
14705
14706 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14707
14708         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14709         of gtk_default_insensitive_bg as insensitive base color.
14710
14711         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14712         to the widget's state.
14713         (gtk_text_realize): same here.
14714         (gtk_text_state_changed): same here.
14715         (draw_bg_rect): compare background color against base[] from
14716         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14717
14718 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14719
14720         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14721         grabs are active, unless a delete event is send to the toplevel
14722         of the currently grab holding widget.
14723
14724 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14725
14726         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14727         debugging g_print's.
14728
14729 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14730
14731         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14732         ever make the scrolled-window requisition ever depend on the 
14733         visibility state of the scrollbars for the AUTOMATIC policy. 
14734         This breaks the GTK+ requisition model, and causes loops.
14735
14736 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14737
14738         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14739         the default font to avoid problems with XFree86-4.0 where the
14740         default charset is iso10646-1, not iso8859-1.
14741
14742 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14743
14744         * acinclude.m4
14745         * config.guess
14746         * config.sub
14747         * ltconfig
14748         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14749
14750         * gtk/Makefile.am: minor cosmetic consistency tweak
14751
14752 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14753
14754         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14755         the activate_time to 0, so that we handle a quick
14756         press/release press/release properly and don't suppress
14757         the second release. (Red Hat bug #7545)
14758
14759 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14760
14761         * gtk/gtkctree.c (row_delete):
14762         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14763         bugs with destruction notifier, *always* update internal
14764         structures *before* calling user code.
14765
14766 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14767
14768         A few more fixes for bug #5487, #2051, #2677.
14769         * gtk/gtkclist.c : 
14770         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14771         not GDK_BUTTON_PRESS.
14772         (resync_selection): resync only if selection_mode is
14773         GTK_SELECTION_EXTENDED
14774         * gtk/gtkctree.c (resync_selection): same here
14775
14776 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14777
14778         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14779         gdk_drag_get_selection() and gtk_menu_detach().
14780
14781         [ From Jeroen Ruigrok/Asmodai ]
14782
14783 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14784
14785         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14786         page->tab_label can be NULL.
14787
14788 2000-01-25  Havoc Pennington  <hp@pobox.com>
14789         
14790         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14791         arg is boolean
14792
14793         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14794
14795         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14796
14797         * gdk/gdkproperty.c (gdk_property_get): return boolean
14798
14799         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14800
14801         * gdk/gdkim.c (gdk_im_ready): return boolean
14802
14803         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14804
14805         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14806         glib clash, should fix glib)
14807
14808         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14809         (gdk_get_show_events): return gboolean, and canonicalize 
14810         to TRUE/FALSE
14811
14812         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14813         colormap is private
14814         (gdk_colors_alloc): gboolean whether to be contiguous
14815         (gdk_color_equal): return gboolean since we are a predicate
14816         and not a qsort() (this looks semi-wrong due to glib breakage,
14817         IMO glib should be fixed)
14818         
14819         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14820         (gdk_get_use_xshm): return gboolean
14821         (gdk_pointer_is_grabbed): return gboolean
14822
14823         * gdk/gdk.h: Change prototypes to match all the above changes,
14824         and re-run egtk-format-protos as required.
14825
14826 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14827
14828         * gtk/gtkctree.c (resync_selection): 
14829         * gtk/gtkclist.c (resync_selection):
14830
14831         Return immediately if clist->drag_pos < 0. This is a workaround
14832         for the corrupt state that the clist gets into when a
14833         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14834
14835         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14836         
14837         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14838         variable from recent commit.
14839
14840 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14841
14842         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14843
14844 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14845
14846         * gtk/Makefile.am: prefix all autogenerated source that get build in
14847         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14848         in builddir. since we subsequently cd into srcdir for autogeneration,
14849         the paths have to be stripped from the target file names, thusly we
14850         use $(@F) as target names now.
14851         put a comment about configure.in's --disable-rebuilds option,
14852         which can be used for non-writable source directories, for development
14853         setups though, srcdir has to be *writable*.
14854
14855 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14856
14857         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14858           Finish the job of allowing event to be NULL.
14859           (Fixes bug #4283, reported by Chris Blizzard)
14860
14861         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14862           things so that the cursor appears on screen, properly
14863           take into account INNER_BORDER.
14864           (Fixes bug #4754, reported by Antonio Campos)
14865
14866 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14867
14868         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14869           show the tab_label unless it itself is visible.
14870
14871           gtk/gtknotebook.c (gtk_notebook_size_request):
14872           Do a better job of making sure that the visibility
14873           of the tab label corresponds to whether it should
14874           be mapped or not.
14875
14876 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14877
14878         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14879           Use the requisition, not the allocation, since the
14880           allocation has not necessarily been computed yet.
14881           (Pointed out by Eugene Osintsev)
14882
14883 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14884
14885         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14886           style/base[GTK_STATE_INSENSITIVE] both to
14887           gtk_default_insensitive_bg!
14888           (Bug #2187, reported by Jonathan Blandford)
14889
14890         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14891           Add Alt_L, Alt_R to list of invalid accelerators.
14892           (Bug #3736, reported by Vlad Harchev)
14893
14894 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14895
14896         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14897         bugs which occured after an attempt to open 
14898         invalid home directory left cmpl_state->reference_dir == NULL.
14899
14900          - completion on files in home directory didn't work
14901          - completion on an empty string caused  segfault
14902
14903          (Bug #3678, reported by Steve Ratcliffe)
14904
14905         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14906         cut and paste error that was causing scales to
14907         be incorrectly positioned.
14908         (Bug #2956,
14909          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14910
14911 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14912
14913         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14914         when checking for dcgettext, if we've found we needed
14915         it for dgettext.
14916 +
14917 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14918
14919         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14920         queue_clear on NO_WINDOW widgets during a reparent,
14921         since at that point the window and widget heirarchies
14922         are out of sync. This stops crashing in some cases
14923         (the scrolled window reparent test, for instance), and
14924         _probably_ won't cause drawing errors.
14925
14926         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14927         test do what it was supposed to do and be robust against
14928         window closings, etc. (Bug #2443)
14929
14930 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14931
14932         * gtk/gtkentry.c: Fix return values on mouse events.
14933         (Bug #2686, Sky <seb_sky@yahoo.com>)
14934
14935         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14936         (pointed out by George Lebl)
14937
14938         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14939         (From Ettore Perazzoli  <ettore@helixcode.com>)
14940  
14941 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14942
14943         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14944         clicks between rows or outside calender area correctly.
14945         (Patch from Damon Chaplin)
14946
14947         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14948         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14949           Call destroy function when overwriting existing data. 
14950           (Pointed out by Damon Chaplin)
14951
14952 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14953
14954         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14955           which was causing problems on various systems with Xmu.
14956           This hasn't been needed for a very long time.
14957           (Fixes #1185 3167)
14958
14959 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14960
14961         * gdk/gdki18n.h: Include <ctype.h> when defining
14962           gdk_isw* in terms of is* as a fallback.
14963           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14964
14965 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14966
14967         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14968           realize the widget when it is size allocated!
14969           (old, old bug)
14970
14971         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14972           Removed unused call to gdk_window_get_size() that
14973           showed up when the above was fixed.
14974
14975 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14976
14977         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14978           fix up widget->window when the widget is a
14979           NO_WINDOW container widget.
14980
14981 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14982
14983         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14984           to account for the fact that feof() does _not_ 
14985           return TRUE on errors, and thus avoid infinite loops
14986           when trying to use gdk_pixmap_create_from_xpm()
14987           on unreadable values.
14988
14989 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14990
14991         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14992
14993 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14994
14995         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
14996           gdk_gc_set_dashes to take gint8 instead of gchar to
14997           make it clearer that it is _not_ a NULL terminated string.
14998
14999         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
15000           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
15001           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
15002           arguments.
15003
15004 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
15005
15006         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
15007         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
15008         background size relative to our allocation, guard against small
15009         allocations, we may have not yet been size allocated.
15010
15011 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
15012
15013         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
15014         not just version == 3. We implement all 3 + most of 4 - 
15015         (we don't support matching text/plain;charset=iso-8859-1
15016         to a dest that expects text/plain). We'll still advertise
15017         3 to be safe, but any client implementing version >= 3
15018         must interoperate with 3.
15019         
15020 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15021
15022         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
15023         background and gc members, add a warning in gtk_tooltips_set_color()
15024         indicating that this function is deprecated.
15025
15026 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
15027
15028         * docs/gtkfaq.sgml: FAQ Update:
15029           - Minor cleanups (Emmanuel, me)
15030           - New questions:
15031                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
15032                 How can I retrieve the text from a GtkMenuItem? (timj)
15033                 How do I validate/limit/filter the input to a GtkEntry? (me)
15034                 Memory does not seem to be released when I free the list
15035                         nodes I've allocated (timj)
15036
15037 2000-03-07  Tor Lillqvist  <tml@iki.fi>
15038
15039         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
15040         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
15041         for which it is no use to call GetLastError onWin9x.
15042         (gdk_other_api_failed) New function, for general error
15043         reporting without calling GetLastError.
15044         (gdk_win32_api_failed) OTOH, this function always calls
15045         GetLastError. (gdk_win32_last_error_string) Remove this function,
15046         GLib has the equivalent now.
15047
15048         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
15049         call them with function name, file name and line number in the
15050         arguments.
15051
15052         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
15053         functions.
15054         
15055         * gtk/gtk.def: Add some missing entry points.
15056
15057         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15058         gtk_paned_set_gutter_size, which don't exist any longer, as void.
15059         
15060         Fixes by Hans Breuer:
15061
15062         * gdk/makefile.msc: Update for debugging.
15063
15064         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
15065         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
15066         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
15067         in the dash_list.
15068
15069         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
15070         the x11 backend.
15071
15072         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
15073
15074         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
15075
15076 2000-03-04  Tor Lillqvist  <tml@iki.fi>
15077
15078         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
15079         just pixel value of background colour.
15080
15081         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
15082         containing code snippet previously duplicated in a couple of
15083         places.
15084         
15085         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
15086         gdk_colormap_color.
15087
15088         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
15089         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
15090         events for autorepeated Shift, Control and Alt keys. Use
15091         gdk_colormap_color.
15092
15093         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
15094         pointer is inside the window the cursor of which we are setting,
15095         call SetCursor immediately.
15096
15097         * gdk/win32/makefile.cygwin
15098         * gtk/makefile.cygwin: If we don't have the build number stamp
15099         file, use zero.
15100
15101         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15102         gtk_paned_set_gutter_size as empty.
15103
15104         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
15105         
15106 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
15107
15108         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
15109           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
15110           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
15111           docs/gtk_tut.sgml docs/gtk.texi TODO:
15112
15113           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
15114
15115 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
15116
15117         * gtk/gtkcalendar.c: Implement num_marked_dates,
15118           and don't emit mutiple day_selected signals on
15119           month_prev.
15120
15121 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
15122
15123         * docs/make-todo (lineno): let title and logo be configurable so
15124         that GNOME can use this script too.
15125
15126         * TODO.xml: added logourl and a title
15127
15128 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
15129
15130         * TODO.xml: Added some UI items, and an explanatory
15131         comment at the top of the file.
15132
15133 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
15134
15135         * TODO.xml: some updates, added abunch of new entries.
15136         a note for those fiddeling with this file, when done
15137         with it, invoke:
15138         $ ./docs/make-todo TODO.xml >/dev/null
15139         and correct output errors before comitting changes.
15140
15141 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
15142
15143         * TODO.xml: Added XML-structured TODO file.
15144         * docs/make-todo: python script to turn TODO.xml into
15145           pretty XML output. 
15146
15147 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
15148
15149         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
15150         the function to let it draw the seven dots, instead of the old,
15151         much maligned, method.
15152         (draw_dot): New function to draw a dot.
15153
15154         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
15155         to draw the handle inside the border width as opposed to outside.
15156         Use paint function instead of gdk_draw_point.
15157
15158         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
15159         to draw the handle inside the border width as opposed to outside.
15160         Use paint function instead of gdk_draw_point.
15161
15162         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
15163         Change indenting to be more GTK like.
15164
15165 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
15166
15167         * docs/gtk_tut.sgml: New section on GtkCalendar
15168         * examples/calendar: Update example code
15169
15170 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
15171
15172         * docs/gtkfaq.sgml: FAQ Update
15173
15174 2000-02-19  Anders Carlsson  <andersca@gnu.org>
15175
15176         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
15177         to prevent the scroll event to be propagated upwards.
15178
15179 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15180
15181         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
15182         OwnerGrabButtonMask from button entries for
15183         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
15184
15185         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
15186         to the event mask (which will result in button/press release
15187         being added to the event mask on Unix) so scrolling works
15188         for layouts in scroll windows.
15189
15190         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
15191
15192         Patch from Anders Carlsson  <andersca@gnu.org> to add
15193         a scroll event.
15194
15195         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
15196         scrolling to the "Test Scrolling" part of testgtk.
15197  
15198         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
15199  
15200         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
15201         it against GDK_SCROLL.
15202  
15203         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
15204         way of mouse wheel scrolling.
15205  
15206         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
15207  
15208         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
15209  
15210         * gtk/gtkmain.c: Removed previous mouse wheel hack.
15211  
15212         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
15213         gdk_event_mask_table.
15214  
15215         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
15216         GdkEventScroll handler.
15217  
15218         * gdk/gdkevents.h: Added GdkEventScroll structure.
15219  
15220 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
15221
15222         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
15223         and Anders Carlsson to change the Paned widgets so that they
15224         can be dragged from anywhere along the length. Also change
15225         the way that this is drawn to make this apparent.
15226
15227         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
15228         from George Lebl to check that option_menu->menu is present
15229         before getting history.
15230
15231 2000-02-14  Tor Lillqvist  <tml@iki.fi>
15232
15233         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
15234         before the assertion for non-NULL segment list.
15235
15236         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
15237         Seems that pattern brushes *must* be 8x8 pixels! At least on my
15238         machine, but it might be display driver dependent. Sigh, so make
15239         sure the stipple is that size. Does Windows suck or what?
15240
15241         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
15242         places.
15243
15244 2000-02-13  Havoc Pennington  <hp@pobox.com>
15245
15246         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
15247         refcount to 1
15248         (gdk_cursor_new): init refcount to 1
15249
15250         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
15251
15252 2000-02-13  Tor Lillqvist  <tml@iki.fi>
15253
15254         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
15255         so that we don't have to do unnecessary settings to the HDC.
15256
15257         * gdk/win32/gdkdrawable-win32.c
15258         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
15259         gdk_gc_predraw.
15260
15261         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
15262         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
15263         GDI paths, call WidenPath to get the outline of the stroken path,
15264         and then fill the outline (with the brush that was built from the
15265         stipple).
15266
15267         * gdk/win32/gdkgc-win32.c: Factor out common code from
15268         _gdk_win32_gc_new and gdk_win32_gc_set_values into
15269         gdk_win32_gc_values_to_win32values. Use correct colour for
15270         SetBkColor() (Until now the code actually used a random colour in
15271         the call to SetBkColor()... but that didn't show up as not many
15272         GDI APIs use the background colour. Pattern (opaque stippled)
15273         brushes do.)
15274
15275         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
15276         gdk_win32_api_failed): New functions for error logging.
15277
15278         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
15279         WIN32_API_FAILED to call them, passing function or file name and
15280         line number.
15281
15282         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
15283
15284         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
15285         GdkColor for foreground and background in GdkGCWin32Data.
15286
15287         * gdk/makefile.cygwin: Link in the resource object separately.
15288
15289         * gdk/win32/rc/gdk.rc
15290         * gtk/gtk.rc (New file)
15291         * gdk/win32/makefile.cygwin
15292         * gtk/makefile.cygwin: Update build number in DLLs automatically,
15293         as in GLib.
15294
15295 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
15296
15297         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
15298         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
15299         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
15300         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
15301         parameters given and cursor->ref_count. coding style fixups.
15302
15303         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15304         not GtkWidget.
15305         
15306         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
15307         fix up widget macros and add _GET_CLASS() variant.
15308         
15309         * gtk/*.c: some GtkType fixups.
15310
15311 2000-02-09  Tor Lillqvist  <tml@iki.fi>
15312
15313         * gdk/win32/gdkproperty-win32.c
15314         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
15315         were reversed.
15316
15317 2000-02-04  Tor Lillqvist  <tml@iki.fi>
15318
15319         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
15320         g_filename_to_utf8 to convert the font names Windows gives us from
15321         whatever is the default codepage to UTF-8.
15322         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
15323         in the other direction.
15324
15325         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
15326         error in debugging output.
15327
15328 2000-02-02  Tor Lillqvist  <tml@iki.fi>
15329
15330         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
15331         and height parameters to gdk_window_clear_area(). Not minus one.
15332
15333 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
15334
15335         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
15336         checks if the widget passed to gtk_drag_get_data() was not the
15337         dest widget.
15338
15339 2000-02-01  Tor Lillqvist  <tml@iki.fi>
15340
15341         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
15342         g_filename_from_utf8 functions (which were added a moment ago to
15343         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
15344         size buffers.
15345
15346         gtk_file_selection_get_filename returns the filename in the C
15347         runtime encoding. It calls g_filename_from_utf8, but copies the
15348         returned string to a static buffer, which is returned. I think
15349         this is better than returning the result from g_filename_from_utf8
15350         directly, which would mean all apps that use it would have to free
15351         the return value. Or should this function care about this issue at
15352         all? Maybe a new function with clearly defined semantics.
15353
15354         * gtk/gtkfilesel.h: Add comment about
15355         gtk_file_selection_get_filename returning the filename in the C
15356         runtime's encoding.
15357
15358         * README.win32
15359         * gdk/gdk.def
15360         * gdk/makefile.{cygwin,msc}
15361         * gtk/gtk.def: Updates.
15362
15363         * gdk/gdkcursor-win32.c: Initialise refcount.
15364
15365 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
15366
15367         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
15368
15369 2000-01-30  Havoc Pennington  <hp@pobox.com>
15370
15371         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
15372         destroy
15373
15374         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
15375
15376         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
15377         implemented in platform-specific code
15378
15379         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
15380
15381         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
15382         underscore in front
15383
15384         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
15385         put an underscore in front
15386
15387         * gdk/gdkcursor.c: new file, implements
15388         gdk_cursor_ref/gdk_cursor_unref
15389
15390         * gdk/gdkcursor.h: Refcount GdkCursor
15391
15392         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
15393
15394 2000-01-29  Tor Lillqvist  <tml@iki.fi>
15395
15396         * gdk/gdkwindow.h
15397         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
15398
15399 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15400
15401         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
15402         structures to properly inherit from GtkWidget not GtkBin.
15403
15404 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
15405
15406         * gtk+.spec.in: Added lib/gtk+/include/* to %files
15407         (bug #5178 - Peter Wainright)
15408         
15409         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
15410         so that it will be installed.
15411         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
15412
15413 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
15414
15415         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
15416         for the GtkStyleClass vtable const.
15417
15418         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
15419         take a const string argument like GtkTranslateFunc. This will
15420         require changes in use code.
15421
15422 2000-01-19  Tor Lillqvist  <tml@iki.fi>
15423
15424         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
15425         semantics (to mimic the X11 backend, which just calls XClearArea)
15426         is to check for zero width (and height), and in that case use the
15427         window's width minus x (height minus y). This fixes for instance
15428         some redraw problems with gtkclist, which were easily noticeable
15429         in the gtk file selection widget.
15430
15431         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15432         windows.
15433
15434 2000-01-13  Tor Lillqvist  <tml@iki.fi>
15435
15436         * configure.in
15437         * gdk/Makefile.am
15438         * gdk/x11/Makefile.am
15439         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
15440         (bug #5177).
15441         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
15442         out later.
15443
15444 2000-01-09  Tor Lillqvist  <tml@iki.fi>
15445
15446         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
15447         WM_MOVE for iconified or invisible windows. This fixes various
15448         problems when minimising windows. Thanks to Bernd Herd.
15449
15450 2000-01-05  Tor Lillqvist  <tml@iki.fi>
15451
15452         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
15453         backend's draw_lines method, not draw_points.
15454
15455 2000-01-02  Tor Lillqvist  <tml@iki.fi>
15456
15457         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
15458         before Owen's reorganisation: Don't have queued_events and
15459         queued_tail statics in this file, but use gdk_queued_events and
15460         gdk_queued_tail. This makes exposure event compression work again.
15461
15462         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
15463         seem to be needed?
15464
15465 1999-12-30  Tor Lillqvist  <tml@iki.fi>
15466
15467         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
15468         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
15469         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
15470         doesn't do anything.
15471
15472         * gdk/gdk.def: Add gdk_xid_table_insert.
15473
15474         * gdk/win32/gdkprivate-win32.h
15475         * gdk/win32/gdkevents-win32.c
15476         * gdk/win32/gdkinput-win32.c
15477         
15478         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
15479         extension_events field in the GdkWindowWin32Data struct. Use only
15480         the extension_events field in GdkWindowPrivate. Previously one was
15481         set, and the other one tested, which broke tablet
15482         functionality. Thanks to Keishi Suenaga for pointing this out.
15483
15484 1999-12-18  Tor Lillqvist  <tml@iki.fi>
15485
15486         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
15487         When handling a single character (text length == 1), don't handle
15488         it as if it was UTF-8.
15489
15490 1999-12-11  Tor Lillqvist  <tml@iki.fi>
15491
15492         * Makefile.am: Distribute README.win32.
15493         
15494         * gdk/Makefile.am
15495         * gdk/win32/Makefile.am: Distribute Win32 files.
15496
15497         * gdk/makefile.msc: New file.
15498
15499         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
15500         after label).
15501
15502         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
15503         gdk_error_code as GDKVAR, as they are referred outside GDK.
15504
15505         * gdk/win32/makefile.msc: Update.
15506
15507         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
15508         tweaks. Check only if at least one of those Unicode subrange bits
15509         we care for is set. If no code page bits are set, guess (wildly)
15510         based on the charset.
15511
15512         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
15513
15514         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
15515         non-NULL.
15516
15517         * gtk/gtkdnd.c
15518         * gtk/gtklayout.c
15519         * gtk/gtkplug.c
15520         * gtk/gtkselection.c
15521         * gtk/gtksocket.c
15522         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15523         appropriate. There must be a cleaner way to handle this?
15524
15525         * gtk/gtkrc.c: Must include windows.h on Win32.
15526
15527         * gtk/testgtk.c: No need to include gdkx.h.
15528
15529         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15530
15531 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15532
15533         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15534         the rbearing is set to the same as the width, but this should be
15535         fixed.
15536
15537 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15538
15539         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15540         function. If Windows doesn't tell us what Unicode subranges a font
15541         covers, guesstimate based on the codepages it covers. This will
15542         hopefully help those Windows versions or fonts that don't give us
15543         any useful Unicode subrange information with GetTextCharsetInfo.
15544         Call this function in gdk_font_load_internal.
15545
15546         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15547         minor changes.
15548
15549 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15550
15551         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15552         New function, long needed.
15553
15554 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15555
15556         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15557         only_if_exists argument of gdk_atom_intern to
15558         bool.
15559
15560 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15561
15562         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15563         Fix two copy&paste errors.
15564
15565         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15566         win32 has changed.
15567
15568         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15569         GdkWin32SingleFont struct.
15570
15571         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15572         subranges of loaded fonts. Clear font signature first, in case
15573         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15574         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15575
15576         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15577         Unoffset clip region.
15578
15579 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15580
15581         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15582         event->any.window before calling filter functions.
15583
15584 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15585
15586         * gtk/gtkgamma.h: Adapt cast macros to standard.
15587
15588 [ Merges from 1.2 ]
15589
15590 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15591
15592         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15593         If translation does not include a '/', use entire
15594         translation instead of crashing.
15595
15596 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15597
15598         * docs/gtk_tut.sgml:
15599         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15600
15601 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15602
15603         * gtk/gtkselection.c (gtk_target_list_remove): Use
15604         g_list_remove_link, not g_list_remove.
15605
15606         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15607         
15608 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15609
15610         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15611         statement upon unselection (how the heck did that slip in?).
15612
15613 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15614
15615         * gtk/gtktext.c (gtk_text_freeze): 
15616         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15617         in frozen state (and aparently crashes). patch provided by Anders
15618         Melchiorsen <and@kampsax.dtu.dk>.
15619
15620 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15621
15622         * fix insensitive default/focus widget activation,
15623         reported by Matt Goodall <mgg@isotek.co.uk>.
15624
15625         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15626         (gtk_window_activate_default):
15627         (gtk_window_activate_focus):
15628         return handled=FALSE for actiavtion of insensitive default
15629         widgets. return handled=TRUE for activation of insensitive
15630         focus widgets. don't activate in either case.
15631
15632 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15633
15634         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15635         and $glib_cflags to match library order and in the
15636         theory that an old version of GLib is more likely to
15637         be in the include directory for X then vice-versa.
15638         (Bug #2776)
15639
15640 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15641
15642         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15643         to determine the locale for fontsets, not LC_MESSAGES;
15644         the user may want English messages with a handling
15645         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15646         will still be broken) (Bug #2891)
15647
15648 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15649
15650         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15651
15652 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15653
15654         * gtk/gtkrc.ko: Changed the Korean default fontset.
15655
15656 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15657
15658         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15659         where when scrolling to the left or top double exposes
15660         were done, causing major slowdowns.
15661
15662 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15663
15664         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15665         names to lowercase and alphanumeric, before looking
15666         them up.
15667
15668         * gtk/Makefile.am: Install codeset variant gtkrc files
15669         with normalized names.
15670
15671 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15672
15673         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15674         popup menus when the menu is already visible, but its parent
15675         is still hidden, (happens after tornoff window got hidden).
15676
15677 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15678
15679         * gtk/Makefile.am (install-data-local): Fix
15680         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15681         deleted, causing error messages on install.
15682
15683 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15684
15685         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15686         the handle as well, since we now sometimes ignore
15687         exposes on the handle while resizing.
15688
15689 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15690
15691         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15692         extra g_free introduced in one of the last one or two 
15693         commits.
15694
15695 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15696
15697         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15698         consistent, put each style that a gtkrc.* file creates
15699         in a unique namespace, remove old files before installing.
15700
15701 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15702
15703         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15704         gtk_rc_init is called multiple times. (Yes, people who
15705         do that have bugs in their code.)
15706
15707 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15708
15709         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15710         Remove it since it's generated by the Makefile anyway
15711
15712 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15713
15714         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15715         device->info.axes for core pointer.
15716
15717 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15718
15719         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15720         idle_id, to deal with obsolete, broken C libraries.
15721
15722 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15723
15724         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15725         allocation->x/y twice!
15726
15727         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15728         consistent with gtk_vscale_pos_trough().
15729
15730 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15731
15732         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15733         be queueing a resize on a toplevel container between
15734         the time we show it and when we map it. So, we need
15735         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15736         use GTK_WIDGET_DRAWABLE() for child windows.
15737
15738 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15739
15740         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15741         (fixes bug #2144)
15742
15743 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15744
15745         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15746         container DRAWABLE (instead of VISIBLE), so we don't queue
15747         resizes on non-toplevel containers.
15748
15749 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15750
15751         * gtk/gtkselection.[ch]: Make the data argument
15752         const guchar *.
15753
15754 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15755
15756         * gtk/gtkwindow.c: Try to behave sensibly if 
15757         the focus widget is the window itself. (Should
15758         we allow this at all?)
15759
15760 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15761
15762         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15763         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15764         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15765         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15766         in prototypes and implementations consistent (Tomas Ogren).
15767
15768         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15769         before the widget is unparented (reported by damon).
15770
15771         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15772         since we provide unsigned data anyways.
15773
15774 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15775
15776         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15777         the call to gtk_tooltips_layout_text() until later.
15778
15779         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15780         Call gtk_widget_ensure_style() before using the style.
15781
15782 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15783
15784         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15785         for old widgets that don't propagate draws to all
15786         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15787
15788 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15789
15790         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15791         for a redraw but just the widget that requested the resize.
15792
15793 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15794
15795         * gtk/gtkcontainer.c: added new widget level method
15796         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15797         reallocate_redraws : 1 to reflect the setting, exported this through
15798         the argument system as a boolean ::reallocate_redraws.
15799
15800         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15801         on the widget because the allocation changes, do so as well for
15802         widget->parent if the parent has reallocate_redraws set to TRUE.
15803         with that containers requesting reallocation redraws get automatically
15804         redrawn if their children changed allocation (this unfortunately
15805         affects also other children that didn't change allocation, but we
15806         cannot work around that before 1.3).
15807
15808 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15809
15810         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15811         _and_ height are >0 (not _or_).
15812
15813         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15814         instead of gtk_container_queue_resize(), which is a core gtk internal
15815         function (must have been on crack when i queued that).
15816
15817         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15818         we can check more reliably if we want to discard expose events.
15819         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15820         flag.
15821         
15822         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15823         we simply trust these events. for deciding whether to discard exposes,
15824         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15825         
15826 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15827
15828         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15829         queues of areas that are completely off screen.
15830
15831         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15832         logic for handleboxes.
15833
15834         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15835         check on width/height.
15836
15837 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15838
15839         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15840         we are fine with using $@ the way we do (if we actually encounter
15841         brokeness with $@ in VPATH builds because of additional path prefixes,
15842         we need to use $(@F) actually).
15843
15844 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15845
15846         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15847         short lived bugs, that would allow language bindings to do surgeries
15848         to our guts.
15849
15850 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15851
15852         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15853         where comparison was being done against an uninitialized
15854         value causing intermittant results depending on
15855         compiler flags. Also make it clearer that we aren't
15856         ever initializing the child as 0x0 (though this will
15857         be caught in gtk_widget_size_allocate())
15858
15859 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15860
15861         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15862         gtk_window_unset_transient_for() call after we do checks
15863         involving the old transient parent.
15864         [ From Lance Capser <lmc@cyberhighway.net> ]
15865
15866 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15867
15868         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15869         an empty file.
15870
15871 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15872
15873         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15874         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15875
15876 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15877
15878         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15879         `$@' is valid only in the build dir, not after we've done 
15880         `cd $srcdir'.  Also use `test -f' instead of less portable
15881         `test -e'.
15882
15883 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15884
15885         * gtk/gtktext.c (correct_cache_insert): Rewrite
15886          for simplicity, and hopefully correctness.
15887          (Fixes bug #1322, which was a segfault when
15888           on some insertions with the properties around
15889           the insertion set up just wrong.)
15890
15891         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15892          a "changed" signal, clamp the new value to the adjustment
15893          bounds to avoid segfaulting if someone tries to change
15894          the adjustment to a bogus value. (Bug #1795)
15895
15896 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15897
15898         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15899         for children, for toplevel windows handle them
15900         like delete_event.
15901
15902         * gtk/gtkplug.c: Add an unrealize handler so that
15903         we unref plug->socket_window when we are done
15904         with it.
15905
15906 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15907
15908         * gtk/gtktext.c (clear_area): Fix stupid signedness
15909          problem that was causing background to sometimes
15910          be misaligned.
15911
15912 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15913
15914         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15915         
15916         * gtk/gtkmenu.c (gtk_menu_position): Make
15917          sure we never position menus with negative x, y,
15918          since gtk_widget_set_uposition() can't handle that.
15919
15920         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15921          Modify the positioning code a bit so that we always
15922          put the top-left corner onscreen. (This is for
15923          UI reasons, gtk_menu_position() now takes care of
15924          gtk_widet_set_uposition() brokeness.)
15925
15926 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15927
15928         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15929
15930 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15931
15932         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15933           RC style that is passed in. The lack of the ref
15934           before was a bug. If people worked around this
15935           bug, this will introduce a slight memory leak
15936           in their code. The code should typically look like:
15937
15938             rc_style = gtk_rc_style_new ();
15939             [...]
15940             gtk_widget_modify_style (widget, rc_style);
15941             gtk_rc_style_unref (rc_style);
15942
15943         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15944           the style if it was already set.
15945
15946         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15947           style if it was set before.
15948
15949 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15950
15951         * gtk/testgtk.c (main): Add a check to see if we
15952           are being run from the correct directory and
15953           to quit nicely if we are not.
15954
15955         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15956           static.
15957
15958 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15959
15960         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15961
15962         * gtk/gtkwindow.c:
15963         queue resizes unconditionally (gtk_widget_queue_resize will figure
15964         what to do if the window is not realized).
15965         (gtk_window_move_resize): only recenter the window
15966         for GTK_WIN_POS_CENTER_ALWAYS.
15967         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15968         the same way as GTK_WIN_POS_CENTER.
15969
15970 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15971
15972         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15973         with (!(info->last_flags & GDK_HINT_POS)) instead of
15974         (!info->last_flags & GDK_HINT_POS).
15975
15976         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15977         new_height unconditionally, because we use these values even if
15978         !default_size_changed && !hints_changed.
15979         comented the (default_size_changed || hints_changed) case with
15980         respect to resize rejects from the window manager.
15981
15982         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15983         in the zvt condition hack, since this includes the window hints, set
15984         the hints after the handling_resize case.
15985
15986         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15987         window is initially shown with to the geometry.
15988
15989 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15990
15991         * gtk/gtkwindow.c (gtk_window_move_resize):
15992         s/size_changed/default_size_changed/g so i know what's
15993         really going on (frying brain on smaller flame now).
15994
15995 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
15996
15997         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
15998         we have size_changed upon handling_resize. this is a gross
15999         workaround for the broken zvt widget and should be removed in
16000         1.3 again (search for FIXME).
16001         Owen provided an accurate comment for this:
16002
16003         /* We could be here for two reasons
16004          *  1) We coincidentally got a resize while handling
16005          *     another resize.
16006          *  2) Our computation of size_changed was completely
16007          *     screwed up, probably because one of our children
16008          *     is broken. It's probably a zvt widget.
16009          *
16010          * For 1), we could just go ahead and ask for the
16011          * new size right now, but doing that for 2)
16012          * might well be fighting the user (and can even
16013          * trigger a loop). Since we really don't want to
16014          * do that, we requeue a resize in hopes that
16015          * by the time it gets handled, the child has seen
16016          * the light and is willing to go along with the
16017          * new size. (this happens for the zvt widget, since
16018          * the size_allocate() above will have stored the
16019          * requisition corresponding to the new size in the
16020          * zvt widget)
16021          *
16022          * This doesn't buy us anything for 1), but it shouldn't
16023          * hurt us too badly, since it is what would have
16024          * happened if we had gotten the configure event before
16025          * the new size had been set.
16026          */
16027
16028 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
16029
16030         * gtk/gtkrc.c: deal properly with the fact that RC
16031           style lists may include rc styles more than once.
16032
16033         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
16034           unused static function.
16035
16036         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
16037           stack of directories of RC files currently being
16038           parsed and implicitely add them to pixmap path.
16039           
16040           This fixes a bug where the directory would get
16041           appended then overwritten by pixmap_path declarations.
16042
16043           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
16044
16045         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
16046           theme's exit function. (Patch from Peter Wainwright,
16047           bug #1454)
16048
16049         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
16050           Add a destroy() handler to take care of removing
16051           group for menu item. (Fixes bug #1197)
16052
16053         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
16054           in warning message.
16055
16056 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
16057
16058         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
16059         roundtrip to figure window's width and height, since we know that
16060         anyways from widget->allocation.
16061
16062 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
16063
16064         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
16065           the hints after we request the new size.
16066
16067 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
16068
16069         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
16070           GTK_WIDGET_REALIZED() assertion - we can compute the
16071           hints before we are realized.
16072
16073         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
16074           hint changing so that we have a value of hints_changed
16075           when we decide whether to constrain the window size.
16076
16077         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
16078
16079         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
16080         change back to G_MAXINT.
16081
16082 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
16083
16084         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
16085         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
16086         contain uncluttered values.
16087         (gtk_window_compute_hints): simply assert that window is realized
16088         and that geometry_info is valid, since we rely on this anyways.
16089         (gtk_window_constrain_size): major cleanups to the code.
16090         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
16091         for the base size, instead of the minimums. use 32767 as max width
16092         and height (like in gtkwindow.c) instead of G_MAXINT.
16093
16094 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
16095
16096         * cleaned up the GtkContainer.need_resize flag handling mess, we
16097         only need to force resize requests when we were prematurely
16098         realized, or our widget tree was modified when we were temporarily
16099         hidden. handling these cases directly upon showing the window (i.e.
16100         while the GdkWindow is still unmapped) avoids the need to wait for
16101         a configure event response and therefore makes the GUI more snappier
16102         and avoids blank windows during the roundtrip.
16103
16104         * gtk/gtkwidget.c:
16105         (gtk_widget_hide): 
16106         (gtk_widget_show): don't queue resizes on toplevels, they know how
16107         to deal with matters.
16108
16109         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
16110         flag directly for not visible resize containers and spare us unecessary
16111         signal emissions.
16112
16113         * gtk/gtkwindow.c:
16114         (gtk_window_realize): if we need to enforce premature size allocation,
16115         queue a container resize so we are correctly resized later on.
16116         (gtk_window_init):
16117         (gtk_window_size_request):
16118         don't freak around with the ->need_resize flag,
16119         gtk_container_queue_resize() will care about that.
16120         (gtk_window_show):
16121         handle initial resizing issues here, we can handle matters better in
16122         this place, especially since we know that our GdkWindow is still
16123         unmapped.
16124         (gtk_window_move_resize):
16125         don't care about ->need_resize at all.
16126         handle size changes properly that occoured while we waited for a
16127         configure event.
16128
16129 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
16130
16131         * gtk/gtkwidget.c (gtk_widget_set_uposition):
16132         * gtk/gtkwindow.[hc] (gtk_window_reposition):
16133         Move the hint setting code from gtk_widget_set_uposition
16134         to here; set the hints so that we respect any previously
16135         set geometry hints.
16136
16137         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
16138         change the window hints here or move the window here,
16139         let that happen in gtk_window_move_resize().
16140
16141 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
16142
16143         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
16144         to already queued resizes (and therefore redraws) on a widget, check
16145         its anchestry as well.
16146
16147         * gtk/gtkcontainer.c:
16148         (gtk_container_queue_resize): clear resize widgets for resize
16149         containers before aborting prematurely. this is especially important
16150         for toplevels which may need imemdiate processing or their resize
16151         handler to be queued.
16152         (gtk_container_dequeue_resize_handler): added new internal function for
16153         gtkwindow.c.
16154
16155         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
16156         configure event, take possible changes in window position into account
16157         as well.
16158         if we request a new window size, queue up a resize handler that will
16159         last until the configure event response arrives.
16160         combined the ->need_resize case (initial show) with the general size
16161         (hints) changed case and added even more comments.
16162         if !auto_shrink, only revert to the old allocation if the new size
16163         is smaller than the current allocation.
16164
16165 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
16166
16167         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
16168                            gtk_window_set_geometry_hints
16169                            gtk_window_set_default_size):
16170         When hints are set, queue a resize so that the hints will
16171         be eventually reset on the toplevel.
16172
16173         * gtk/gtkwindow.c (gtk_window_show): Use
16174         gtk_window_compute_default_size(). Clear the need_resize flag
16175         on the initail map so that we don't unnecessarily trigger the
16176         resize code.
16177
16178         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
16179         into separate functions. Compare the hints we are setting
16180         with what we set last time so that we can accurately
16181         tell when we need to reset the hints.
16182
16183         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
16184         function to figure out the size from requisition
16185         and default_size.
16186
16187         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
16188         from fvwm to constrain a size to the geometry hints.
16189
16190         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
16191         to compare two sets of geometry hints.
16192
16193         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
16194         from gtk_window_set_hints(), just compute the hints,
16195         don't set them.
16196
16197         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
16198         code from gtk_window_move_resize() to separate function,
16199         rationalize a bit.
16200
16201 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
16202
16203         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
16204         structure into a new private structure.
16205
16206         * gtkrc.c: Split GtkRcStyle into public/private.
16207         In the private part, add a list of pointers to the
16208         RcStyle lists this RcStyle participates in.
16209
16210         * gtkrc.c: When a RcStyle is free, remove all
16211         lists referencing it from the 
16212         realized_style_ht hash, and free those lists.
16213         
16214         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
16215         gtk_rc_init(), since that adds the default styles
16216         to the list of parsed RC files again.
16217
16218         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
16219         
16220 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
16221
16222         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
16223         checks that ensure that a widget's allocation is at least 1 in width
16224         and height. (GNOME note: this doesn't affect old panel code anymore,
16225         because GtkSocket will request width and height of at least 1 since
16226         Fri Jul 23).
16227
16228         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
16229         allocated yet (happens if the user realizes the window prematurely),
16230         size request and allocate it.
16231         (gtk_window_size_allocate): guard against guint underflows.
16232
16233 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
16234
16235         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
16236         in gtk_built_sources, so gtk.defs gets built prior to all other
16237         sources.
16238
16239 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16240
16241         * gtk/Makefile.am:
16242         invoke indent on gtkmarshal.*. 
16243         rewrote source generation rules, use COPYING as oldest source tag for
16244         a piggyback rule to generate all sources from (don't touch it ;).
16245         major cleanups, strip spaces on build rules for GNU Make.
16246
16247         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
16248         source and target files from commandline arguments. don't invoke indent.
16249
16250 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16251
16252         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16253         notebook after switch to avoid drawing problems.
16254         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16255         
16256         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16257         show them instead. 
16258         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16259
16260 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16261
16262         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16263         notebook after switch to avoid drawing problems.
16264         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16265         
16266         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16267         show them instead. 
16268         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16269
16270 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
16271
16272         * gtk/gtkwindow.c:
16273         we use window->need_resize from configure_event now, to indicate that
16274         the gtkwindow should keep its allocation (e.g. because the user resized
16275         the window through window manager handles). resize_count is now reliably
16276         used to figure whether we got the allocation we requested from the
16277         window manager.
16278         configure events get queued as resizes now, the real stuff (size
16279         computation and allocation) now only goes on in gtk_window_move_resize().
16280         GtkWindow's requisition now contains its *real* requisition (like all
16281         other widgets), *not* taking usize into account.
16282         geometry_info->last_{width|height} is now updated from set_hints() only
16283         so it always contains the last hints we set for the window manager.
16284         made some event handlers return TRUE instead of FALSE.
16285         the overall code should be much more straight forward now, and the
16286         significant code portions are accompanied by comments now.
16287         (gtk_window_set_hints):
16288         removed requisition argument and made it
16289         fetch the requisition through gtk_widget_get_child_requisition.
16290         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
16291         does that now.
16292         (gtk_window_show):
16293         ensure that the widget is realized before calling 
16294         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
16295         ensure that we got properly size requested and allocated before
16296         realization.
16297         (gtk_window_configure_event):
16298         ignore plain window moves, or reallocate the widget tree through the
16299         resize queue otherwise.
16300         (gtk_window_move_resize):
16301         mostly rewrote this function to figure window manager hints more
16302         reliably, coalesce window moves and resizes to reduce configure events
16303         and do actuall size allocations.
16304
16305 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16306
16307         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
16308         that have a resize pending, because a redraw is already queued for them.
16309
16310         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
16311         hack to clear resize_widgets.
16312
16313         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
16314         for resize containers prior to size allocation. (this is also a bit
16315         ugly, but avoids side effects for stopped emissions and is thus more
16316         reliable).
16317         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
16318
16319         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
16320         function from gtk_tooltips_expose, as we connect to ::expose_event
16321         *and* ::draw now.
16322
16323 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16324
16325         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
16326         checks.
16327         (gtk_target_list_unref): Likewise.
16328
16329         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
16330
16331 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
16332
16333         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
16334         guard against division by zero. (Fixes bug #1339)
16335
16336 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
16337
16338         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
16339         Prevent the trivial leak of information of allowing
16340         word motion when the entry is not visible.
16341
16342 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
16343
16344         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
16345         modality to error dialog as well as confirmation dialogs.
16346         (Bug #1803, reported by Rosanna Wing Sze Yuen)
16347
16348 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16349
16350         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
16351         tree->view_lines.
16352         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
16353
16354         * gtk/Makefile.am (install-data-local): Solaris apparently
16355         has various troubles with ln -f; use rm first instead.
16356         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
16357
16358 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
16359
16360         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
16361         use `cp' followed by `rm' (the `rm' was already there).
16362
16363 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16364         
16365         * configure.in: Fix autoconf warnings about cross compilation by
16366         trying to provide sane defaults for AC_TRY_RUN.
16367         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
16368         put them into $(srcdir) when generated. Also add a dependency of
16369         gtksignal.h on gtkmarshal.h for -j builds. 
16370         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
16371
16372 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
16373
16374         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
16375         GDK_THREADS_{LEAVE,ENTER} pair.
16376         (From Paul Fisher <pnfisher@redhat.com>)
16377
16378 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
16379
16380         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
16381         width and height are always >0 (owen).
16382
16383 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
16384
16385         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
16386         change that assured that a widget's allocated with and height are
16387         always >1, since this breaks *buggy* panel code. unfortunately this
16388         back-breaks the gimp's color selector.
16389
16390         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
16391         allocation is always >0 in width and height, before sending the
16392         configure event; this is a *gross* hack to get the gimp back to work.
16393         
16394         * marked both cases with TODO-1.3
16395
16396 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
16397
16398         * gtk/gtktext.c: Don't display wrap indicators when
16399         text is not editable and word wrap is on.
16400
16401 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
16402
16403         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
16404         option menus here as they are not derived from menu shell, assure that
16405         the option menu has a menu we can add items to.
16406
16407 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
16408
16409         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
16410         width/height to (gint) before calculations and check against < 0 to
16411         avoid guint wraparounds.
16412
16413 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
16414
16415         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
16416         width and height is never zero. sanity check both dimensions against
16417         32767 and issue a warning if the allocation is greater than that.
16418
16419 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
16420
16421         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
16422         to g_main_pending() as well.
16423
16424 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
16425
16426         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
16427         call to g_main_iteration() - since that will regrab
16428         GTK+ lock to process events.
16429
16430 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
16431
16432         * gtk/gtkwindow.c
16433         - Regularize with the rest of GTK+ by making widget->requisition
16434           not reflect the set_usize()
16435         - Always recompute geometry hints, then check if they
16436           changed before sending them to the X server. The
16437           previous checks for changes would fail in a number
16438           of circumstances. 
16439
16440 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
16441
16442         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
16443
16444 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
16445
16446         * gtk/gtkdnd.c:
16447         - Code cleanups
16448         - Instantaneously update on modifier key presses
16449         - Allow cancellation of the drag with Escape.
16450
16451 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
16452
16453         * gtk/testgtk.c (create_handle_box): Set the policy
16454         to auto_shrink - otherwise the appearance is rather
16455         strange when flipping between horizontal and vertical.
16456
16457 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
16458
16459         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
16460         (gtk_window_set_default_size): don't change a value if it's < 0.
16461         queue a resize.
16462
16463 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
16464
16465         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
16466
16467 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
16468
16469         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
16470         add an extra "/" when concating "/" + filename.
16471         (From Matt Grossman <mattg@oz.net>)
16472
16473 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
16474
16475         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
16476         for fg_gc if we set it for drawing pixmap.
16477
16478 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
16479
16480         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
16481         
16482         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
16483         already set, call old engine's destroy function and
16484         unref the old engine.
16485
16486 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
16487
16488         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
16489
16490 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
16491
16492         * gtk/gtkaccelgroup.h: mark certain functions as internal.
16493
16494 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
16495
16496         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
16497         expand behaviour changed.
16498
16499         * gtk/gtklabel.c (gtk_label_set_pattern):
16500         (gtk_label_set_justify):
16501         (gtk_label_set_line_wrap):
16502         don't bother invoking queue_clear, the reallocation does
16503         that for us, always free_words so the upcoming resize will
16504         relayout the label's contents.
16505
16506 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
16507
16508         * applied argument implementation patches from Elena Devdariani
16509         <elena@cogent.ca>.
16510
16511         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
16512         ::space_style, ::relief
16513         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
16514         * gtk/gtkpreview.c: ::expand
16515         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
16516         * gtk/gtknotebook.c: ::homogeneous
16517         * gtk/gtklabel.c: ::wrap
16518         * gtk/gtklist.c: ::selection_mode
16519         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16520         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16521         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16522         * gtk/gtkclist.c: ::sort_type
16523         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16524         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16525
16526 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16527
16528         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16529         comment.
16530
16531 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16532
16533         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16534         counting right when we have to attach a new style
16535         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16536
16537         * gtk/gtkstyle.c: Documented the refcounting
16538         peculularities of gtk_style_attach.
16539
16540 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16541
16542         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16543         window types.
16544
16545         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16546         of GTK_TOPLEVEL for creating the window.
16547
16548 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16549
16550         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16551         the last argument (reported by Per Winkvist).
16552         
16553 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16554
16555         Fixes for invisible XOR lines (Frank Loemker
16556         <floemker@TechFak.Uni-Bielefeld.DE>)
16557         
16558         * gtk/gtkclist.c (gtk_clist_realize): Always use
16559         a non-zero pixel for GDK_XOR.
16560
16561         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16562         Use GDK_INVERT instead of GDK_XOR.
16563
16564 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16565
16566         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16567         signals if h/voffsets differ from adjustment values.
16568         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16569
16570 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16571
16572         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16573         ::selection-done emissions up to the topmost menu shell.
16574
16575 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16576
16577         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16578         the user data on the window before destroying it.
16579
16580         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16581         unrealize handler to take care of destroying 
16582         notebook->panel properly. 
16583         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16584
16585         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16586         of g_new and g_realloc to stop memory leak. (Actually,
16587         we could just use g_realloc(), but I'm not 100% sure
16588         that is portable).
16589         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16590
16591 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16592
16593         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16594
16595         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16596         for fontsets.
16597
16598         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16599         with bin/button confusion.
16600
16601 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16602
16603         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16604         and show how preselection of radio items is done.
16605
16606 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16607
16608         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16609         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16610         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16611         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16612         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16613         * gtk/gtktable.c (gtk_table_attach): 
16614         * gtk/gtklist.c (gtk_list_insert_items): 
16615         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16616         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16617         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16618         * gtk/gtkbin.c (gtk_bin_add): 
16619         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16620         * gtk/gtkfixed.c (gtk_fixed_put): 
16621         * gtk/gtklayout.c (gtk_layout_put):
16622         general fixups to container_add logic. always realize child if
16623         child->parent is realized, only map the child and queue a resize
16624         if child and child->parent are both visible.
16625
16626 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16627
16628         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16629         instead of gtk_container_foreach to walk and unrealize children, so
16630         composite children get also unrealized.
16631         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16632         (gtk_widget_map): assert that the widget is visible (basic constrain).
16633         (gtk_widget_real_map): assert that the widget is realized (basic
16634         constrain).
16635
16636 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16637
16638         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16639
16640 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16641
16642         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16643         file for iso-8859-2 locales.
16644
16645         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16646
16647 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16648
16649         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16650          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16651          Remove some suspicious and useless lines. 
16652
16653 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16654
16655         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16656         width,height = 0, 0 to mean - here to edge of window,
16657         instead of -1, -1, since the former is all we support.
16658
16659 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16660
16661         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16662         when removing from quit_functions list.
16663
16664 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16665
16666         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16667
16668 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16669
16670         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16671          When redrawing characters on non-visible entry, use appropriate
16672          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16673
16674 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16675
16676         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16677         from drag coordinates.
16678         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16679         use drag_dest_cell.
16680
16681         * gtk/gtktree (drag_dest_cell)
16682         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16683         (Bug #1129)
16684
16685 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16686
16687         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16688         translate_* fields.
16689         (gtk_item_factory_finalize): invoke translate_notify independant from
16690         translate_data.
16691         (gtk_item_factory_set_translate_func): likewise.
16692         (gtk_item_factory_destroy): only remove ifactory pointer from those
16693         widgets that belong to us (stupid me).
16694
16695 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16696
16697         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16698         rc_style list when lookup succeeeds.
16699
16700 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16701
16702         * gtk/gtkctree.c (resync_selection): 
16703         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16704         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16705         bug.
16706
16707 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16708
16709         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16710         Add some missing GDK_THREADS_ENTER()/LEAVE around
16711         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16712
16713 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16714
16715         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16716         rather than emit_by_name.
16717
16718         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16719         on the widget across multiple signal emissions.
16720         (gtk_editable_delete_text): same here.
16721         (gtk_editable_class_init): set widget_class->activate_signal after
16722         editable_signals[ACTIVATE] has been created.
16723
16724 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16725
16726         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16727         position here prematurely -- we might not have the
16728         right ->min_position and ->max_position yet.
16729
16730 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16731
16732         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16733         Add error traps so if the other end of the connection
16734         dies, we survive.
16735
16736         * gtk/gtkselection.c (gtk_selection_notify): Clean
16737         up properly when selection property retrieval fails.
16738         
16739         * gtk/gtkselection.c (gtk_selection_request): Correctly
16740         reject SelectionRequest notifies where the handler
16741         returns no data.
16742
16743 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16744
16745         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16746         when we've previously highlighted.
16747
16748         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16749         emit two "drag_leave" signals for Motif drops.
16750
16751         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16752         back the correct status messages when dropping from
16753         Motif onto a proxy window that is rejecting the
16754         drop.
16755
16756 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16757
16758         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16759         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16760         to compare two argument values. added gtk_arg_to_valueloc() to set a
16761         variable from an arg through its location (pointer).
16762
16763         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16764         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16765         as gfloat*, uchars are collected as guchar*, ints are collected as
16766         gint*, etc...
16767
16768 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16769
16770         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16771         Include <string.h> instead of <strings.h>.
16772
16773         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16774         (actually, a lot more duplicate includes occur if
16775          you trace through the sequence of #include's)
16776         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16777         
16778 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16779
16780         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16781         gtk-a-higuti-990322-[0-3]
16782
16783         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16784         that was causing -DX_LOCALE not to work.
16785
16786         * gtk/gtkrc.c (gtk_rc_init):
16787         X_LOCALE will never have LC_MESSAGES defined
16788
16789 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16790
16791         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16792         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16793
16794         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16795         left/right as well (gtk-michael-980726-0.patch.gz).
16796
16797         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16798         for pointer values, use gchar instead of char. fixed uline allocation
16799         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16800         chunks instead of G_ALLOC_ONLY.
16801         (gtk_label_size_request): always alter requisition as passed and leave
16802         widget->requisition alone.
16803         (gtk_label_set_text): allow NULL strings.
16804         (gtk_label_new): likewise.
16805
16806 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16807
16808         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16809
16810 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16811
16812         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16813         *and* mapped (i.e. drawable).
16814         (gtk_bin_expose): only send exposes to drawable children.
16815
16816         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16817         (gtk_box_expose): only send exposes to drawable children.
16818
16819         * gtk/gtkhscale.c (gtk_hscale_draw): 
16820         * gtk/gtkvscale.c (gtk_vscale_draw):
16821         hm, this is an ugly one. we first compute the size of our trough area
16822         here (window relative) and then check intersection with the draw_area
16823         which is parent relative because we're a NO_WINDOW widget, so we need
16824         to offset the trough area by allocation.x and allocation.y before the
16825         check. (this must not be done for the background area though, since
16826         that's already computed parent relative).
16827
16828 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16829
16830         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16831         unrealize title buttons.
16832
16833 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16834
16835         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16836         (gtk_clist_column_title_active): 
16837         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16838
16839         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16840         zero initialize event, removed superfluous gdk_window_get_pointer call
16841
16842         * gtk/gtklist.c (gtk_list_vertical_timeout)
16843         (gtk_list_horizontal_timeout): removed superfluous
16844         gdk_window_get_pointer call
16845
16846 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16847
16848         * plugging problems reported by "Bruce Mitchener, Jr."
16849         <bruce@puremagic.com> due to a purify session.
16850
16851         * gtk/gtkstyle.c:
16852         (gtk_style_ref): 
16853         (gtk_style_unref): assert ref_count to be > 0.
16854
16855         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16856         the requisition.
16857         (gtk_clist_set_shift): likewise.
16858
16859         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16860         adjustments.
16861
16862         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16863         event before sending it and set send_event to TRUE (which needs to
16864         be done for *all* synthesized events).
16865         (gtk_list_vertical_timeout): likewise.
16866
16867         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16868         leaks.
16869
16870         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16871         to TRUE when synthesizing events.
16872
16873 [ *** end of merges from 1.2 *** ]      
16874         
16875 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16876
16877         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16878         (or copied from gdkconfig.h.win32 on Win32, sigh).
16879
16880         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16881
16882         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16883
16884         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16885
16886         * gdk/gdkconfig.h.win32: New file.
16887
16888         * gdk/win32/makefile.cygwin: Build just a static archive here.
16889
16890         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16891         for the DLL from the static archive built above.
16892
16893         * gdk/gdk.def: Moved here from the win32 subdirectory.
16894
16895         * gdk/win32/*: Adapt for the changed private struct organisation.
16896
16897         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16898
16899 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16900
16901         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16902         for wheel mice (buttons 4 and 5).
16903
16904 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16905
16906         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16907         drawables use just the pixel field in the foreground and
16908         background GdkColor of the GdkGC.
16909
16910         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16911         GdkColors containing uninitialized (red,green,blue) fields, and
16912         just the pixel field filled in, and furthermore in the
16913         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16914         It thus turns out that we really don't need to have the full
16915         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16916         it later to have just the pixel values.
16917
16918 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16919
16920         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16921
16922 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16923
16924         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16925         New question on GtkLabel background colors.
16926
16927         * docs/gtk_tut.sgml:
16928           - Correct the example code callback
16929             function definitions.
16930           - Update the gtkdial example code, from Frans van Schaik.
16931           - Update setselection.c to current API.
16932
16933         * examples/Makefile examples/*/*.c: Update to code
16934         listed in tutorial.
16935
16936 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16937
16938         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16939         subrange table (from the "Developing International Software for
16940         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16941         block... Get the loaded font's charset correctly.
16942
16943         (Note that this, and the other *-win32.c files, still really are
16944         the old ones, the win32 subdirectory is not ready for compilation
16945         yet after the reorg.)
16946
16947 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16948
16949         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16950         check.
16951
16952 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16953
16954         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16955         on results of XQueryDeviceState().
16956
16957 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16958
16959         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16960         we need to accesss only ->children. We need an accessor
16961         for the children.
16962
16963         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16964         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16965         to get rid of gdkx.h include.
16966         
16967         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16968         and random references to 'None'.
16969
16970         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16971         Get rid of unused #include <gdk/gdkx.h>
16972
16973         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16974         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16975         gdkconfig.h.
16976
16977 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16978
16979         * gdk/win32/gdkdraw.c
16980         * gdk/win32/gdkfont.c
16981         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16982         following yesterday's changes. (Unrelated to Owen's reorg.)
16983
16984 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16985
16986         * gdk/x11/gdkinput-gxi.c: Add missing include,
16987           fix GdkWindowPrivate => GdkDrawablePrivate.
16988
16989         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16990
16991         * gdk/x11/Makefile.am (xinput_sources): Add missing
16992         backslash to fix building with --with-xinput=none
16993
16994 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
16995
16996         Move all X specific code into the x11/ directory.
16997         Aside from shuffling things around, did the following:
16998
16999        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
17000          gdk_arg_context_* - a simple argument parsing system
17001          in the style of popt.
17002
17003        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
17004          gdk/x11/gdkprivate-x11.h:
17005          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
17006          add ->klass and ->klass_data fields. The klass_data
17007          field points to an auxilliary structure that is
17008          windowing system dependent.
17009
17010        * gdk/gdkfont.c: Make most of the measurement functions
17011          simply wrappers around gdk_text_extents().
17012
17013        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
17014          _gdk_font_strlen() function that hides the weird
17015          behavior in gtk+-1.[02] where a string is interpreted
17016          differently for 8-bit and 16-bit fonts.
17017
17018        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
17019          to store common code for synthesizing double/triple
17020          press events.
17021         
17022        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
17023          Make all the function that modify an existing GC
17024          simply wrappers around gdk_gc_set_values().
17025          
17026        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
17027          for throwing out later.
17028
17029        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
17030          GdkImagePrivate and GdkColormapPrivate to have a
17031          windowing system dependent part (GdkFontPrivateX etc.)
17032          that "derives" from the system-independent part.
17033
17034        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
17035          Got rid of the included-source-files for XInput in
17036          favor of automake conditionals. (Which didn't exist
17037          when XInput support was originally added.)
17038
17039        * gdk/gdkrgb.c: Remove the visual id from the debugging
17040          statements since that is X11 specific; print out
17041          type/depth info instead.
17042          
17043
17044 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
17045
17046         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
17047         loading duplicates of hashed fonts.
17048
17049         * gdk/gdk.c (gdk_keysym_convert_case): rename
17050         gdk_XConvertCase to gdk_keysym_convert_case, allow
17051         results to be NULL in the GTK+ style.
17052
17053         * gdk/gdkcompat.h: Started compatibility header
17054         for renames.
17055
17056 1999-11-07  Tor Lillqvist  <tml@iki.fi>
17057
17058         * gdk/win32/gdkprivate.h: New font private structures, related to
17059         fontsets.
17060
17061         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
17062         gdk_font_list_free(). On X11, will just be wrappers to
17063         XListFonts() and XFreeFontNames(). On Win32, the code previously
17064         in gtkfontsel.c is now here.
17065
17066         New function gdk_font_xlfd_create(). On X11 will get the FONT
17067         property of the font (for GDK_FONT_FONTs), or call
17068         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
17069         builds a XLFD style name from the font information in the LOGFONT
17070         struct(s).
17071
17072         New function gdk_font_xlfd_free(), which correspondingly frees the
17073         string returned by gdk_font_xlfd_create().
17074
17075         Implement fontsets on Win32. Add a function that iterates over a
17076         wide char string and calls a callback function for each substring
17077         of wide chars from the same Unicode subrange (and thus probably
17078         available in the same real font).
17079
17080         Improve the XLFD emulation a bit.
17081
17082         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
17083
17084         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
17085         Beta3, WM_IME_CHAR messages don't seem to contain the composed
17086         multi-byte char as with the Active IMM on Win9x. Oh well, handle
17087         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
17088         ImmGetCompositionStringW() to get the composed Unicode chars.
17089
17090         * gdk/win32/gdkgc.c
17091         * gdk/win32/gdkdraw.c: Changes needed because of the font private
17092         struct changes.
17093
17094         * gdk/win32/gdk.def: Add the new functions.
17095
17096 1999-11-04  Tor Lillqvist  <tml@iki.fi>
17097
17098         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
17099         get the Platform SDK to get <dimm.h>.
17100
17101         * gdk/win32/gdkevents.c: More event handling fixes and
17102         simplification. Never generate motion events with is_hint true. We
17103         used to do that on bogus grounds earlier. Windows sends
17104         WM_MOUSEMOVE messages on button events even if the mouse hasn't
17105         moved, ignore these.
17106
17107         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
17108
17109         * gdk/win32/gdkglobals.c
17110         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
17111         the TrackMouseEvent function, and use it.
17112
17113         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
17114         char before calling WideCharToMultiByte in order to get a string
17115         for the window title.
17116
17117         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
17118
17119         * gdk/win32/gdk.def: Remove obsolete functions.
17120
17121         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
17122         /nodefaultlib and /defaultlib switches.
17123
17124         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
17125
17126 1999-10-31  Tor Lillqvist  <tml@iki.fi>
17127
17128         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
17129         EuroSign).
17130
17131         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
17132         same type as GdkWChar, especially on Win32.
17133
17134         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
17135
17136         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
17137         before passing to Windows GDI for drawing etc. Convert to the
17138         system default codepage before passing to Windows as window
17139         titles.
17140
17141         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
17142         support changing input locale on the fly.
17143
17144         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
17145         on-the-fly changes. Convert incoming characters from the current
17146         codepage to Unicode (and then to a UTF-8 multi-byte string) based
17147         on the current input language. Use keysym<->Unicode mapping tables
17148         and functions borrowed from xterm sources.
17149
17150         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
17151         editions of Win9x, use the ActiveX-based Active IMM (Input Method
17152         Manager) if available. IMEs and the Active IMM are available under
17153         the disguise of Chinese, Korean and Japanese support for IE and
17154         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
17155         support is present in all editions (as long as you install it).
17156
17157         Call DispatchMessage from gdk_events_queue() (and thus
17158         gdk_WindowProc()), instead of duplicating the code in
17159         gdk_WindowProc().
17160
17161         Reworked the grab handling and propagation code, factored out
17162         duplicated code snippets into separate functions. Other cleanups,
17163         too.
17164
17165         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
17166         the <dimm.h> header describing the Active IMM.
17167
17168         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
17169         just do the same as for "single" fonts.
17170
17171         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
17172         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
17173         the new keysyms from gdkkeysyms.h.
17174
17175         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
17176         fontset, so that gtkentry uses wide characters.
17177
17178         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
17179         GTk+'s system directory "gtk+", not "gtk".
17180
17181 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
17182
17183         * docs/gtkfaq.sgml: FAQ update
17184
17185 1999-10-21  Tor Lillqvist  <tml@iki.fi>
17186
17187         * gdk/win32/gdkprivate.h: Add more font private data.
17188
17189         * gdk/win32/gdkfont.c
17190         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
17191         fonts and strings. Now works much better. You still have to
17192         have a correct font selected, though. No fontset emulation yet.
17193
17194 1999-10-19  Tor Lillqvist  <tml@iki.fi>
17195
17196         * gtk/maketypes.awk: Use G_OS_WIN32.
17197
17198         * gtk/gtk.def: Add some missing entry points. Also some non-public
17199         ones, but PyGTK porter claims to need them.
17200
17201         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
17202         built-in type generation.
17203
17204 1999-10-14  Tor Lillqvist  <tml@iki.fi>
17205
17206         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
17207         GDK_FONT_FONT fonts (which is all we have for now, we don't
17208         emulate fontsets). The X11 version uses plain XDrawString in that
17209         case, too. The string passed to gdk_draw_text_wc seems to be in
17210         fact (at least, when used by gtkentry and gtktext) either in a
17211         single-byte charset, or a DBCS. Not Unicode.
17212
17213         This fixes the problem in gtkfontsel, where even if you had
17214         selected a font with a non-Latin1 charset (windows-greek, for
17215         instance), the preview still used Latin-1 glyphs.
17216
17217         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
17218         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
17219         (gdk_font_load): Recognize the demibold etc weights, even if we
17220         don't have the corresponding constants in the headers.
17221         (gdk_font_hash_insert): Use same hash mechanism as in the X11
17222         version. Should save font resources a bit, when we don't have
17223         multiple HFONTs for the same font.
17224
17225         * gdk/win32/gdkprivate.h: Add the names field as in the X11
17226         version.
17227
17228 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
17229
17230         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
17231         X values
17232
17233 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
17234
17235         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
17236         layout support (as mentioned on
17237         http://www.jcinteractive.com/gnome-ui/software/widgets/)
17238
17239 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
17240
17241         * gtk/fnmatch.c
17242         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
17243
17244 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
17245
17246         * configure.in (ALL_LINGUAS): Added Galician (gl)
17247
17248 1999-10-05  Tor Lillqvist  <tml@iki.fi>
17249
17250         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
17251
17252         * gdk/win32/gdkcompat.c: New file, actually provide an
17253         implementation for the deprecated functions. (Just temporarily.)
17254
17255         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
17256
17257         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
17258
17259         * gdk/win32/gdk.def gtk/gtk.def: Updates.
17260
17261 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
17262
17263         * configure.in: Added "uk" to ALL_LINGUAS.
17264         
17265 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
17266
17267         * configure.in: correct checking for BeOS check
17268
17269         * gdk/gdktypes.h
17270         * gtk/fnmatch.c
17271         * gtk/gtkfilesel.c
17272         * gtk/gtkitemfactory.c
17273         * gtk/gtkmain.[ch]
17274         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
17275
17276 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17277
17278         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
17279         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
17280         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
17281         by Bulgarian). 
17282
17283 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
17284
17285         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
17286         Fix a reference to window_private->destroyed.   
17287
17288         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
17289         (ugly) setting of an internal GdkWindow member to use
17290         a _slightly_ cleaner macro.
17291
17292         * gdk/gdkprivate.h: Split GdkWindowPrivate into
17293         GdkDrawablePrivate and GdkWindowPrivate.
17294         Add extra macros for accessing GDK_DRAWABLE_ components.
17295
17296         * *.[ch]: Massive adjustments for the above, use the
17297         new macros in a lot of places.
17298
17299 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
17300
17301         * gdk/gdktypes.h: Make GdkDrawable the base type,
17302         not GdkWindow.
17303
17304 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
17305
17306         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
17307
17308 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
17309
17310         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
17311
17312 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
17313
17314         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
17315         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
17316
17317         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
17318
17319         * docs/gtk-config.1: Now autogenerated.
17320         * docs/Changes-1.4.txt: started
17321         
17322 1999-10-03  Tor Lillqvist  <tml@iki.fi>
17323
17324         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
17325         to #ifdef also here.
17326
17327         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
17328         Owen did to the X11 backend.
17329
17330         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
17331         ScrollWindowEx when blitting inside a window, it can't be correct
17332         in the general case.
17333
17334         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
17335         WM_GETMINMAXINFO is easier.
17336
17337         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
17338         depth equal to the bitspixel value, not the visual's depth.
17339
17340         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
17341         to 24 even if the bitspixel value is 32.
17342
17343         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
17344         need to check for depth==32 when bpp==32, depth will always be 24.
17345
17346 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
17347
17348         * docs/Changes-1.4.txt: Started
17349         
17350         * gtk/Makefile.am (gdk_headers): Include all the new headers.
17351
17352         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
17353         
17354         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
17355         into C file.
17356         
17357         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
17358         header to gdkinputprivate.h.
17359
17360         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
17361         unused since before 1.2.
17362
17363 1999-09-30  Tor Lillqvist  <tml@iki.fi>
17364
17365         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
17366         expand possible hex escapes in the font family (put there by
17367         logfont_to_xlfd if the font name isn't a legal XLFD font family,
17368         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
17369         On Win32, add hex escapes here, too.
17370
17371 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
17372
17373         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
17374         to #ifdef GDK_WINDOWING_X11.
17375
17376 [ Merges from gtk-1-2 ]
17377
17378 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
17379
17380         * configure.in: fixed "GNU Make" check to pass with new make version
17381         3.77.95.
17382
17383 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
17384
17385         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
17386         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
17387         AM_PATH_GTK() macros don't get confused by the -pre1.
17388
17389 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17390
17391         * configure.in (REBUILD): Change check for perl5
17392           to check explicitely for v >= 5.002. (5.001
17393           does not work with our scripts.)
17394
17395 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
17396
17397         * configure.in: evaluate $PERL for the perl version check. added
17398         --disable-rebuilds to give the user an option to completely disable
17399         any source autogeneration rules.
17400
17401 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
17402
17403         * configure.in: evaluate $ac_make when checking for GNU Make.
17404
17405 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17406
17407         * docs/Makefile.am: added generation.txt.
17408
17409         * Makefile.am: require automake 1.4, build README from README.in and
17410         INSTALL from INSTALL.in in dist-hook.
17411         
17412         * README.in:
17413         * INSTALL.in: new files to autogenerate README and INSTALL from.
17414
17415         * configure.in: figure whether we have GNU Make
17416
17417         * docs/generation.txt: minor additions/corrections.
17418
17419 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17420
17421         * docs/gtkfaq.sgml: FAQ Update
17422
17423 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17424         
17425         * configure.in: Fix autoconf warnings about cross compilation by
17426         trying to provide sane defaults for AC_TRY_RUN.
17427
17428 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
17429
17430         * ltconfig
17431         * ltmain.sh: upgrade to libtool 1.3.3
17432
17433 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17434
17435         * INSTALL: Indicate that the --with-glib= configure
17436         time flag is unsupported.
17437
17438 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
17439
17440         * docs/generation.txt: Added a file that gives
17441         documenation about the autogeneration process for
17442         various autogenerated files.
17443         
17444 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17445
17446         * configure.in (LIBS): Look for libgmodule in the
17447         right location.
17448
17449 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
17450
17451         * docs/gtk_tut.sgml: Removed references to
17452         code examples in my directory on gtk.org as
17453         they should all be in the tutorial now.
17454
17455         * docs/gtk_tut.sgml: Added sources for dial-test
17456         and scribble-xinput programs that were previously
17457         missing.
17458
17459 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
17460
17461         * TODO: Added entry about menu keyboard navigation, removed
17462         some finished items.
17463
17464 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
17465
17466         * acinclude.m4: Standardize on func_dgettext
17467         not func_gettext, so that the checks for dgettext
17468         actually are paid attention to.
17469
17470 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
17471
17472         * configure.in (LIBS): Add $INTLLIBS into $LIBS
17473         directly, rather than repeating the checks for
17474         gettext.
17475
17476         * INSTALL: Added information about gettext and
17477         NLS support.
17478
17479         * acinclude.m4 (LIBM): Check for dgettext, not
17480         just gettext. This should hopefully fix things wrt
17481         systems with old versions of GNU gettext installed.
17482
17483 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17484
17485         * configure.in (LIBS): Look for libgmodule in the
17486         right location.
17487
17488 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17489
17490         * autogen.sh: add --enable-maintainer-mode
17491
17492         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
17493
17494 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
17495
17496         * docs/gtk-config.1.in:
17497           docs/Makefile.am:
17498           configure.in: gtk-config is now generated.
17499
17500         * docs/gtk-config.1: Removed, now generated.
17501
17502 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
17503
17504         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
17505         handle CreateNotify itself, still put out a debuging message for
17506         --gdk-debug=events. made the ReparentNotify debugging message more
17507         verbose.
17508         wrap xcoords translation for ConfigureEvents into an error trap,
17509         a destroy event may already be pending, and in that case, the
17510         actuall coordinate values are not at all critical.
17511
17512 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
17513
17514         * gdk/gdkcc.c: Stop leaking the color_hash all over
17515         the place. Simplify and improve the logic.
17516
17517 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17518
17519         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17520         for prototypes and function implementations consistent (reported
17521         by Tomas Ogren).
17522
17523 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17524
17525         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17526         send_event set in debugging output.
17527         (gdk_compress_exposures): default initialize the event so we don't
17528         operate on bogus values (namely send_event).
17529
17530 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17531
17532         * gdk/gdkwindow.c: When we receive an unexpected
17533         destroy notify on one of our windows, don't just
17534         warn about it, also mark our windows as destroyed.
17535
17536 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17537
17538         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17539           name => font and name => fontset hashes. The 
17540           name => fontset hash is a _big_ win since we
17541           weren't previously caching fontsets at all and loading
17542           fontsets is expensive. The name => font hash
17543           is less of a win, but it does save us from doing
17544           repeated XQueryFont calls on the same font.
17545
17546         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17547           list so we can remove font/fontset from hash.
17548
17549 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17550
17551         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17552           and slightly confusing test. [ XInternAtom (,,TRUE)
17553           will never return None ].
17554
17555 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17556
17557         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17558           gdk/gdkwindow.c (gdk_window_set_hints):
17559
17560         Don't omit setting the properties if flags == 0 -
17561         there may be an existing set of properties there
17562         already. (Very old bug. Would it be better to
17563         delete the property instead?)
17564
17565         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17566           spelling error in comment.
17567
17568 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17569
17570         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17571           to avoid stomping over gdk_error_warnings.
17572
17573         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17574           as (bits_per_pixel + 7) / 8. This gives the same
17575           result as before for multiples of 8, but actually
17576           a "reasonable" value for 1bit or 4bit displays.
17577
17578 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17579
17580         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17581         GNU Make.
17582
17583 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17584
17585         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17586         discarding configure events.
17587
17588 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17589
17590         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17591         refcount is greater than zero.
17592
17593         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17594
17595         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17596
17597         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17598
17599         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17600
17601 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17602
17603         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17604         that format 32 => sizeof(item) == 4. It really is
17605         sizeof(long).
17606
17607 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17608
17609         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17610         core dump at all on X IO errors, only core dump
17611         if --enable-debug for X errors.
17612
17613 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17614
17615         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17616         unknown window:" message. disabled ConfigureNotify discarding code,
17617         because it led to events being processed out of order.
17618
17619 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17620
17621         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17622
17623         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17624         we export this function, supress error warnings and don't reset the
17625         error code in the first half of this function.
17626
17627         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17628         code (instead of just -1) so gdk_error_trap_pop() reveals something
17629         actually informative about the error that happened.
17630
17631         * gdk/*.c:
17632         don't rely on gdk_error_code being -1 if an error occoured, but just
17633         gdk_error_code != 0.
17634
17635 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17636
17637         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17638         pointer *before* invoking the filter function, so we at least don't
17639         crash if a filter is removed that is currently executed. window filters
17640         *really* need to be made truely reentrant at some point.
17641
17642 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17643
17644         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17645         PropertyNotify debug messages.
17646
17647 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17648         
17649         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17650         
17651         * gdk/gdkim.c: Fix cut-and-paste errors for 
17652         x/y and PreeditAttributes/StatusAttributes.
17653
17654 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17655
17656         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17657         G_MAXINT to 2^16 to alleviate overflow problems in
17658         various window managers.
17659
17660 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17661
17662         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17663         for fontsets.
17664
17665 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17666
17667         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17668         Initialize size_hints.x and size_hints.y because kwm
17669         brokenly pays attention to them.
17670         (Bug #1181 -  Lars Heete <hel@admin.de>)
17671
17672 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17673
17674         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17675         return value of gdk_list_visuals(). 
17676         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17677
17678 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17679
17680         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17681         XSetIMValues to (void *) when comparing to NULL, to workaround
17682         the problem of some compilers barfing since older X headers don't
17683         have the prototype for it.
17684
17685 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17686
17687         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17688         for pseudocolor where colormap->colors was double
17689         allocated.
17690
17691         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17692         color value in the hash table with the pixel filled
17693         in so when we do later hash table lookups, the color
17694         value is correct.
17695         
17696 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17697
17698         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17699         making the call
17700
17701 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17702
17703         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17704         pointed out by Morten Welinder <terra@diku.dk>.
17705
17706 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17707
17708         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17709           default filter from the list
17710
17711 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17712
17713         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17714           default filter from the list
17715
17716 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17717
17718         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17719
17720         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17721         g_strdup_printf instead of calcing the length separately
17722
17723 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17724
17725         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17726         that we don't do in many other places. (Fixing duplicate 
17727         #include of config.h)
17728
17729         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17730         Otherwise, #ifndef XINPUT_NONE check in the latter
17731         doesn't work. (Bug #546)
17732
17733 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17734
17735         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17736         "None" case insensitive.
17737
17738 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17739
17740         * gdk/gdkselection.c: 
17741         Add error traps so if the other end of the connection
17742         dies, we survive.
17743
17744 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17745
17746         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17747         dest_xid field into two fields - one for the window
17748         to send in messages, one to indicate the last looked
17749         up window for caching purposes. This is needed, so
17750         that Leave messages get the correct window.
17751
17752 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17753
17754         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17755         Fix warning created by people mucking around
17756         with the gsource API.
17757
17758         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17759         Change mapping between GIOCondition and GdkInputCondition
17760         to match the way the Linux kernel does it. This should
17761         fix problems where closed pipes were no longer signalling
17762         GDK_INPUT_READ on systems with a native poll().
17763
17764 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17765
17766         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17767         explicitly for the string "None" - it is in the XPM
17768         spec and some servers treat unknown colors in odd ways
17769         (like asking the user!)
17770
17771 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17772
17773         * gdk/gdkevents.c: made "->" into a "." of previous change so
17774         it compiles
17775
17776 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17777
17778         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17779         window field of the event structure before calling
17780         user filters.
17781
17782 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17783
17784         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17785         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17786
17787 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17788
17789         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17790         intermediate text property - prevents major memory
17791         leak when gdk_use_mb.
17792         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17793
17794 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17795
17796         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17797         gtk-a-higuti-990322-[0-3]
17798
17799         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17800         sizeof(wchar_t) != sizeof (GdkWChar)
17801
17802         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17803         that was causing -DX_LOCALE not to work.
17804
17805         * gtk/gtkrc.c (gtk_rc_init):
17806         X_LOCALE will never have LC_MESSAGES defined
17807
17808         * gdk/gdk.c (gdk_init_check):
17809         Remove --xim-preedit and --xim-status from argv properly.
17810
17811         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17812         that the client window is present on the X server
17813         before we pass it to the input method.
17814
17815 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17816
17817         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17818         if --display is specified on the command line, than
17819         the drag window will not be created on that display.
17820         
17821 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17822
17823         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17824         lookups with only_if_exists == TRUE were inserting
17825         bogus values into the atom cache.
17826
17827 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17828
17829         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17830         then reset it to NULL.
17831
17832         * gdk/gdkcolor.c:
17833         (gdk_colors_free): 
17834         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17835         key for g_hash_table_remove() in both functions, this prevents us
17836         from accessing possibly uninitialized portions of a GdkColor structure
17837         where we are only interested in its pixel value.
17838
17839 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17840
17841         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17842         font hash table, if we have a GdkFontPrivate entry for this font
17843         already, simply increment its reference count, provided by Olaf Dietsche
17844         <olaf.dietsche+list.gtk@netcologne.de>.
17845
17846 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17847
17848         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17849         just to be sure.
17850
17851         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17852         unused variables, leftovers from the X11 version.
17853
17854         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17855
17856         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17857         downcase fields on X11.
17858
17859 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17860         
17861         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17862         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17863
17864 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17865
17866         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17867
17868         * gtk/makefile.msc: Correct path to libintl.
17869
17870         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17871         use of gint vs. int, and gint vs. gboolean in headers and
17872         definitions. Use GtkType for the *_get_type functions. Note that
17873         these changes preserve binary compatibility.
17874
17875         * gdk/gdk.c
17876         * gdk/win32/gdk.c
17877         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17878
17879         * gtk/gtkmain.c
17880         * gtk/gtkclist.c
17881         * gtk/gtkmenufactory.c
17882         * gtk/gtknotebook.c
17883         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17884         vs. gboolean.
17885
17886         * gtk/gtkcolorsel.[ch]
17887         * gtk/gtkcombo.[ch]
17888         * gtk/gtkdrawingarea.[ch]
17889         * gtk/gtkgamma.[ch]
17890         * gtk/gtkhandlebox.[ch]
17891         * gtk/gtkhpaned.[ch]
17892         * gtk/gtkhruler.[ch]
17893         * gtk/gtkplug.[ch]
17894         * gtk/gtkpreview.[ch]
17895         * gtk/gtkruler.[ch]
17896         * gtk/gtksocket.[ch]
17897         * gtk/gtkstatusbar.[ch]
17898         * gtk/gtktoolbar.[ch]
17899         * gtk/gtkvbbox.[ch]
17900         * gtk/gtkvpaned.[ch]
17901         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17902         functions.
17903
17904         * gtk/gtkgamma.h: Fix bug, missing () in call of
17905         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17906
17907 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17908
17909         * gdk/gdkcolor.c (gdk_colormap_new)
17910         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17911         colormap->colors was allocated twice.
17912
17913         * gdk/win32/gdk.c: Remove some unused stuff.
17914
17915         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17916         colormap.
17917
17918         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17919         * gtk/gtklabel.h (gtk_label_get_type)
17920         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17921         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17922         in a couple of places, not guint.
17923
17924 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17925
17926         * configure.in,po/et.po: added Estonian language file
17927
17928 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17929
17930         * configure.in,po/da.po: added Danish file
17931
17932 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17933
17934         * docs/gtkfaq.sgml: Minor FAQ Update
17935
17936 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17937
17938         * docs/gtkfaq.sgml: FAQ update
17939
17940 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17941
17942         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17943         way to get window contents continually refreshed while resizing. I
17944         didn't like the effects myself, so it's not on by default.
17945
17946         * gdk/win32/gdkprivate.h: New flag variable
17947         gdk_event_func_from_window_proc, FALSE by default.
17948
17949         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17950         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17951         are passed --gdk-event-func-from-window-proc.
17952
17953         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17954         and we have am event_func, call it instead of enqueing the event.
17955
17956 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17957
17958         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17959         Kelley: Set expose_count in GdkEventExposes correctly.
17960
17961         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17962         MULTIPLE_WINDOW_CLASSES).
17963
17964         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17965         for bug in NT, apparently NT *does* draw the end pixel, too, in
17966         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17967
17968 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17969
17970         Improvements by Hans Breuer: 
17971
17972         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17973
17974         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17975         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17976         window contents while dragging" is turned on. Allocate at least
17977         one unique class for every GdkWindowType. If support for single
17978         window-specific icons is ever needed (eg. Dialog specific), every
17979         such window should get its own class.
17980
17981 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17982
17983         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17984         error that caused crashes.
17985
17986 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17987
17988         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17989         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17990         bugs when for instance part of the window was outside the
17991         display. Thanks to Philippe Colantoni for finding and fixing this.
17992
17993 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17994
17995         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
17996         endpoint calculations which were totally wrong. (A little RTFMing
17997         helps a lot ;-)
17998
17999         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
18000         from a separate directory, not from gettext, because of licensing
18001         issues (we want to use the LGPL version).
18002
18003         * README.win32: Mention the intl from glibc vs from gettext issue.
18004
18005 1999-08-13  Tor Lillqvist  <tml@iki.fi>
18006
18007         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
18008         in the key event handling: Now AltGr chars work again. Also,
18009         now Alt-digits are passed up as well as Control-digits.
18010         Pass keypad plus and minus as normal plus and minus.
18011
18012 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18013
18014         * docs/gtkfaq.sgml: FAQ Update
18015
18016 1999-07-25  Tor Lillqvist  <tml@iki.fi>
18017
18018         * README.win32
18019         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
18020         the Wintab SDK.
18021
18022         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
18023         OK, but getting closer. Guard against bogus tilt data from Wacom
18024         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
18025         enable easier building without Wintab.
18026
18027         * gdk/win32/gdkinput.h
18028         * gdk/win32/gdkevents.c 
18029         * gdk/win32/gdkwindow.c: Minor changes related related to above.
18030         
18031         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
18032         code. As we have just one visual on Win32, no sense to have it in a
18033         table, and no need for the hash table.
18034
18035         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
18036         better on white background.
18037
18038 1999-07-21  Tor Lillqvist  <tml@iki.fi>
18039
18040         * README.win32: Update gcc build instructions. Mention gettext is
18041         GPL.
18042
18043         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
18044         supported cursor size with GetSystemMetrics.
18045
18046         * gdk/win32/gdkfont.c
18047         * gtk/gtkfontsel.c: Guard against some font weight and charset
18048         symbols being undefined (in mingw32 headers).
18049
18050         * gdk/win32/makefile.cygwin
18051         * gtk/makefile.cygwin
18052         * gtk/gtkthemes.c: No longer need to have differently named
18053         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
18054
18055 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
18056
18057         * docs/gtkfaq.sgml: Long awaited FAQ update.
18058
18059 1999-07-15  Tor Lillqvist  <tml@iki.fi>
18060
18061         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
18062         it. Obscure bit manipulation needed.
18063
18064         * gdk/win32/gdkevents.c: Logging.
18065         
18066         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
18067         style (file name include compiler name) for theme engines.
18068
18069 1999-07-13  Tor Lillqvist  <tml@iki.fi>
18070
18071         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
18072
18073         * gdk/win32/gdkevents.c: Fix long-standing bug in key
18074         events. The key.string wasn't zero-terminated, still we strdup'ed
18075         it in gdk_event_copy(). Synthesize crossing events for button
18076         events before possible propagation.
18077
18078         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
18079
18080         * gdk/win32/makefile.cygwin
18081         * gtk/makefile.cygwin: Use new DLL naming style for the
18082         GCC-compiled ones.
18083
18084         * gdk/win32/makefile.msc
18085         * gtk/makefile.msc: Cosmetics mostly.
18086
18087         * gtk/gtk.def: Add missing entry points.
18088
18089         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
18090
18091 1999-07-09  Tor Lillqvist  <tml@iki.fi>
18092
18093         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
18094         or height is zero. Don't print a warning if Pie or Arc fails, they
18095         always fail (?) for very narrow ellipses.
18096
18097         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
18098         the part or the destination window corresponding to source area
18099         outside of the source drawable's boundary.
18100
18101         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
18102         anything if less than two points.
18103
18104         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
18105         return NULL. Gtk cut-and-paste inside a single program works
18106         better this way. (It always gets the clipboard contents from
18107         Windows, not from its own copy, which is cleared anyway. I can't
18108         say I fully understand what happens... Emulating the X selection
18109         and property stuff is a bit of a mess.)
18110
18111         * gdk/win32/gdkevents.c
18112         * gdk/win32/gdkproperty.c: A bit more verbose logging.
18113
18114         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
18115         that never got deleted). Revamp gdk_region_shrink.
18116
18117         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
18118         after use.
18119
18120         * gtk/gtk.def: Add some missing entry points.
18121
18122         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
18123         component.
18124
18125 1999-07-04  Tor Lillqvist  <tml@iki.fi>
18126
18127         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
18128         Control-digits specially.
18129
18130 1999-07-03  Tor Lillqvist  <tml@iki.fi>
18131
18132         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
18133
18134 1999-06-28  Tor Lillqvist  <tml@iki.fi>
18135
18136         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
18137         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
18138         finding this.)
18139
18140 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
18141
18142         * gtk+.spec.in: Corrected some typos in files section.
18143         
18144 1999-06-15  Tor Lillqvist  <tml@iki.fi>
18145
18146         * README.win32: Mention using GNU gettext.
18147         * config.h.win32: Enable NLS stuff.
18148         * gtk/makefile.msc: Use GNU gettext.
18149         * gdk/win32/gdkdnd.c: Minor header reorg.
18150         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
18151         cosmetics.
18152         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
18153         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
18154
18155 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
18156
18157         * acinclude.m4
18158         * config.guess
18159         * config.status
18160         * ltconfig
18161         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
18162
18163 1999-05-30  Tor Lillqvist  <tml@iki.fi>
18164
18165         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
18166         SafeAdjustWindowRectEx. Don't override all calls to
18167         AdjustWindowRectEx by it, but use it only in two places: When
18168         creating a new top-level window and when moving a top-level
18169         window.
18170
18171         Use screen coordinate rectangle, not client rectangle, in
18172         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
18173         when we try to place a window so that the decoration (mainly,
18174         title bar) isn't visible.
18175
18176         These changes fix the bug that showed up for instance as the
18177         GIMP's saved top-level windows moving right and down (by an amount
18178         equal to the window decoration) for each session. This bug showed
18179         up also in testgtk's "Saved Position".
18180
18181         gdk_window_resize also redone a bit.
18182
18183 1999-05-25  Tor Lillqvist  <tml@iki.fi>
18184
18185         * gtk/testgtkrc: Add (commented out) Windows-style theme
18186         include line.
18187
18188         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
18189
18190 1999-05-18  Tor Lillqvist  <tml@iki.fi>
18191
18192         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
18193         gdkx.h to a gdk subdirectory, so that applications can include
18194         these with <gdk/*.h> without trouble.
18195
18196         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
18197         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
18198         have their bitmap destroyed.
18199
18200         * gdk/win32/gdk.def: Add gdk_root_parent.
18201
18202 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
18203
18204         * configure.in
18205           gtk-config.in
18206           ltconfig
18207           ltmain.sh     
18208           gtk/Makefile.am: changes to compile nicely (with xlib) 
18209           on BeOS
18210
18211 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
18212
18213         * acinclude.m4
18214         * config.guess
18215         * config.sub
18216         * ltconfig
18217         * ltmain.sh: upgrade to libtool 1.3
18218
18219 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
18220
18221         * gtk/gtkclist.c:
18222         * gtk/gtkctree.c: merges from gtk-1-2
18223
18224 1999-04-25  Tor Lillqvist  <tml@iki.fi>
18225
18226         Support added for building using a GNU toolchain on Win32,
18227         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
18228
18229         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
18230         * config.h.win32: Changes for gcc.
18231         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
18232         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
18233         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
18234         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
18235         Protect shl stuff unavaiilable with mingw32 headers.
18236         * gdk/win32/gdkevents.c: Fix typo.
18237         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
18238         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
18239         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
18240         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
18241         the mingw32 headers.
18242         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
18243         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
18244         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
18245         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
18246         Test for NATIVE_WIN32, not _MSC_VER.
18247         * gtk/gtkmain.c: No use warning about developer version on Win32,
18248         there aren't any non-developer versions anyhow.
18249         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
18250         * gtk/makefile.msc: Use pthread from another directory. Minor other
18251         changes. 
18252
18253 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18254
18255         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18256           default filter from the list
18257
18258 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
18259
18260         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
18261          when gtk_widget_grab_default() is called for a widget that
18262          is not within a GtkWindow.
18263
18264 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
18265
18266         * docs/gtk_tut.sgml, examples/clist.c: use a
18267           scrolled window in the clist example. Minor
18268           tutorial fixes.
18269
18270 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
18271
18272         * docs/gtk_tut.sgml: Style check from David King
18273           <dking@youvegotmail.net>
18274
18275 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
18276
18277         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
18278         compile with unknown value of GDK_WINDOWING
18279
18280 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
18281
18282         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
18283         after the rule is fired.
18284         (install-exec-local): Install gdkconfig.h only if the contents are
18285         different from the currently installed gdkconfig.h.
18286
18287 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
18288
18289         * gdk/Makefile.am (configexecincludedir): Rename from 
18290         configincludedir so that gdkconfig.h will be installed 
18291         as part of `make install-exec'. 
18292
18293 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
18294
18295         * acinclude.m4
18296         * config.guess
18297         * config.sub
18298         * ltconfig
18299         * ltmain.sh: upgrade to libtool 1.2f
18300
18301         * autogen.sh: libtool is not required to autogen gtk+
18302
18303         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
18304         needed)
18305
18306 1999-03-18  Tor Lillqvist  <tml@iki.fi>
18307
18308         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
18309         declaring gdk variables exported/imported from the DLL. New image
18310         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
18311         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
18312         GDK_DRAG_PROTO_OLE2.
18313
18314         * gdk/gdk.h: Merge in Win32 version: Two new functions,
18315         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
18316         declared only for the Win32 version, but could be in the X11
18317         version as well. (Needed for a Xlib-less gdk_imlib.)
18318         gdk_color_hash should have only one parameter. Declare
18319         gdk_threads_mutex with GDKVAR.
18320         
18321         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
18322         just one parameter.
18323
18324         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
18325         per pixel, not bits.
18326
18327         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
18328         Fetch bpp (which means bits-per-pixel here) from another place on
18329         Win32. Accept also depth==32 (which we might get on Win32) with
18330         bpp==32.
18331
18332         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
18333         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
18334         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
18335         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
18336         in the backend-dependent directory, not in the common gdk
18337         directory.
18338
18339         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
18340         headers.
18341
18342 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
18343
18344         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
18345         want to use the Gtk+ devel version (which is true, and yes - even i am
18346         currently working with the 1.2.x branch). so everyone reading this, you
18347         probably want to issue
18348         cvs checkout -r glib-1-2 glib
18349         and
18350         cvs checkout -r gtk-1-2 gtk+
18351         as your next two comands.
18352
18353 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
18354
18355         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
18356         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
18357
18358         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
18359         file. strongly deprecated the GTK_HAVE_* macros, we provide
18360         GTK_CHECK_VERSION() for people that need to check for certain
18361         Gtk+ versions.
18362
18363         * gtk/gtkcompat.h: removed this from CVS.
18364         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
18365         idea right from the start, it just didn't seem like that back then.
18366
18367 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
18368
18369         * merges from gtk-1-2:
18370
18371 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
18372
18373         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
18374         item factory class has been created.
18375         (gtk_item_factory_parse_rc): likewise.
18376
18377         * gtk/gtkmenu.c:
18378         keep proper references for old_active_menu_item.
18379         (gtk_menu_reparent): unset the usize of the new parent,
18380         so the menu can sanely be size requested and we don't get nasty screen
18381         artefacts upon next reparentation.
18382         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
18383         enter notify. only synthesize enter notifies if the pointer really is
18384         inside the event window.
18385         (gtk_menu_popdown): use gtk_menu_shell_deselect().
18386         (gtk_menu_popup): move the background setting stuff into
18387         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
18388
18389         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
18390         gtk_menu_shell_select_item() to select the new item.
18391         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
18392         do the right thing for deselection as well.
18393
18394 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
18395
18396         * gtk/gtkwidget.[hc]:
18397         (gtk_widget_accelerators_locked): return whether a widget's accelerators
18398         are locked.
18399
18400         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
18401         existing accelerators if the widget's accelerators are locked.
18402
18403 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
18404
18405         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
18406
18407         * gtk/gtkmenu.c: truely forward key press and key release events to
18408         the menu widget from the toplevel or tearoff window. we can't simply
18409         connect to that, we need to stop further processing of the events as
18410         well.
18411
18412 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
18413
18414         * gtk/gtkmenu.c:
18415         (gtk_menu_key_press): pass event->keyval, event->state to
18416         gtk_accelerator_valid, instead of event->keyval twice.
18417         refuse to install single letter accelerators for menus that use
18418         single letter shortcuts.
18419
18420         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
18421         gtk_menu_ensure_uline_accel_group().
18422
18423         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
18424         which will always return an uline accel group, made
18425         gtk_menu_get_uline_accel_group() return NULL if the group isn't
18426         yet created.
18427
18428 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
18429
18430         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
18431
18432         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18433         Leave button sensitive, trap  button_press, button_release,
18434         motion_notify, enter_notify and leave_notify events instead.
18435         (gtk_clist_column_title_active): disconnect event handler.
18436         (gtk_clist_drag_data_get): fixed memory leak. Reported by
18437         Guillaume Laurent <glaurent@worldnet.fr>
18438
18439 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
18440
18441         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
18442         width/height mixups.
18443
18444         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
18445         if needed.
18446
18447 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
18448
18449         * gtk/testgtk.c (create_item_factory): unref the item factory after
18450         window's destruction.
18451
18452         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
18453         count on the menu shell around the menu item's activation, since the
18454         signal emission may cause menu shell destruction.
18455
18456         * gtk/gtkitemfactory.c:
18457         the previous code leaked one accel group per menu. we use
18458         gtk_menu_get_uline_accel_group() now to fix that, and with that
18459         also create the underline accelerator group of the menus only if
18460         required (i.e. an underline accelerator has been specified).
18461         (gtk_item_factory_construct):
18462         (gtk_item_factory_create_item): removed code that would create an
18463         extra accel group for the menu (and leak references).
18464         (gtk_item_factory_create_item): adapted the underline accelerator
18465         installation code to properly feature gtk_menu_get_uline_accel_group().
18466
18467         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
18468         menu->accel_group, this may return NULL if the accelerator group
18469         hasn't been set yet.
18470         added gtk_menu_get_uline_accel_group() to retrive the underline
18471         accelerator group of the menu, this will be created on demand
18472         and proper care is taken about its reference count.
18473
18474         * gtk/gtkitemfactory.h:
18475         * gtk/gtkitemfactory.c:
18476         dumped the approach of keeping a widgets by action list on the
18477         factory since the factory<->widget destroy negotiation didn't work
18478         and would be hard to get going at all. instead we keep a list of
18479         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
18480         persistant throughout a program's life time).
18481         also, i removed the static const gchar *key_* variables, and made
18482         them inline strings (they weren't actually used anyways).
18483         (gtk_item_factory_add_item): update ifactory->items.
18484         (gtk_item_factory_destroy): destroy ifactory->items (and remove
18485         the item factory pointer from the remaining ifactory widgets).
18486         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
18487         list to find the widget.
18488         (gtk_item_factory_get_item): new function that works around
18489         gtk_item_factory_get_widget() limitations, this function will only
18490         return menu items, even for <Branch> entries.
18491
18492 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18493
18494         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18495         font hash table, if we have a GdkFontPrivate entry for this font
18496         already, simply increment its reference count, provided by Olaf Dietsche
18497         <olaf.dietsche+list.gtk@netcologne.de>.
18498
18499         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18500         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18501
18502 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
18503
18504         * gtk/gtkcontainer.c:
18505         (gtk_container_add_with_args):
18506         (gtk_container_addv):
18507         (gtk_container_add): before adding a child to a conatiner, make sure
18508         it is (default) constructed, this is neccessary because under certain
18509         circumstances the child will get relized and mapped immediatedly, in
18510         which case it has to be constructed already.
18511
18512 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
18513
18514         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
18515         values > 1 as TRUE also.
18516
18517 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18518
18519         * README.win32: New file.
18520                 
18521         * configure.in: Check for lstat.
18522
18523         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18524         completeness.
18525
18526         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18527
18528         * gtk/gtk.def: Removed CRs.
18529
18530         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18531         ..\gdk\win32).
18532
18533         * gdk/win32/makefile.msc: Correct upwards relative paths.
18534         
18535 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18536
18537         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18538           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18539           it was connecting a void function to expose_event and the int
18540           returning function to the draw signal
18541
18542 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18543
18544         * configure.in:
18545         Use correct path to libgmodule.la when ref'ing uninstalled copy
18546         of glib.  (Already in stable branch, Bug #417)
18547
18548 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18549
18550         Win32 merge and general portability stuff:
18551                 
18552         * acconfig.h,configure.in: Check for <sys/time.h>.
18553
18554         * gdk/win32: New directory (actually, been there for a while).
18555         
18556         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18557         NATIVE_WIN32, and use these. Always case fold on Win32. No
18558         backslashed escapes on native Win32.
18559
18560         * gtk/{gtk.def,makefile.msc}: New files.
18561
18562         * gtk/Makefile.am: Add above new files.
18563         
18564         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18565         instead of <strings.h>.
18566
18567         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18568         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18569         <unistd.h> appropriately.
18570
18571         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18572         Use ABS() (from <glib.h>) instead of abs().
18573         
18574         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18575         of gtk (and thus glib) headers, so that WIN32 will be
18576         defined. With MS C, include <direct.h> for mkdir prototype.
18577
18578         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18579         some casts, needed by MS C.
18580
18581         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18582         implemented).
18583
18584         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18585         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18586         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18587
18588         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18589                 
18590         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18591         the event is not a hint, or its window is not the slider. Needed
18592         on Win32, at least.
18593
18594         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18595         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18596         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18597         a subdirectory of the Windows directory as gtk system
18598         configuration directory.
18599
18600         * gtk/gtkselection.c: No chunks on Win32.
18601
18602         * gtk/gtksocket.c: Not implemented on Win32.
18603
18604         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18605
18606         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18607
18608         * gtk/maketypes.awk: Declare variables with a macro that expands to
18609         necessary export/import magic in the case of Win32.
18610                 
18611         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18612
18613 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18614
18615         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18616         since those were meant only for gdki18n.h.  
18617         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18618         for widechar tests.
18619         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18620
18621 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18622
18623         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18624         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18625
18626         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18627         installed) to CFLAGS.
18628
18629         * gdk/Makefile.am: Add rules for gdkconfig.h.
18630
18631         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18632         APIs.
18633
18634         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18635         gdkx.h anyway when compiling for X11.
18636         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18637         general): Merge in Win32 version.
18638         
18639         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18640         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18641         expansion (if we don't have HAVE_PWD_H), allow for drive
18642         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18643         included code from Craig Setera's port to Win32 (the one that uses
18644         X11, and the cygwin dll), even if it probably will be abandoned.
18645
18646         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18647         the user entered one herself.  This way one can complete *.h and
18648         don't get matches on any .help files, for instance.
18649         
18650 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18651
18652         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18653         font hash table, if we have a GdkFontPrivate entry for this font
18654         already, simply increment its reference count, provided by Olaf Dietsche
18655         <olaf.dietsche+list.gtk@netcologne.de>.
18656
18657         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18658         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18659
18660 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18661
18662         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18663         the number of calls to gdk_draw_point() (and thus to X) by
18664         clipping the points by hand.
18665
18666         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18667         the clip parameter.
18668         (gtk_handle_box_paint): Only paint the handle if the expose area
18669         intersects it.
18670
18671 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18672
18673         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18674
18675 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18676
18677         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18678         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18679
18680 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18681
18682         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18683          textmode (O_TEXT) for OS/2 version.
18684
18685 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18686
18687         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18688         GtkSpinButton, "input" and "output", to make the output more flexible.
18689         The user has to provide a mapping between adjustment->value and the
18690         output string (and vice versa, if the spin button is editable). 
18691         See testgtk for examples.
18692
18693 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18694
18695         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18696         new one.
18697         
18698         * configure.in: set gtk+ version to 1.3.0.