]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Update to the new pango win32 api.
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-08-09  Alexander Larsson <alexl@redhat.com>
2
3         * gdk/win32/gdkfont-win32.c:
4         Update to the new pango win32 api.
5
6 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
7
8         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
9         COMPOUND_TEXT instead of TEXT
10         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
11         interpret the return value of g_string_to_compound_text()
12         (#55152)
13
14 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
15
16         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
17         fail if iter is NULL. (#58347)
18
19 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
20
21         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
22         some off-by-one issues, fixing selection of line-ends. (#50323)
23
24 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
25
26         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
27         functions in order to make mouse operation work again in the
28         color wheel. (#58604)
29
30 2001-08-07  James Henstridge  <james@daa.com.au>
31
32         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
33         the accelerator when the accel object is changed.  Fixes bug
34         #58628.
35
36 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
37
38         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
39         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
40         (gnome bugzilla #58202)
41
42 2001-08-06  Havoc Pennington  <hp@pobox.com>
43  
44         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
45         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
46         it was expecting a GdkWindow, not a GdkWindowImplX11.
47  
48         Also, we were getting the window rect in screen coords 
49         and the screen rect in window coords then intersecting 
50         them; instead, get window rect in window coords.
51  
52         Finally, there were codepaths that resulted in a stuck server grab
53         (when the window was fully onscreen, or on gdk_image_new()
54         failure); make the server ungrab thing a bit more
55         robust/consistent.
56
57 2001-08-06  Sven Neumann  <sven@gimp.org>
58
59         * gdk/gdkpango.c (gdk_pango_context_destroy): 
60         check if info->colormap != NULL before unref'ing it. It might have
61         been set to NULL using gdk_pango_context_set_colormap().
62
63 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
64
65         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
66         Fix conversion from float to int so that we don't get
67         skew in the int => float => int roundtrip. 
68         (#58120, reported by Vitaly Tishkov). Also fix problem
69         where if no alpha was set, the returned alpha
70         from (say) set_current_alpha() was returned as 1, not 65535.
71
72 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
73
74         * gtk/gtklist.c (gtk_list_clear_items): Fix
75         problem with selecting a new focus child.
76
77         * gtk/gtklist.c (gtk_list_clear_items): Clear 
78         list->undo/list_focus_child after unparenting
79         child, since unparenting the child can result
80         in list->last_focus_child being set. (#58024)
81
82         * Makefile.am (SUBDIRS): Add target specific pc
83         files to DISTCLEANFILES.
84
85         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
86         (58327, Matthias Clasen)
87
88 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
89
90         * tests/testgtk.c: Patch from Hans (with various modifications),
91         to add the ability to use testgtk as a rough-and-ready
92         benchmark. Try, 'testgtk --bench all:5' (if you want decent
93         numbers, run without a window manager)
94
95 2001-08-04 Alexander Larsson <alexl@redhat.com>
96
97         * gdk/win32/gdkinput.c:
98         Add #ifdef HAVE_WINTAB around wintab.h include.
99
100         * gtk/gtk.def:
101         Removed marshals that have been moved to glib.
102         Commented out plug and socket. They didn't compile for me 
103         on win32.
104
105 2001-08-04  Hans Breuer  <hans@breuer.org>
106
107         * gtk/stocks-icons/makefile.msc : new file
108         * gtk/makefile.msc.in : use it
109
110         * gtk/gtkstyle.c : not all platforms do provide M_PI and
111         friends, but luckily there is G_PI
112
113         * gtk/gtk.def : updated
114
115         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
116         windows WS_POPUP, but only those without a parent. This fixes the 
117         mis-alignment between the selectable (temp, input only) window and 
118         the window text of GtkLabel.
119
120         (gdk_window_show) : respect private->state when actually showing
121         the window.
122
123         (gdk_window_set_transient_for) : Implementation from Wolfgang 
124         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
125         error handling. Should fix #50586.
126
127         * gdk/win32/gdkevents-win32.c : beautify log output
128
129 2001-08-04  Michael Natterer  <mitch@gimp.org>
130
131         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
132         Need to show the image after adding it to the GtkImageMenuItem.
133         This used to work without in testgtk because of the
134         gtk_widget_show_all() at the end of the function.
135         (Closes #54978).
136
137 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
138
139         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
140         (gtk_notebook_set_child_property): fix finding of child's page,
141         since we have to validly deal with labels and menus here as well.
142         (gtk_notebook_get_child_property): fix warning.
143         (gtk_notebook_class_init): property tab_pack is of type
144         GTK_TYPE_PACK_TYPE (enum) not boolean.
145         (gtk_notebook_find_child): don't always warn, we might be looking
146         for a label or menu child.
147         (gtk_notebook_map): fix mapping of panel.
148
149         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
150         widget's mapped state, regardless of the value being set equals
151         old settings, since things like REALIZED(parent) or MAPPED(parent)
152         may have changed since the old value was set. make it an error to
153         invoke this function on a toplevel widget.
154
155 2001-07-31  Darin Adler  <darin@bentspoon.com>
156
157         * gdk/gdkprivate.h:
158         * gdk/x11/gdkx.h:
159         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
160
161         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
162         GTK_OBJECT.
163
164 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
165
166         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
167         scoping error pointed out by matthiasc@poet.de.
168
169 2001-07-31  Sven Neumann  <sven@gimp.org>
170
171         * demos/gtk-demo/appwindow.c
172         * demos/gtk-demo/item_factory.c
173         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
174
175 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
176
177         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
178         argument order for g_signal_has_handler_pending.
179
180 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
181
182         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
183         instead of long deprecated g_scanner_stat_mode().
184
185 2001-07-29  Hans Breuer  <hans@breuer.org>
186
187         * gdk/makefile.msc : build in the backend dir after
188         auto-generating files
189
190         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
191         with code from win32-production-branch.
192
193         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
194         before calling DestroyWindow, which indirectly calls 
195         gdk_window_destroy_notify ()
196
197         (performance patch merged from win32-production-branch)
198         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
199         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
200         R2_COPYPEN rop). It is claimed to be much faster.
201
202 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
203
204         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
205         add an "attributes" property to the text renderer for ATK.
206
207 2001-07-26  Alex Larsson  <alexl@redhat.com>
208
209         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
210         Initialize image->bits_per_pixel from the drawable, not from
211         the root window.
212
213         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
214         Fix cast. argument is an IMPL already.
215
216 2001-07-15  James Henstridge  <james@daa.com.au>
217
218         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
219         (gtk_window_remove_accel_group): same here.
220         (gtk_window_key_press_event): same here.
221
222         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
223         (gtk_widget_remove_accelerator): same here.
224         (gtk_widget_remove_accelerators): same here.
225
226         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
227
228         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
229         instead of GtkObject.
230
231         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
232         now takes GObjects.
233
234         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
235         pass a GObject to gtk_accel_group_entries_from_object.
236         (gtk_item_factory_create_item): s/accel_widget/accel_object/
237
238         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
239
240         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
241
242         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
243         GObjects can have accelerators set now.  Add compatibility
244         defines.
245
246         * gtk/gtkmarshal.list: add missing marshallers.
247
248         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
249         accelerators on plain GObjects.  gtk_accel_group_object_destroy
250         has been converted into a weak reference, and
251         gtk_accel_group_delete_entries is now a destroy notify for that
252         piece of data.
253
254 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
255
256         * gdk/gdkdraw.c: Added a check on the colormap depth to
257         gdk_drawable_set_colormap()
258         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
259         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
260         for pixmaps without visuals (more specifically, bitmaps)
261         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
262         doesn't set a colormap with the wrong depth
263
264
265 2001-07-22  Anders Carlsson  <andersca@gnome.org>
266
267         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
268         expander_height and expander_width properties with a single
269         property, expander_size.
270         (gtk_tree_view_init): Set the tab_offset to expander_size
271         plus some padding.
272         (gtk_tree_view_unrealize): Remove the expand/collapse
273         timeout if it exists.
274         (coords_are_over_arrow): Fix a small bug.
275         (gtk_tree_view_motion_draw_column_motion_arrow): Use
276         expander_size.
277         (gtk_tree_view_draw_focus): Use "treeview" instead of
278         "add-mode" as detail when drawing the focus.
279         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
280         instead of "add-mode" as detail when drawing the focus.
281         (gtk_tree_view_deleted): If we have a node currently being
282         expanded or collapsed, remove the timeout and set the node 
283         to NULL.
284         (gtk_tree_view_queue_draw_arrow): New function that just
285         redraws the arrow of a node.
286         (gtk_tree_view_draw_arrow): Use expander_size instead of
287         expander_width/expander_height, also pass a different
288         expander_style to gtk_paint_expander depending on the 
289         state of the node being drawn.
290         (expand_collapse_timeout): New function for expanding 
291         or collapsing a node depending on the previous state.
292         (gtk_tree_view_real_expand_row): Add timeout and set 
293         correct state for node being expanded.
294         (gtk_tree_view_real_collapse_row): Add timeout and set
295         correct state for node being collapsed.
296
297         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
298         information about the node currently being expanded or
299         collapsed, and also a timeout id.
300
301         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
302         with expander_style for draw_expander.
303
304         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
305         expander_style.
306         (create_expander_affine): New function for creating an 
307         expander affine.
308         (apply_affine_on_point): New function for applying an 
309         affine to a point.
310         (gtk_default_draw_expander): Modified to take expander_style
311         instead of is_open, and to draw the rectangle rotated differently
312         depending on the expander style.
313         (gtk_paint_expander): Replace is_open with expander_style.
314
315         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
316
317         * gtk/gtkenums.h: Add expander style enum.
318
319 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
320
321         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
322         value from gtk_tree_model_get_iter, the model might be empty.
323
324 2001-07-20  Hans Breuer  <hans@breuer.org>
325
326         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
327         gdk/gdkinput.c like the other backends
328
329         * gdk/win32/gdkinput-win32.h :
330         * gdk/win32/gdkinput.c :
331         * gdk/win32/gdkvisual-win32.c :
332         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
333         GdkVisual GObjectification. UNTESTED for pen-devices because
334         I simply have none.
335
336         * gdk/gdk.def :
337         * gtk/gtk.def : updated externals
338
339         * gtk/gtkiconfactory.c :
340         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
341         before passing &error to functions to avoid strange crashes
342         
343         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
344
345         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
346
347         * gtk/makefile.msc.in : updated
348
349 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
350
351         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
352         Add property support. (#51858)
353
354 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
355
356         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
357         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
358         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
359
360 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
361
362         * gtk/gtkcolorsel.c: Add propery support (roughly
363         based on patch from Lee Mallabone, #51014)
364
365         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
366         deprecated, since we already g_warning() on it.
367
368 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
369
370         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
371         typo that sometimes caused selection not to work properly.
372
373         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
374         entry when tabbing in. (#57743)
375         
376         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
377         user drags up above or down below the entry, move
378         to the end or the beginning of the entry. (Suggestion
379         from Jay Cox, #50940)
380
381         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
382         a current selection, then when moving by chars or
383         words, move to the end of the selection rather than
384         from entry->current_pos. (Suggestion from Jay Cox,
385         #50942)
386         
387 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
388
389         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
390         set window->decorated. (Patch from Hidetoshi Tajima,
391         #55846)
392
393 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
394
395         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
396         the widget/child realization/mapping invariants.
397
398         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
399         gtk_widget_[get/set]_child_visible() to control
400         whether visible children of a mapped window are
401         mapped.
402
403         * docs/widget_system.txt: Updated for changes in
404         container contract, and addition of GTK_CHILD_VISIBLE.
405
406         * gtk/gtkcontainer.c: Add generic map()/unmap()
407         functions that work for almost all containers.
408
409         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
410         gtk_widget_set_child_visible() where necessary.
411
412         * gtk/*.c: Remove excess map(), unmap(), and 
413         realization/mapping invariant enforcing code
414         from many containers.
415
416 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
417
418         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
419         Get the foreground color from 'text', nor 'fg'. (#57568)
420
421 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
422
423         * gtk/*.c: Patch from Matthias Clasen to remove remove
424         all instances of g_return_if_fail (foo != NULL); that are
425         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
426         since the second check catches the NULL anyways.
427
428 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
429
430         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
431         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
432         GDK_THREADS_ENTER()/LEAVE() pairs.
433
434         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
435         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
436         pairs. (Problem found by M. Meeks)
437
438 2001-07-18  Darin Adler  <darin@bentspoon.com>
439
440         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
441         that we don't get a g_warning message every time we register a new
442         icon size.
443
444         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
445         using pixel variable of the correct type.
446         
447 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
448
449         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
450         so that using X functions on a GdkWindow is possible, if
451         a little hairy.
452
453         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
454         and ts_origin of a GC, so that external parties can offset/restore
455         a GC, when using gdk_window_get_internal_paint_info().
456
457 2001-07-17  Darin Adler  <darin@bentspoon.com>
458
459         * .cvsignore: Ignore the sgml directory made by gtkdoc.
460         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
461         instead of the deprecated gtk_window_set_policy.
462         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
463         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
464         function to get rid of warning and some code too.
465         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
466         missing const.
467         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
468         unused local.
469         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
470         const.
471         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
472         (gdk_utf8_to_compound_text): Add missing const.
473         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
474         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
475         cast and get rid of an unnecessary one.
476         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
477         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
478         local.
479         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
480         Remove unused local.
481         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
482         missing const.
483         * tests/testsocket.c: (add_child): Add cast so the printf format
484         doesn't make us implicitly depend on what integer type
485         gtk_socket_get_id returns.
486         * tests/testtextbuffer.c: Add missing const.
487         * tests/testtreefocus.c: (main): Remove unused local.
488         * tests/treestoretest.c: (iter_remove): Remove unused local.
489         (uppercase_value): Remove unused function.
490         (make_window): Add statement to quiet the compiler's uninitialized
491         variable warning.
492
493 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
494
495         * gtk/gtkrange.c:
496         (second_timeout): 
497         (initial_timeout): 
498         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
499         (gtk_range_calc_layout): compute the new layout based on an
500         adjustment->value being passed in as argument.
501         (gtk_range_button_press): for button2 slider warps, first recalc
502         the layout, then adjust the value. also, use update_slider_position()
503         for adjusting the value, so we keep pixel quantisation at which we
504         usually operate (upon motion or button releases). the reason for this
505         is that, we can't change the adjustment upon button2 presses to a non
506         quantised value and upon button2 release re-quantise the value since
507         that'd alter the value even if we didn't get any motion events (causing
508         unexpected scroll area warps upon release and/or slider pixel-jitter).
509         (gtk_range_motion_notify): update the slider position from queried
510         coordinates, not event coordinates.
511
512 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
513
514         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
515         the default gc values are: width=0, CapBut, JoinMiter.
516
517 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
518
519         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
520         into account the xpad and ypad when calculating the width and the
521         height of the pixbuf cel.
522
523 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
524
525         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
526         Rename to gtk_radio_menu_item_get_group(), add deprecated
527         alias. (#57044)
528
529         * gtk/gtkfilesel.c: Indentation fix.
530
531 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
532
533         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
534         Hasselmann to fix warnings in compat macros. 
535         (#56773)
536
537         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
538         stupid wrong cast added in last patch.
539
540 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
541
542         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
543         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
544
545 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
546
547         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
548         missing cast.
549
550         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
551         NULL/FALSE return value confusion.
552
553         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
554         problem when scrollbar completely fills range. (Patch
555         from  Matthias Clasen, #57047)
556
557 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
558
559         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
560         clean up when handling events for move-resize emulation.
561         (Problem traced down by Matthias Clasen, #57271)
562
563 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
564
565         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
566           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
567           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
568           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
569           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
570           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
571           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
572         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
573
574 2001-07-09  Peter Williams  <peterw@ximian.com>
575
576         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
577         for when srcdir != builddir
578
579 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
580
581         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
582         gtk_tree_model_get_iter_root.
583
584         * gtk/gtkliststore.c: Add a bunch of g_return statements.
585         (gtk_list_store_iter_n_children): Fix up.
586
587         * gtk/gtktreestore.c: Add a bunch of g_return statements.
588
589 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
590
591         * gtk/gtkwidget.c (gtk_widget_class_init):
592         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
593         restore some workingness.
594
595         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
596         handle of window type for input-only windows.
597
598 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
599
600         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
601         Patch from Gregory Merchan to add 
602         gtk_button_box_set_secondary(), which separates
603         the child into a separate group from the normal
604         buttons. (#56331)
605
606         * gtk/gtkdialog.c: Make help buttons secondary by
607         default.
608
609         * gtk/gtkbbox.c: Added a child property "secondary".
610
611         * gtk/testgtk.c: Turn on the help button for the 
612         color selector to check that it properly appears
613         as secondary.
614
615 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
616  
617         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
618         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
619         Add gdk_set_pointer_hooks() to allow pointer-querying to
620         be hooked by an event record/playback system like GERD.
621         (#56914)
622         
623 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
624
625         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
626         in the right value of initial_emission to
627         gtk_widget_set_style_internal (#57091)
628
629 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
630
631         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
632         Make compile.
633
634         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
635         with calling gtk_widget_set_style_internal() with
636         the old style, not the new style. (#56989)
637
638 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
639
640         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
641           gtk/gtkwidget.c:
642         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
643         not GTK_WIDGET_GET_ANCESTOR ... see 
644         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
645         Indicate the best practice in the docs for gtk_widget_get_toplevel().
646
647         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
648         so GtkPlug can give the correct signals when transforming
649         from a child to a toplevel.
650         
651         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
652         reparentation correctly.
653
654         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
655         Propagate the previous_toplevel argument down properly.
656
657         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
658         of wrong atr list.
659
660         * gtk/gtkplug.[ch]: Add an "embedded" signal.
661
662         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
663         signals.
664
665         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
666         functions gtk_plug_get_id(), gtk_socket_get_id(),
667         to avoid the user having to worry about realization,
668         and gdkx.h.
669
670         * tests/testsocket.c: Extend to try out the new signals
671         and gtk_plug/socket_get_id().
672
673         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
674         setting of underline attributes.
675
676         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
677         DestroyNotify events from SubstructureNotifyMask
678
679         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
680         Switch GDK_WINDOW_TYPE (window) as needed.
681
682         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
683         allow creation of toplevel windows as children of
684         foreign windows.
685
686         * gtk/gtkplug.c: Remove hacks involving changing private
687         fields of GdkWindow.
688
689         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
690         exactly the same signals and notification
691         be emitted for local embedding as for inter-process
692         embedding.
693
694 2001-07-04  James Henstridge  <james@daa.com.au>
695
696         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
697
698 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
699
700         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
701         XEMBED embedding add a _XEMBED_INFO property to the
702         client with version number and a "mapped" flags.
703         Use the mapped flag instead of the racy MapRequestEvent
704
705         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
706         code to reliably set things (when the child is a passive
707         embedder participating in the XEMBED protocol) intead
708         of just being a hack for embedding non-participating
709         programs. Fix various bugs and race conditions.
710         
711         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
712         work by simply making the GtkSocket the gtk parent
713         of the GtkPlug. Set a flag in this case and make
714         the GtkPlug work like a normal container by overriding
715         methods such as check_resize and "chaining past" GtkWindow
716         to GtkBin.
717
718         * gtk/gtkentry.c (gtk_entry_real_activate)
719           gtk/gtkmain.c (gtk_propagate_event): 
720         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
721         
722         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
723         gtk_widget_get_ancestor):
724         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
725         might not give the expected result and recommend
726         an alternative.
727
728         * tests/testsocket.c tests/testsocket_child.c
729         tests/testsocket_common.c tests/Makefile.am: Extended
730         to test different type of adding plugs to sockets
731         (local,active,passive), and to test mapping/unmapping
732         the plug.
733
734         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
735         mark the window as destroyed until after we
736         called _gdk_windowing_window_destroy().
737         (_gdk_windowing_window_destroy() may use GDK functions
738         on the window.)
739
740         * gdk/x11/gdkinput.c: Remove the check for finalization - 
741         devices can be finalized under some circumnstances.
742  
743         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
744         small problem with GDK_TYPE_DEVICE.
745  
746 2001-07-02  Havoc Pennington  <hp@pobox.com>
747
748         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
749         use constants not atoms.
750
751 2001-07-02  James Henstridge  <james@daa.com.au>
752
753         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
754         PANGO_TYPE_TAB_ARRAY.
755
756         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
757         for PANGO_TYPE_TAB_ARRAY.
758
759         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
760         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
761
762         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
763         the file.  Remove Pango types from defs -- they are now defined in
764         libpango.
765
766 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
767
768         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
769
770         * gtk/gtkobject.c (gtk_object_destroy): invoke
771         g_object_run_dispose().
772
773         * gtk/gtkwindow.c: 
774         * gtk/gtkwidget.c: 
775         * gtk/gtkobject.c:
776         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
777         method.
778
779 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
780
781         * gtk/gtktypeutils.c (gtk_type_class): Remove
782         change check for GTK_TYPE_OBJECT derivation to
783         G_TYPE_OBJECTS - it's Tim-approved to use this 
784         for arbitary objects.
785
786         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
787         prefix gtk_container_dequeue_resize_handler().
788
789         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
790         to the hierarachy_changed signal, since you otherwise
791         have to always keep that around.
792
793         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
794         for extra argument to hierarchy_changed.
795
796 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
797
798         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
799         for style to mean "revert to default style"
800
801         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
802           gtk_widget_restore_default_style): Make this functions
803         deprecated aliases for gtk_widget_set_style (widget, NULL).
804
805         * gtk/gtkwidget.[ch]: Remove:
806            gtk_widget_set_default_style ()
807            gtk_widget_push_style ()
808            gtk_widget_pop_style ()
809         These functions interact are overriden by RC files, and
810         thus virtually useless, and complicated.
811
812 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
813
814         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
815         most of the previous global variables in gtkrc.c. This is
816         in preparation for multi-head, since each screen can
817         have different GtkSettings and RC information.
818
819         * gtk/gtkrc.[ch]: 
820
821         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
822         GtkSettings parameter to GtkRcStyle::parse.
823
824         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
825         Add two new settings gtk-theme-name, gtk-key-theme-name,
826         for RC files that are loaded by name after reading
827         the default RC files.
828         
829         * gtk/gtkrc.c: Allow priorities for styles, as wll as
830         bindings.
831
832         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
833         and use it by default for RC files loaded via 
834         gtk-theme-name, gtk-key-theme-name.
835
836         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
837         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
838         tests/testgtkrc: Require pathnames to be absolute.
839
840         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
841         the source when parsing, since the operation of looking up a
842         pixmap from an RC file depends on the parsing context.
843
844         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
845         reset RC styles on all widgets when files are reparsed.
846
847         * tests/testgtk.c (create_rc_file) 
848           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
849         Simplify, now that gtk_rc_reparse_all() resets styles on
850         all widgets itself.
851
852         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
853         return value.
854
855         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
856         GtkSettings argument.
857
858         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
859         gtk_settings_get_global().
860
861         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
862         to get the appropriate GtkSettings for a widget. (For now,
863         just gets the default GtkSetttings.) 
864
865         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
866           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
867         changes.
868
869         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
870         getting a style for a path without actually having a widget.
871         (Allows using a style for a subpart of a widget, for
872         example.)
873
874         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
875         the RC files to be reloaded for just one GtkSettings
876         (not sure how useful this really is.)
877
878         * gtk/gtkrc.h: Deprecate
879         gtk_rc_add_widget_name/widget_class/class_style
880
881 2001-06-30  Alex Larsson  <alexl@redhat.com>
882
883         * gdk/linux-fb/gdkinput-none.c:
884         * gdk/linux-fb/gdkinput.c:
885         * gdk/linux-fb/gdkinputprivate.h:
886         Convert GdkDevice to a GObject.
887
888         * linux-fb/gdkprivate-fb.h:
889         * linux-fb/gdkvisual-fb.c:
890         Convert GdkVisual to a GObject.
891
892 2001-06-29  Alex Larsson  <alexl@redhat.com>
893
894         * gdk/gdkvisual.h:
895         * gdk/gdkcolor.c:
896         * gdk/x11/gdkx.h:
897         * gdk/x11/gdkvisual-x11.c:
898         Convert GdkVisual to a GObject.
899
900         * gdk/gdkinput.h:
901         * gdk/gdkevents.c:
902         * gdk/x11/gdkinputprivate.h:
903         * gdk/x11/gdkinput-gxi.c:
904         * gdk/x11/gdkinput-none.c:
905         * gdk/x11/gdkinput-x11.c:
906         * gdk/x11/gdkinput-xfree.c:
907         * gdk/x11/gdkinput.c:
908         Convert GdkDevice to a GObject.
909
910 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
911
912         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
913         to just plain new, fixing the number of columns, and column types
914         at creation time.
915
916         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
917
918         * gtk/gtkcellrenderertext.c
919         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
920         height to a specific font.
921
922         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
923
924         * tests/*c: change to work with new store models.
925
926 2001-06-29  Havoc Pennington  <hp@redhat.com>
927
928        * Throughout: fixes to compile with G_DISABLE_COMPAT
929         (s/g_signal_connectc/g_signal_connect/,
930         s/g_signal_newc/g_signal_new/,
931         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
932
933 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
934
935         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
936         add path argument to selection callbacks.
937
938 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
939
940         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
941         walk through a model in a depth first manner, with the option to
942         break out.
943
944 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
945
946         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
947         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
948         column and follow it when draged, rather than a location in the
949         view. "expander_column" property and drawing functions changed
950         accordingly.  Fixes bug #55942.
951
952         (gtk_tree_view_{set,get}_expander_column): Now works with a
953         GtkTreeViewColumn* instead of int.
954
955 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
956
957         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
958
959 2001-06-28  Havoc Pennington  <hp@pobox.com>
960
961         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
962         image data to the screen, using a server grab to avoid race
963         conditions.
964
965         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
966         check for NULL return from gtk_image_new_from_stock(), it never
967         returns NULL.
968         (gtk_item_factory_create_item): fix bug where we parsed the stock
969         ID as an inline pixbuf
970
971         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
972
973         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
974         support (should be using binding set here)
975
976         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
977         support (should be using binding set here)
978
979         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
980         support
981
982         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
983
984         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
985
986         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
987
988         * gtk/gtkimcontextsimple.c
989         (gtk_im_context_simple_filter_keypress): keypad
990
991         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
992
993         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
994
995         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
996
997         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
998         should be binding-setted)
999
1000         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
1001
1002         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
1003
1004         * gtk/gtkcalendar.c: numeric keypad fixes
1005
1006         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
1007         support
1008
1009         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
1010         screwup
1011
1012         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
1013         clip the render area to the drawable's clip region in advance,
1014         so we don't get data from the server that we don't need.
1015
1016         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1017         check return value of gdk_pixbuf_get_from_drawable(), fall back 
1018         to bilevel alpha if we can't get the pixbuf to composite against.
1019
1020         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
1021
1022         * gdk/gdkimage.c (gdk_image_get_colormap): add
1023         gdk_image_set_colormap, gdk_image_get_colormap
1024
1025         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
1026         take a region of the image, instead of converting the entire
1027         image.
1028
1029         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
1030         keybinding signal. Add default bindings for it. Add default
1031         handler for show_help that shows the tooltip for the widget.
1032
1033         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
1034         "close" keybinding signal, remove key press handler.
1035
1036         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
1037         it's not our usual practice to leave a deprecated function around
1038         with a runtime warning, plus we don't want it to appear in docs,
1039         plus if we make them yellow no one will want to change them
1040         anyhow.
1041
1042 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
1043
1044         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
1045         GTK_WIDGET_REALIZE() for resize queueing.
1046
1047         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
1048         GTK_WIDGET_REALIZE() for post event delivery destruction upon
1049         GDK_DESTROY.
1050         
1051         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
1052         sompensate for former (pre-2.0) connect_after() facility.
1053         (gtk_widget_send_expose): 
1054         (gtk_widget_event): assert the widget is realized, since event delivery
1055         to non-realized widgets is essentially a bug. event handlers should
1056         be able to unconditionally rely on widget->window (unless they
1057         emit events on their own which can trigger widget destruction).
1058         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
1059         logic. event delivery happens as follows:
1060         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
1061         b) if !was_handled in (a) and the widget is still realized, emit event-
1062            specific signal (RUN_LAST handler). returns was_handled.
1063         c) emission of GtkWidget::event-after for notification if the widget is
1064            still realized (regardless of was_handled from previous stages, no
1065            class handler). no return value.
1066         d) was_handled gets passed on to caller, to determine further
1067            propagation. if the widget got unrealized meanwhile, was_handled
1068            is returned as TRUE.
1069
1070         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
1071         gdk_event_get_coords().
1072
1073 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
1074
1075         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
1076         age 0, binary age 0. depend on glib 1.3.7.
1077
1078         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
1079
1080         * gtk/gtkmenubar.c: same here.
1081         
1082         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
1083
1084         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
1085
1086         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
1087         
1088         * gtk/gtkmenubar.c (add_to_window): likewise.
1089         
1090         * gtk/gtktextbtree.c: and here...
1091         
1092         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
1093         
1094         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
1095         
1096         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
1097         
1098         * gtk/gtktreeviewcolumn.c:
1099         (_gtk_tree_view_column_set_tree_view): yet again.
1100
1101         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
1102         signal connections without g_signal_connect_data().
1103         
1104         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
1105         demo of the matter.
1106         
1107         * demos/testpixbuf.c (main): running out of equality phrases for the
1108         ChangeLog, but had to adapt connections here as well.
1109         
1110         * demos/testanimation.c (progressive_timeout): and for the fun of it,
1111         tackled this the same way.
1112         
1113         * tests/testtext.c (create_view): ok, it's becoming a pain at this
1114         point, but had enough enery for one more fix.
1115
1116         * tests/testtreecolumns.c (main): stand up man, do your work!
1117
1118         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
1119         fix, either that's been all of it or CVS gtk is broken yet again.
1120         
1121 2001-06-29  James Henstridge  <james@daa.com.au>
1122
1123         The following changes correspond to bug #56812
1124
1125         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
1126         code for GdkDevice.
1127
1128         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
1129         GdkCursor.
1130
1131 2001-06-19  Havoc Pennington  <hp@pobox.com>
1132
1133         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
1134         for mapping a window without fooling with stacking order, but
1135         updating the "withdrawn" flag
1136
1137         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
1138         filtering as soon as possible, moving move resize and wmspec_check
1139         handling after the event filter.  Make default filter apply to all
1140         events, not just those with no GdkWindow wrapped around the X
1141         window. Fix a FIXME about how the window could be a pixmap using 
1142         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
1143
1144         Also, be robust against events not on a known GdkWindow.
1145
1146         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
1147         gdk_x11_ungrab_server): export reference-counted server grabs, so
1148         other people can grab server over a GDK function that also does
1149         so.
1150
1151 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
1152
1153         * gtk/gtktreeviewcolumn.c
1154         (gtk_tree_view_column_pack_start_cell_renderer): New function to
1155         reflect that you can (hypothetically) pack cell renderers into a
1156         column.
1157         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
1158         (gtk_tree_view_column_cell_is_visible): Move more functionality to
1159         the column.
1160         (gtk_tree_view_column_cell_can_focus): Move more functionality to
1161         the column.
1162
1163         * gtk/gtktreeview.c: Move to use new column-packing code.
1164         (gtk_tree_view_real_expand_row): remove totally braindead code.
1165         (gtk_tree_view_real_collapse_row): ditto.
1166
1167 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1168
1169         * gtk/gtktreeviewcolumn.c: Fix a typo.
1170         
1171 2001-06-26  Joel Becker  <jlbec@evilplan.org>
1172
1173         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
1174           at the end of the file
1175
1176 2001-06-26  Havoc Pennington  <hp@redhat.com>
1177
1178         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
1179
1180 2001-06-26  Havoc Pennington  <hp@redhat.com>
1181
1182         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
1183         property
1184
1185 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
1186
1187         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
1188         stupid missing statement
1189
1190         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
1191         private function for ATK.  It notifies you of how many _visible_
1192         children are deleted when a node is deleted.  Should be used by
1193         atk only.
1194
1195 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
1196
1197         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
1198         Use new pango_context_get_metrics() to fix problems
1199         with font lists in descriptions. (#56184, reported by
1200         Jonas Borgström)
1201
1202 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
1203
1204         * gtk/gtkiconfactory.c:
1205         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
1206         item factory so inlined pixbufs actually work.
1207
1208 2001-06-25  Havoc Pennington  <hp@redhat.com>
1209
1210         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
1211         s/RESIZEABLE/RESIZABLE/
1212
1213         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
1214
1215 2001-06-25  Alexander Larsson  <alexl@redhat.com>
1216
1217         * configure.in:
1218         Added --enable-fbmanager. This is some experimental code
1219         that lets several GtkFB apps coordinate their access to the
1220         framebuffer.
1221         
1222         * acconfig.h:
1223         Added ENABLE_FB_MANAGER.
1224
1225         * gdk/linux-fb/Makefile.am:
1226         Added gdkfbmanager and gdkfbswitch.
1227
1228         * gdk/linux-fb/gdkkeyboard-fb.c:
1229         * gdk/linux-fb/gdkmouse-fb.c:
1230         * gdk/linux-fb/gdkprivate-fb.h:
1231         Split device init and open so that
1232         they can be opened and closed while switched
1233         away.
1234
1235         * gdk/linux-fb/gdkmain-fb.c:
1236         Add the basic manager communication.
1237
1238         * gdk/linux-fb/gdkrender-fb.c:
1239         Don't update to the shadow fb if we're
1240         blocked by the fb manager.
1241
1242 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1243
1244         * docs/Changes-2.0.txt: Add note about child property
1245         changes.
1246
1247 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
1248
1249         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
1250         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
1251
1252         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
1253         with un'reffing wrong list reported by Jeff Franks.
1254
1255         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
1256
1257         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
1258         for the default icon. Remove inline XPM.
1259
1260         * gtk/gtkstock.h gtk/gtkiconfactory.c:
1261         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
1262         is used for GTK_STOCK_DND, but it is a bit too small.)
1263
1264         * gtk/stock-icons/stock_dnd_multiple.png
1265         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
1266
1267         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
1268         TRUE when starting a drag. In other cases, we are
1269         just observing. (#52995)
1270
1271         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
1272         function to set the icon for a drag from a GdkPixbuf
1273         or stock ID.
1274
1275         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
1276         Likewise, for drag sources.
1277
1278         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
1279         (Now should be done using the stock system.)
1280
1281 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
1282
1283         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
1284         Removed - didn't work and not particularly useful anyways
1285         if it did. 
1286
1287 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
1288
1289         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
1290         introduced last night that was making things decidedly not work.
1291
1292         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
1293         so that we have getter/setter pairing everywhere it makes
1294         sense. (#55767)
1295
1296         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
1297         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
1298         deprecated compat macro. (#55516)
1299
1300         * gtk/gtklabel.[ch]: Add functions
1301         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
1302         gtk_label_set_label(), which mirror the property API for GtkLabel.
1303         Make gtk_label_get_attributes() only reflect the attributes
1304         set by gtk_label_set_attributes.
1305
1306         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
1307         from gtk_notebook_set_page().
1308
1309 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
1310
1311         * configure.in: Fix tests for XShm.h.
1312
1313         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
1314         gdk_image_new() by use of goto, properly use g_object_unref().
1315
1316 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
1317
1318         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
1319         calls, as GdkImage is an object. these should be g_obejct_unref()
1320         instead but that won't work because of the g_error() statement
1321         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
1322         to spot these places.
1323
1324 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
1325
1326         * modules/input/gtkimcontextxim.c: Fixup some problems with 
1327         text length handling in error cases.
1328
1329         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
1330         a bit to make test actually warn on attempt to allocation
1331         a negative size. (#56101, Matthias Clasen)
1332
1333 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
1334
1335         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1336         noticed by Brian Cameron.
1337         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
1338         Cameron.
1339
1340 2001-06-22  Hans Breuer  <hans@breuer.org>
1341
1342         * gdk/gdk.def : updated externals
1343
1344         * gdk/win32/gdkdrawable-win32.c : corrected some casts
1345         in GDK_NOTEs
1346
1347         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
1348         to translate coordinates to the internal > 16 bit system
1349         Try to handle WM_WINDOWPOSCHANGED to get better performance for
1350         when moving/resizing
1351
1352         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
1353         and gdk_keymap_get_direction (). The latter is untested for
1354         the RTL case
1355
1356         * gtk/gtk.def : updated externals
1357
1358         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
1359         from pango_language_from_string (), not an already freed pointer
1360
1361         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
1362         binary (-kb) to be useable on windoze
1363  
1364 2001-06-21  Alexander Larsson  <alexl@redhat.com>
1365
1366         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
1367         Update to new PangoLanguage changes.
1368         
1369         * gtk/gtkwindow-decorate.c:
1370         * gtk/gtkwindow.[ch]:
1371         Added setting argument to gtk_window_set_has_frame ()
1372         
1373 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
1374
1375         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
1376         the case without XKB properly.
1377
1378         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
1379         unused gtk_rc_auto_parse variable.
1380
1381         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
1382         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
1383         longer needed with GdkPixbuf.
1384
1385         * gtk/gtkrc.c (_gtk_rc_init): Make private.
1386
1387 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
1388
1389         * gtk/gtkentry.h: Mark deprecated functions with
1390         GTK_DISABLE_DEPRECATED.
1391
1392 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1393
1394         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
1395
1396         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
1397
1398         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
1399           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
1400           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
1401           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
1402           to recent changes in Pango.
1403
1404         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
1405           to test whether the basic engine honors them.
1406
1407 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
1408
1409         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
1410         gtk_container_child_get_property().
1411
1412 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
1413
1414         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
1415         (gtk_tree_view_move_cursor_page_up_down): implement.
1416
1417 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
1418
1419         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
1420         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
1421         don't use automatic fixed size buffer for printf-ing floats, doubles
1422         can expand to really _huge_ strings, use g_strdup_printf() instead.
1423
1424 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
1425
1426         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
1427         construct property in 1.2 and still needs to be.
1428
1429         * gtk/gtkwidget.c: "composite_child" is not a settable property.
1430
1431 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
1432
1433         * gtk/gtkliststore.c (gtk_list_store_clear): 
1434         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
1435         clear a model.
1436
1437 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1438
1439         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
1440
1441         * gtk/Makefile.am:
1442         * gtk/gtk.h: disabled GtkPacker compilation.
1443
1444         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
1445
1446         * gtk/gtknotebook.c:
1447         * gtk/gtktable.c:
1448         * gtk/gtkbox.c: ported this over to child properties.
1449
1450         * gtk/gtksettings.c: fetch class properties via
1451         g_object_class_list_properties().
1452
1453         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
1454         child arg interface. use gobjectnotifyqueue.c for child property
1455         notification.
1456
1457         * gtk/gtkwidget.[hc]: provide necessary means for container child
1458         properties, i.e. ::child_notify signal,
1459         gtk_widget_freeze_child_notify(),
1460         gtk_widget_child_notify(),
1461         gtk_widget_thaw_child_notify().
1462
1463         * tests/testgtk.c: removed inferior property handling code, for
1464         property editing, a generic module should be used, and GLE
1465         coincidentally fullfills that purpose.
1466
1467         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
1468         needs to be adapted to g_object_class_list_properties() before this
1469         builds again.
1470
1471 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
1472
1473         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
1474         test if a node is expanded.
1475
1476 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
1477
1478         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1479         where collapsing a selected row would result in the cursor/anchor
1480         getting screwed up.
1481
1482 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1483
1484         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
1485         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
1486         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
1487         Now I can really reorder/sort all Store widgets.  treesorttest
1488         seems to just work now.
1489         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
1490         testtreesort worked through a big coincidence all this time.
1491         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
1492         code.
1493         * tests/testtreecolumns.c: Big 'ol warning at the top letting
1494         people know that this code should never ever ever be copied.
1495
1496 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
1497
1498         * gtk/gtkwindow.h: Fixed a small typo, it should be
1499         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
1500         on line 134.
1501
1502 2001-06-14  Havoc Pennington  <hp@redhat.com>
1503
1504         Docs fixups, and:
1505         
1506         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
1507         GTK_DISABLE_DEPRECATED
1508
1509 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
1510
1511         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
1512         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
1513         finish it off tonight, though it basically works now when it's a
1514         list.  Also, I have a sinking feeling neither GtkTreeStore or
1515         GtkListStore actually resort when adding a new item.  I'll look
1516         into it.
1517
1518 2001-06-14  Havoc Pennington  <hp@redhat.com>
1519
1520         * demos/gtk-demo/main.c (load_file): fix bug identified by
1521         warnings I just added to gtktextbuffer
1522
1523 2001-06-14  Havoc Pennington  <hp@redhat.com>
1524
1525         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1526
1527         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1528
1529         * gtk/gtktextbtree.c: don't leak node data all over the place.
1530
1531         * demos/gtk-demo/main.c (main): create fontify tags for the right
1532         buffer
1533
1534         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1535         to mention tags in the same table can't have the same name,
1536         suggested by Skip Montanaro
1537
1538 2001-06-11  Havoc Pennington  <hp@redhat.com>
1539
1540         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1541         for trying to add two tags with same name to the tag table
1542
1543         * demos/gtk-demo/main.c (main): fix colors ;-)
1544
1545 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1546
1547         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1548         that allows grouping together multiple windows so that grabs
1549         within that set of windows only affect those windows.
1550
1551         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1552         signal for notification when a widget becomes shadowed
1553         by a grab or is no longer shadowed by a grab.
1554
1555         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1556           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1557         insenstive widgets to maintain a grab.
1558
1559 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1560
1561         * docs/README.linux-fb:
1562         Add some example config files that can be used with the URW fonts.
1563         
1564         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1565         Set up the color ramps for DirectColor mode.
1566
1567 2001-06-11  Havoc Pennington  <hp@redhat.com>
1568
1569         * Release 1.3.6
1570          
1571 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1572
1573         * gdk/linux-fb/gdkwindow-fb.c:
1574         Unify shaped window code and make it repaint the area that used
1575         to be part of the shape, but isn't anymore.
1576
1577 2001-06-11  Havoc Pennington  <hp@redhat.com>
1578
1579         * NEWS: Updates
1580
1581         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1582
1583         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1584         
1585 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1586
1587         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1588         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1589         passes zero instead, so do we.
1590         
1591 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1592
1593         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1594         Deep copy dash_list too.
1595         (_gdk_fb_gc_new): Set default cap_style before
1596         setting values.
1597
1598 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1599
1600         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1601         gdk_keymap_get_direction): New functions.
1602
1603 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1604
1605         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1606         gtk_tree_model_get_flags by adding a second flag for atk.
1607
1608         * gtk/gtktreemodel.c: make cursor behavior interact better with
1609         mouse presses.
1610
1611 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1612
1613         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1614         expand_row/collapse_row to be 2 signals each -- test_expand_row
1615         and row_expanded as well as test_collapse_row and row_collapsed.
1616
1617 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1618
1619         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1620         signal name to be changed instead of selection_changed.
1621
1622 2001-06-08  Havoc Pennington  <hp@redhat.com>
1623
1624         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1625         "scroll_offset" property for notification when the layout offsets
1626         may have changed
1627         (gtk_entry_adjust_scroll): add notify for scroll_offset
1628         (gtk_entry_layout_index_to_text_index): function to compensate for
1629         preedit string when doing coordinate stuff on the entry's layout
1630         (gtk_entry_text_index_to_layout_index): inverse function
1631         (gtk_entry_get_layout_offsets): hook to get current position of
1632         the layout      
1633         (gtk_entry_get_layout): hook to get the layout itself.
1634
1635         * gtk/gtklabel.c (gtk_label_get_layout): new function
1636
1637 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1638
1639         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1640         keybinding.
1641         (gtk_tree_view_focus): Fix merge conflict.
1642
1643 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1644
1645         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1646         clean up cursor handling.
1647
1648 2001-06-08  Havoc Pennington  <hp@redhat.com>
1649
1650         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1651         function
1652
1653         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1654         this function
1655
1656 2001-06-08  Alex Larsson  <alexl@redhat.com>
1657
1658         * gtk/gtkcompat.h.in:
1659         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1660         Fixes bug #52892
1661
1662 2001-06-08  Havoc Pennington  <hp@redhat.com>
1663         
1664         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
1665         parent still
1666
1667 2001-06-08  Havoc Pennington  <hp@redhat.com>
1668
1669         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
1670         don't call g_list funcs on GSList
1671
1672         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
1673         gtk_container_focus(), since some widgets have focusable locations
1674         which are not other widgets. These widgets should not have to be 
1675         containers just to manage the focus. For example, GtkHSV is
1676         currently a container for no good reason. Also, this cleans
1677         up the "if (is_container && is_sensitive && is_drawable)
1678         container_focus ()" mess in widget implementations.
1679
1680         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
1681         function, and have it just call gtk_widget_child_focus().
1682
1683         * gtk/gtkhsv.c: derive from widget not container
1684         
1685         Throughout: fix to reflect GtkContainer::focus change
1686         
1687 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
1688
1689         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
1690         range.  Fix bug #55921
1691
1692         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
1693         (#55920).
1694
1695 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
1696
1697         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
1698         and gdk_keymap_get_current_direction().
1699
1700         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
1701           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
1702         the current locked group, use it to set the keymap
1703         direction.
1704
1705         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
1706         to determine whether we draw a split cursor or use
1707         a jumping cursor based on the current direction.
1708
1709         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
1710         Obey the split cursor setting. 
1711
1712 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
1713
1714         * gtk/gtkimmulticontext.c (activate_cb): Only activate
1715         when toggling on, not when toggling off... (#55906)
1716
1717 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
1718
1719         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
1720         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
1721         in docs. (#55812, Vitaly Tishkov)
1722
1723 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
1724
1725         * demos/gtk-demo/main.c (create_tree): Changed signal name from
1726         selection_changed to changed in signal connection to GtkTreeSelection,
1727         also used g_signal_connectc since GtkTreeSelection is now a GObject.
1728
1729 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
1730
1731         * gtk/gtktreeselection.c: Now it's a GObject instead of a
1732         GtkObject.  The GtkTreeSelection::selection_changed signal is now
1733         the GtkTreeSelection::changed signal.
1734
1735         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
1736         object.
1737
1738         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
1739         object.
1740
1741 2001-06-07  Havoc Pennington  <hp@redhat.com>
1742
1743         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
1744
1745 2001-06-07  Havoc Pennington  <hp@redhat.com>
1746         
1747         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
1748         (not tested yet because with absolute path to srcdir I can't build
1749         atk, but it was broken anyway so this may help) 
1750
1751 2001-06-07  Havoc Pennington  <hp@redhat.com>
1752
1753         * configure.in: output m4macros/Makefile
1754         
1755 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
1756
1757         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
1758         buttons.  Fixes #55460 reported by matthiasc@poet.de.
1759
1760 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
1761
1762         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
1763         expansion/collapsing so it only happens in one place.
1764         (gtk_tree_view_real_expand_row): ditto.
1765
1766 2001-06-07  Havoc Pennington  <hp@redhat.com>
1767
1768         * tests/Makefile.am: add missing -I flag
1769
1770         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
1771
1772         * configure.in: use pkg-config to see if GModule is
1773         supported; fix to properly turn on included loaders 
1774         when GModule isn't supported; don't use AC_CHECK_LIB 
1775         when libs are not installed yet
1776
1777         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
1778
1779         * Makefile.am (SUBDIRS): add m4macros subdir
1780
1781         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
1782         dependencies also.
1783
1784 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
1785
1786         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
1787         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
1788
1789 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
1790
1791         * gtk/gtktreeview.c
1792         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
1793         bindings to expand and collapse rows.
1794         (gtk_tree_view_real_select_cursor_parent): New key binding.
1795         (gtk_tree_view_real_toggle_cursor_row): New key binding.
1796
1797         * gtk/gtkmarshal.list: new
1798         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
1799
1800 2001-06-06  Havoc Pennington  <hp@redhat.com>
1801
1802         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
1803
1804         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
1805         Down to move visually rather than logically, since it confuses 
1806         people. Add -/+ and Ctrl--/+ bindings for logical movement.
1807
1808 2001-06-06  Alex Larsson  <alexl@redhat.com>
1809
1810         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
1811         Fix up error messages.
1812
1813 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
1814
1815         * gtk/gtktooltips.h: Include gtkwidget.h 
1816         (#55798, Karl Nelson)
1817
1818         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
1819         a valid latin-1 character. (Marc Lehmann, #35467)
1820
1821         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
1822         (Marc Lehmann, #35467)
1823         
1824 2001-06-05  Alex Larsson  <alexl@redhat.com>
1825
1826         * demos/gtk-demo/appwindow.c (do_appwindow):
1827         Don't swap the order of the args to gtk_widget_destroyed.
1828
1829         * tests/testgtk.c (destroy_properties):
1830         Don't crash when the properties window is destroyed.
1831
1832         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
1833         Use with_mnemonics to handle the case of stock items with
1834         underscores in them.
1835
1836 2001-06-05  Havoc Pennington  <hp@redhat.com>
1837
1838         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
1839         gtk_text_iter_reorder
1840
1841 2001-06-05  Havoc Pennington  <hp@redhat.com>
1842
1843         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
1844
1845 2001-06-05  Havoc Pennington  <hp@redhat.com>
1846
1847         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
1848         to the range that was set
1849
1850         * gtk/gtkrange.c: add value_changed signal, primarily 
1851         intended for use with GtkScale
1852         (gtk_range_set_increments): new function
1853         (gtk_range_set_range): new function with weird name
1854         (gtk_range_set_value): new function
1855         (gtk_range_get_value): new function
1856
1857         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
1858         from gtk_spin_button_get_value_as_float(). Compat #define
1859         added for get_value_as_float.
1860
1861         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
1862
1863         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
1864
1865 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
1866
1867         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
1868
1869 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
1870
1871         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
1872
1873         * tests/testgtk.c (create_tooltips): Remove usage of
1874         gtk_widget_set().
1875
1876 2001-06-05  Havoc Pennington  <hp@redhat.com>
1877
1878         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
1879
1880         Applying patch from Jeff Franks, with function docs added.
1881         
1882         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
1883         remove call to set_mnemonic_widget, change docs a bit.  
1884
1885         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
1886         new function
1887
1888         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
1889         new function
1890
1891         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
1892
1893         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
1894         function
1895         (gtk_radio_button_new_with_mnemonic_from_widget): new function
1896
1897         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
1898         new function
1899
1900         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
1901         function        
1902
1903         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
1904         auto-selection of mnemonic widget.
1905
1906 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
1907
1908         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
1909         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
1910         (gtk_tree_view_column_set_min_width): ditto.
1911
1912 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
1913
1914         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
1915         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
1916
1917 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
1918
1919         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
1920         gtk_clist_thaw().
1921
1922 2001-06-04  Havoc Pennington  <hp@pobox.com>
1923
1924         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
1925         releases for buttons 6, 7
1926
1927 2001-06-04  Havoc Pennington  <hp@redhat.com>
1928
1929         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
1930         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
1931         #55562
1932
1933 2001-06-04  Havoc Pennington  <hp@redhat.com>
1934
1935         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
1936         where text_view->layout == NULL by assuming its size is 0, 
1937         i.e. same as if we haven't done any reflow. Reported by 
1938         Hidetoshi Tajima #55448 
1939
1940 2001-06-04  Havoc Pennington  <hp@redhat.com>
1941
1942         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
1943         and 7 for scroll left/right, from Thomas Broyer
1944
1945 2001-05-10  Havoc Pennington  <hp@redhat.com>
1946
1947         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
1948         we need to parse the xsetting as if it were an RC file string.
1949
1950         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
1951         value of palette from settings, not from static variable
1952
1953         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
1954         xsettings translation table
1955
1956         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
1957         hardcoding the toolbar style conflicts with new customizable 
1958         toolbar style philosophy
1959         (gtk_toolbar_class_init): add settings for default toolbar style;
1960         these are used unless the app specifically forces a toolbar style
1961
1962         * gtk/gtksettings.c (settings_install_property_parser): only
1963         return at the start if we warn and parser == NULL
1964
1965         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
1966         palette changed handler so we don't notify dead color selections
1967
1968         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
1969         xthickness/ythickness of 0 or 1 properly 
1970         (gtk_default_draw_resize_grip): clear the background behind the
1971         resize grips, and align to bottom right if we square the 
1972         area to be drawn.
1973
1974         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
1975         statusbar label to 1, so it doesn't make toplevels resize oddly
1976         (gtk_statusbar_size_request): add grip size to request
1977         (gtk_statusbar_size_allocate): hack so the hbox still works with 
1978         the grip size in the request
1979
1980         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
1981         bug where showing all on a toplevel makes the toolbar 
1982         button text appear despite the toolbar mode
1983
1984         * gtk/gtkmenubar.c: add internal padding style property
1985
1986         * gtk/gtktoolbar.c: Add internal padding style property; add
1987         shadow type style property
1988
1989         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
1990         state; and put Container::border_width outside the frame
1991
1992         * gtk/gtktextview.c: don't draw focus rectangle if we're in
1993         interior focus mode, we just use blinking cursor
1994
1995 2001-06-04  Havoc Pennington  <hp@redhat.com>
1996
1997         * configure.in: Make gdk-pixbuf have same version number as GTK
1998
1999 2001-06-04  Havoc Pennington  <hp@redhat.com>
2000
2001         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
2002         digits greater than 6. If there actually are limits (which there
2003         likely aren't), should clamp to them not warn.
2004         (gtk_spin_button_new_with_range): don't take log of 0
2005         (gtk_spin_button_size_request): use digits to compute size
2006         request, rather than step increment.
2007
2008         * tests/testgtk.c (create_spins): test larger values of digits
2009         
2010         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
2011         font on map not expose, so we don't get weirdness during scrolling
2012
2013 2001-06-04  Havoc Pennington  <hp@redhat.com>
2014
2015         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
2016         Sam Solon, bug #54577, update value even if not drawable.
2017
2018 2001-06-04  Havoc Pennington  <hp@redhat.com>
2019
2020         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
2021         SCROLL_LEFT, reported by Thomas Broyer.
2022
2023 2001-06-04  Havoc Pennington  <hp@redhat.com>
2024
2025         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
2026         Process updates immediately, to prevent funny lag effect
2027         when scrolling, at some mild potential efficiency cost.
2028
2029 2001-06-04  Havoc Pennington  <hp@redhat.com>
2030
2031         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
2032         slider on the click.
2033
2034 2001-06-03  Havoc Pennington  <hp@pobox.com>
2035
2036         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
2037         hscale/vscale details, so we can use it for scrollbar as well.
2038
2039         * tests/testgtk.c (reformat_value): honor digits from GtkScale
2040
2041         * gtk/gtkenums.h (GtkTroughType): Remove this enum
2042         (GtkScrollType): add START and END from GtkTroughType
2043
2044         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
2045         its x/y arguments
2046
2047         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
2048         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
2049         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
2050         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
2051         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
2052
2053         Notable changes in the process:
2054          
2055         - stepper_size style property is the height for vertical 
2056           ranges, width for horizontal; the other dimension matches
2057           the trough size
2058         - add ability to do NeXT-style steppers (and several other styles
2059           that don't make any sense)
2060         - added min_slider_length, fixed_slider_length properties to
2061           GtkScrollbar
2062         - cleaned some private (or at least useless) functions out of
2063           gtkscale.h    
2064         - moved bindings to GtkScale from subclasses, even arrow keys,
2065           since blind users don't know scale orientation.
2066         - change move_slider action signal to use new GtkScrollType,
2067           remove GtkTroughType argument
2068         - digits rounds the values a range will input to the given 
2069           number of decimals, but will not try to force adjustment 
2070           values set by other controllers. That is, we no longer
2071           modify adjustment->value inside a value_changed handler.
2072         - added getters for GtkScale setters
2073         - middle-click begins a slider drag
2074         
2075 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
2076
2077         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
2078         getting the focus code to work.
2079         (gtk_tree_view_class_init): Add a bunch of keybindings.
2080
2081         * gtk/gtktreeviewcolumn.c
2082         (gtk_tree_view_column_set_cell_data_func):
2083         s/GtkCellDataFunc/GtkTreeCellDataFunc.
2084         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
2085         of "properties_changed" to help justify the death of the latter
2086         signal. (-:
2087
2088         * tests/testtreefocus.c (main): Let some columns be focussable to
2089         test focus better.
2090
2091 2001-06-01  Havoc Pennington  <hp@redhat.com>
2092
2093         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
2094         
2095         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
2096         overwrite in overwrite mode if we already deleted the selection
2097         and replaced it with new text.  
2098
2099         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
2100         selection to an empty range, clear the clipboard if we owned it.
2101         (gtk_label_set_selectable): give up selection if we become
2102         unselectable.
2103         (gtk_label_state_changed): override state changed to unselect text
2104         when insensitive
2105         (get_text_callback): add paranoia check that indexes aren't
2106         outside of label->text
2107         (gtk_label_select_region): make -1 for start_offset mean "end of
2108         label," for consistency with GtkEditable
2109
2110         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
2111         GTK_DIALOG_NO_SEPARATOR flag
2112
2113 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
2114
2115         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
2116         notifications on non-existant "enable_arrow_keys".
2117         (#53753, Skip Montanaro)
2118
2119 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
2122         GDK_TYPE_RECTANGLE.
2123
2124         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
2125         of allocation argument be GDK_TYPE_RECTANGLE.
2126
2127 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
2128
2129         * gtk/gtkoptionmenu.c: Account for the fact that the border
2130         width is _outside_ the window. (Fixes #54585, bug found
2131         by Bastien Nocera.)
2132
2133 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
2134
2135         * gtk/gtksettings.c (gtk_settings_get_property): Validate
2136         value from GDK settings against parameter spec.
2137
2138         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
2139         to temporary values and use g_value_transform(), since
2140         thinking that GValue was going to be easy or efficient
2141         to use was, of course, a mistake.
2142
2143         * gtk/gtksettings.c: Add cursor blink setting.
2144         
2145         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
2146
2147         * gtk/gtkentry.c: Add cursor blinking.
2148
2149         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
2150         cursor blink global settings.
2151
2152         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
2153         for :text_position in places where it is missing.
2154
2155 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
2156
2157         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
2158
2159 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
2160
2161         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
2162         not pkg-config. (#51032)
2163
2164         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
2165         (fixes #51952, James Henstridge)
2166         
2167 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
2168
2169         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
2170         Rename to the more correct gtk-go-up.
2171
2172         * gtk/stock-icons/stock_menu_sort_ascending.png:
2173         Added new file.
2174         
2175         * gtk/stock-icons/stock_menu_sort_descending.png:
2176         Changed to show descending instead of ascending.
2177
2178         * gtk/gtkiconfactory.c:
2179         Added menu size icon to sort ascending.
2180
2181         * gtk/stock-icons/Makefile.am:
2182         Added stock_menu_sort_ascending.png.
2183         
2184         * gtk/gtkseparatormenuitem.c:
2185         Use correct typenames.
2186
2187 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
2188
2189         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
2190         gulong as in GSignal.
2191
2192 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
2193
2194         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
2195         instances of GtkCellRenderer in code (all but dnd icon code).
2196         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
2197         there, and I can do multiple Cells per column.
2198
2199         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
2200
2201         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
2202         when model was unreffed prior to removing the row reference.
2203
2204 2001-05-25  Havoc Pennington  <hp@redhat.com>
2205
2206         * gtk/gtkiconfactory.c: fix so that default icons are created if 
2207         you call gtk_stock_list_ids()
2208
2209         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
2210         in list
2211
2212 2001-05-25  Havoc Pennington  <hp@redhat.com>
2213
2214         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
2215         set can render without falling back to missing image icon
2216
2217         * gtk/gtktextview.c (gtk_text_view_size_request): request full
2218         size of text, instead of random values
2219
2220         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
2221         size of tree view, instead of random values
2222
2223         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
2224         image in an appropriate size
2225
2226         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
2227         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
2228
2229         Throughout: fix GTK_STOCK_BUTTON_ instances
2230         
2231         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
2232         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
2233         Add a bunch of new stock items/icons
2234
2235         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
2236         new function, convenience for inserting columns with a data func
2237
2238         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
2239         (_gtk_icon_factory_list_ids): use list of all factories to
2240         generate a list of all known IDs
2241
2242         * gtk/gtkstock.c (gtk_stock_list_ids): replace
2243         gtk_stock_list_items() with a function that returns all IDs known
2244         including those for GtkIconFactory.
2245
2246 2001-05-25  Hans Breuer  <hans@breuer.org>
2247
2248         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
2249         work -> check boxes and radio buttons are drawn now, even on win9x.
2250         Improved line settings a bit, still no clue how to get really dotted
2251         lines on win9x, on NT it's PS_ALTERNATE.
2252
2253         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
2254         GDK_HINT_MIN_SIZE as well
2255
2256         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
2257
2258         * gtk/gtk.def : updated
2259
2260         * gtk/gtktreeprivate.h : change column_drop_func to be a function
2261         pointer not a function pointer pointer
2262
2263         * tests/testdnd.c : include <stdlib.h> for putenv prototype
2264
2265         * tests/testsocket.c : made it compile on win32 again
2266
2267         * tests/makefile.msc : one more test-app uses prop-editor.obj
2268
2269 2001-05-22  Havoc Pennington  <hp@pobox.com>
2270
2271         * gtk/gtkbin.c (gtk_bin_get_child): New function
2272
2273 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
2274
2275         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
2276         to ignore when doing compose processing.
2277
2278 2001-05-22  Joe Shaw  <joe@ximian.com>
2279
2280         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
2281         Simplify as suggested by Havoc. Just get the last iter and work
2282         backward to the tag instead of getting a line and working back from
2283         there. Fixes passing in an invalid offset to
2284         iter_init_from_byte_offset().
2285
2286 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
2287
2288         * gtk/gtktreeview*.h: 
2289         * gtk/gtkcell*.h:
2290         * gtk/gtk*store.h:
2291         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
2292         macros to all objects.
2293
2294 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
2295
2296         * gtk/gtkcellrenderertext.c
2297         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
2298         with very large (TM) amounts of text.  May be moved to
2299         GtkCellRenderer in the future, though I'm not sure it wants to be
2300         this accessible.
2301
2302         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
2303         More sanity brought to this class.  I like it.
2304
2305         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
2306         case.  Kids, don't try this at home.
2307
2308         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
2309         convenience function.
2310
2311         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
2312
2313 2001-05-21  Alexander Larsson  <alexl@redhat.com>
2314
2315         * gtk/gtkfontsel.c:
2316         Added properties. Based on patch by Lee Mallabone.
2317
2318         * gtk/gtkruler.c:
2319         * gtk/gtkhruler.c:
2320         * gtk/gtkvruler.c:
2321         * gtk/gtktext.c:
2322         * gtk/gtktextview.c:
2323         Converted GtkArg to GParam. Based on patches by John Margaglione.
2324
2325         * tests/Makefile.am:
2326         * tests/testtext.c:
2327         Add a property editor to testtext.
2328         
2329 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
2330
2331         * gtk/gtk{h,v,}paned.c: Only show the separator if 
2332
2333         * configure.in: Fixed reversed conditional causing all image
2334         libraries to be linked in.
2335
2336 2001-05-21  Joe Shaw  <joe@ximian.com>
2337
2338         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
2339         that top_y needs to be >= 0.
2340
2341 2001-05-11  Havoc Pennington  <hp@pobox.com>
2342         
2343         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
2344         losing connection to the X server.
2345
2346 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
2347
2348         * configure.in: Start checks for X from pangox/pangoxft
2349         CFLAGS to avoid duplicate libraries.
2350
2351         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
2352
2353         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
2354         to include gobject.
2355         
2356 2001-05-18  Alexander Larsson  <alexl@redhat.com>
2357
2358         * gtk/gtkspinbutton.c:
2359         Convert GtkArgs to GParams. Based on patch by John Margaglione.
2360         Also do size request reasonable for MAXDOUBLE. Previously it printed
2361         the limits to a buffer and overran it. Instead do it using log10() and
2362         limit the width to 10 digits.
2363         
2364         * gtk/gtkwidget.c (gtk_widget_get_property):
2365         Correctly handle setting the parent property to NULL.
2366
2367 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
2368
2369         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
2370         style attributes even if the widget isn't realized.
2371
2372         * demos/gtk-demo/main.c: Use a slightly smaller font.
2373
2374 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
2375
2376         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
2377         This is something that only a widget writer would ever want
2378         to change.
2379
2380         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
2381         gtk_signal_emit_by_name().
2382
2383         * gtk/gtkviewport.c: Fix some warnings.
2384
2385         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
2386         allowing the requisitions of multiple widgets to be grouped
2387         together.
2388
2389         * tests/testgtk.c: Add GtkSizeGroup test
2390
2391         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
2392
2393         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
2394         warnings.
2395
2396         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2397
2398 2001-04-28  Martin Baulig  <baulig@suse.de>
2399
2400         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
2401         to gtk_image_menu_item_set_icon() and made it work if there's already
2402         an image.
2403         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
2404         (gtk_image_menu_item_new_with_label): New function.
2405
2406 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
2407
2408         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
2409         highlighting code!!!!  The result is okay so long as you don't try
2410         to stress it.  It also highlights a bug in the TextView so it's in
2411         an unproportional font right now until it's fixed.
2412
2413         *demos/gtk-demo/*.c: Clean up code a bit to make it
2414         ugly-parser(TM) friendly. (-:
2415
2416 2001-05-17  Joe Shaw  <joe@ximian.com>
2417
2418         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
2419         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
2420         if it is only partially onscreen.
2421
2422 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
2423
2424         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
2425         not by characters.
2426
2427         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
2428         are not zero or one; that is, when graphemes of multiple characters
2429         are involved.
2430
2431         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
2432         FIXME.
2433
2434 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
2435         
2436         * gtk/gtkbbox.c:
2437         Add properties, based on patch by Lee Mallabone.
2438
2439         * gtk/gtknotebook.c:
2440         * gtk/gtktoolbar.c:
2441         Convert from GtkArg to GParam, based on patch by John Margaglione.
2442         
2443         * gtk/gtkhscale.c:
2444         * gtk/gtkvscale.c:
2445         * gtk/gtkhscrollbar.c:
2446         * gtk/gtkvscrollbar.c:
2447         * gtk/gtkrange.c:
2448         Move adjustment property to GtkRange.
2449
2450         * gtk/gtklabel.c:
2451         Setup mnemonics on property changes
2452
2453         * gtk/gtkwidget.c (gtk_widget_get_property):
2454         GdkExtensionMode is an enum, not a flag. Set it with
2455         g_value_set_enum ().
2456
2457         * tests/prop-editor.c:
2458         Better propery editor.
2459
2460         * tests/testgtk.c:
2461         Add new property test. Pass zero to the property editor to
2462         get properties from all derived types.
2463         
2464 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
2465
2466         * autogen.sh (have_automake): Require libtool-1.4,
2467         automake-1.4p1.
2468
2469         * acinclude.m4: Remove libtool macros.
2470
2471         * gdk-pixbuf/Makefile.am: Add dependencies to loade
2472         modules.
2473
2474         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
2475         for libgdk.
2476
2477         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
2478         libgdk.la for libgtk.
2479
2480         * modules/input/Makefile.am: Make modules have full
2481         dependencies.
2482
2483 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
2484
2485         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
2486         #54699 where paths weren't being checked for correctness.
2487
2488 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2489
2490         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
2491         in any order you wan, whether or not the column is added to the
2492         tree, or the tree is realized.  Yay!
2493
2494         * gtk/gtktreeviewcolumn.c
2495         (gtk_tree_view_column_setup_sort_column_id_callback): handle
2496         sorting columns a lot saner
2497
2498         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
2499         new function to actually set wether or not a column is
2500         reorderable.
2501
2502         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
2503         if we have 'em.
2504
2505         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
2506         Fix nasty bug where we were showing the button just before
2507         realizing it.  As a result, the parent window was
2508         tree_view->window instead of tree_view->priv->header_window.
2509
2510         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
2511         to let you easily reorder a list or tree.
2512
2513 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
2514
2515         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
2516         from args to properties.
2517
2518 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
2519
2520         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
2521         from args to properties. (#51957)
2522
2523         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2524         calls to after ->set_property call.
2525
2526 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2527
2528         * tests/prop-editor.c: Block against redundant changes.
2529
2530         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2531         properties.
2532
2533 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2534
2535         * gdk/gdkpixmap.h: Remove creative formatting.
2536
2537 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2538
2539         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2540         property API. (#51669)
2541
2542         * gtk/gtkscale.c: Patch from John Margaglione converting to
2543         property API. (#51891)
2544
2545         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2546         to property API. (#50985)
2547
2548 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2549
2550         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2551         buffering state across expose event, so we still call end_paint().
2552
2553 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2554
2555         * gtk/gtkhsv.c (paint_triangle):
2556         Expose the ring in the triangle at the correct place when
2557         exposing just a part of the triangle.
2558
2559         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2560         Return FALSE, or window focusing will not work.
2561
2562 2001-05-11  Havoc Pennington  <hp@pobox.com>
2563
2564         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2565         #54144
2566
2567         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2568         bug #54330
2569
2570 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2571
2572         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2573         propagate exposes to NULL child.
2574
2575         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2576         against not having one of the scrollbars.
2577
2578         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2579         we don't keep a mnemonic window if we have no mnemonic installed.
2580
2581 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2582
2583         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2584         it has the _important_ side effect of initializing a class.
2585
2586 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2587
2588         * gdk/linux-fb/gdkprivate-fb.h:
2589         Make sure you can compile out the implementation/wrapper assert
2590         macros.
2591
2592         * gdk/linux-fb/gdkdrawable-fb2.c:
2593         Check implementation/wrappers, initialize type for pixmap dummys.
2594
2595         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2596         Hide the cursor if reading from the screen.
2597
2598         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2599         Fix sign bug in tiling code.
2600
2601         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2602         Handle background pixmaps.
2603
2604 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2605
2606         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2607         function to let user control where columns are dragged.
2608
2609         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2610         Escape is pressed.
2611
2612 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2613
2614         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2615         "columns_changed" signal.
2616         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2617         motion code to draw arrows to the side if indicator is outside the
2618         widget.
2619         (gtk_tree_view_map_expanded_rows): Implement.
2620
2621 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2622
2623         * demos/testpixbuf-save.c: 
2624         * demos/testpixbuf-drawable.c:
2625         Include gdkfb.h on linux-fb.
2626
2627 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2628
2629         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2630         New function for getting toplevel window at position.
2631         (gdk_drag_find_window): Use get_toplevel_window () instead
2632         of gdk_window_get_pointer(). (gdk_drag_status): Use
2633         correct context for getting window.
2634
2635         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2636         g_strdup the atom name.
2637
2638         * gdk/linux-fb/gdkwindow-fb.c:
2639         Costmetic fix.
2640
2641         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2642         Add code for changing cursor on linux-fb backend (same as
2643         win32).
2644
2645 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2646
2647         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2648         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2649         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2650         report was not for the development branch of GTK+, but it applies
2651         anyways).
2652
2653 2001-05-04  Havoc Pennington  <hp@redhat.com>
2654
2655         * configure.in: fix some shell typos
2656
2657         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2658
2659         * gtk/gtkimage.c: handle animations
2660
2661         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2662         border_width * 2, not just border_width
2663
2664         * gtk/gtkscale.c: add "format_value" signal to allow people
2665         to override the way values are drawn.
2666         (gtk_scale_get_value_size): fix width/height mistake,
2667         and compute size from actual displayed text, not 
2668         from made-up text.
2669
2670         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
2671         signal registration
2672
2673         * tests/testtext.c: Add "Remove all tags" menu item for testing
2674
2675         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
2676
2677         * demos/gtk-demo/main.c (main): add hack so we can find modules
2678         without installing gtk
2679
2680         * demos/gtk-demo/textview.c (insert_text): demo font scaling
2681
2682         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
2683         factor)
2684         (gtk_cell_renderer_text_set_property): remove some bogus
2685         g_object_notify
2686
2687         * gtk/gtktexttag.c: add "scale" property which is a font scaling
2688         factor
2689
2690         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
2691         to layout
2692
2693         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
2694         gtk_text_iter_is_first
2695
2696 2001-01-06  Hans Breuer  <hans@breuer.org>
2697
2698         * gdk/gdk.def : updated exports
2699
2700         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
2701         gdk won't compile anymore
2702  
2703         * gdk/win32/gdkevents-win32.c : initialize ret_val when
2704         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
2705         Improved gdk_flush () to not only do pending drawing operations
2706         but also process all currently pending events. This should make
2707         the behaviour more similar to the X11 version.  
2708
2709         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
2710         option needs to be set even if there is no GDK_GC_BACKGROUND.
2711         (gdk_win32_hdc_get) : use predraw_set_background () independent
2712         of value_mask. This allows to draw dashed lines leaving the original
2713         background intact.
2714
2715         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
2716         after processing, because we can't reuse it as the X11 version does.
2717
2718         * gtk/gtk.def : updated exports
2719
2720         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
2721         would like to get rid of this file again, and use straight
2722         makefile.msc again, as the other Gtk+ subdirs do)
2723
2724         * test/makefile.msc (new file) : build the test apps here
2725
2726 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
2727
2728         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
2729         strike-through setting
2730         (gdk_draw_layout_line_with_colors): Render strike-through
2731
2732 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
2733
2734         * Release 1.3.5
2735
2736         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
2737
2738         * NEWS: Updated
2739
2740         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
2741         Makefile breakage.
2742
2743 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
2744
2745         * demos/gtk-demo/images.c (progressive_timeout): Fix
2746         typo in filename.
2747
2748         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
2749         out FIXME warning; just too annoying.
2750
2751 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
2752
2753         * gdk/linux-fb/gdkcolor-fb.c:
2754         Better error messages.
2755
2756         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
2757         Initialize abs_x and abs_y.
2758         
2759         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2760         Correct handling of stipple offset.
2761
2762         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
2763         Treat directcolor framebuffers as truecolor.
2764         
2765 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
2766
2767         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
2768         dependency on Atk for accessibility support.
2769
2770         * configure.in **/Makefile.am: Major reworking of substituted
2771         variables for CFLAGS/LIBS to make a lot more sane and 
2772         keep the the compile/link lines a bit shorter.
2773
2774         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
2775
2776 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
2777
2778         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
2779         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
2780         use _gtk_boolean_handled_accumulator.
2781
2782 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2783
2784         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
2785         to fix things so clicking inside selection leaves cursor
2786         at point where clicked. (#50324)
2787
2788         * gtk/gtksettings.c (gtk_settings_class_init): Restore
2789         sane value for default double click time.
2790
2791         * tests/testtext.c (test_init): Really path to input modules.
2792
2793 2001-05-03  Sven Neumann  <sven@convergence.de>
2794
2795         * demos/testpixbuf-save.c: include target-specific headers as
2796         done in testpixbuf-drawable.c
2797
2798 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
2799
2800         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
2801         new_text_length appropriately when we run into the 
2802         size limit for the entry. (#53445, reported by Jeff Franks)
2803
2804         * tests/testgtk.c (create_entry): Remove most of the
2805         property toggle buttons. Replace with a "Props" button
2806         that brings up a property editor.
2807
2808         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
2809         Split the property editor code out for reuse, improve.
2810
2811 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
2812
2813         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
2814         trap errors around calls to XSetInputFocus since we have
2815         no way of knowing reliably whether we are viewable or
2816         not. (#53947)
2817
2818 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
2819
2820         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2821         fix bug in dropping columns.  Moving columns now basically works
2822         modula some fine tuning.
2823
2824 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
2825
2826         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
2827         autoscroll support.  It mostly works, but could use some fine
2828         tuning.
2829         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
2830         Actually move the column.
2831
2832 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
2833
2834         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
2835           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
2836           New default theme! A slighly improved version of the 2.0 Raleigh
2837           theme, with Windows-esque focus/drawing default. 
2838           (GtkWidget::interior_focus defaults to TRUE.)
2839
2840         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
2841
2842 2001-04-30  Havoc Pennington  <hp@pobox.com>
2843
2844         * tests/testtext.c (line_numbers_expose): fix to work with
2845         gtk_paint_layout change
2846
2847 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2848
2849         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
2850           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
2851           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
2852           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
2853
2854         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
2855           with GtkWidget::interior_focus = TRUE better.
2856
2857         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
2858         ::default_outside_border for more flexibility.
2859
2860         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
2861         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
2862         change that had to be made with g_object_get.
2863
2864 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
2865
2866         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
2867         (gtk_tree_view_move_column_after): Clean up interface. 
2868
2869 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
2870
2871         * gtk/gtkpacker.h:
2872         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
2873          to gtkenum.h.
2874
2875         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
2876         handled in switch).
2877
2878         * gtk/Makefile.am:
2879         (gtk.defs): generate enum portions with  glib-mkenums.
2880         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
2881         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
2882         
2883         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
2884         addition.
2885
2886         * docs/Changes-2.0.txt: keep a note on signal handlers now
2887         not getting emitted during the emission they were connected within.
2888
2889 2001-04-28  Havoc Pennington  <hp@pobox.com>
2890
2891         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
2892
2893 2001-04-24  Havoc Pennington  <hp@redhat.com>
2894
2895         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
2896         (gtk_text_layout_move_iter_to_next_line): fix these two for
2897         invisible text, lots of other stuff still hosed.
2898
2899         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
2900         new function, replaces the get/set palette stuff. This function 
2901         is intended for use by libgnomeui which should set the hook to a
2902         thing which sets the palette in GConf, and we need the
2903         GConf-to-xsettings proxy which will result in the change being
2904         propagated back to the GTK app.
2905
2906         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
2907         about unusable signals that it may be because the signal has 
2908         parameters.
2909
2910         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
2911         style, otherwise gtkrc.c won't know to create a new GtkStyle for
2912         it.
2913         (gtk_widget_modify_color_component): call
2914         gtk_widget_modify_style() so the rc style will get copied.
2915         (gtk_widget_modify_font): ditto
2916
2917         * gtk/gtkrc.c: make a couple variables static
2918
2919         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
2920         help button by default, since it does nothing
2921
2922         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
2923         around with UI
2924
2925         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
2926         so we can have tooltips
2927
2928         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
2929         can have tooltips
2930
2931         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
2932         GDK_ENABLE_BROKEN, because its memory behavior is completely
2933         hosed.
2934
2935         * gtk/gtknotebook.c: remove key press handler, replace with
2936         binding set, add numeric keypad support
2937
2938         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
2939
2940         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
2941
2942         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
2943         addition to plain Delete
2944
2945         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
2946         GDK_KP_Enter in addition to GDK_Return
2947
2948         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
2949         activate on entry instead of key press
2950         (gtk_font_selection_on_clist_key_press): get
2951         rid of this signal handler, not needed with new font sel.
2952
2953         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
2954         no-longer-needed emit_stop_by_name(), just return TRUE
2955
2956         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
2957         cruft, this widget is no longer focusable.
2958
2959         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
2960         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
2961         move_slider action signal, add binding set for vscale/hscale, in
2962         the process support numeric keypad
2963
2964         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
2965         make GDK_Return and GDK_KP_Enter activate the entry via 
2966         binding set, instead of hardcoded.
2967
2968 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
2969
2970         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
2971         code.  Some documentation added.
2972
2973 2001-04-27  Havoc Pennington  <hp@redhat.com>
2974
2975         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
2976
2977         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
2978
2979         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
2980         line/para separators
2981         (gtk_entry_create_layout): set single paragraph mode on the layout
2982
2983         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
2984         spacing between the image and label; instead, inside a button box 
2985         the button will get extra space that will go there, but if people 
2986         configure button box for 0 chubbiness, then there's no spacing.
2987
2988         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
2989         and min/max size style properties, so people can tune their
2990         chubbiness.
2991
2992         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
2993         functions
2994
2995         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
2996         space_style, and button_relief into style properties, remove
2997         functions for setting them
2998         
2999         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
3000         it back down
3001
3002         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
3003         types from gtk_widget_style_get
3004
3005         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
3006         with a style property.
3007
3008         * gdk/x11/gdkevents-x11.c: namespace the settings
3009
3010         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
3011
3012         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
3013         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
3014         be used. Also, translate doc strings for settings. Also, namespace
3015         the double-click-time property. Also, remove bell properties crap.
3016
3017 2001-04-27  Sven Neumann  <sven@gimp.org>
3018
3019         * Makefile.am: before creating links, check if pkg-config files
3020         exist for the default target. Otherwise link to the pkg-config files
3021         that got installed with this build.
3022
3023 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
3024
3025         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
3026         dragging code.  Revealed some (potential) GdkWindow bugs.
3027
3028         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
3029         _gdk_window_init_position to the end of reparent to fix the case
3030         of reparenting when new_x != old_x and new_y != old_y.
3031
3032 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
3033
3034         * gtk/gtkentry.c (strstr_len): Fix optimization that
3035         was correct for the use here, but completely incorrect
3036         in general.
3037
3038 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
3039
3040         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
3041         until patch adding gtk_window_set_size() is recommitted. 
3042
3043         * **Makefile.am configure.in gdk/x11/gdkim-11.c
3044           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
3045           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
3046           (#10784)
3047
3048 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
3049
3050         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
3051         window == NULL in a number of cases.
3052
3053         * tests/testdnd.c: Set module path for gdk-pixbuf.
3054
3055 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
3056
3057         * gtk/Makefile.am xembed.h: File containing #defines
3058         for XEMBED protocol.
3059
3060         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
3061
3062         - Change protocol from old plug/socket specific protocol
3063           to XEMBED draft
3064         - Various fixes to work with GTK+-2.0
3065
3066         Still quite a bit of work to do here to handle initiation
3067         from the socket side (as specified by XEMBED), to handle
3068         the more advanced features of XEMBED, and to figure out
3069         a good way to handle same-app embedding with less overhead
3070         than using full XEMBED.
3071
3072 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
3073
3074         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
3075         track of whether the toplevel has the focus; only send
3076         focus-in events to the focus widget when the window
3077         actually has the focus.
3078
3079 2001-04-25  Havoc Pennington  <hp@pobox.com>
3080
3081         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
3082         were still in the header
3083
3084 2001-04-24  Alexander Larsson  <alexl@redhat.com>
3085
3086         * gtk/gtkclist.[ch]:
3087         * gtk/gtkctree.c:
3088         When there is a row highlighted for D'n'D it must alse
3089         be painted hightlighted on exposes. Otherwise exposes from
3090         the icon being dragged will mess up the hightlight.
3091
3092         * gtk/gtkfontsel.c:
3093         Don't recenter selected font when exposing the font family
3094         clist. This means you can now actually scroll the font family
3095         list.
3096
3097         * gtk/gtknotebook.c:
3098         Fix focus movement on scrolling tabs that are placed on the left
3099         and right.
3100
3101 2001-04-21  Havoc Pennington  <hp@pobox.com>
3102
3103         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
3104         empty/invisible lines.
3105
3106         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
3107         (gtk_text_iter_set_visible_line_index): new functions to set
3108         indexes excluding invisible text
3109
3110         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
3111         index
3112
3113         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
3114         (gtk_text_iter_get_visible_line_offset): new functions to 
3115         get indexes excluding invisible text
3116
3117         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
3118         bunch of extra padding that served no purpose
3119
3120         * gtk/gtkdialog.c: Make all the spacings configurable via style
3121         properties, for chubbiness configuration in themes
3122
3123         * tests/testtext.c: fix path to the immodules.
3124         
3125 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
3126
3127         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
3128         got munched by #endif.
3129
3130         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
3131
3132         * gtk/gtktreeview.c: Refactored code to clean up a number of
3133         events.
3134
3135         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
3136         values to make consistent with other functions.  Spotted by Jeff
3137         Franks <jcf@tpg.com.au>.
3138
3139         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
3140         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
3141
3142 2001-04-23  Sven Neumann  <sven@gimp.org>
3143
3144         * gtk/Makefile.am
3145         * gtk/gtkplug.c
3146         * gtk/gtksocket.c: on request of Owen, reverted my last change 
3147         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
3148
3149 2001-04-23  Sven Neumann  <sven@gimp.org>
3150
3151         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
3152         compile for non-X11 targets again
3153
3154 2001-04-20  Alexander Larsson  <alexl@redhat.com>
3155
3156         * gtk/gtkcolorsel.[ch]:
3157         API Change. Take GdkColor arguments instead of gdouble *.
3158         Leave the old gtk_color_selection_set_color for compatibility,
3159         but marked deprecated.
3160         Do correct rounding when converting RGB <-> HSV.
3161         
3162         * gtk/gtkcolorseldialog.c:
3163         * tests/testgtk.c:
3164         Use new GtkColorSelection API.
3165
3166         * gtk/gtkhsv.c:
3167         Fix problem selecting colors in triangle when Hue is 330.
3168         Fix some black dots around the HSB triangle.
3169         
3170         * gtk/gtkfilesel.c:
3171         return FALSE from the focus_in_event handler to fix focus problems.
3172
3173 2001-04-18  Havoc Pennington  <hp@redhat.com>
3174
3175         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
3176         set, so keybindings are configurable    
3177         (gtk_window_activate_default): Change to activate the focus widget
3178         instead if there's a focus widget, to be consistent with the
3179         behavior that previously existed in key_press_event
3180
3181 2001-04-18  Havoc Pennington  <hp@redhat.com>
3182
3183         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
3184
3185 2001-04-18  Havoc Pennington  <hp@redhat.com>
3186
3187         Close bug #50615:
3188         
3189         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
3190         the layout
3191
3192         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
3193
3194         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
3195
3196         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
3197         
3198         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
3199         to blue for base, in addition to bg
3200         
3201 2001-04-18  Havoc Pennington  <hp@redhat.com>
3202
3203         * tests/testgtk.c (create_image): allow shrinking the image window
3204         to test that we clip to allocation.
3205
3206         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
3207         #9845
3208
3209         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
3210
3211 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
3212
3213         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
3214         mode on shm segments to 0600. We'll see who complains.
3215
3216         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
3217         _gdk_windowing_window_destroy() AFTER recursing through
3218         children.
3219
3220         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
3221         testsocket_child on X.
3222
3223         * tests/testsocket[_child].c: Fix uses of
3224         gtk_window_get_default_accel_group().
3225
3226         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
3227
3228         * gdk/gdkimage.c: (gdk_image_get):
3229         Deal with the possibility that XGetImage() might return NULL.
3230         Allocate the GdkImagePrivate structure only after XGetImage()
3231         succeeds in order not to dereference a NULL ximage pointer.  This
3232         prevents a core dump when XGetImage() fails - which is unlikely,
3233         but can happen due to race conditions accessing the geometries of
3234         drawables.  An x error will still be triggered, but the gdk image
3235         wrapper at least wont seg fault.
3236         
3237 2001-04-18  Havoc Pennington  <hp@redhat.com>
3238
3239         * gtk/gtkimage.c: fix to properly queue resizes when the image is
3240         set
3241
3242         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
3243         if the insertion point isn't editable
3244
3245         * demos/gtk-demo/images.c: Added a GtkImage demo
3246
3247         * demos/gtk-demo/drawingarea.c: drawing area demo
3248         
3249         * demos/gtk-demo/menus.c (create_menu): cleanups
3250
3251 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
3252
3253         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
3254           gdk/x11/gdkevents-x11.c: Introduce an extra child
3255         of toplevel windows that serves to hold the focus to
3256         avoid events being delivered to embedded windows.
3257
3258         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
3259         some extra variables to clean up code and reduce the
3260         number of casts.
3261
3262         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
3263         guint for 1 bit bit fields, not gboolean.
3264
3265 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
3266
3267         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
3268         not TRUE. (Fixes #52925)
3269
3270 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
3271
3272         * Released 1.3.4
3273
3274         * NEWS: Updated
3275
3276         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
3277         use GTK_TYPE_ENUM.
3278
3279 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
3280
3281         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3282
3283         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
3284         names to compatibility #defines so docs work.
3285
3286         * gtk/gtkenums.h: Remove GtkMenuFactoryType
3287
3288         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
3289
3290         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3291
3292         * tests/testgtkrc: No magenta cursors, please.
3293
3294         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
3295
3296         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
3297         
3298 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
3299
3300         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
3301         grabs, since they are no longer necessary.
3302
3303         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
3304         by signal_connect() and call gtk_button_pressed() rather
3305         than signal_connect_after().
3306
3307         * tests/testgtk.c: Restore radio menu items to combos 
3308         since they'll look OK with Raleigh, and it is easier
3309         than finishing the process of removing them that was
3310         started earlier.
3311
3312 2001-04-16  Hans Breuer  <hans@breuer.org>
3313
3314         * gdk/gdk.def :
3315         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
3316
3317         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
3318         we are interested in the functions return value not the function address
3319         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
3320
3321         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
3322
3323 2001-04-14  Hans Breuer  <hans@breuer.org>
3324
3325         * gdk/gdk.def :
3326         * gdk/makefile.msc : updated
3327
3328         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
3329         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
3330         (the testgtk::text backgound pixmap is drawn again)
3331         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
3332         Win32 Pango change
3333         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
3334
3335         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
3336         Not sure if the returned settings have the right unit, because I couldn't
3337         find any docs for the X version ...
3338
3339         * gtk/gtk.def :
3340         * gtk/makefile.msc.in : updated
3341
3342 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
3343
3344         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
3345         wording problems. (Compared to version from Johannes Stezenbach to
3346         check correctness.)
3347
3348 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
3349
3350         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
3351         this to compile.
3352
3353 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
3354
3355         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
3356         not pixbufpos.
3357
3358         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
3359
3360         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
3361         are unsigned insts, therefore use g_value_set_uint.
3362         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
3363
3364 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
3365
3366         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
3367
3368         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
3369         GTK_TYPE_STRING.
3370
3371         * gtk/gtktreeview.c: New functions to allow initial column
3372         dragging work.
3373
3374         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
3375
3376         * tests/testtreefocus.c: give dave some love.
3377
3378         * tests/testtreesort.c: Modify test to check really long samples.
3379
3380 2001-04-11  Alexander Larsson  <alexl@redhat.com>
3381
3382         * gtk-2.0.m4: Pass pkg-config options
3383         before the other args so it works even if
3384         POSIXLY_CORRECT is set.
3385
3386 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
3387
3388         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
3389         0, interface 0).
3390
3391 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
3392
3393         * gtk/gtkcalendar.c (gtk_calendar_button_press):
3394         check for action_func != NULL
3395
3396 2001-04-04  Sven Neumann  <sven@gimp.org>
3397
3398         * tests/testgtk.c (test_init): corrected path to gtk.immodules
3399
3400 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
3401
3402         * Released Gtk+-1.3.3.
3403
3404 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
3405
3406         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
3407
3408 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
3409
3410         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
3411         files to/from source dir. (if we don't stay in builddir, we
3412         can't reach make-inline-pixbuf.
3413
3414         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
3415         deps.
3416
3417         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
3418         ages 0).
3419
3420 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
3421
3422         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
3423         moved to the GtkTreeSortable interface.
3424
3425         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3426         Make more efficient (fixes #50262).
3427
3428 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
3429
3430         * NEWS: Updated.
3431
3432         * configure.in: Remove support for uninstalled glib.
3433
3434         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
3435         so as not to stop emission.
3436
3437         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3438         is no longer supported.
3439
3440         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
3441         into tests, change build order to build modules before
3442         gtk/.
3443
3444         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
3445         to here.
3446
3447 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
3448
3449         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
3450         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
3451         GPatternSpec. this is actually unlikely to cause breakage in
3452         third-party apps since except for gle, pretty much ever caller
3453         passes NULL here.
3454
3455         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
3456
3457         * *.c: use g_pattern_*() API.
3458
3459         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
3460
3461         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
3462         directions aren't passed in.
3463
3464         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
3465         functionality to be usable from gtkstyle.c as well, give precedence
3466         for conversion to user-supplied parsers.
3467         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
3468
3469         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
3470         _gtk_settings_parse_convert() for rcporperty value conversion.
3471
3472 2001-04-03  Alexander Larsson  <alexl@redhat.com>
3473
3474         * gdk/linux-fb/gdkevents-fb.c:
3475         Add empty gdk_setting_get().
3476
3477 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
3478
3479         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
3480         variable names.
3481         
3482         * gtk/makeenums.pl: touch this so enum files get remade.
3483
3484 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
3485
3486         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
3487         work again when not sorted.
3488
3489         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
3490         and "expand_row" signal, closing bug 52578.
3491
3492         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
3493         support.
3494
3495         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
3496         support.
3497
3498 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3499
3500         * gdk/gdkevents.h: Add GdkEventSetting event for notification
3501         of changes to system settings, gdk_setting_get() to retrieve
3502         a single system setting.
3503
3504         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
3505         to the draft XSETTINGS mechanism.
3506
3507         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
3508         XSETTINGS.
3509
3510         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
3511         of GDK settings changes to the GtkSettings object.
3512
3513         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
3514         double-click-timeout property to GDK.
3515
3516         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
3517         Define GDK boxed types here.
3518
3519         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
3520         gdk/gdkenumtypes.[ch] for enum definitions.
3521
3522         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3523         * gtk/gtk-boxed.defs: Comment out GDK types
3524         * gtk/gtktypeutils.h: Remove GDK types
3525         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3526
3527 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3528
3529         * Applied patch from Ron Steinke to add signal accumulators
3530         so that signals with the convention 'TRUE return means
3531         handled' stop emission on a TRUE return.
3532
3533         * gtk/gtkmain.[ch]: Add private accumulator 
3534         _gtk_boolean_handled_accumulator, used throughout GTK+.
3535         
3536         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3537
3538         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3539         
3540         * gtk/gtkwidget.c: Add accumulators for event signals,
3541         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3542         for ::mnemonic-activate.
3543
3544         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3545
3546 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3547
3548         * gtk/gtkwidget.c: Add missing include.
3549
3550 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3551
3552         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3553         marshaller.
3554
3555         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3556         "changed" signal to "range_changed".
3557
3558         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3559         removing a tree from one model would remove all trees from that
3560         model.
3561         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3562         changed signal instead.
3563
3564 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3565
3566         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3567         chaining up to parent impl, since we have a INPUT_ONLY
3568         window.
3569
3570         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3571         foreground color for the cursor.
3572
3573 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3574
3575         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3576         param spec when caching property values, since we unref it
3577         later when we free the style.
3578
3579         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3580         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3581
3582 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3583
3584         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3585         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3586         stupidity.
3587
3588 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3589
3590         [ First pass at adding style properties. Still needs some definite
3591         fine-tuning. ]
3592
3593         * gtk/gtkbutton.c: Add ::default_spacing style property.
3594          
3595         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3596         ::indicator_spacing style properties.
3597
3598         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3599         style properties.
3600
3601         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3602         rather than a normal property.
3603
3604         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3605         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3606
3607         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3608         Honor ::interior_focus.
3609         
3610         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3611         TRUE.
3612
3613         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3614         Add ::slider_width, ::trough_border, ::stepper_size,
3615         ::stepper_spacing style properties.
3616
3617         * gtk/gtkscale.[ch] Add ::slider-length style property.
3618
3619 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3620
3621         * gdk/linux-fb/gdkwindow-fb.c:
3622         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3623         warnings that were spewed on startup.
3624
3625         * gtk/gtkwindow-decorate.c:
3626         gtk_window_reposition -> _gtk_window_reposition
3627
3628 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3629
3630         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3631         Add boxed type for GtkRequistion. Use it for ::size-request.
3632
3633         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3634         Add a new GtkBorder structure useful for geometry properties
3635         for widgets. Add corresponding GTK_TYPE_BORDER.
3636         
3637         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3638         Support automatic parser selection like
3639         gtk_settings_install_property_parser().
3640
3641         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3642         functionality for use by gtk_widget_class_install_style_property.
3643         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3644
3645 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3646
3647         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3648         g_param_spec_unichar(). 
3649
3650 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3651
3652         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3653         _NET window managers.
3654
3655         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3656
3657 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3658
3659         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3660         bad needs to be nuked, not just deprecated.
3661
3662         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3663         gtk_widget_popup().
3664
3665         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
3666         
3667         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
3668         widget.
3669         
3670         * docs/Changes-2.0.txt: updates.
3671         
3672 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
3673
3674         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
3675         for (i = 0; i < 100; i ++)
3676           g_print ("I will confirm it compile before committing\n");
3677
3678 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
3679
3680         * gtk/gtktreestore.c: Initial work on implementing the
3681         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
3682
3683 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
3684
3685         * gtk/gtkwidget.c: fixed a bunch of notifications, added
3686         reference counts around emissions where the widget is used afterwards.
3687         added freeze/thaws around multiple properties being notified.
3688         (_gtk_widget_get_aux_info): cleanups.
3689         
3690         * gtk/gtksettings.c (gtk_settings_install_property): provide
3691         default parsing functions for gdkcolor, enums and flags.
3692
3693         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
3694         applied by owen.
3695         backed out gtk_window_get_location(), gtk_window_set_location(),
3696         gtk_window_get_size() and gtk_window_set_size(), these
3697         have to be sorted out wrg x/y/width/height/default_with/default_height
3698         properties.
3699         kept a flag in GtkWindowGeometryInfo to handle user
3700         resetting default sizes.
3701         cleaned up ZVT comments.
3702         bunch of assorted bug fixes, notification fixes.
3703         (_gtk_window_reposition): make this a really internal function.
3704         
3705         * gtk/testgtk.c: fixups.
3706         
3707 2001-03-31  Hans Breuer  <hans@breuer.org>
3708
3709         * config.h.win32.in : disable USE_MMX for msvc build cause
3710         the assembler doesn't fit and is out of my scope. Disable
3711         USE_GMODULE for msvc build as wel. The right way to share
3712         binaries on win32 would be to use libtiff.dll etc. To reduce
3713         installation hassles IMO it's better to include all fileformats
3714         builtin to gdk-pixbuf
3715
3716         * gdk-pixbuf/makefile.msc : new file
3717
3718         * gdk/gdk.def : updated
3719
3720         * gdk/win32/gdkevents-win32.c : don't erase the background if
3721         .no_bg is set. It improves the scrolling (e.g. of testgtk main
3722         buttons
3723         * gdk/win32/gdkgeometry-win32.c : added comment about the above
3724
3725         * gdk/win32/gdkwindow-win32.c : added three new functions like
3726         the X version. Only one is implemented, because the other two
3727         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
3728         be default behaviour on win32 anyway ...
3729
3730         * gtk/gtk.def : updated
3731
3732         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
3733         from where it was built and add an additional rule to automagically
3734         build gtkmarshal.[hc]
3735
3736         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
3737         before array access for the current entry isn't finished
3738
3739         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
3740         use g_return_val_if_fail
3741
3742         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
3743         for the static array, but let the compiler calculate it. It
3744         makes me wonder if gcc isn't capable to catch bugs like this ...
3745
3746 2001-03-31  James Henstridge  <james@daa.com.au>
3747
3748         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
3749         constant "-1" in the aux info structure.
3750
3751 2001-03-30  Alexander Larsson  <alexl@redhat.com>
3752
3753         * gtk/gtkbutton.c (gtk_button_get_property):
3754         * gtk/gtklabel.c:
3755         Remove leaks.
3756         
3757         * gtk/gtkcontainer.c:
3758         * gtk/gtkhscale.c:
3759         * gtk/gtkhscrollbar.c:
3760         * gtk/gtklayout.c:
3761         * gtk/gtkmisc.c:
3762         * gtk/gtkprogress.c:
3763         * gtk/gtkprogressbar.c:
3764         * gtk/gtkrange.c:
3765         * gtk/gtktable.c:
3766         * gtk/gtkviewport.c:
3767         * gtk/gtkvscale.c:
3768         * gtk/gtkvscrollbar.c:
3769         * gtk/gtkwidget.c:
3770         Property patches, based on patches from John Margaglione and Lee Mallabone.
3771
3772 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
3773
3774         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
3775         adjustment. Cleaned redundant preconditions (spin != NULL). Added
3776         inline API function docs.
3777         (gtk_spin_button_new_with_range): New convenience constructor.
3778         (gtk_spin_button_set_increments): New adjustment helper.
3779         (gtk_spin_button_set_range): New adjustment helper.
3780
3781         * gtk/testgtk.c : added test of the new convenince constructor and
3782         value_changed signals.
3783
3784 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
3785
3786         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
3787         listen to the reorder signal.
3788
3789 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
3790
3791         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
3792         to get the aux info structure fo the widget.
3793
3794         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
3795         above function.
3796
3797         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
3798
3799         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
3800         to get the size of the window manager frame, basically the same
3801         code that gdk_window_get_root_origin() had
3802         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
3803
3804         * gtk/gtkwindow.c (gtk_window_set_default_size): use
3805         gdk_window_resize() if the window is realized and resizeable
3806
3807         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
3808         typo so that setting gravity works
3809
3810         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
3811         allocation if auto_shrink is on, even if the default size
3812         has not changed.
3813
3814         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
3815         g_return_if_fail
3816
3817 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
3818
3819         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
3820         reordering/sorting work.  Now pretty much works.
3821
3822         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
3823         reorder mostly work.  Still need to get the parity correct.
3824
3825         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
3826         signal, so I can listen for the sort_column_changed signal so I
3827         can change my "sort_indicator" property.  Cool.
3828
3829 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
3830
3831         [ Patch from Havoc Pennington, hp@redhat.com ]
3832
3833         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
3834         Add functions gdk_window_begin_resize_drag/begin_move_drag
3835         to start resizing or moving a toplevel window. This
3836         is done either using the _NET_WM_MOVERESIZE protocol,
3837         or, if that isn't present, by emulation.
3838
3839         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
3840         to export the above to GTK+-land.
3841
3842         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
3843         
3844         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
3845         Move this function into gdkwindow, since we need it
3846         when implementing fallback resizing.
3847
3848         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
3849         Fix typo when setting gravity.
3850
3851         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
3852         Add an optional (but on by default) resize grip for resizing 
3853         the parent window.
3854
3855 01-03-29  Alexander Larsson  <alexl@redhat.com>
3856
3857         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
3858         Don't return TRUE from the event handler, that blocks all
3859         event signals on the tooltip widget. Now you can press buttons
3860         in toolbars again.
3861
3862 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
3863
3864         * gtk/testtext.c (create_buffer): Add missing NULL on
3865         valist.
3866
3867         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
3868         c-n-p problem with INCONSISTENT property.
3869
3870         [ Patch from Havoc Pennington  <hp@redhat.com> ]
3871
3872         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
3873         hook.
3874
3875         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
3876         signal as a hook for extending the default popup menu
3877
3878         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3879         use radio menu items for the input method menuitems
3880
3881         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
3882         inserted unicode from Ctrl-Shift-hex input method
3883
3884         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
3885         validatation here, already done at GtkTextBuffer level.
3886
3887         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
3888         popup_menu run action signal and Shift+F10 and Menu keybindings.
3889
3890         * gtk/gtkentry.c: implement a default handler for popup_menu
3891
3892         * gtk/gtktextview.c: implement a default handler for popup_menu
3893
3894         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
3895         from a key event
3896         
3897         * gtk/gtklabel.c: remove "trailer" cruft
3898
3899 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
3900
3901         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
3902         handle reordering of trees.  Seems to mostly work w/ the exception
3903         of the parity flag.
3904
3905         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
3906         signal.
3907
3908 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
3909
3910         * gtk/gtkwidget.h: c++ fixes.
3911
3912 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
3913
3914         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
3915         memory.
3916
3917 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
3918
3919         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
3920         Nils Barth fixing event return values. (#51041)
3921
3922         * gtk/gtkwidget.c: Fix some return values for default
3923         functions.
3924
3925         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
3926         return values for trough_keys functions.
3927
3928         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
3929         value for add_accelerator (shoudl have been a void
3930         return.)
3931
3932         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
3933         Fix return type of EVENT.
3934
3935         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
3936         signal return a boolean.
3937
3938 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
3939
3940         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
3941         reordered signal.
3942
3943         * tests/testtreesort.c (main): fix spelling.
3944
3945 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
3946
3947         * gtk/gtkliststore.c: More work on implementing sortable
3948         interface.
3949
3950 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
3951
3952         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
3953         reference the widgets in the resulting list. (#11821)
3954         This makes this consistent with gtk_container_children.
3955
3956         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
3957         uses of gtk_window_list_toplevels.
3958
3959 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
3960
3961         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
3962         a virtual function to set whether the IM context should use 
3963         the preedit string. (#51922)
3964         
3965 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
3966
3967         * gdk/gdkpango.h: Remove stale FIXME comment.
3968
3969 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
3970
3971         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
3972         Fixed bug that returned NULL if a filename was selected.
3973
3974 2001-03-24  Havoc Pennington  <hp@pobox.com>
3975
3976         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
3977         to contain the word "theme"
3978
3979 2001-03-24  Havoc Pennington  <hp@pobox.com>
3980
3981         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
3982         slower but finer-grained
3983         (gtk_hsv_focus): get initial focus on the ring or triangle 
3984         according to tab direction
3985
3986         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
3987
3988 2001-03-23  Havoc Pennington  <hp@pobox.com>
3989
3990         * gtk/gtkhsv.c: make this somewhat key-navigable
3991
3992         * gtk/gtkfontsel.c: mnemonics
3993
3994         * gtk/gtkgamma.c: mnemonics
3995
3996         * gtk/gtkcolorsel.c: add mnemonics to labels
3997
3998 2001-03-22  Havoc Pennington  <hp@pobox.com>
3999
4000         Applied big patch from Seth Lytle to fix event handler return
4001         values, slightly modified.
4002
4003         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
4004         handled.
4005         (gtk_calendar_key_press): return TRUE for GDK_space triggers
4006         select_day
4007
4008         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
4009         (gtk_clist_button_release): return TRUE if handled
4010
4011         * gtk/gtkcolorsel.c (mouse_release):
4012         (palette_activate): 
4013         (palette_press): 
4014         (palette_new): 
4015         (mouse_press): 
4016         (get_screen_color): 
4017         fixed return type (void to gboolean), return TRUE,
4018         added GTK_SIGNAL_FUNC cast
4019
4020         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
4021         (void to gboolean), and return TRUE
4022         (gtk_combo_button_release): changed return value to TRUE after
4023         gtk_grab_add on combo->popwin
4024
4025         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
4026         collapse or expand
4027
4028         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
4029         button/motion
4030
4031         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
4032         press/release and motion that trigger act
4033
4034         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
4035
4036         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
4037         for GDK_Return
4038         
4039         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
4040         (gtk_list_button_release): return TRUE if selection
4041
4042         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
4043         press
4044
4045         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
4046         (gtk_menu_shell_button_release): chain parent_menu_shell retval
4047
4048         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
4049         nothing triggered
4050         (gtk_notebook_button_release): return TRUE if we do anything
4051
4052         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
4053         (gtk_spin_button_button_release): return TRUE or chained retval
4054
4055         * gtk/gtktext.c (gtk_text_button_press): 
4056         (gtk_text_button_release): return TRUE
4057         (gtk_text_key_press): remove redundant retval code
4058         
4059         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
4060         and sensitive
4061         (gtk_tree_item_subtree_button_click): changed type to gint, and return
4062         TRUE if sensitive
4063
4064         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
4065         return TRUE
4066
4067 2001-03-23  Havoc Pennington  <hp@redhat.com>
4068
4069         * gtk/testgtk.c: fix warnings
4070
4071         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
4072
4073         * gtk/gtktextview.c: fix warnings
4074
4075         * gtk/gtktext.c (find_cursor_at_line): fix warning
4076
4077         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
4078
4079         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
4080         of this function
4081
4082         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4083         fix warning
4084
4085         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
4086
4087         * gtk/gtkfontsel.c: fix warning
4088
4089         * gtk/gtkcolorsel.c: fix warnings
4090
4091 2001-03-23  Havoc Pennington  <hp@redhat.com>
4092
4093         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
4094
4095         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
4096
4097         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
4098         and deprecated gtk_check_menu_item_set_show_toggle().
4099         
4100         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
4101
4102         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
4103
4104         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
4105
4106 2001-03-23  Havoc Pennington  <hp@redhat.com>
4107
4108         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4109         some docs
4110
4111 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
4112
4113         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
4114         this.
4115
4116         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
4117         set_cell to set_value
4118
4119         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
4120         set_cell to set_value
4121
4122 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
4123
4124         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4125         fix braino.
4126         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
4127         support.
4128
4129         * gtk/gtktreeview.c: Addition of initial sortable support.
4130
4131         * gtk/gtktreestore.c: Addition of initial sortable support.
4132
4133         * gtk/gtkliststore.c: Addition of initial sortable support.
4134
4135         * gtk/gtkmarshal.list: yet another marshaller.
4136
4137         * gtk/gtktreedatallist.[ch]: shared code between the store models
4138         for handling sorting headers.
4139
4140 2001-03-22  Havoc Pennington  <hp@redhat.com>
4141
4142         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4143         (gtk_container_unset_focus_chain): Add ability to override the 
4144         focus chain for a container explicitly
4145
4146 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
4147
4148         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
4149         added PROP_MNEMONIC_WIDGET.
4150
4151         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
4152         (gtk_window_remove_mnemonic): 
4153         (gtk_window_add_mnemonic): fixed assertions.
4154         (gtk_window_activate_mnemonic): constrain modifier checks to those
4155         permitted by gtk_accelerator_get_default_mod_mask().
4156         got rid of gtk_window_get_default_accel_group().
4157
4158         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
4159         activatable widgets either by focussing or a warning.
4160         added a signal accumulator to ::activate_mnemonic which stops the
4161         emission once a handler returned TRUE.
4162
4163 2001-03-22  Havoc Pennington  <hp@pobox.com>
4164
4165         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
4166         the stock item label
4167
4168         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
4169
4170         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
4171
4172         * demos/gtk-demo/*.c: Add mnemonics all over the place
4173
4174         * gtk/gtklabel.h: mark parse_uline deprecated
4175
4176 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4177
4178         * gtk/gtkitemfactory.[ch]:
4179         Add support for stock and normal imagemenuitems.
4180         
4181         * gtk/testgtk.c:
4182         Add some tests for mnemonics, stock toolbars, stock
4183         and image menuitems in itemfactory and gdk_window_scroll.
4184
4185 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4186
4187         * gtk/gtkbutton.[ch]:
4188         * gtk/gtkdialog.c:
4189         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
4190         removed accel_group argument. Renamed gtk_button_new_accel() to
4191         gtk_button_new_with_mnemonic() and removed accel_group argument.
4192
4193         * gtk/gtkcheckbutton.[ch]:
4194         New function gtk_check_button_new_with_mnemonic().
4195
4196         * gtk/gtkentry.c:
4197         Override activate_mnemonic and just grab focus.
4198
4199         * gtk/gtkitemfactory.c:
4200         Don't add menu uline accel group, instead use mnemonics support.
4201
4202         * gtk/gtklabel.[ch]:
4203         New support for mnemonics.
4204
4205         * gtk/gtkmarshal.list:
4206         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
4207
4208         * gtk/gtkmenu.[c]:
4209         * gtkmenushell.c:
4210         Use mnemonics instead of accel groups for uline
4211         support in menu items.
4212         Removed gtk_menu_get_uline_accel_group() and
4213         gtk_menu_ensure_uline_accel_group().
4214
4215         * gtk/gtkmenuitem.c:
4216         Override activate_mnemonic to handle switching between
4217         menu items if there are collisions.
4218         
4219         * gtk/gtknotebook.c:
4220         Connect to activate_mnemonic on the tab_label, so that
4221         activating it switches to that notebook page.
4222
4223         * gtk/gtkwidget.[ch]:
4224         Add activate_mnemonic signal. New function
4225         gtk_widget_activate_mnemonic() to emit it.
4226         Default implementation does activate/grab_focus.
4227
4228         * gtk/gtkwindow.[ch]:
4229         Add support for mnemonics in windows.
4230         New functions:
4231         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
4232         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
4233
4234         * gtk/testgtk.c:
4235         Update to function name changes.
4236         
4237 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4238
4239         * gtk/gtkimagemenuitem.[c]:
4240         Add gtk_image_menu_item_new_from_stock()
4241
4242 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
4243
4244         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4245         Fix buglet in meeting.
4246
4247 2001-03-19  Havoc Pennington  <hp@redhat.com>
4248
4249         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
4250         add a bunch of accessor functions. This is because we have
4251         reasonable expectations of extending what fields it contains in
4252         the future.
4253
4254         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
4255         changes
4256
4257         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
4258         GtkIconSource   
4259
4260 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
4261
4262         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
4263         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
4264
4265         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
4266           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
4267           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
4268           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
4269         Change float to double everywhere with the exception of 0<->1.0 alignment
4270         and GtkCurve.
4271
4272 2001-03-19  Tor Lillqvist  <tml@iki.fi>
4273
4274         * gdk/win32/gdkdrawable-win32.c
4275         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
4276         output.
4277
4278         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
4279         gdkwin32.h.
4280
4281 2001-03-18  Tor Lillqvist  <tml@iki.fi>
4282
4283         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
4284         print_event_state, print_event): Use preprocessor macro to make
4285         code more compact. Print also GDK_WINDOW_STATE events.
4286         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
4287         
4288         * gtk/gtk.def
4289         * gtk/makefile.mingw.in: Update.
4290
4291         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
4292         to catch also Cygwin.
4293
4294 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
4295
4296         * gtk/gtkspinbutton.[hc]: added rc-style argument
4297         GtkSpinButton::shadow_type.
4298         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
4299         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
4300         rc-style settings.
4301
4302         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
4303
4304         * gtk/gtkwidget.c: quark cleanups.
4305
4306         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
4307         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
4308         to create_rc_style() (we don't do cloning in standard OO sense).
4309         added per rc style properties.
4310         
4311         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
4312         property values and for caching those. some cleanups.
4313         
4314         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
4315         
4316         * gtk/gtksettings.[hc]: new file for global rc-file properties
4317         (at least currently, should get extended to support X properties
4318         and other communication mechanisms).
4319         
4320         * gtk/gtkwidget.[hc]: added style property support:
4321         (gtk_widget_class_install_style_property_parser): install style
4322         property pspec with parser function for rc-file values other
4323         than LONG, DOUBLE or STRING.
4324         (gtk_widget_class_install_style_property): same as above without
4325         parser (parsers are going to be needed quite infrequently).
4326         (gtk_widget_style_get_property): retrive style property value.
4327         (gtk_widget_style_get_valist): same as above with varargs support,
4328         has NOCOPY semantics.
4329         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
4330
4331 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
4332
4333         * demos/gtk-demo/main.c (row_activated_cb): modified to use
4334         "row_activated" signal.
4335
4336         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
4337         stupidity.  Lets actually pass in the row with this signal...
4338
4339 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
4340
4341         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
4342
4343         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
4344
4345         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
4346         everything into the ::destroy function, and freed a lot more.
4347
4348 2001-03-16  Havoc Pennington  <hp@redhat.com>
4349
4350         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
4351         instead of gint16, to avoid overflow issues, since sizes > 16-bit
4352         are now allowed.
4353
4354 2001-03-16  Havoc Pennington  <hp@redhat.com>
4355
4356         * Applied patch from Nils Barth (bug # 51041) to 
4357         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
4358         in various places.
4359
4360 2001-03-15  Havoc Pennington  <hp@redhat.com>
4361         
4362         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
4363         for properties to set on the tag.
4364
4365         * gtk/testtext.c: fixups to reflect create_tag change
4366         
4367         * gtk/gtktexttag.c (gtk_text_tag_set_property):
4368         background/foreground stipple are objects, not boxed.
4369
4370         * demos/gtk-demo/textview.c: intellihancing
4371
4372 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
4373
4374         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
4375         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
4376
4377 2001-03-16  Alexander Larsson  <alexl@redhat.com>
4378
4379         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
4380         Fix sign error with queued region translations.
4381
4382 2001-03-15  HideToshi Tajima  <tajima@happy>
4383
4384         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
4385         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
4386         * gtk/gtkentry.c (update_im_cursor_location): 
4387         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
4388         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
4389         set_cursor_pos to set_cursor_location in GtkInputContext class
4390
4391 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
4392
4393         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
4394         the location of the cell relative to its area.
4395         * gtk/gtkcell*: modified for above change
4396         * gtk/gtktreeview.c: modified for above change.
4397
4398 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
4399
4400         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
4401          (gtk_tree_view_finalize): actually unref the model.  Thanks to
4402         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
4403
4404 2001-03-14  Havoc Pennington  <hp@redhat.com>
4405
4406         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
4407         
4408         * gtk/gtk.h: remove gtkdata.h
4409
4410         * gtk/Makefile.am: remove gtkdata
4411         
4412         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
4413         not "disconnect" on the adjustments.
4414         
4415         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
4416         GtkData
4417
4418         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
4419         not GtkData
4420
4421         * configure.in: handle case where X render exists, but Pango lacks
4422         Xft support.
4423
4424 2001-03-15 Alexander Larsson  <alexl@redhat.com>
4425
4426         * gtk/gtktoolbar.[ch]:
4427         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
4428         to add stock items to toolbars.
4429
4430         * gtk/Makefile.am:
4431         Remove ../gdk/gdkim.h from gdk_headers.
4432
4433 2001-03-15  Sven Neumann  <sven@gimp.org>
4434
4435         * gdk/gdkim.h: removed
4436         
4437         * gdk/gdkprivate.h
4438         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4439
4440 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
4441
4442         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
4443         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
4444         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
4445         set_cursor_pos() virtual method
4446
4447         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
4448         (gtk_im_context_xim_set_cursor_pos): add implementation for
4449         set_cursor_pos() method
4450
4451         * gtk/gtkentry.c (recompute_idle_func): set current cursor
4452         position to input methods
4453
4454 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
4455
4456         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
4457         code a lot.
4458
4459         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
4460         g_mem_chunk.
4461         (_gtk_tree_data_list_alloc): use g_mem_chunk.
4462         (_gtk_tree_data_list_node_to_value): Fix to switch on
4463         G_TYPE_FUNDAMENTAL.
4464         (_gtk_tree_data_list_value_to_node): Fix to switch on
4465         G_TYPE_FUNDAMENTAL.
4466         (_gtk_tree_data_list_node_copy): Fix to switch on
4467         G_TYPE_FUNDAMENTAL.
4468
4469 2001-03-12  Havoc Pennington  <hp@redhat.com>
4470
4471         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4472         to convert to new property API. Also, change default_width and
4473         default_height get_property to return 0 as the flag value for
4474         "unset"; -1 is not a valid value for these fields.
4475
4476 2001-03-12  Havoc Pennington  <hp@redhat.com>
4477
4478         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
4479         enum with registration for icon sizes, instead of strings.
4480
4481         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
4482         gtkwidget.c: Fix to reflect GtkIconSize
4483         
4484 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4485
4486         Make GtkFB compile and link.
4487         
4488         * gdk/linux-fb/gdkdrawable-fb2.c:
4489         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4490         
4491         * gdk/linux-fb/gdkwindow-fb.c:
4492         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4493         Added gdk_window_shape_combine_region.
4494         Added assorted placeholders for unimplemented new GdkWindow API calls.
4495
4496 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4497
4498         * gtk/gtkfilesel.c:
4499         Add more test when converting filenames from/to utf-8.
4500         Don't allow entering text in the filename entry which isn't allowed in
4501         a filename. Just beep instead.
4502
4503 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4504
4505         * gtk/gtkclist.c:
4506         Scroll using gdk_window_scroll(). Don't wait for exposes.
4507         Move the column headers in an order that makes them flash less.
4508
4509 2001-03-10  Hans Breuer  <hans@breuer.org>
4510
4511         * gdk/gdk.def : updated
4512
4513         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
4514         to offseting the clip_mask at the right place
4515
4516         * gdk/win32/gdkwindow-win32.c : don't create background brushes
4517         for all the gdkClasses, especially not for the input_only case.
4518         Otherwise flickering wont be avoidable, because we don't get
4519         WM_ERASEBKGND message for these windows.
4520
4521         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4522         and fixed massive redraw problems apparently triggered by Alexanders 
4523         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4524         but it seems to work quite well :-)
4525
4526         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4527         prototype
4528
4529 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4530
4531         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4532         (gtk_list_store_set_cell): Fix a stupid typo.
4533
4534 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4535
4536         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4537         select_all not work if you're in SINGLE mode (it doesn't make that
4538         much sense, anyway.)
4539
4540         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4541         handle types more sanely.
4542         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4543         (_gtk_tree_data_list_node_copy): handle types more sanely.
4544
4545         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4546         GValue better. Converts the type as well.
4547
4548         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4549         GValue better. Converts the type as well.
4550
4551 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4552
4553         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4554         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4555         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4556         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4557
4558         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4559         gdk_im/gdk_ic.
4560
4561 2001-03-09  Hans Breuer  <hans@breuer.org>
4562
4563         * gdk/gdk.def : updated
4564
4565         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4566         for their palette
4567
4568         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4569         removing
4570
4571         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4572         removing and implemented Havoc's GdkWindow state functions; 
4573         stick/unstick only as no-op, cause I don't know how to emulate 
4574         on win32 ...
4575
4576         * gtk/gtk.def : updated
4577
4578         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4579
4580         * gtk/gtktypeutils.c : #include <string.h>
4581
4582         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4583
4584 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4585
4586         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4587         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4588         not a boxed.
4589
4590 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4591
4592         * docs/Changes-2.0.txt:
4593         Document expose event->region change and that gtk_widget_event
4594         doesn't allow passing expose events.
4595
4596         * gdk/gdkevents.h:
4597         Add region to expose event.
4598         
4599         * gdk/gdkevents.c:
4600         Handle event->region in gdk_event_copy() and gdk_event_free().
4601
4602         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4603         Generate expose_event->region when creating expose events.
4604
4605         * gdk/x11/gdkevents-x11.c:
4606         Generate expose events with regions when translating X events.
4607
4608         * gtk/gtkcontainer.[ch]:
4609         Default expose handler that propagates expose events to NO_WINDOW
4610         children. New function gtk_container_propagate_expose()
4611
4612         * gtk/gtkwidget.[ch]:
4613         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4614         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4615         expose events. New function gtk_widget_send_expose() to send expose
4616         events. New function gtk_widget_region_intersect() to calculate
4617         window/region intersections.
4618         
4619         * gtk/gtkmain.c (gtk_main_do_event):
4620         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4621         Use gtk_widget_send_expose() to send expose events.
4622         
4623         * gtk/gtkbin.c:
4624         * gtk/gtkbox.c:
4625         * gtk/gtkfixed.c:
4626         * gtk/gtkimagemenuitem.c:
4627         * gtk/gtklist.c:
4628         * gtk/gtkpacker.c:
4629         * gtk/gtktable.c:
4630         * gtk/gtktree.c:
4631         Remove expose handler, using the default container implementation
4632         instead.
4633         
4634         * gtk/gtkbutton.c:
4635         * gtk/gtkcheckbutton.c:
4636         * gtk/gtkeventbox.c:
4637         * gtk/gtkfixed.c:
4638         * gtk/gtkhandlebox.c:
4639         * gtk/gtklayout.c:
4640         * gtk/gtklistitem.c:
4641         * gtk/gtkmenu.c:
4642         * gtk/gtkmenubar.c:
4643         * gtk/gtkmenuitem.c:
4644         * gtk/gtknotebook.c:
4645         * gtk/gtkoptionmenu.c:
4646         * gtk/gtkpaned.c:
4647         * gtk/gtkscrolledwindow.c:
4648         * gtk/gtktogglebutton.c:
4649         * gtk/gtktoolbar.c:
4650         * gtk/gtktreeitem.c:
4651         * gtk/gtkviewport.c:
4652         Chain expose handler to parent class handler. Use
4653         gtk_container_propagate_expose() to propagate exposes.
4654
4655         * gtk/gtkclist.c (check_exposures):
4656         * gtk/gtktext.c (process_exposes):
4657         Use gtk_widget_send_expose instead of gtk_widget_event.
4658
4659 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4660
4661         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4662
4663 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
4664
4665         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
4666         unref the nodes.   Fixes bug #50058.
4667
4668         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
4669         "::ref_iter" to "::ref_node".
4670         (gtk_tree_model_unref_node): change "::unref_iter" to
4671         "::unref_node". Fixes bug #50064.
4672
4673 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
4674
4675         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
4676         support for invisible cells.
4677          (gtk_tree_view_bin_expose): ditto
4678
4679 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
4680
4681         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
4682         on gobjects.
4683
4684         * tests/testtreefocus.c (main): New test file.
4685
4686         * tests/testtreeview.c: update to latest glib changes.
4687
4688         * tests/testtreecolumns.c: update to latest glib changes.
4689
4690 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
4691
4692         * gtk/testgtk.c: re-enabled event watcher emission hooks.
4693
4694 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
4695
4696         * *.c: added accumulator data argument to g_signal_newc()
4697         functions.
4698
4699         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
4700         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
4701         * gtk/treestoretest.c (make_window):
4702         s/g_signal_connect/g_signal_connectc/.
4703
4704         * gtk/gtktextbuffer.c: completed signal arg fixups,
4705         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
4706
4707 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
4708
4709         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
4710         G_CONST_RETURN.
4711
4712         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
4713         ::hierarchy-changed signal when a widget changes
4714         from anchored to unanchored or vice versa.
4715         (anchored means 
4716          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
4717         Use a private flag to keep track of this efficiently.
4718
4719 2001-03-07  Havoc Pennington  <hp@redhat.com>
4720
4721         * gtk/testgtk.c (create_spins): uglify so that size request gets
4722         tested.
4723
4724         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
4725         request on values for upper/lower, completes #6152
4726
4727 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
4728
4729         * Makefile.am: Remove gtk-config-2.0 again.
4730         (Grrrr, pkg-config. And stops make loops.)
4731
4732 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
4733
4734         * gtk/gtksignal.[hc]: removed old emission hook API.
4735         
4736         * docs/Changes-2.0.txt: fixed sections.
4737         
4738         * gtk/gtktextbuffer.c: signal arg fixups.
4739
4740 2001-03-07  Havoc Pennington  <hp@redhat.com>
4741
4742         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
4743
4744         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
4745         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
4746         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
4747         validation and the redraw which is higher priority than the
4748         validation.
4749
4750 2001-03-07  Havoc Pennington  <hp@redhat.com>
4751
4752         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
4753         (gtk_entry_set_property): remove trailer
4754
4755         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
4756         (gtk_entry_get_width_chars): new functions, to set size request to 
4757         a given number of characters
4758
4759         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
4760
4761         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
4762         (gtk_dialog_get_has_separator): new function
4763         (run_delete_handler): fix to not emit "response" signal
4764         because we already did in the delete event handler installed
4765         at dialog creation time.
4766         
4767         * gtk/gtkdialog.h: add a has_separator property,
4768         add GTK_DIALOG_NO_SEPARATOR flag
4769
4770 2001-03-07  Havoc Pennington  <hp@redhat.com>
4771
4772         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
4773         off decorations for a window.
4774
4775         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
4776         changes
4777
4778         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
4779         to get location of PangoLayout inside the label, closes #51198
4780
4781         * gtk/testgtk.c (create_bbox): fix up button box usage
4782
4783         * gtk/testcalendar.c (create_calendar): fix up button box usage
4784
4785         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
4786
4787         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
4788
4789         * gtk/gtkhbbox.h: deprecations
4790
4791         * gtk/gtkvbbox.h: deprecations
4792
4793         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
4794         emulate deprecated gtk_button_box_get_spacing
4795
4796         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
4797         the "set global default" functions
4798         (struct _GtkButtonBox): remove "spacing" field, use the one from 
4799         GtkBox base class
4800
4801         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
4802
4803         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
4804         render the icon, return the missing image icon.
4805
4806         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
4807         image icon if the load fails.   
4808
4809         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
4810         when no image is found; should be the Netscape "missing image"
4811         icon eventually but for now is a random image
4812
4813         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
4814         role for the session manager
4815
4816         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
4817
4818         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
4819         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
4820
4821         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
4822
4823 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
4824
4825         * gtk/*.c: marshaller fixes.
4826         
4827         * gtk/gtkmarshal.list: extreme cleanup.
4828
4829         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
4830         param spec for now.
4831
4832         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
4833         where appliable.
4834
4835         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
4836         special cased autogenerated boxed types from gtktypebuiltins_ids.c
4837         which are not reference counted:
4838         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
4839         PangoFontDescription, GtkTreeIter and GtkTreePath.
4840
4841 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
4842
4843         * gtk/gtktreeselection.h: 
4844         * gtk/gtktreemodel.c:
4845         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
4846         file should be included directly, and gobject/gmarshal.h
4847         as well as gtk/gtkmarshal.h even can't be included directly.
4848
4849         * Makefile.am: grr, install gtk-config-2.0.
4850
4851         * gtk/testgtk.c:
4852         * gtk/simple.c:
4853         * gtk/gtkmenu.c:
4854         * gtk/gtkitemfactory.c: use g_object_connect() instead of
4855         passing "*signal*::*" args to gtk_widget_set().
4856         
4857         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
4858         
4859         * gtk/*.c: removed trailer arg from property setters and getters.
4860         macro fixups.
4861
4862 2001-03-07  Alexander Larsson  <alexl@redhat.com>
4863
4864         * gtk/gtklabel.c (set_markup): Removed warning
4865
4866 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
4867
4868         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
4869         field to allow you to hide cell renderers.
4870
4871         * gtk/gtkcellrenderer.c: Add support for invisible cells.
4872
4873         * gtk/gtktreeview.c: Add support for invisible cells.
4874
4875 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
4876
4877         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
4878         Add "clicked" signal back to columns.
4879
4880         * ChangeLog: remove conflict markers.
4881
4882 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
4883
4884         * gtk/gtkbutton.c: Add animation of activation by, on 
4885         activate, pressing the button, and adding a timeout that 
4886         releases the button after 250ms or on key release and
4887         emits ::clicked. (#51501)
4888
4889         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
4890         action area, we connect to ::clicked instead of ::activate
4891         so the dialog stays up through the animation.
4892
4893 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
4894
4895         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
4896         check the ignore_enter flag for the menu shell that
4897         the item is actually a child of, not for attached
4898         submenus. (#51536)
4899
4900 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
4901
4902         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4903         special key-press grab handling for widgets within
4904         GtkWindows. Otherwise, fall through to normal case.
4905
4906         This prevents key events being sent twice to GtkInvisible
4907         widgets, which can cause all sorts of mischief.
4908
4909 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4910
4911         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4912         widget is in effect, give the grab widget a first
4913         crack at KEY_PRESS/RELEASE events. (#424)
4914
4915 2001-03-06  James Henstridge  <james@daa.com.au>
4916
4917         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
4918         offset for the window_state_event to point at window_state_event
4919         rather than no_expose_event.
4920
4921 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
4922
4923         * gtk/gtkimmodule.h: fix busted /* comment */
4924
4925 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
4926
4927         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
4928         object properties.
4929
4930 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
4931
4932         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
4933         add object properties.
4934
4935         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
4936         to add object properties.
4937
4938         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
4939         object properties.
4940
4941         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
4942         add object properties.
4943
4944         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
4945         object properties.
4946
4947 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
4948
4949         * gtk/gtktreemodel.c: renamed "child_toggled" to
4950         "has_child_toggled".
4951
4952         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
4953         handle new signal name.
4954
4955         * gtk/gtktreestore.c: Updated to handle new signal name.
4956         * gtk/gtklisttore.c: Updated to handle new signal name.
4957         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
4958
4959 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4960
4961         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
4962         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
4963
4964 2001-03-05  Michael Natterer  <mitch@gimp.org>
4965
4966         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
4967         pixbuf-engine coincidentially also failed to make one of it's
4968         parent_class pointers static, causing overwriting of GtkLabel's
4969         parent_class pointer in pixbuf_style_class_init().
4970         (Will commit the fix to the pixbuf-engine too).
4971
4972 2001-03-05  Alexander Larsson  <alexl@redhat.com>
4973
4974         * gdk/gdkwindow.h:
4975         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
4976         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
4977         gdk_window_set_icon_list for net wmspec functionality.
4978
4979         * gdk/x11/gdkwindow-x11.c:
4980         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
4981         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
4982         gdk_window_set_icon_list.
4983         Added gdk_wmspec_change_state helper function and used it in the code.
4984         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
4985
4986         * gtk/gtkdialog.c (gtk_dialog_init):
4987         Set GDK_WINDOW_TYPE_HINT_DIALOG.
4988
4989         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
4990         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
4991
4992         * gtk/gtkwindow.c:
4993         new function gtk_window_set_type_hint.
4994         On realize, set type hint and modal hint.
4995
4996         * gtk/gtkwindow.h:
4997         Added type_hint field and gtk_window_set_type_hint.
4998
4999 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5000
5001         * gtk/gtklabel.[ch]:
5002         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
5003         New function gtk_label_get_accel_keyval () to get the underline accelerator
5004         of the label. Setting the label pattern overrides other attributes.
5005
5006 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
5007
5008         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
5009         Added missing initializers to gtk_rc_style_init().
5010
5011 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
5012
5013         * gtk/gtktextview.c: fixed bug #51097 about setting 
5014         gtk_text_view_set_border_window_size() if the widget is 
5015         already realized.
5016
5017 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
5018
5019         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
5020
5021         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
5022         comment. Won't do to have duplicated doc comments between
5023         the platform subdirs.
5024
5025 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
5026
5027         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
5028           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
5029
5030         Detectable auto-repeat - make a repeating key generate
5031         press/press/press/release instead of press/release pairs.
5032
5033         If we have Xkb and XkbSetDectableAutoRepeat supports
5034         that, we do it that way. Otherwise, when we get
5035         a release event, we check ahead with XPending to see
5036         if the next key is a KeyPress with the same keycode
5037         and timestamp. (Not 100% reliable, but pretty close.)
5038           
5039 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5040         
5041         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5042         special key-press grab handling for widgets within
5043         GtkWindows. Otherwise, fall through to normal case.
5044  
5045         This prevents key events being sent twice to GtkInvisible
5046         widgets, which can cause all sorts of mischief.
5047  
5048 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5049  
5050         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5051         widget is in effect, give the grab widget a first
5052         crack at KEY_PRESS/RELEASE events. (#424)
5053  
5054 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
5055
5056         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
5057         to extend the selection. (Roughly based on patch
5058         from Jay Cox, #50939)
5059
5060         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
5061         to properly handle previous GDK_BUTTON_PRESS. 
5062         (Patch from Jay Cox, #50938)
5063
5064         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
5065         '\0' back along with the deleted text. (#51148)
5066
5067 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
5068
5069         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
5070         the group when extracting it from the X keyboard event.
5071
5072         * modules/input/Makefile.am modules/input/imipa.c: 
5073         Simple module for entering IPA. (Do we need a 
5074         gtk-stupid-input-tricks CVS module?)
5075
5076 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
5077
5078         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
5079         const.
5080
5081         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
5082
5083         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
5084         is no focus widget for the dialog currently, grab the focus as well
5085         as the default.
5086
5087         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
5088         the action area's children to iterate through, not the
5089         dialog's children.
5090
5091 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
5092
5093         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
5094         Add plug-socket tests. (Won't work worth a darn until I commit
5095         the rest of the plug-socket changes, but no reason these
5096         can't go into CVS now.)
5097
5098 2001-03-02  Havoc Pennington  <hp@redhat.com>
5099
5100         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
5101         _gdk_region_get_xrectangles()
5102
5103         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
5104
5105         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
5106
5107         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
5108         function, contributed by Ron Steinke    
5109
5110         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
5111         gdk_net_wm_supports
5112
5113         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
5114         New function, contributed by Ron Steinke
5115
5116         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
5117         used to line up the text in the entry when using the entry for
5118         editable sheet cell hacks
5119
5120         * gtk/testgtk.c (create_entry): test the activate_default setting
5121         on GtkEntry
5122
5123         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
5124         cause the entry to activate the default button for a dialog when 
5125         activated
5126         (gtk_entry_get_activates_default): new function
5127
5128 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
5129
5130         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
5131         Hwang to move call to sync_selection() up a few lines
5132         to before the row list is modified, to fix crash when
5133         removing rows in the undo_selection list.
5134
5135         (Test case provided by Daniel Elstner:
5136
5137         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
5138
5139 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
5140
5141         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
5142         of tree->root_tree in parent_set rather than _map(), 
5143         fixing #50892 in a bit better manner.
5144
5145 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
5146
5147         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
5148
5149 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
5150
5151         * gtk/gtkstyle.c : Remove duplicate fwd decl for
5152         gtk_default_draw_shadow.
5153
5154 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
5155
5156         * gdk/gdkimage.c (gdk_image_new): Remove excess 
5157         warning, make warnings more verbose, treat a error
5158         in shmat as permanent, and don't try again.
5159         (#51163, Ed Randall.)
5160
5161 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
5162
5163         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
5164         delay for the first click before starting to scroll.
5165         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
5166
5167         * gtk/gtktext.c: GtkText should have I-beam cursor. 
5168         (based on gtk-enf-990513-1.patch, Eric Fisher.)
5169
5170 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
5171
5172         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
5173         cleanup to remove some references to unused
5174         ->xoffset, ->yoffset.
5175
5176 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
5177
5178         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
5179         mask. (#51039, fix from Martin Maierhofer)
5180
5181 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
5182
5183         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
5184         for unshifted + and shifted = for non-us keyboards.
5185         Make <Control>+ and <Control>- work as well as 
5186         <Control>KP_Plus, <Control>KP_Minus for recursive
5187         open/close.  (#2682, René Seindal)
5188
5189 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
5190
5191         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
5192         the active menu item before deactivating the menu,
5193         so gtk_menu_popdown doesn't change the history. (#50964)
5194         
5195 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
5196
5197         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
5198         draw lines with text_gc rather than black_gc.
5199         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
5200
5201 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
5202
5203         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5204         Move handling of buttons fully in gtktreeviewcolumn.  This code is
5205         less interrelated then it was, but it still requires the
5206         GtkTreeView to map it.
5207
5208         * test/testtreecolumn.c: Now I can add a column to one view,
5209         remove it, add it to the another view, remove it, then re-add it
5210         to the first.  Nifty.
5211
5212 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
5213
5214         * docs/tutorial/gtk-tut.sgml: Minor corrections
5215
5216 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
5217
5218         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
5219         GtkRowReference.
5220
5221 2001-02-28  Havoc Pennington  <hp@redhat.com>
5222
5223         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
5224         draw_default
5225         (gtk_widget_draw_focus): remove this function; we could instead
5226         make it just gtk_widget_draw(), but in most cases I think the
5227         result would be broken user code, so think it's better to have
5228         that code not compile and get fixed
5229         (gtk_widget_draw_default): ditto
5230
5231         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
5232         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
5233         
5234         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
5235         widgets lose/get the default, instead of calling draw_default
5236         
5237         * docs/Changes-2.0.txt: note about all this
5238
5239         Then fixed every widget in GTK, I won't list all the filenames.
5240
5241 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
5242
5243         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
5244         _gtk_tree_row_reference_deleted.
5245         (inserted_callback): Proxy out to
5246         _gtk_tree_row_reference_inserted.
5247         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
5248         get around signal emission ordering problem.
5249
5250         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5251         fix to work with SINGLE 
5252         (_gtk_tree_selection_internal_select_node): Major sanitization on
5253         selections.  SINGLE now seems to work.
5254
5255         * tests/Makefile.am: add testtreecolumn.c:
5256
5257         * tests/testtreecolumn.c: New test.  Mostly points out selection
5258         bugs currently, but will test columns later.
5259
5260         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
5261         selection bug.  I hate touching this code -- it's scary.
5262
5263 2001-02-26  Havoc Pennington  <hp@redhat.com>
5264
5265         * gtk/testgtk.c: test the window state stuff
5266
5267         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
5268         window come to the user's attention as if it were just created
5269         (gtk_window_iconify): new function
5270         (gtk_window_deiconify): new function
5271         (gtk_window_stick): new function
5272         (gtk_window_unstick): new function
5273         (gtk_window_maximize): new function
5274         (gtk_window_unmaximize): new function
5275
5276         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
5277
5278         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
5279
5280         * gdk/x11/gdkevents-x11.c: create window state events when
5281         appropriate
5282         (gdk_wmspec_supported): new function
5283
5284         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
5285         iconification before showing the window
5286         (gdk_window_deiconify): new function
5287         (gdk_window_stick): new function
5288         (gdk_window_unstick): new function
5289         (gdk_window_maximize): new function
5290         (gdk_window_unmaximize): new function
5291
5292         * gdk/gdkwindow.c: store the window state in the window; 
5293         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
5294         window->mapped.
5295         (gdk_window_get_state): return the current window state
5296
5297         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
5298         (gdk_event_get_state): handle GDK_WINDOW_STATE
5299         (gdk_synthesize_window_state): function to create the window state
5300         events
5301
5302         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
5303         event, for changes to "window state" such as maximized, sticky, 
5304         etc.
5305         
5306         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
5307         focuses a window
5308
5309         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
5310         finds out if we support a given WM spec hint
5311
5312 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
5313
5314         * docs/faq/gtk-faq.sgml: New question re memory leaks.
5315
5316 2001-02-25  Hans Breuer  <hans@breuer.org>
5317
5318         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
5319         cause we want to loose those prototypes only in the latter case
5320
5321         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
5322         GdkPixmapImplWin32 because it itsn't derived from it. Use the
5323         impl member variable instead
5324
5325         * gtk/gtk.def : updated
5326
5327         * gtk/gtklist.c : 
5328         * gtk/gtkmenus.c : include <string.h> for memset ()
5329
5330         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
5331         for everthing built here, but for gtk-x.x.dll only. This solves
5332         problem of indifferent gtk type definitions
5333
5334 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
5335
5336         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
5337
5338 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
5339
5340         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
5341         column that is exposed.
5342
5343         (_gtk_tree_view_update_size): Changed name from set_size, and
5344         changed function to do more work, and not force people calling it
5345         to figure out the size.  Simplifies a lot of code elsewhere.
5346
5347 2001-02-23  Alexander Larsson  <alexl@redhat.com>
5348
5349         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
5350         return solid masks for xpms that have no transparent color.
5351         This makes the ..._create_from_xpm... API backwards
5352         compatible.
5353
5354 2001-02-23  Tor Lillqvist  <tml@iki.fi>
5355
5356         * README.win32: Update. Mention the gtk-1-3-win32-production
5357         branch.
5358
5359         * gdk/win32/bdfcursor.c: New file. A program that generates
5360         xcursors.h. Thanks to Stefan Ondrejicka.
5361
5362         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
5363         compact format.
5364
5365         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
5366
5367         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
5368         function, uses xcursors.h.
5369         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
5370         cursor from inline data instead of using LoadCursor() to generate
5371         it from a resource.
5372
5373         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
5374         event, must check the Windows message for mouse button state, as
5375         the GDK event state might not have been built if it is
5376         undelivered. Remove one goto.
5377
5378         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
5379         SetCursor() if the current cursor as returned by GetCursor() is
5380         the window's previous cursor. The ChildWindowFromPoint() test
5381         apparently didn't work correctly.
5382
5383         * gdk/win32/rc/*.cur: Remove.
5384
5385         * gdk/win32/rc/gdk.rc.in: Remove cursors.
5386
5387         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
5388
5389         * gtk/makefile.{mingw,msc}.in: Updates.
5390
5391 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
5392
5393         * gtk/gtktreemodel.h: add functions for signal emission.
5394
5395         * gtk/gtktreestore.c: move to use above functions instead of
5396         g_signal_emit.
5397
5398         * gtk/gtkliststore.c: ditto
5399
5400 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
5401
5402         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
5403         GObject instead of GtkObject.
5404
5405         * gtk/gtkliststore.c: ditto.
5406
5407         * gtk/gtktreemodelsort.c: ditto.
5408
5409         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
5410         GtkTreeModelIface, instead of in each model.
5411
5412 2001-02-21  Havoc Pennington  <hp@redhat.com>
5413
5414         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
5415         unbreak this function
5416
5417         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
5418         properties
5419
5420         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
5421         properties
5422
5423         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
5424         properties
5425
5426         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
5427         mean unset the max length
5428
5429 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
5430
5431         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
5432         Changed name to be set_cell_data_func to make it clear what
5433         the functino does.  Close bug #51069.
5434
5435 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
5436
5437         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5438         have memory actually freed.  Keeps box running longer.
5439
5440 2001-02-21  Alexander Larsson  <alexl@redhat.com>
5441         
5442         * gtk/gtkseparatormenuitem.[ch]:
5443         Added new menu separator item. The drawing and size handling
5444         is still done in GtkMenuItem, but the API is a bit more sane.
5445         
5446         * gtk/Makefile.am:
5447         Add gtkseparatormenuitem.[ch].
5448
5449         * gtk/gtk.h:
5450         Add gtkseparatormenuitem.h.
5451         
5452         * gtk/gtkentry.c:
5453         * gtk/gtkmenufactory.c:
5454         * gtk/gtktextview.c:
5455         Use the new API for menu separators.
5456         
5457         * demos/gtk-demo/menus.c (create_menu):
5458         Add some GtkSeparatorMenuItem demo code.
5459
5460 2001-02-20  Havoc Pennington  <hp@redhat.com>
5461
5462         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
5463         Lee Mallabone
5464
5465         * gtk/gtkarrow.c: Convert to new property API, patch from 
5466         Lee Mallabone
5467
5468 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
5469
5470         * tests/testtreeview.c (toggled_callback): fix to reflect change
5471         in GtkTreeModelStore.
5472
5473 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
5474
5475         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
5476         function to create an icon set from a pixbuf.
5477
5478 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5479
5480         * gtk/gtkcellrenderertext.[ch]:
5481         Add a "markup" property.
5482
5483         * gtk/treestoretest.c:
5484         Use the markup property, remove some leftover stuff from
5485         GtkTreeModelMapping.
5486
5487 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5488
5489         * gtk/gtklabel.c (gtk_label_set_selectable):
5490         Queue a redraw if the selectable setting was changed.
5491
5492 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5493
5494         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5495         Actually copy the whole gc, not just the public parts.
5496         
5497         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5498         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
5499         labels.
5500
5501 2001-02-19  Havoc Pennington  <hp@pobox.com>
5502
5503         * gdk/gdkwindow.c: docs
5504
5505         * gdk/gdkrgb.c: docs
5506
5507         * gdk/gdkregion-generic.c: docs
5508
5509         * gdk/gdkgc.c (gdk_gc_set_values): docs
5510
5511         * gdk/gdkdraw.c: docs
5512
5513         * gdk/gdkdrawable.h: deprecate drawable get/set data
5514
5515 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
5516
5517         * demos/gtk-demo/dialog.c: Add simple new demo.
5518
5519 2001-02-19  Havoc Pennington  <hp@redhat.com>
5520
5521         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5522         insert_child_anchor signal, bug #50245
5523
5524         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5525         from create_child_anchor, so the anchor is passed in
5526
5527         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5528         (_gtk_widget_segment_new): have the child anchor object passed in, 
5529         instead of creating it.
5530
5531         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5532         to gtk_text_buffer_get_modified
5533
5534 2001-02-19  Havoc Pennington  <hp@redhat.com>
5535
5536         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5537         changed GLib without fixing GTK
5538
5539         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5540         functions to have an underscore in front. Most of them should 
5541         probably just go away, but for starters don't export them.
5542         Bug #50482
5543
5544 2001-02-19  Havoc Pennington  <hp@redhat.com>
5545
5546         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5547         excluded by default
5548
5549         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5550         clean up the old code a bit
5551
5552         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5553         inconsistent state
5554
5555         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5556         draw inconsistent state
5557
5558         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5559         (create_menu): add inconsistent test
5560
5561         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5562         new function
5563         (gtk_check_menu_item_get_inconsistent): new function
5564         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5565         state (using etched in for now)
5566
5567         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5568         draw inconsistent state
5569
5570         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5571         function, used when the user has selected a range of stuff in
5572         different states
5573         (gtk_toggle_button_get_inconsistent): accessor for that
5574         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5575         don't know what else to do)
5576
5577 2001-02-19  Hans Breuer <hans@breuer.org>
5578
5579         * gtk/gtk.def : updated exported symbols
5580
5581         * gtk/makefile.msc.in : updated
5582
5583         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5584         a colormap, when invoked from testgtk::entry. I'm not sure where
5585         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5586         avoids immediate crashing ...
5587
5588         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5589         any objections ?
5590
5591         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5592         0 parameter. At least msvc doesn't like macros with var args. 
5593         I simply removed the extra 0, was it a feature or a typo ?
5594
5595         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5596         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5597         because the value assignment to the internal struct wasn't working.
5598         I'm not absolutely sure. The problem could have been resolved by
5599         changing the "func" declartion in the struct, but was the pointer
5600         to the function pointer intended ?
5601
5602         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5603
5604         * gdk/gdk.def : updated exported symbols
5605
5606         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5607         only use SetDIBitsToDevice if there is a palette at the drawable
5608         and the image is GDK_VISUAL_PSEUDO_COLOR
5609
5610         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5611
5612         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5613
5614         * gdk/*/makefile.msc : updated
5615
5616 2001-02-19  Havoc Pennington  <hp@redhat.com>
5617
5618         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5619         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5620
5621         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5622         (gdk_key_repeat_restore): nuke
5623
5624         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5625         (gdk_init_check): no atexit func
5626
5627         * gdk/gdkrgb.h: mark some stuff deprecated
5628
5629         * gdk/gdkcolor.h: mark some stuff deprecated
5630         
5631         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5632
5633         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5634
5635 2001-02-16  Havoc Pennington  <hp@redhat.com>
5636
5637         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5638         scroll steps.
5639
5640         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5641         steps, and add Ctrl-arrow shortcuts for paging visually as with
5642         HScale, since Page Up and Page Down move logically.
5643
5644         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5645         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5646         
5647         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5648         steps
5649         (gtk_range_scroll): handle the visual steps
5650
5651         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5652         scroll steps
5653
5654         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5655         steps, not the logical ones.
5656
5657         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5658         (scroll_vertical): handle up/down steps
5659
5660 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5661
5662         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5663         Copy data and free data with free().
5664
5665         * gdk-pixbuf/gdk-pixbuf.c:
5666         * gdk-pixbuf/io-jpeg.c:
5667         * gdk-pixbuf/io-png.c:
5668         Use g_try_malloc/g_free instead malloc/free.
5669         
5670         * gdk-pixbuf/test-gdk-pixbuf.c:
5671         Must... initialize... gobject...
5672         
5673         * gdk-pixbuf/pixops/timescale.c:
5674         * gtk/gtkcalendar.c:
5675         Use g_malloc instead of malloc.
5676         
5677 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
5678
5679         * gtk/testgtkrc:
5680         Comment out property assignments, these don't work yet.
5681
5682 2001-02-17  Havoc Pennington  <hp@pobox.com>
5683
5684         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
5685         bit.
5686
5687 2001-02-17  Havoc Pennington  <hp@pobox.com>
5688
5689         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
5690         shadowed variables that had broken size request in some cases,
5691         leading to bogus tooltips (#50996)
5692
5693 2001-02-06  Jon K Hellan  <hellan@acm.org>
5694
5695         Implement fast browsing of tooltips, bug #50619
5696         
5697         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
5698         and last_popdown
5699         
5700         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
5701         use_sticky_delay and last_popdown.
5702         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
5703         time of popdown.
5704         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
5705         is NULL.
5706         (gtk_tooltips_recently_shown): New static function.  Return true
5707         if < sticky_delay has elapsed since last popdown.
5708         (gtk_tooltips_event_handler): Display window after sticky_delay
5709         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
5710         since last popdown.
5711         
5712 2001-02-17  Havoc Pennington  <hp@pobox.com>
5713
5714         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
5715         instead of (). #6394
5716
5717         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
5718         G_CONST_RETURN, make it return by reference, #50473
5719         
5720 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
5721
5722         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
5723         generated ENTER_NOTIFY event with 0, otherwise not explicitely
5724         setup fields contain garbage (e.g. subwindow, breaking
5725         gdk_drawable_ref() upon event copy).
5726         (gtk_menu_stop_navigating_submenu_cb): same here.
5727
5728         * gtk/gtklist.c (gtk_list_vertical_timeout): 
5729         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
5730         * gtk/gtkclist.c (vertical_timeout): 
5731         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
5732         default-zero-intialization for unions to memset(,0,), as unions are
5733         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
5734         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
5735
5736         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
5737         g_closure_sink() warning.
5738
5739         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
5740         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
5741         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
5742         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
5743         
5744 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
5745
5746         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
5747         gtk_*_store_get, and moved to GtkTreeModel.
5748
5749         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
5750
5751         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
5752
5753         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
5754
5755         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
5756         set the func.
5757
5758         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
5759         freeze/thaw notify between setting all the properties for a cell.
5760
5761         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
5762
5763 2001-02-15  Havoc Pennington  <hp@redhat.com>
5764
5765         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
5766         the X coordinates so they're with respect to the line, rather than 
5767         with respect to the layout.
5768
5769         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
5770         Mallabone
5771
5772         * gtk/testgtk.c (create_range_controls): add vscale tests, 
5773         and inverted test
5774
5775         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
5776         #50806
5777
5778         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
5779
5780         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
5781         gtk_text_iter_is_end
5782
5783         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
5784         rename gtk_text_buffer_get_end_iter
5785
5786         * gtk/testgtk.c (create_labels): Add test for selectable
5787
5788         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
5789         the selection stuff. This code is kind of broken since it doesn't 
5790         use the theme engine.
5791
5792         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
5793         fix infinite loop and y offset problem
5794         (gdk_draw_layout_line_with_colors): fix foreground color handling
5795
5796         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
5797         that makes the label selectable.
5798         
5799         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
5800         layout when the style is set, since fonts etc. could have changed.      
5801
5802 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
5803
5804         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
5805
5806         * gtk/gtktreemodelsimple.[ch]: removed.
5807
5808 2001-02-16  Alexander Larsson  <alexl@redhat.com>
5809
5810         * gtk/gtktreemodelmapping.[ch]:
5811         New files. Implement GtkTreeModelMapping.
5812         
5813         * gtk/Makefile.am:
5814         Add gtktreemodelmapping.[ch].
5815         
5816         * gtk/gtk.h:
5817         Add gtktreemodelmapping.h
5818
5819         * gtk/treestoretest.c:
5820         Test the GtkTreeModelMapping
5821
5822 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
5823
5824         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
5825         have a demo, we might as well pass in real values.  Thanks to
5826         clahey for pointing this out.
5827
5828 2001-02-14  Havoc Pennington  <hp@pobox.com>
5829
5830         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
5831         "static" to a private function
5832         (gtk_image_menu_item_class_init): remove destroy handler,
5833         add "image" object property
5834
5835 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
5836
5837         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
5838         Add a shortcut if the window and the current clip_region doesn't
5839         overlap. This is needed when there are a lot of windows in a
5840         window. The layout test in testgtk is a good test.
5841
5842         * gdk/linux-fb/gdkwindow-fb.c:
5843         Whitespace fix.
5844
5845 2001-02-13  Sven Neumann  <sven@convergence.de>
5846
5847         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
5848
5849 2001-02-13  Alexander Larsson  <alexl@redhat.com>
5850
5851         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
5852         Don't reference last_cursor if it is null. Fixes crash when rotating
5853         the screen before having moved the mouse.
5854
5855         * gdk/linux-fb/gdkcc-fb.c: Zapp!
5856
5857         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
5858
5859         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
5860         when using 90 or 270 degrees rotation.
5861
5862 2001-02-12  Havoc Pennington  <hp@pobox.com>
5863
5864         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
5865         it always set the foreground, even if we were only using
5866         a stipple.
5867         (gdk_draw_layout_line_with_colors): new function, allow
5868         override colors
5869         (gdk_draw_layout_with_colors): new function, allow override
5870         colors
5871         (gdk_pango_layout_line_get_clip_region): function to get the clip
5872         region for a logical text range
5873         (gdk_pango_layout_get_clip_region): get the clip region for a
5874         logical text range
5875
5876         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
5877         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
5878         the right number of arguments.
5879
5880         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
5881         enhance the function to check that node data corresponds to a 
5882         view still belonging to the tree.
5883
5884         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
5885         GtkTreePath
5886         (gtk_tree_view_inserted): ditto
5887         (gtk_tree_view_child_toggled): ditto
5888
5889         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
5890         simplify this code.
5891
5892         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
5893         a PangoAttrList
5894
5895         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
5896
5897         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
5898
5899         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
5900         size in the size request 
5901         (gtk_menu_bar_size_allocate): consider toggle size here
5902
5903         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
5904         that displays a widget in the toggle slot
5905
5906         * gtk/testgtk.c: test GtkImageMenuItem
5907
5908         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
5909         
5910         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
5911         request and allocation
5912
5913         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
5914
5915         * gtk/gtkcheckmenuitem.c
5916         (gtk_check_menu_item_toggle_size_request): ditto
5917         
5918 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
5919
5920         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
5921         reference.
5922
5923         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
5924         and refuse to initialize GTK+ if they fail.
5925
5926 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
5927
5928         * configure.in: Add check for gtk-doc version.
5929
5930 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
5931
5932         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
5933         where the xpad/ypad was only being used on one side!
5934
5935 2001-02-11  Tor Lillqvist  <tml@iki.fi>
5936
5937         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
5938         function, copied from X11 version.
5939
5940         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
5941         DestroyCursor failures. The reason for the problem (despite the
5942         inconsistent messages from GetLastError()) was that
5943         DestroyCursor() cannot be called while a cursor is set in a
5944         window. Set the new cursor first and then destroy the old one.
5945         Thanks to jpe@archaeopteryx.com.
5946
5947         * gdk/win32/gdkcc-win32.c: Remove.
5948
5949         * gdk/win32/Makefile.am: Remove from here, too.
5950         
5951         * gdk/gdk.def
5952         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
5953
5954         * gtk/gtk.def
5955         * gtk/makefile.mingw.in: Updates.
5956
5957 2001-02-08  Havoc Pennington  <hp@redhat.com>
5958
5959         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
5960         add a widget to a bin that already has a child.
5961
5962         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
5963
5964         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
5965         
5966         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
5967
5968         * gdk/gdk.h: remove gdkcc.h
5969
5970         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
5971
5972         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
5973         GdkPixbuf, since the previous implementation was GdkColorContext
5974         dependent.
5975
5976         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
5977         
5978 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
5979
5980         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
5981         a sane value!
5982
5983 2001-02-08  Havoc Pennington  <hp@redhat.com>
5984
5985         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
5986         lighten them.
5987
5988 2001-02-08  Havoc Pennington  <hp@redhat.com>
5989
5990         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
5991         validation idle
5992
5993         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
5994         cell renderer
5995
5996         * demos/pixbuf-demo.c (timeout): remove deprecated
5997         gtk_widget_draw
5998
5999         * demos/testpixbuf-save.c (main): remove deprecated
6000         gtk_drawing_area_size
6001
6002         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
6003         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
6004         at the start of the allocation.
6005         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
6006         unsetup or NULL model.
6007
6008         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
6009         even/odd/sorted cells in the tree view.
6010
6011         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6012         bugfixes
6013
6014         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
6015         backgrounds with draw_flat_box using different detail for even/odd
6016         rows.
6017
6018         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
6019         row, so we can draw the alternating colors thing
6020
6021         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
6022         property from a synonym property, notify for the synonym.
6023         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
6024         (gtk_text_tag_get_property): Always return the font, even if
6025         all its fields aren't set
6026
6027         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
6028         store the attr list; it leaves us with no way to change attributes
6029         in _render according to the render flags, and no way to implement
6030         get_property. Instead store all the specific text attributes. 
6031         Separate whether an attribute is enabled from its value. Sync all
6032         properties with GtkTextTag, make them all consistent, etc.
6033
6034         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
6035         renderers can highlight the sort row/column     
6036
6037         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
6038         accessor functions to get values; this has the side effect of
6039         showing up which accessor functions were missing. Added those.
6040
6041         * gtk/gtktreeviewcolumn.h: Replace set_justification with
6042         set_alignment, to be consistent with GtkLabel, GtkMisc
6043
6044         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
6045         arrow.
6046
6047         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
6048
6049         * gtk/gtktreesortable.h: updates in here
6050
6051 2001-02-07  Sven Neumann  <sven@convergence.de>
6052
6053         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
6054         pango dimensions after painting the background. We used to draw
6055         gigantic flat boxes here.
6056
6057 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
6058
6059         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
6060         error introduced with earlier commit) (pointed out by
6061         Ollie Lho)
6062
6063 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
6064
6065         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
6066         which are no longer necessary.
6067
6068 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
6069
6070         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
6071
6072 2001-02-04  Tor Lillqvist  <tml@iki.fi>
6073
6074         * gdk/gdk.def
6075         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
6076         Provide dummy implementations.
6077
6078 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
6079
6080         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
6081
6082         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
6083         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
6084         deprecated this function.
6085
6086         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
6087         argument.
6088
6089 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
6090
6091         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
6092
6093 2001-02-03  Havoc Pennington  <hp@pobox.com>
6094
6095         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
6096         Mikael Hermansson with patch from Mikael (if there was a toggle
6097         start one after the first character in the range, this function
6098         was broken). Bug #50380
6099
6100 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
6101
6102         * configure.in: Remove confusing comment about X11.
6103
6104 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
6105
6106         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
6107         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
6108         
6109 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
6110
6111         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
6112         it breaks things on BSD. If you want to compile GTK+ with
6113         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
6114         when configuring, since GTK+ simply can't be "pure ANSI" 
6115         in the header files it uses. (#8170, Greg Hudson)
6116
6117 2001-02-02  Havoc Pennington  <hp@redhat.com>
6118
6119         * gtk/gtkwindow.c: docs
6120
6121         * gtk/gtkwidget.c: docs
6122         (gtk_widget_set_colormap): add a reference to the colormap
6123         (gtk_widget_get_default_colormap): add a reference to the colormap
6124
6125         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
6126
6127         * gtk/gtktextiter.c: docs
6128
6129         * gtk/gtkmain.c (gtk_propagate_event): docs
6130
6131         * gtk/gtkpaned.c (gtk_paned_get_position): docs
6132         (gtk_paned_set_position): docs
6133
6134         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
6135         sort interface, no implementation yet.
6136
6137         * demos/testpixbuf.c (new_testrgb_window): replace
6138         gtk_drawing_area_size() with gtk_widget_set_usize()
6139
6140         * demos/testpixbuf-drawable.c (main): ditto
6141         
6142         * gtk/testgtk.c: remove use of GtkStatusbarMsg
6143
6144         * gtk/gtktextbuffer.c: docs
6145
6146         * gtk/gtkstock.c: docs
6147
6148         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
6149
6150         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
6151
6152         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
6153         
6154         * gtk/gtkimage.c: add some docs in here
6155         (gtk_image_size_request): change name of
6156         gtk_widget_render_stock_icon
6157         (gtk_image_get_icon_set): don't dup returned string
6158         (gtk_image_get_icon_set): don't dup returned string
6159
6160         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
6161         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
6162         and gtkiconfactory.h functions
6163
6164         * gtk/gtkiconfactory.c: add some docs in here
6165
6166         * gtk/gtkmain.c (gtk_get_default_language): document
6167         (gtk_get_current_event): document
6168         (gtk_get_current_event_state): document
6169         (gtk_get_event_widget): document
6170
6171         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
6172
6173         * gtk/gtkcontainer.c: Add some documentation
6174         (gtk_container_add): give a more explanatory warning on adding an
6175         already-parented widget, this is kind of a FAQ and also a common
6176         typo that's easier to debug with a nice warning 
6177
6178         * gtk/gtkcellrenderertoggle.c
6179         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
6180         adding this, it's useless
6181         (gtk_cell_renderer_toggle_set_active): remove
6182         (gtk_cell_renderer_toggle_get_radio): add
6183
6184         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
6185         the NULL cell renderer, that doesn't make any sense to me. 
6186
6187         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
6188         demo code should never use deprecated features.
6189
6190         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
6191         code should never use deprecated features.
6192
6193         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
6194         gtk_widget_queue_clear_area deprecated
6195
6196         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
6197         deprecated
6198
6199         * gtk/gtklabel.h: mark gtk_label_get() deprecated
6200
6201         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
6202         a GdkImage deprecated, replaced by new consistently-named
6203         functions       
6204
6205         * gtk/gtkmain.h: Mark gtk_exit() deprecated
6206
6207         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
6208
6209         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
6210         deprecated
6211
6212         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
6213         so it won't appear in docs and confuse people.
6214
6215         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
6216
6217         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
6218         macros deprecated. (can't mark the type itself deprecated, since
6219         GtkProgressBar is not deprecated and we need the type decl to use
6220         GtkProgressBar)
6221
6222         * gtk/gtkpixmap.h: Mark deprecated
6223
6224         * gtk/gtkoldeditable.h: Mark deprecated
6225
6226         * gtk/gtklist.h: Mark deprecated
6227
6228         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
6229         for anything anymore.
6230
6231         * gtk/gtkctree.h: Mark deprecated
6232
6233         * gtk/gtkclist.h: Mark deprecated
6234
6235         * gtk/gtkpreview.h: Mark deprecated
6236
6237         * gtk/gtkpacker.h: Mark deprecated
6238
6239         * gtk/gtktipsquery.h: Mark deprecated
6240
6241         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
6242
6243         * gtk/gtkvruler.h: Add comment that it will move out of GTK
6244
6245         * gtk/gtkhruler.h: Add comment that it will move out of GTK
6246
6247         * gtk/gtkruler.h: Add comment that it will move out of GTK
6248
6249         * gtk/gtkgamma.h: Add comment that it will move out of GTK
6250
6251         * gtk/gtkcurve.h: Add comment that it will move out of GTK
6252
6253 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
6254
6255         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
6256         gdk_colormap_sync private since it was never exported
6257         in a header file.
6258
6259         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
6260         colormap->colors[] for StaticGray, StaticColor colormaps.
6261
6262         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
6263         was being used as if it was image->bits_per_pixel.
6264
6265         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
6266         for the image in the GdkImage structure since it isn't
6267         reconstructable, and we need it to handle packed types
6268
6269         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
6270         the assumption that on Win32 image->bits_per_pixel == image->depth,
6271         always.
6272
6273         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
6274
6275         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
6276         warning message if no converter can be found. 
6277
6278 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
6279
6280         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
6281         chars to isupper() / tolower(). (#567)
6282
6283         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
6284         to clear up 64-bit warnings. (#567)
6285
6286 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
6287
6288         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
6289         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
6290
6291         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
6292         since some people set $(libdir) separately. (#1290, David Kaelbling)
6293
6294 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
6295
6296         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
6297         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
6298         MAXPATHLEN, but the code here depends on a fixed value.)
6299         (#4524)
6300
6301 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
6302
6303         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
6304         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
6305
6306 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
6307
6308         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
6309         viewable there is no way that moving the node will cause the 
6310         focus row to become not viewable, so omit check on the visibility
6311         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
6312
6313 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
6314
6315         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
6316         selection before inserting new text.
6317
6318 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
6319
6320         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
6321         Make the sensitivity of the reparented child track that of
6322         the original parent menu item. (#34218, David Hodson)
6323
6324         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
6325         the case where the current item is destroyed properly.
6326
6327         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
6328         some edge cases with child-less menuitems.
6329         
6330 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
6331
6332         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
6333         key pop down window. (#12074, Jon K Hellan)
6334
6335 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
6336
6337         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
6338         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
6339         The solution here isn't perfect - you get an extraneous
6340         emission of "toggle", which could conceivably confuse an app,
6341         but better than the current situation. LXR search seems to
6342         indicate that no apps in GNOME CVS connect to "toggle".
6343
6344 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
6345
6346         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
6347         gtk_public_h_sources to directly here to avoid warning when
6348         building srcdir != builddir. (#9656)
6349
6350 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
6351
6352         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
6353         handlers in gtkrange.c return the proper values (TRUE == handled)
6354         (#10316).
6355
6356         This is just the tip of the iceberg, but gtkrange.c is the
6357         most common place where the propagation is problematical,
6358         and also a place where it is almost certainly safe to change
6359         this in the stable branch.
6360
6361         (You don't want right click popups on a range control or anything...)
6362
6363 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
6364
6365         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
6366         area on focus out, even if a background pixmap isn't set.
6367         (#13941)
6368         
6369 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
6370
6371         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
6372         to deal with setting the shape properly when scrolling arrows are
6373         turned on, but not visible because there is sufficient space.
6374         (#13432)
6375
6376 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
6377
6378         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
6379         items with submenus, destroy the item along with the submenu.
6380         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
6381         properly.
6382
6383         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
6384         later.
6385
6386 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
6387
6388         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
6389         the focus widget sometimes wasn't drawn with the default if there
6390         was no default widget.
6391
6392         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
6393         unreference pixmaps. 
6394
6395         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
6396         for some extra safety.
6397
6398 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
6399
6400         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
6401         the text of a cell to the old pointer value better, by
6402         copying the new text before freeing the old text. Some code
6403         cleanup. (#8079, Karl Nelson)
6404
6405 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
6406
6407         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
6408         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
6409
6410 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
6411
6412         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
6413         item from a menu, check to see if it matches 
6414         menu->old_active_menu_item, and if so, unref and clear
6415         old_active_menu_item (Patch from Pavel Cisler)
6416
6417         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
6418         menu_shell->active_menu_item, if it is the child being
6419         removed. (Patch based on that of Gene Ragan, #50337)
6420
6421 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
6422
6423         * gdk/linux-fb/gdkselection-fb.c: 
6424         * gdk/linux-fb/gdkcolor-fb.c: 
6425         * gdk/linux-fb/gdkdrawable-fb2.c: 
6426         * gdk/linux-fb/gdkfont-fb.c: 
6427         * gdk/linux-fb/gdkim-fb.c: 
6428         * gdk/linux-fb/gdkinput.c: 
6429         * gdk/linux-fb/gdkkeyboard-fb.c: 
6430         * gdk/linux-fb/gdkmain-fb.c: 
6431         * gdk/linux-fb/gdkrender-fb.c: 
6432         A bunch of whitespace cleanup.
6433         
6434 2001-01-30  Havoc Pennington  <hp@pobox.com>
6435
6436         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6437         #ifdef GTK_ENABLE_BROKEN.
6438
6439         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
6440         GTK_ENABLE_BROKEN just before including the broken headers.
6441         
6442         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
6443         deprecated types registered.
6444
6445         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
6446         we have to test the broken stuff.
6447
6448         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
6449         
6450 2001-01-30  Havoc Pennington  <hp@redhat.com>
6451
6452         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
6453         here where prev pointer was set to the wrong thing
6454
6455         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
6456         (gtk_tree_path_is_descendant): new function
6457
6458         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
6459         cached length
6460         (gtk_list_store_get_iter): don't modify iter if we can't get the
6461         path.
6462
6463         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
6464         
6465         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
6466         GtkTreeDragDest
6467
6468         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
6469         was causing segfault
6470
6471         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
6472         pointer to NULL
6473
6474         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
6475
6476         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
6477         on returning FALSE
6478         (gtk_list_store_iter_children): ditto
6479         (gtk_list_store_iter_nth_child): ditto
6480         (gtk_list_store_iter_nth_child): ditto
6481         (gtk_list_store_iter_parent): ditto
6482
6483         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
6484         on iter->user_data != NULL instead of silently accepting it.
6485         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
6486         we are returning TRUE.
6487         (gtk_tree_store_iter_children): ditto
6488         (gtk_tree_store_iter_nth_child): ditto
6489         (gtk_tree_store_iter_parent): ditto
6490         (gtk_tree_store_insert): remove handling of parent->user_data ==
6491         NULL, replace with parent == NULL       
6492
6493         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
6494         and a comment explaining things
6495
6496         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
6497         interface support to GtkTreeStore.
6498
6499         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
6500         FALSE if no prev, fix
6501
6502         * gtk/gtktreeview.c (set_source_row): use a row reference
6503         (set_dest_row): use a row reference
6504
6505 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
6506
6507         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
6508         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
6509         (gtk_tree_selection_select_iter): The same as above.
6510
6511 2001-01-26  Havoc Pennington  <hp@redhat.com>
6512
6513         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
6514         which holds a handle to a specific row (particular set of values
6515         in the model, i.e. pointer-identity row).
6516
6517         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
6518         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
6519         Still need to use it for the src/dest row saved on the drag context.
6520
6521 2001-01-26  Havoc Pennington  <hp@redhat.com>
6522
6523         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6524
6525         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6526         not offset by TREE_VIEW_HEADER_HEIGHT
6527         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6528         TREE_VIEW_HEADER_HEIGHT
6529
6530         * configure.in (included_loaders): for me, --with-included-loaders
6531         generates the error "the specified loader yes does not exist",
6532         i.e. the arg defaults to "yes", so change test for value ""
6533         to test for value "yes", and include all loaders in that case.
6534
6535         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6536
6537         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6538         handle TREE_VIEW_VERTICAL_SEPARATOR
6539         (gtk_tree_view_bin_expose): fix to consider the row offset as
6540         pointing halfway into vertical separator.       
6541         (gtk_tree_view_draw_node_focus_rect): ditto
6542
6543         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6544         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6545         (TRUE) to be called.
6546
6547         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6548         debug mode where the invalid region is colored in on invalidate,
6549         so you can see the flicker and know whether your redraw code is 
6550         doing a good job.
6551
6552         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6553         tree window coordinates (clip rect is in tree window coords)
6554
6555         * gtk/Makefile.am: add gtktreednd.[hc]
6556
6557         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6558
6559         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6560         drag-and-drop data operations on a model (so we can set up tree
6561         drag-and-drop automatically)
6562
6563         * gtk/testgtk.c: Add a window to change sensitivity in the
6564         GtkLabel test; add a way to change the entry frame in GtkEntry
6565         test
6566
6567         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6568         (gtk_entry_get_has_frame): new functions to remove the frame
6569         around an entry
6570         (gtk_entry_size_request): shrink requisition if no frame
6571         (gtk_entry_draw_focus): don't draw frame if no frame
6572
6573         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6574         checks inside a cell renderer
6575         (gtk_default_draw_option): ditto for options
6576
6577         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6578         children from the alignment, not the button
6579         (gtk_tree_view_column_init): ref/sink the column, to emulate
6580         GObject refcounting.
6581
6582         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6583         
6584         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6585         Use theme functions to draw the toggles 
6586
6587         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6588
6589         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6590         GdkPangoAttrEmbossed to use in rendering insensitive text
6591
6592         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6593
6594         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6595         using new GDK features
6596         
6597 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6598
6599         * gtk/gtkimage.c:
6600         Splitted gtk_image_clear into gtk_image_clear() and
6601         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6602         to avoid leaks.
6603
6604         * gtk/gtklabel.c (set_markup):
6605         Don't leak text.
6606
6607         * gtk/gtktextlayout.c:
6608         Always free display->shaped_objects.
6609
6610         * gtk/testgtk.c (create_clist):
6611         Don't leak custom style.
6612
6613 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6614
6615         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6616         Don't leak image. Simplify using gdk_colormap_query_color().
6617         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6618
6619         * linux-fb/gdkcolor-fb.c:
6620         Implemented gdk_colormap_query_color.
6621
6622 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6623
6624         * linux-fb/gdkcursor-fb.c:
6625         Don't leak built-in cursors.
6626
6627         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6628         Don't leak tmp_points.
6629
6630         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6631         Don't modify desc. Don't leak font if the PangoFont
6632         isn't found.
6633         
6634         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6635         Free dash_list.
6636
6637         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6638         Don't leak string.
6639         
6640 2001-01-20  Havoc Pennington  <hp@pobox.com>
6641
6642         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6643         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6644         me, matches Pango
6645
6646 2001-01-22  Havoc Pennington  <hp@redhat.com>
6647
6648         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6649
6650         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6651
6652         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6653         Remove, move back to gdk-pixbuf
6654
6655         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6656         to all the word functions
6657
6658         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6659         before doing anything on NULL layout or if we don't have the focus
6660
6661         * gtk/testtext.c (fill_example_buffer): "justification"
6662
6663         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
6664         to be called "justification" not "justify"
6665
6666         * demos/gtk-demo/textview.c (create_tags): "justification"
6667         
6668         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
6669
6670 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6671
6672         * gdk/gdkwindow.c (gdk_window_invalidate_region):
6673         Don't leak visible_region. Use visible_region instead of region.
6674         
6675         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6676         Don't do extra gdk_drawable_ref(). This is not X.
6677         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
6678         gdk_fb_focused_window is ref:ed.
6679         (gdk_fb_window_send_crossing_events): Watch out for destroyed
6680         windows.
6681
6682 2001-01-22  Alexander Larsson  <alexl@redhat.com>
6683
6684         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
6685         Don't leak the PangoFontDescriptor.
6686
6687 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
6688
6689         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
6690         when not realized.
6691         (gtk_tree_view_scroll_to_cell): Make work when not realized.
6692         (gtk_tree_view_realize): add scroll_to support
6693         (gtk_tree_view_finalize): add a finalize method.  Populate.
6694         (gtk_tree_view_insert_column): ref and sink the column.
6695         (gtk_tree_view_append_column): ref and sink the column.
6696         (gtk_tree_view_queue_draw_node): New function to handle redrawing
6697         individual nodes.  Should make the code much more efficient, if
6698         actually used.
6699
6700 2001-01-19  Havoc Pennington  <hp@redhat.com>
6701
6702         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6703         byte_offset variable was being used to mean both "offset into
6704         layout" and "offset into buffer line" which was no longer true
6705         with addition of preedit string; fix
6706
6707 2001-01-19  Havoc Pennington  <hp@redhat.com>
6708
6709         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
6710
6711         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
6712         function
6713
6714         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
6715         implement
6716
6717         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
6718         scroll_to_cell, matches TextView scroll functions better
6719         (gtk_tree_view_tree_to_widget_coords): new function
6720         (gtk_tree_view_widget_to_tree_coords): new function
6721         (gtk_tree_view_get_visible_rect): new function
6722         (gtk_tree_view_get_path_at_pos): accept negative coordinates
6723         (gtk_tree_view_draw_node_focus_rect): new function moved from
6724         draw_focus, also, use width of bin_window as width of the focus
6725         rect
6726         (gtk_tree_view_expand_row): fix bug where it didn't recognize
6727         already-expanded rows
6728         (gtk_tree_view_get_cell_rect): new function
6729         (gtk_tree_view_get_path_at_pos): return the click position
6730         relative to the passed-in cell
6731         (gtk_tree_view_set_expander_column): new function
6732
6733         * configure.in: remove gtk-config-2.0 chmod
6734
6735         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
6736         and properly handle drags with targets we don't understand
6737         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
6738         scrolling anyway
6739         (gtk_text_view_drag_drop): stop scrolling here though, and set the
6740         mark invisible
6741
6742         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
6743         function
6744         (gtk_drag_dest_get_target_list): new function
6745         (gtk_drag_dest_set_target_list): new function
6746         
6747         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
6748
6749         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
6750         related to drag-and-drop
6751
6752 2001-01-19  Alexander Larsson  <alexl@redhat.com>
6753
6754         * gdk/linux-fb/gdkprivate-fb.h:
6755         Define EMULATE_GDKFONT.
6756         Add extra pango_font stuff to GfkFontPrivate.
6757         
6758         * gdk/linux-fb/gdkdrawable-fb2.c:
6759         * gdk/linux-fb/gdkfont-fb.c:
6760         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
6761         emulation using PangoFont.
6762
6763 2001-01-17  Havoc Pennington  <hp@pobox.com>
6764
6765         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
6766         all the non-deprecated set_foo functions. Added missing object
6767         properties, and added g_object_notify() to setters. 
6768         Wrote docs.
6769         
6770 2001-01-18  Tor Lillqvist  <tml@iki.fi>
6771
6772         * gtk/gtkmain.c
6773         * gtk/gtkrc.c: (Win32) Use the new
6774         g_win32_get_package_installation_(sub)directory() functions.
6775
6776         * config.h.win32.in: New file.
6777         
6778         * config.h.win32: Removed.
6779
6780         * configure.in: Output config.h.win32.
6781
6782         * Makefile.am: Add it to EXTRA_DIST.
6783
6784         * gtk/gtk.def: Update.
6785
6786 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
6787
6788         * gtk/gtklabel.c (gtk_label_size_request): Set the
6789         attributes onto the PangoLayout even if they are newly
6790         created from label->pattern.
6791
6792 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
6793
6794         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
6795
6796         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
6797         structures in functions. Fixes bug where gtk_dataset_*
6798         was accidentally still being used in one place, causing
6799         every dest side event to be treated independently.
6800
6801         * gtk/gtkdnd.c: Remove last vestages of handling
6802         ::draw (fixes warning)
6803         
6804         * gtk/gtkentry.[ch]: Add drag and drop support.
6805
6806         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
6807         new function gtk_check_drag_threshhold() for checking
6808         to check if (dx,dy) has exceeded the threshhold for starting
6809         a drag and use it everywhere.
6810
6811 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
6812
6813         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
6814         add -I{includedir}/gtk-2.0.
6815
6816         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
6817         gdk/gdk-pixbuf.h: Doc fixups.
6818         
6819         * gtk/gtkobject.h: Remove trailing , from enum
6820
6821 2001-01-17 Alexander Larsson <alexl@redhat.com> 
6822
6823         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
6824         Doh! Mixed up x and y.
6825
6826         * gdk/linux-fb/gdkglobals-fb.c:
6827         Removed gdk_fb_pointer_grab_window_events,
6828         added _gdk_fb_pointer_grab_owner_events and
6829         _gdk_fb_keyboard_grab_owner_events.
6830
6831         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
6832         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
6833         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
6834         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
6835         Send crossing events after ungrab finished.
6836         (gdk_keyboard_grab): Set ..._owner_events
6837         (type_masks): Move out of function.
6838         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
6839         gdk_fb_keyboard_event_window): New functions, return the
6840         window an event should be targeted at. Handles grabs and
6841         event propagation. Can return NULL.
6842         (gdk_event_make): Remove event_mask checking. Now always
6843         returns an event.
6844                 
6845         * gdk/linux-fb/gdkkeyboard-fb.c:
6846         * gdk/linux-fb/gdkproperty-fb.c:
6847         * gdk/linux-fb/gdkselection-fb.c:
6848         Use new event_window/gdk_event_make() behaviour.
6849         
6850         * gdk/linux-fb/gdkmouse-fb.c:
6851         Use new event_window/gdk_event_make() behaviour.
6852         Only send motion events if in the same window.
6853         If grabbed, use cursor from window if sibling of grabbed
6854         window, and cursor from grabbed window otherwise.
6855
6856         * gdk/linux-fb/gdkprivate-fb.h:
6857         Update gdk_fb_window_send_crossing_events, gdk_event_make
6858         and grab varaible declarations. Add gdk_fb_*_event_window().
6859
6860         * gdk/linux-fb/gdkwindow-fb.c:
6861         Use new event_window/gdk_event_make() behaviour.
6862         Keep correct track of focus window.
6863         (gdk_window_set_events): Set all specific button motion masks
6864         if GDK_BUTTON_MOTION_MASK set.
6865
6866         * gtk/gtkdnd.c (gtk_drag_update):
6867         Free info->last_event if gdk_drag_motion returned FALSE.
6868
6869 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6870
6871         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
6872         Eliminate redraws when input-only windows are shown or
6873         hidden. Thanks to jpe@archaeopteryx.com.
6874
6875 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
6876
6877         * docs/faq/gtk-faq.sgml: FAQ update:
6878           - Update to bugzilla
6879           - Add GTK+ and security/SUID/SGID
6880           - Add DnD question
6881
6882 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
6883
6884         * gdk/linux-fb/gdkdnd-fb.c:
6885         Some cleanups.
6886         
6887 2001-01-15  Havoc Pennington  <hp@pobox.com>
6888
6889         * tests/testtreeview.c: add test stuff for CellRendererToggle
6890
6891         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
6892         accessor
6893
6894         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
6895         only toggle on button press (would do release like GtkButton, but
6896         we'd need implicit grab code for treeview cells)
6897
6898 2001-01-16  Tor Lillqvist  <tml@iki.fi>
6899
6900         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
6901
6902         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
6903         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
6904
6905         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
6906         to g_{locale,filename}_{to,from}_utf8 to match current API.
6907
6908         * gtk/makefile.msc.in (gtk_OBJECTS)
6909         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
6910
6911         * gtk/gtk.def: Update.
6912
6913 2001-01-15  Tor Lillqvist  <tml@iki.fi>
6914
6915         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
6916         implementaion that more closely mimics the events that an X server
6917         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
6918         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
6919         with nested preview widgets, for instance, more responsive when
6920         you move the mouse quickly into them.
6921         (find_window_for_pointer_event): Make it actually compile.
6922         (gdk_event_translate): Set send_event to the value of
6923         InSendMessage (). This doesn't really mean the same as X11's
6924         send_event flag, but is close enough, says jpe@archaeopteryx.com
6925
6926 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6927
6928         * gdk/linux-fb/gdkdnd-fb.c:
6929         Implemented drag and drop.
6930         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
6931         when it tries to free and then copy the same event (info->last_event).
6932         I am not sure about why this happens, but will continue looking.
6933
6934 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6935
6936         * gdk/linux-fb/gdkwindow-fb.c:
6937         Use gdk_window_invalidate_rect instead of
6938         gdk_window_invalidate_rect_clear to minimise flashing.
6939         When hiding windows you need to clear the root window though.
6940
6941 2001-01-15  Alexander Larsson  <alexl@redhat.com>
6942
6943         * gdk/linux-fb/gdkdrawable-fb2.c:
6944         For optization, add an full_shapes argument to gdk_fb_clip_region.
6945         If this is false, only the cliprects of the shapes are used.
6946
6947         * gdk/linux-fb/gdkprivate-fb.h:
6948         Export gdk_fb_window_peek_shape.
6949         Add full_shapes to gdk_fb_clip_region.
6950
6951         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6952         When moving a window, don't clear everything under the it, just the
6953         root window. Makes stuff faster and flash less.
6954         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
6955         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
6956         offset of the shape.
6957         
6958
6959 2001-01-12  Havoc Pennington  <hp@redhat.com>
6960
6961         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
6962         current invalid region, fixes redraw bug while scrolling the 
6963         text widget
6964
6965         * gtk/gtktextview.c, gtk/gtktextview.h:
6966         Rearrange the scrolling/validation/etc. code in a major way, 
6967         so it seems to make sense to me. Probably isn't genuinely that
6968         much better, but...
6969
6970         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
6971         notifies
6972
6973         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
6974
6975 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
6976
6977         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
6978         Hide mouse pointer while rotation. Show it afterwards.
6979
6980 2001-01-12  Alexander Larsson  <alexl@redhat.com>
6981
6982         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
6983         windows in consideration when generating clip region.
6984
6985         * gdk/linux-fb/gdkfb.h:
6986         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
6987
6988         * gdk/linux-fb/gdkprivate-fb.h:
6989         Add shape to GdkWindowFBDatat.
6990         exported gdk_fb_window_get_abs_shape().
6991         removed gdk_fb_draw_lines declaration.
6992
6993         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
6994         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
6995         send focus changes when there is a grabbed window.
6996         (gdk_window_get_pointer): Handle shaped windows.
6997         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
6998         (gdk_fb_window_peek_shape): Returns the shape for a window,
6999         handles GDK_FB_USE_CHILD_SHAPE.
7000         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
7001         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
7002         (gdk_window_shape_combine_mask): Implement.
7003
7004         * gtk/gtkwindow-decorate.c:
7005         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
7006         setting the shape of a window makes the window transparent.
7007
7008 2001-01-11  Havoc Pennington  <hp@redhat.com>
7009
7010         * gtk/gtktreemodelsimple.h: Oops, broke some macros
7011
7012 2001-01-10  Havoc Pennington  <hp@redhat.com>
7013
7014         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
7015         add this function, bug 40251
7016
7017         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7018         of type macro   
7019
7020 2001-01-11  Alexander Larsson  <alexl@redhat.com>
7021
7022         * acconfig.h:
7023         Added ENABLE_SHADOW_FB
7024
7025         * configure.in:
7026         Added --disable-shadowfb
7027
7028         * gdk/linux-fb/gdkcursor-fb.c:
7029         Update shadowfb when updating cursor
7030
7031         * gdk/linux-fb/gdkdrawable-fb2.c:
7032         Added wrappers for shadowfb that calls  the normal drawable
7033         methods, but calls gdk_shadow_fb_update(bounding box) when
7034         GdkWindows are drawed to.
7035         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
7036         which also returns the bounding box.
7037
7038         * gdk/linux-fb/gdkfb.h:
7039         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
7040
7041         * gdk/linux-fb/gdkgeometry-fb.c:
7042         Update shadowfb when scrolling window.
7043
7044         * gdk/linux-fb/gdkglobals-fb.c:
7045         Add _gdk_fb_screen_angle.
7046         
7047         * gdk/linux-fb/gdkkeyboard-fb.c:
7048         Test code for screen rotation. Shift-F2 in the xlate driver
7049         rotates the screen.
7050
7051         * gdk/linux-fb/gdkmain-fb.c:
7052         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
7053
7054         * gdk/linux-fb/gdkmouse-fb.c:
7055         Use fb_width/height instead of modeinfo.xres/yres.
7056
7057         * gdk/linux-fb/gdkprivate-fb.h:
7058         Added fb_men, fb_width, fb_height & fb_stride. When using
7059         shadow fb these can differ from the framebuffer stuff.
7060         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
7061         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
7062         _gdk_fb_screen_angle. Removed CM, RP.
7063
7064         * gdk/linux-fb/gdkrender-fb.c:
7065         Added code for shadowfb handling and screen rotation using
7066         shadowfb.
7067
7068         * gdk/linux-fb/gdkwindow-fb.c:
7069         Use fb_mem, fb_stride, fb_width, fb_height.
7070         Added recompute_rowstride to reset the rowstride of all windows.
7071         Added gdk_fb_recompute_all() which recomputes rootwindow size,
7072         window abs positions and window rowstrides. Usefull when the
7073         rotation has changed.
7074
7075 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
7076
7077         * docs/faq/gtk-faq.sgml: update to make web site updating easier
7078
7079 2001-01-10  Havoc Pennington  <hp@redhat.com>
7080
7081         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
7082         where sibling == iter
7083         (gtk_tree_store_insert_after): handle sibling == iter
7084         (gtk_tree_store_prepend): remove stamp checks
7085         (gtk_tree_store_insert_before): ditto
7086         (gtk_tree_store_append): ditto
7087         (gtk_tree_store_get_path): ditto
7088         (gtk_tree_store_get_value): ditto
7089         (gtk_tree_store_iter_has_child): ditto
7090         (gtk_tree_store_iter_n_children): ditto
7091         (gtk_tree_store_iter_nth_child): ditto
7092         (gtk_tree_store_insert_after): ditto
7093         (gtk_tree_store_is_ancestor): ditto
7094         (gtk_tree_store_iter_depth): ditto
7095         (gtk_tree_store_insert_before): assert that sibling's parent is
7096         the same as the passed-in parent
7097         (gtk_tree_store_insert_after): assert that sibling's parent is
7098         the same as the passed-in parent
7099
7100         
7101         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
7102         function to get the first iterator in a model
7103         
7104         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
7105         conventionally the "root" in this sense is just NULL afaict.
7106
7107         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
7108         where sibling == iter
7109         (gtk_list_store_insert_after): handle case where sibling == iter
7110
7111         * tests/testtreeview.c (run_automated_tests): fairly lame basic
7112         automated tests for ListStore, TreeStore
7113
7114         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
7115         (gtk_list_store_insert): update tail pointer, and fix it to work
7116         (gtk_list_store_insert_before): update tail pointer, and fix it to work
7117         (gtk_list_store_append): use tail to be faster
7118         (gtk_list_store_prepend): fix it, update tail pointer
7119         (gtk_list_store_insert_after): fix it, update tail pointer
7120
7121         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
7122         the list
7123
7124 2001-01-09  Havoc Pennington  <hp@redhat.com>
7125
7126         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
7127         is NULL due to a pending resize
7128
7129         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
7130         column width to values less than 1
7131
7132         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
7133         width to be between min/max width, and still set the width 
7134         even if autosize is turned on, so the tree view can use this 
7135         function in order to autosize.
7136         (gtk_tree_view_column_init): set initial width to 1 not 0
7137
7138         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
7139         setter function to modify column width, so we get notification
7140         (gtk_tree_view_insert_iter_height): ditto
7141         (gtk_tree_view_calc_size): ditto
7142         (gtk_tree_view_check_dirty): ditto
7143
7144         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
7145         properties to change all the interesting attributes of the tree
7146         view column.
7147         (gtk_tree_view_column_set_header_clickable): rename set_clickable
7148         (gtk_tree_view_column_get_clickable): add
7149         (gtk_tree_view_column_set_cell_renderer): don't unset the current
7150         attributes; assume a cell renderer with equivalent object
7151         properties has been swapped in. Do g_object_notify().
7152         (gtk_tree_view_column_set_visible): g_object_notify
7153         (gtk_tree_view_column_get_sizing): rename from get_col_type
7154         (gtk_tree_view_column_set_sizing): g_object_notify
7155         (gtk_tree_view_column_set_width): add g_object_notify
7156         (gtk_tree_view_column_set_min_width): ditto
7157         (gtk_tree_view_column_set_max_width): ditto
7158         (gtk_tree_view_column_set_title): ditto
7159         (gtk_tree_view_column_set_clickable): ditto
7160         (gtk_tree_view_column_set_widget): ditto
7161         (gtk_tree_view_column_set_justification): ditto
7162
7163 2001-01-09  Havoc Pennington  <hp@redhat.com>
7164
7165         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
7166         there are no rows in the model
7167
7168         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
7169         NULL, then return the start of the list
7170
7171         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
7172         if we can't get any rows from an empty model 
7173
7174         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
7175         extraneous * after function pointer typedef usage
7176
7177         * Makefile.am: don't specify full path to cp and rm
7178
7179         * gtk/gtkcellrenderertextpixbuf.c
7180         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
7181         NULL before dereferencing, fixes a segfault that happened from
7182         time to time
7183
7184         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
7185         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
7186         and reindent the function
7187         (gtk_cell_renderer_pixbuf_get_size): indentation
7188
7189         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
7190         we quit it
7191         (gtk_dialog_add_buttons_valist): add g_return_if_fail
7192         (gtk_dialog_set_default_response): New function, to set default
7193         button
7194         (gtk_dialog_set_response_sensitive): New function, to set 
7195         sensitivity of buttons
7196
7197         * gtk/gtkcellrendererpixbuf.c
7198         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
7199         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
7200
7201         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7202         handle any G_TYPE_OBJECT subclass, not just the base class, and 
7203         also boxed types.
7204         (_gtk_tree_data_list_value_to_node): ditto
7205
7206         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
7207         --gtk-debug=tree
7208
7209         * gtk/gtkmain.c: add GTK_DEBUG_TREE
7210
7211         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
7212
7213 2001-01-09  Tor Lillqvist  <tml@iki.fi>
7214
7215         * gdk/win32/gdkevents-win32.c: Implement better mouse
7216         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
7217         (find_window_for_pointer_event): New function.
7218         (gdk_event_translate): Use it when handling mouse events.
7219
7220 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
7221
7222         * configure.in:
7223         Added --with-included-loaders option
7224
7225         * gdk-pixbuf/Makefile.am:
7226         * gdk-pixbuf/gdk-pixbuf-io.c:
7227         Add support for including selected gdk-pixbuf loaders only.
7228
7229         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
7230         gtk_window_set_has_frame):
7231         Added inline documentation.
7232
7233         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
7234         * docs/reference/gdk/tmpl/windows.sgml:
7235         Added inline documentation.
7236
7237 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
7238
7239         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
7240         realizing buttons that have already been realized.
7241
7242 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
7243
7244         * tests/testtreeview.c (main): Show menu items before adding to
7245         option menu.
7246
7247         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
7248         around if we kill them.
7249
7250         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7251         Return if we pass in a NULL model.
7252
7253 2001-01-08  Havoc Pennington  <hp@redhat.com>
7254
7255         * tests/testtreeview.c: hack on this some
7256
7257         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
7258         gtk_tree_store_set_valist, v is for arrays, valist for varargs
7259         list
7260         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
7261
7262         * gtk/gtkliststore.h: Add varargs set() and get() convenience
7263         functions
7264
7265 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7266
7267         * gtk/gtkwindow-decorate.[hc]:
7268         * gtk/Makefile.am:
7269         New files. Contains an implementation of a minimal WM for
7270         linux-fb.
7271
7272         * gtk/gtkwindow.h:
7273         Add the possibility for GtkWindows to specify a frame. This
7274         is used for the window decoration code, but could concievably
7275         be used for X programs too (xmms style windows).
7276         GtkWindow->frame is the toplevel window if the window is framed.
7277         The signal frame_event gets all events that are targeted to
7278         GtkWindow->frame.
7279         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
7280         
7281         * gtk/gtkwindow.c:
7282         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
7283         Call out to gtkwindow-decorate.c for WM support in linx-fb.
7284
7285 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7286
7287         * docs/README.linux-fb:
7288         Correct filename ~/.pangoft2_aliases
7289
7290         * gdk/gdkwindow.h:
7291         Added new function gdk_window_get_decorations.
7292
7293         * gdk/linux-fb/gdkfb.h:
7294         Removed _gdk_window_get_decorations declaration.
7295         Renamed _gdk_window_set_child_handler to
7296         gdk_fb_window_set_child_handler.
7297
7298         * gdk/linux-fb/gdkwindow-fb.c:
7299         Renamed _gdk_window_set_child_handler to
7300         gdk_fb_window_set_child_handler.
7301
7302         * gdk/x11/gdkwindow-x11.c:
7303         New function gdk_window_get_mwm_hints().
7304         Implemented gdk_window_get_decorations.
7305
7306         * docs/reference/gdk/tmpl/windows.sgml:
7307         * docs/reference/gdk/gdk-sections.txt:
7308         Added gdk_window_get_decorations docs.
7309         
7310 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
7311
7312         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
7313         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
7314         gdk_fb_window_send_crossing_events):
7315         Possibly send focus events when the mouse moves from one
7316         window to another.
7317
7318 2001-01-07  Tor Lillqvist  <tml@iki.fi>
7319
7320         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
7321         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
7322         to match current API.
7323
7324         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
7325         environment variable is set, don't call g_error when on a
7326         palettized (PseudoColor) display. Some people want to use GTK+ 
7327         in 256-colour mode even though works only partially.
7328
7329         * gdk/gdk.def
7330         * gtk/gtk.def
7331         * gtk/makefile.mingw.in: Update.
7332
7333 2001-01-05  Havoc Pennington  <hp@redhat.com>
7334
7335         * tests/testtreeview.c: hack on this a bit
7336
7337         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
7338         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
7339
7340         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
7341         was spelled incorrectly
7342         (GTK_IS_TREE_MODEL_SIMPLE): ditto
7343
7344         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
7345         from gtk_tree_view_set_headers_active   
7346
7347         * gtk/gtktexttag.c:
7348         (gtk_text_tag_get_property): handle PROP_DIRECTION
7349         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
7350         properties, bug 40235
7351
7352         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
7353         forward_to_line_end
7354
7355 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
7356
7357         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
7358         modules/input/gtkimcontextxim.c: Adapt to new prototypes
7359         for unicode,locale,filename conversion functions.
7360
7361 2001-01-05  Havoc Pennington  <hp@redhat.com>
7362
7363         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
7364         broken if called on the first position in the buffer.
7365
7366         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
7367         forward_to_delimiters to be called only if we aren't already at
7368         the delimiters.
7369
7370 2001-01-05  Havoc Pennington  <hp@redhat.com>
7371
7372         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
7373
7374 2001-01-05  Alexander Larsson  <alexl@redhat.com>
7375
7376         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
7377         colormap in here. Sync from X port.
7378         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
7379         Sync from X port.
7380         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
7381         This happens now and then, and i don't think it is a bug.
7382         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
7383         != endpoint.
7384         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
7385         GDK_LINE_SOLID.
7386
7387         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
7388         some of the fields filled in at least.
7389
7390         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
7391         miLineArcD is no more, remove it from the function definition.
7392
7393 2001-01-04  Havoc Pennington  <hp@redhat.com>
7394
7395         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
7396         this
7397
7398         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
7399         user_data instead of tree_node
7400
7401         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
7402         TREE_VIEW_COLUMN_SIZE
7403
7404         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
7405         "size" field to "width" finishes bug 40061
7406
7407         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
7408         for bitfields, bug 40268
7409
7410 2001-01-04  Havoc Pennington  <hp@redhat.com>
7411
7412         Rename some stuff:
7413         
7414         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
7415
7416         s/GtkModelSimple/GtkTreeModelSimple/g;
7417         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
7418         s/gtk_model_simple/gtk_tree_model_simple/g;
7419         s/gtkmodelsimple/gtktreemodelsimple/g;
7420
7421         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
7422
7423         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
7424         s/column_set_col_type/column_set_sizing/g;
7425
7426         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
7427         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
7428
7429         s/GtkCellRendererType/GtkCellRendererState/g;
7430         
7431         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
7432         (gtk_cell_renderer_toggle_class_init): change "state" property to
7433         "active", to match GtkToggleButton
7434         (gtk_cell_renderer_toggle_get_active): new function, bug
7435         40269
7436         (gtk_cell_renderer_toggle_set_active): new function
7437         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7438         state through gtk_cell_renderer_set_active
7439
7440 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
7441
7442         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
7443         temporarily until they work again.  Brought up to date with
7444         changes in the model.
7445         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
7446         model.
7447
7448 2001-01-04  Havoc Pennington  <hp@redhat.com>
7449
7450         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
7451         equal to the line length, then position iterator before paragraph 
7452         separators. Fixes crash reported by Mikael Hermansson when
7453         pressing left arrow from the start of a line.   
7454
7455         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
7456         about byte indexes off the end
7457         (iter_set_from_char_offset): add g_error about char offsets
7458         off the end
7459
7460 2001-01-03  Havoc Pennington  <hp@redhat.com>
7461
7462         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
7463
7464         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
7465         of private functions; remove inclusion of private headers.
7466
7467         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
7468         function, so we don't need private functions in gtktextdisplay.c
7469
7470         * gtk/gtktextiterprivate.h: underscore-ification
7471
7472         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
7473         to instead say "only useful to implement widgets"
7474
7475         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
7476         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
7477         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
7478
7479         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
7480         This function was completely broken
7481
7482         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
7483
7484         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
7485
7486         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
7487
7488         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
7489
7490         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
7491
7492         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
7493
7494         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
7495         gtk_paint_layout
7496
7497         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
7498         gtk_paint_layout
7499
7500         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
7501         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
7502         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
7503         which were not implemented.     
7504
7505         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
7506         insert_pixbuf signal. Rename delete_text to delete_range since it
7507         also deletes pixbufs and child anchors. This almost closes bug
7508         40245 (still need to deal with child anchors)
7509
7510         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
7511         insert_pixbuf, change signal names as appropriate, change types of
7512         signals taking marks/tags to have the specific type, not just
7513         G_TYPE_OBJECT
7514         
7515         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
7516         closes bug 40051
7517
7518         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
7519         unnecessary remove_contents() call
7520         (gtk_option_menu_class_init): add a "changed" signal, closes
7521         bug 40039
7522         (gtk_option_menu_update_contents): emit "changed" if the 
7523         active menu item changes
7524
7525         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7526         cast to GtkObject, reported by Jonas Borgstrom
7527         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7528         we can't do stuff with side effects in finalize. Instead, spew a
7529         warning if the loader isn't closed.
7530
7531         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7532         colormap in here, non-X ports probably need to sync to this change
7533
7534         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7535         assertion that colormap != NULL, you can set the colormap to NULL
7536         if you like.
7537         
7538         * Makefile.am: remove gtk-config-2.0
7539
7540         * configure.in: Use pkg-config to locate GLib. Remove
7541         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7542         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7543         Use pkg-config to locate Pango. Output correct Pango libs to
7544         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7545
7546         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7547         files
7548         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7549         X11 pc files
7550
7551         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7552         unref from here
7553
7554 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7555
7556         * configure.in:
7557         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7558
7559 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7560
7561         * gtk/gtktextlayout.c
7562         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7563         variable when moving back onto a single line.
7564
7565 2001-01-01  Havoc Pennington  <hp@redhat.com>
7566
7567         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7568
7569         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7570
7571         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7572         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7573
7574 2001-01-01  Havoc Pennington  <hp@redhat.com>
7575
7576         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7577
7578         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7579         GtkTextAttributes
7580
7581         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7582         #40246
7583         (gtk_text_attributes_copy_values): rename from 
7584         gtk_text_attributes_copy
7585         (gtk_text_attributes_copy): a more standard GTK copy function, 
7586         which returns a new object
7587
7588 2001-01-01  Havoc Pennington  <hp@redhat.com>
7589
7590         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7591         
7592         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7593         don't fill in tree_view->priv->selection, kind of an unexpected
7594         side effect
7595
7596         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7597         gtkintl.h
7598         
7599         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7600         gtkintl.h
7601         (gtk_cell_renderer_get_property): remove calls to g_value_init
7602
7603         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7604         gtkintl.h
7605
7606         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7607         and include gtkintl.h
7608         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7609         property names
7610
7611         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7612         GtkTreeSelection
7613         (_gtk_tree_selection_new_from_with_view): rename, return
7614         GtkTreeSelection
7615         (_gtk_tree_selection_set_tree_view): rename with uscore
7616         (gtk_tree_selection_get_selected): fill in the "model" out param
7617         first, so it gets filled in even if we return at the top of the 
7618         function
7619         (gtk_tree_selection_real_select_all): add a comment and an else{}
7620         to clarify this a bit
7621         (gtk_tree_selection_real_unselect_all): add the same else{}
7622
7623         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7624         set_tree_view to have underscore prefixes, move them to the
7625         private header, fix return type of new_with_tree_view
7626         (struct _GtkTreeSelection): mark struct
7627         fields private  
7628
7629         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7630         GtkTreeModelFlags, not a guint
7631         (gtk_tree_path_prev): return gboolean not gint
7632         (gtk_tree_path_up): return gboolean not gint
7633
7634         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7635         return GtkTreeModelFlags, not a guint
7636
7637         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7638         that child model is non-null before unrefing it
7639         (g_value_int_compare_func): make this a qsort compare func, not 
7640         a boolean predicate
7641
7642         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7643         (add -umn to the end), and mark it unimplemented
7644         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7645         I don't see what it's for - doesn't the model always sort itself?
7646         (gtk_tree_model_sort_set_compare): this had the wrong signature
7647
7648         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7649         Fix the docs to say that it destructively replaces existing
7650         attributes (previously said that it added attributes).
7651         (gtk_tree_view_column_set_visible): canonicalize bool before
7652         equality testing. Also, check for realization before
7653         hiding/showing the tree_column->window; if this window could exist
7654         before realization, then it's busted and needs fixing, we can't 
7655         create GDK resources pre-realization. Also, remove
7656         superfluous queue_resize(), since set_size() does that for us.
7657         (gtk_tree_view_column_set_col_type): check realization before 
7658         using tree_column->window
7659
7660         * gtk/gtktreedatalist.c: fix filename in copyright notice
7661
7662 2000-12-31  Havoc Pennington  <hp@pobox.com>
7663
7664         * gtk/gtktextview.c: Rearrange all the
7665         scroll-while-dragging-or-selecting code to be different, not
7666         necessarily better. ;-)
7667         (gtk_text_view_scroll_to_mark): Change this
7668         function to take within_margin as a fraction instead of a pixel
7669         value, and to take alignment arguments (indicating where to align 
7670         the mark inside the visible area)
7671         
7672         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
7673         to GtkObject
7674
7675         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
7676         behavior so that offsets past the end of the line are not 
7677         allowed, and an offset equal to the line length moves the iterator
7678         to the next line
7679         (gtk_text_iter_set_line_index): make parallel change
7680         (gtk_text_iter_get_bytes_in_line): add this function
7681         
7682         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
7683         of byte indexes off the end of the line; byte index at the end of
7684         the line now returns FALSE and doesn't fill in the requested
7685         values, byte index past the end of the line is an error.  Also,
7686         don't allow -1 offset anymore, since its meaning is unclear.
7687
7688         This change exposes some bug in visual cursor motion, where we
7689         end up with a huge invalid byte index; needs fixing. Symptom of 
7690         bug is a crash when you hit up arrow.
7691         
7692         (_gtk_text_line_char_locate): match the change to byte_locate
7693
7694         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
7695         from start of line properly. fixes bug reported by Mikael
7696         Hermansson where backspace would delete all text before the
7697         cursor.
7698
7699 2000-12-30  Tor Lillqvist  <tml@iki.fi>
7700
7701         * gdk/win32/gdkwindow-win32.c
7702         (gdk_window_impl_win32_get_visible_region): New function, as in
7703         the X11 backend.
7704         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
7705         instead of duplicating the same code here.
7706
7707         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
7708         GDK_COLORMAP macro.
7709
7710         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
7711         destroy function.
7712         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
7713         access that.
7714
7715         * gtk/gtk.def: Update.
7716
7717         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
7718
7719 2000-12-30  Havoc Pennington  <hp@pobox.com>
7720
7721         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
7722         colormap on input only windows, to avoid special cases all over
7723         the code for these windows.
7724
7725 2000-12-26  Tor Lillqvist  <tml@iki.fi>
7726
7727         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
7728         we are on a palettized display ("PseudoColor" in X11), as the code
7729         for that doesn't work anyway, and never has.
7730
7731 2000-12-22  Alexander Larsson  <alexl@redhat.com>
7732
7733         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
7734         Don't use isprint() for chars > 255.
7735
7736 2000-12-21  Havoc Pennington  <hp@redhat.com>
7737
7738         * tests/testtreeview.c: more work
7739
7740 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7741
7742         * docs/README.linux-fb:
7743         Update the docs to the new pangoft2 way.
7744
7745 2000-12-21  Alexander Larsson  <alexl@redhat.com>
7746
7747         * configure.in:
7748         For linux-fb get the pangoft2 cflags and libs. This needs a recent
7749         pango version.
7750         Remove modules/linux-fb/Makefile.
7751
7752         * gdk/linux-fb/gdkdrawable-fb2.c:
7753         Render glyphs using freetype.
7754
7755         * gdk/linux-fb/gdkfb.h:
7756         Add new fb-specific functions needed for managing windows.
7757
7758         * gdk/linux-fb/gdkmain-fb.c:
7759         Remove gdk_font_init/fini() calls.
7760
7761         * gdk/linux-fb/gdkpango-fb.c:
7762         Remove old implementation. Use pangoft2 instead.
7763
7764         * gdk/linux-fb/gdkprivate-fb.h:
7765         Remove PangoFBFont and related stuff.
7766
7767         * gdk/linux-fb/gdkwindow-fb.c:
7768         Implement drawable->get_visible_region.
7769         Implement support for _gdk_window_set_child_handler () and
7770         _gdk_window_get_decorations().
7771
7772         * modules/Makefile.am:
7773         Remove linux-fb subdir.
7774
7775         * modules/linux-fb/*:
7776         Removed all.
7777         
7778 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
7779
7780         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
7781         calls, as they are no longer needed.
7782
7783         * gtk/gtktreemodelsort.c: Fix up the comparison code.
7784         
7785         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
7786         figure out how to emit a signal on an interface.
7787
7788 2000-12-20  Havoc Pennington  <hp@redhat.com>
7789
7790         * tests: new directory to contain tests, gtk/test* should move
7791         here sometime (with appropriate on-cvs-server hackery)
7792
7793         * tests/testtreeview.c, tests/Makefile.am: a test
7794         
7795         * configure.in (AC_OUTPUT): add tests/Makefile
7796
7797         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
7798         and "invisible_set" which were missing
7799
7800         * gtk/gtkrbtree.h: some cheesy indentation fix
7801         
7802 2000-12-20  Alexander Larsson  <alexl@redhat.com>
7803
7804         * gtk/gtkinvisible.c (gtk_invisible_realize):
7805         Attach the style to the window so that the style it is not
7806         leaked when unrealizing the window.
7807
7808 2000-12-18  Havoc Pennington  <hp@redhat.com>
7809
7810         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
7811         begin/end user action where appropriate
7812         (gtk_text_view_commit_handler): add begin/end user action
7813
7814         * gtk/gtktextbuffer.c: add begin/end user action signals, and
7815         bracket interactive operations with begin/end user action pair.
7816         
7817         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
7818         "interactive" arg from insert_text and delete_text signals.
7819         Add begin_user_action, end_user_action signals
7820         (gtk_text_buffer_begin_user_action): 
7821         (gtk_text_buffer_end_user_action): New functions to delimit 
7822         a user-visible action
7823
7824         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
7825         signals.
7826         
7827 2000-12-18  Havoc Pennington  <hp@redhat.com>
7828
7829         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
7830         was pretty non-working.
7831
7832         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
7833         by passing the length to g_utf8_validate().
7834
7835 2000-12-16  Havoc Pennington  <hp@pobox.com>
7836
7837         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
7838         Port to GObject, can go back in gdk-pixbuf after setting up 
7839         a gdk-pixbuf-marshal.h header over there.
7840
7841         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
7842         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
7843         args
7844         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
7845         set
7846         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
7847         here, do it when we create the buttons later
7848         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
7849         (gtk_tree_view_map): paranoia checks that column->button is shown 
7850         and unmapped
7851         (gtk_tree_view_size_request): only request visible children.
7852         Move header size calculation in here, for cleanliness, and 
7853         to maintain invariants for child widgets if we eventually 
7854         let users set different children inside the buttons
7855         (gtk_tree_view_map_buttons): factor out code to map buttons,
7856         since it was being called several times
7857         (gtk_tree_view_size_allocate_buttons): move_resize the drag
7858         windows instead of just moving them; their height may change 
7859         if we allow random widgets in there, or the theme changes.
7860         (gtk_tree_view_size_allocate): move button size allocation 
7861         above emitting the scroll signals, to ensure a sane state when we
7862         hit user code
7863         (gtk_tree_view_button_release): remove queue_resize after
7864         tree_view_set_size(), set_size() will handle any resize queuing
7865         that's needed
7866         (gtk_tree_view_focus_in): just queue a draw, don't fool with
7867         draw_focus goo
7868         (gtk_tree_view_focus): use gtk_get_current_event() and
7869         gdk_event_get_state()
7870         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
7871         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
7872         semicolon
7873         (gtk_tree_view_create_button): show the button here
7874         (gtk_tree_view_button_clicked): actually emit the clicked signal
7875         on the column
7876         (_gtk_tree_view_set_size): return right away if the size is
7877         unchanged, as a cheesy optimization
7878         (gtk_tree_view_setup_model): rename set_model_realized to 
7879         setup_model to match the flag that indicates whether we've 
7880         called it
7881         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
7882         exist, because set_scroll_adjustment does that and it shouldn't
7883         matter what order you call these in
7884         (gtk_tree_view_get_vadjustment): ditto
7885         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
7886         for paranoia
7887         (gtk_tree_view_set_headers_visible): call
7888         gtk_tree_view_map_buttons() instead of using cut-and-paste code
7889         (gtk_tree_view_append_column): clarify whether the return value
7890         is the count of columns before or after, and do the increment 
7891         separately from the return statement so you can tell from the code.
7892         (gtk_tree_view_remove_column): ditto
7893         (gtk_tree_view_insert_column): ditto
7894         (gtk_tree_view_get_column): remove g_return_if_fail for columns
7895         outside the existing range, the docs say that outside-range
7896         columns are allowed, so we handle them as documented. (Presumably
7897         this allows a nice loop with column != NULL as test.)
7898         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
7899         mean (left/right/center etc.).
7900         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
7901         (gtk_tree_view_expand_row): add docs
7902         (gtk_tree_view_collapse_row): add docs
7903
7904         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
7905         function to emit the clicked signal on a column
7906         
7907         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
7908         state of an event
7909         (gdk_event_get_time): don't treat GDK_SCROLL 
7910         as a button event, remove default case from switch so gcc 
7911         will whine if we don't explicitly handle all event types
7912
7913         * gtk/gtktreeselection.h: added some FIXME 
7914         
7915         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
7916         "columns" to "n_columns" and "column" to "columns" for clarity
7917
7918 2000-12-16  Havoc Pennington  <hp@pobox.com>
7919         
7920         * gtk/gtktextiter.c: General cleanup of the log attr iteration
7921         stuff. This should make e.g. the delete key work again in the
7922         text widget...
7923         (gtk_text_iter_forward_cursor_positions): handle negative count
7924         (gtk_text_iter_backward_cursor_positions): handle negative count
7925         (gtk_text_iter_forward_word_ends): handle negative count
7926         (gtk_text_iter_backward_word_starts): handle negative count
7927
7928         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
7929         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
7930         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
7931         GObject. No doubt will cause breakage.
7932
7933         * demos/gtk-demo/textview.c: remove hacks around
7934         non-GObject-ification of the text objects
7935
7936         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
7937         the text tag
7938         
7939 2000-12-14  Havoc Pennington  <hp@pobox.com>
7940
7941         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
7942         that we have Xrender
7943
7944 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
7945
7946         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
7947         Add two virtualized functions gdk_drawable_get_clip_region - to
7948         get the clip region when drawing.
7949         
7950         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
7951         use invalidate_region.
7952
7953         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
7954         region.
7955
7956         * acconfig.h configure.in: Check for Xft. For now, assume
7957         that if Xft is found, Pango was compiled with Xft support
7958         as well.
7959
7960         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
7961         gdk_colormap_query_color().
7962         
7963         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
7964         with Xft if appropriate.
7965
7966         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
7967         a pangoxft context if we have XFT and the environment
7968         variable GD_USE_XFT is set.
7969         
7970         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
7971         and also possibly an XftDraw structure.
7972
7973         * gtk/gtkfontsel.c: Handle the case where the font from the
7974         style doesn't match any of the fonts a bit better.
7975         
7976         * gtk/testgtk.c: Add tabs between directional segments for
7977         hebrew/arabic test. (Not really necessary, just a little
7978         prettier.)
7979
7980 2000-12-14  Havoc Pennington  <hp@redhat.com>
7981
7982         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
7983         reading a file
7984
7985 2000-12-14  Havoc Pennington  <hp@redhat.com>
7986
7987         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
7988         unused call to get_last_line()
7989
7990         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
7991         here until boxed is working (and maybe after that - we should
7992         really not gratuitously break old code)
7993
7994         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
7995         specific types for font_desc and tabs args, move them to
7996         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
7997         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
7998
7999         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
8000         use GTK_TYPE_POINTER for signal signatures as a hack-around
8001
8002         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
8003         PangoTabArray
8004
8005         * gtk/gtktextlayout.c (line_display_iter_to_index): 
8006         make static
8007         (line_display_index_to_iter): make static
8008
8009         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8010         to marshal a string not a boxed
8011
8012         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
8013
8014         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
8015         since the UTF-8 isn't validated yet
8016
8017         * gtk/gtktextsegment.c (char_segment_check_func): don't require
8018         lines to end in '\n'
8019         
8020         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
8021         forward_to_delimiters, and grapheme boundaries
8022         (gtk_text_view_delete_from_cursor): properly handle non-newline
8023         delimiters, and grapheme boundaries
8024
8025         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
8026         to gtk_text_iter_forward_to_delimiters, and make it work properly
8027         if empty lines end with a character other than '\n'
8028
8029         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
8030         position
8031
8032 2000-12-15  Tor Lillqvist  <tml@iki.fi>
8033
8034         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
8035
8036         * gtk/gtk.def
8037         * gdk/gdk.def: Update.
8038
8039         * gdk/win32/gdkmain-win32.c
8040         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
8041         gdkmain-win32.c here.
8042
8043         * gdk/win32/makefile.mingw.in (all): No need to make
8044         gdk-win32res.o here, the makefile one step up will call us to make
8045         it.
8046
8047         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
8048         gdkkeys-win32.
8049
8050         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
8051
8052         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
8053         call to g_source_add().
8054
8055         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
8056         leak. Thanks to Andreas Kemnade.
8057
8058 2000-12-13  Havoc Pennington  <hp@pobox.com>
8059
8060         * gtk/gtktextbtree.h: Remove double _ in front of some functions
8061
8062         * gtk/gtktext*.[hc]: update accordingly
8063         
8064 2000-12-13  Havoc Pennington  <hp@pobox.com>
8065
8066         * gtk/gtktextbtree.h: Put _ in front of every function in this 
8067         header file
8068
8069         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
8070
8071 2000-12-13  Alex Larsson  <alexl@redhat.com>
8072
8073         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
8074         Add support for ps2 intellimouse.
8075
8076         * gdkkeyboard-fb.c:
8077         Move shift-F1 repaint handling to xlate handler only.
8078         
8079         * docs/README.linux-fb:
8080         Add imps2 to docs.
8081         Document the new refresh keys.
8082         
8083 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
8084
8085         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
8086
8087         * gtk/gtkbox.c: change property types from (u)long to (u)int for
8088         ::position and ::padding.
8089
8090         * gtk/gtkcontainer.c: make ::border_width an INT property.
8091
8092         * gtk/gtkpacker.c: make ::position an INT property.
8093
8094         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
8095         guard against NULL h/v scrollbars, since this is used at construction
8096         time.
8097
8098         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
8099         internal gtk_clist_constructor().
8100
8101         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
8102         gtk_ctree_constructor().
8103
8104         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
8105         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
8106
8107         * docs/reference/Makefile.am: fun stuff, disabled docs generation
8108         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
8109
8110         * gtk/gtkwidget.[hc]:
8111         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
8112         and gtk_widget_get().
8113         (gtk_widget_new): use g_object_new_valist().
8114         (gtk_widget_set): use g_object_set_valist().
8115
8116         * gtk/gtkobject.[hc]:
8117         removed gtk_object_arg_get_info(), gtk_object_getv(),
8118         gtk_object_query_args(), gtk_object_newv(),
8119         gtk_object_class_add_signals(),
8120         gtk_object_class_user_signal_new(),
8121         gtk_object_class_user_signal_newv(),
8122         gtk_object_arg_set(), gtk_object_arg_get(),
8123         gtk_object_args_collect(),
8124         gtk_object_default_construct(),
8125         gtk_object_constructed(),
8126         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
8127         removed nsignals, signals and n_args members from GtkObjectClass.
8128         (gtk_object_new): use g_object_new_valist().
8129         (gtk_object_set): use g_object_set_valist().
8130         (gtk_object_get): use g_object_get_valist().
8131         
8132         * gtk/gtkcompat.h: define gtk_object_default_construct().
8133         
8134         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
8135         g_object_new().
8136
8137         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
8138         fucntions, cleaned up method assignments (make sure your structures
8139         are setup properly before calling out). removed all GTK_CONSTRUCTED
8140         hacks ;)
8141
8142 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
8143
8144         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
8145         off-by-one error in checks. (Dave Lambert)
8146
8147 2000-12-12  Alexander Larsson  <alexl@redhat.com>
8148
8149         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
8150         Don't free gdk_fb_keyboard twice.
8151
8152 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
8153
8154         * gtk/testgtk.c:
8155         (create_tooltips): 
8156         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
8157         use GObject swapped_signal:: properties instead.
8158
8159         * gtk/gtkcellrenderertoggle.c: 
8160         * gtk/gtkcellrenderertextpixbuf.c: 
8161         * gtk/gtkcellrenderertext.c: 
8162         * gtk/gtkcellrendererpixbuf.c: 
8163         * gtk/gtkcellrenderer.c:
8164         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
8165         missing warnings for invalid property ids, install properties
8166         with g_object_class_install_property() now.
8167         
8168         * gtk/gtksignal.c:
8169         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
8170         
8171 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
8172         
8173         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
8174         to determine if a window is the focus widget within
8175         its toplevel.
8176
8177         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
8178         to be boolean.
8179
8180         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
8181         of the case where the container CAN_FOCUS to here instead
8182         of having it in each individual move-the-focus place.
8183
8184         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
8185         focusing to be geometric in a much more obvious sense. Arrowing
8186         around is still non-intuitive because it isn't perfect and
8187         because entries, etc, grab the arrow keys, but it at least
8188         usually will do what you expect now.
8189         
8190         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
8191         file.
8192
8193         * gtk/gtknotebook.c: Change tabs to be a single item in
8194         the focus chain. Make movement of focus on tabs with arrow
8195         keys wrap around.
8196         
8197         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
8198         CHECK_FIND_CHILD macro to give informative error messages
8199         instead of silent returns.
8200
8201         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
8202         flag since we handle GdkReturn on the tabs.
8203
8204         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
8205         windows rather than sending expose events directly.
8206
8207         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
8208         definition for GtkNotebookPage into .c file, since it is private.
8209
8210         * gtk/testgtk.c (create_notebook): Add option for 
8211         testing borderless notebook.
8212
8213         * gtk/testgtk.c (page_switch): Removed egregious poking
8214         around in GTK+ internals.
8215
8216         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
8217
8218         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
8219         properly through gtk_clist_focus. Make the title headers a
8220         single item in the tab-focus chain, and make left-right wrap
8221         around.
8222
8223         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
8224         focus method so that wrapping around works properly.
8225
8226         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
8227         that is handled for the widget now. 
8228
8229 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
8230
8231         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
8232         widgets as TOPLEVEL.
8233
8234         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
8235         TOPLEVEL widgets are containers.
8236
8237         * gtk/gtkinvisible.h: Remove useless include.
8238
8239 2000-12-11  Havoc Pennington  <hp@redhat.com>
8240
8241         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
8242         Handle chopping off \r\n and 0x2029 in addition to \n before
8243         passing to PangoLayout
8244
8245         * gtk/gtkimcontextsimple.c
8246         (gtk_im_context_simple_get_preedit_string): 
8247         return an empty string if no match is pending
8248
8249         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
8250         assertion that the returned preedit string was sane
8251
8252         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
8253         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
8254         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
8255
8256 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
8257
8258         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
8259         Fix up finalizer to chain to its parent.
8260
8261 2000-12-11  Alexander Larsson  <alexl@redhat.com>
8262
8263         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
8264         Clearified the difference between the keyboard types. Wrote a note
8265         about the magic sysrq key to get out of raw mode.
8266
8267 2000-12-09  James Henstridge  <james@daa.com.au>
8268
8269         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
8270         member to hold masks for detecting the start of a protocol packet.
8271         (mouse_devs): add packet start masks for ps2 and ms device types.
8272         Left the mask for fidmour blank, as I have no idea what it should
8273         be.
8274         (handle_mouse_io): skip bytes until we get to the start of a
8275         packet.  My Logitech mouse seems to be passing an extra NULL pad
8276         byte, and GPM does a similar thing here.
8277         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
8278         this is the ms mouse driver.
8279         (gdk_fb_mouse_ms_packet): fix up button handling, which was
8280         completely broken except for button1.  It was checking the wrong
8281         bit in the packet for the status of the right mouse button, and
8282         wrongly assuming right == button2 rather than 3.  I fixed that and
8283         also added support for middle button (button2).
8284
8285 2000-12-08  Havoc Pennington  <hp@redhat.com>
8286
8287         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
8288         that cause a segfault on text insertion
8289
8290         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
8291         warning
8292
8293         * gtk/gtktextiter.c (test_log_attrs): use
8294         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
8295
8296         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
8297         Get log attrs for a line, using a cache stored on the buffer
8298         
8299         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
8300         reported by Jeff Franks
8301
8302 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8303
8304         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
8305         /dev/ttyS0 -> /dev/mouse
8306
8307 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8308
8309         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
8310         Added dummy gdk_fontset_load.
8311
8312 2000-12-08  Alexander Larsson  <alexl@redhat.com>
8313
8314         * docs/README.linux-fb:
8315         * docs/Makefile.am:
8316         Initial GtkFB docs.
8317         
8318         * gdk/linux-fb/Makefile.am:
8319         Define GDK_DATA_PREFIX.
8320
8321         * gdk/linux-fb/gdkmain-fb.c:
8322         Fix typo.
8323         Change default display to /dev/fb0.
8324
8325         * gdk/linux-fb/gdkpango-fb.c:
8326         Add $(prefix)/share/fonts/ to font path.
8327         
8328 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8329
8330         * gdk/linux-fb/gdkkeyboard-fb.c:
8331         New file containing the abstracted keyboard driver. Most code
8332         taken from gdkinput-ps2.c
8333
8334         * gdk/linux-fb/gdkinput-ps2.c:
8335         Removed file.
8336         
8337         * gdk/linux-fb/Makefile.am:
8338         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
8339
8340         * gdk/linux-fb/gdkcolor-fb.c:
8341         display->fb was renamed to display->fb_fd.
8342
8343         * gdk/linux-fb/gdkcursor-fb.c:
8344         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8345
8346         * gdk/linux-fb/gdkinput.c:
8347         Moved gdk_input_init here from gdkinput-ps2.c
8348
8349         * gdk/linux-fb/gdkmain-fb.c:
8350         display->fb was renamed to display->fb_fd.
8351         Now the tty and the console is opened here instead
8352         of in the keyboard driver. Also check GDK_VT to see what
8353         tty to open.
8354         Move gdk_beep () here from gdkinput-ps2.c
8355         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8356
8357         * gdk/linux-fb/gdkmouse-fb.c:
8358         Add header.
8359         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8360         Return correct keyboard modifiers.
8361         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
8362
8363         * gdk/linux-fb/gdkprivate-fb.h:
8364         Add tty and vt info to display.
8365         Add orignal modeinfo storage to display
8366         Update global functions
8367
8368         * gdk/linux-fb/gdkwindow-fb.c:
8369         Added gdk_fb_window_find_focus().
8370         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8371
8372 2000-12-07  Havoc Pennington  <hp@pobox.com>
8373
8374         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
8375         function, noticed by Alex
8376
8377 2000-12-06  Elliot Lee  <sopwith@redhat.com>
8378
8379         * configure.in: Detect freetype properly
8380
8381         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
8382         above.
8383
8384 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8385
8386         * gdk/linux-fb/Makefile.am:
8387         Add gdkmouse-fb.c
8388         
8389         * gdk/linux-fb/gdkmouse-fb.c:
8390         New file. Abstracted the mouse drivers a bit.
8391
8392         * gdk/linux-fb/gdkcursor-fb.c:
8393         The cursor hide/show functions was moved here from gdkinput-ps2.c.
8394
8395         * gdk/linux-fb/gdkinput-ps2.c:
8396         Removed old mouse handling code. Moved cursor handling code
8397         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
8398         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
8399         gdk_mouse_get_info.
8400
8401         * gdk/linux-fb/gdkmain-fb.c:
8402         Pass NULL pointers for x,y in gdk_mouse_get_info call.
8403
8404         * gdk/linux-fb/gdkprivate-fb.h:
8405         Removed public gdk_fb_find_common_ancestor, added and renamed
8406         functions for the new mouse handling code.
8407
8408         * gdk/linux-fb/gdkwindow-fb.c:
8409         Moved gdk_fb_window_send_crossing_events here. added global
8410         variable gdk_fb_window_containing_pointer. made
8411         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
8412         renamed to gdk_mouse_get_info.
8413
8414 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8415
8416         * gdk/linux-fb/gdkevents-fb.c:
8417         Update to match latest gmain/gsource changes.
8418
8419         * gdk/linux-fb/gdkinput-ps2.c:
8420         Bogus gdk_keymap_get_entries_for_keycode implementation so that
8421         it links. Will be implemented later.
8422
8423 2000-12-03  Havoc Pennington  <hp@pobox.com>
8424
8425         * gdk/Makefile.am: add gdkkeys.[hc]
8426
8427         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
8428         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
8429
8430         * acconfig.h, configure.in: add checks and command line options
8431         for XKB
8432
8433         * gdk/x11/gdkkeys-x11.c: Implement the above functions
8434         
8435         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
8436         and group in the key event
8437
8438         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8439         field with the low-level hardware key code, and a group
8440         field with the keyboard group
8441
8442         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
8443         and declare a couple globals used for keymap handling
8444         
8445         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
8446         hold down Shift-Control and type a hex number to get a Unicode 
8447         character corresponding to the hex number
8448         (gtk_im_context_simple_get_preedit_string): Fix cursor position
8449         (return bytes not chars)
8450
8451 2000-12-05  Elliot Lee  <sopwith@redhat.com>
8452
8453         * gdk/gdkcolor.h: Make GdkColor specify element sizes
8454         to avoid waste on 64-bit platforms.
8455
8456 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
8457
8458         * INSTALL: Fix link to PNG home, remove reference
8459         to fribidi.
8460
8461         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
8462         
8463         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
8464         tested.)
8465
8466         * gtk/gtkcheckmenuitem.c: Permanently turn on
8467         always_show_toggle.
8468
8469         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
8470         be NULL. (Vladimir Klebanov, #26545)
8471
8472         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
8473         some signed/unsigned comparison problems. (#6510,
8474         David Kaelbling)
8475
8476         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
8477         return type to boolean (Oskar Liljeblad, #18648)
8478
8479 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8480
8481         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
8482         Remove bogus colormap setting.
8483
8484 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8485
8486         * gdk/linux-fb/gdkcolor-fb.c:
8487         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
8488
8489         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
8490         Must set colormap.
8491         
8492 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
8493
8494         * docs/tutorial/gtk-tut.sgml: DND updates
8495
8496 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
8497
8498         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8499         Remove old debug g_warning().
8500         (gdk_fb_draw_drawable): The src argument can be either a wrapper
8501         or an implementation, just pass the implementation to draw_drawable_2.
8502         
8503         * gdk/linux-fb/gdkprivate-fb.h:
8504         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
8505
8506         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8507         clear and invalidate area when window is destroyed.
8508         (send_map_events): Remove old commented out code.
8509
8510 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8511
8512         * gdk/linux-fb/gdkpango-fb.c:
8513         Use italic instead of oblique in font aliases.
8514         
8515         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
8516         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
8517         other unsupported functions.
8518
8519 2000-12-04  Havoc Pennington  <hp@redhat.com>
8520
8521         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8522
8523         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8524
8525         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8526
8527         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8528         hack to avoid infinite loops (synthetic expose event) - 
8529         Owen has more appropriate fixes in a branch he'll check in later.
8530
8531         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8532         separator, CR, and CRLF as line ends
8533
8534         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8535         into lines using pango_find_paragraph_boundary(); other bits of
8536         the widget are still going to be broken if the boundary isn't '\n'
8537         though
8538
8539 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8540
8541         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8542         multiply.
8543
8544         * gdk/linux-fb/gdkpango-fb.c:
8545         Copied some 26.6 scaling macros from pango to clean up the rounding.
8546         (pango_fb_font_get_glyph_info): Correct sign on x value.
8547
8548         * gdk/linux-fb/gdkprivate-fb.h:
8549         Removed unreferenced external functions.
8550
8551         * modules/linux-fb/Makefile.am: Use ` instead of '.
8552
8553         * modules/linux-fb/basic.c:
8554         Remove dead code. In particular the dummy lang engine which broke all
8555         pango layouts in GtkFB. Don't include tables-big.i anymore.
8556
8557         * modules/linux-fb/tables-big.i:
8558         Upgrade to latest version from pango. Left for reference, basic_ranges
8559         moved to basic.c.
8560         
8561 2000-12-04  Havoc Pennington  <hp@redhat.com>
8562
8563         Fix bugs Alex found:
8564         
8565         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8566         to "draw"
8567
8568         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8569
8570         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8571
8572         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8573         implementation in here, apparently the expose() implementation was
8574         dead code.
8575
8576 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8577
8578         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8579         Return positive descent.
8580
8581 2000-12-02  Havoc Pennington  <hp@pobox.com>
8582
8583         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8584         method and signal
8585         
8586         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8587         calls gdk_window_process_updates() to push the exposes through
8588         (gtk_widget_class_init): No more draw signal, no
8589         gtk_widget_real_draw()  
8590         
8591         * gtk/gtkbin.c (gtk_bin_draw): remove
8592
8593         * gtk/gtkbox.c (gtk_box_draw): remove
8594
8595         * gtk/gtkbutton.c (gtk_button_draw): remove
8596
8597         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8598
8599         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8600
8601         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8602
8603         * gtk/gtkclist.c (gtk_clist_draw): remove
8604
8605         * gtk/gtkentry.c (gtk_entry_draw): remove
8606
8607         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8608
8609         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8610
8611         * gtk/gtkframe.c (gtk_frame_draw): remove
8612
8613         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8614
8615         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8616
8617         * gtk/gtklayout.c (gtk_layout_draw): remove
8618
8619         * gtk/gtklist.c (gtk_list_draw): remove
8620
8621         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8622
8623         * gtk/gtkmenu.c (gtk_menu_draw): remove
8624
8625         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8626
8627         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8628
8629         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8630
8631         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8632
8633         * gtk/gtkpacker.c (gtk_packer_draw): remove
8634
8635         * gtk/gtkrange.c (gtk_range_draw): remove
8636
8637         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8638
8639         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8640
8641         * gtk/gtktable.c (gtk_table_draw): remove
8642
8643         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8644
8645         * gtk/gtktext.c (gtk_text_draw): remove
8646
8647         * gtk/gtktextview.c (gtk_text_view_draw): remove
8648
8649         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8650
8651         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8652
8653         * gtk/gtktree.c (gtk_tree_draw): remove
8654
8655         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8656
8657         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8658
8659         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8660
8661         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8662
8663         * gtk/gtkvscale.c (gtk_vscale_draw): remove
8664
8665         * gtk/gtkwindow.c (gtk_window_draw): remove
8666
8667 2000-20-01  Anders Carlsson  <andersca@gnu.org>
8668
8669         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
8670         a GtkToggleButton is both insensitive and active, it was being
8671         drawn by the GtkButton draw handler which doesn't check the
8672         state. Now it's calling gtk_toggle_button_paint instead.
8673         
8674 2000-12-01  Havoc Pennington  <hp@redhat.com>
8675
8676         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
8677         dangling pointers to the appearance attributes from the 
8678         line display
8679
8680         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
8681         width/height to mean "full width/height of drawable"
8682
8683         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
8684         click to select word/line
8685         
8686         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
8687         when getting log attrs. Get a slice, so that pixmaps and stuff
8688         are properly handled.
8689
8690         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
8691         paste into the selection (replaces selection now, previously
8692         crashed or added to selection). Reveals longstanding btree bug -
8693         select multiple lines, middle-click on the selection, boom. This
8694         isn't related to my changes though.
8695
8696         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
8697         PangoLogAttrs changes
8698         (gtk_entry_move_backward_word): ditto
8699
8700         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
8701         functions return bool whether the iter moved onto a
8702         dereferenceable position.
8703  
8704         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
8705         functions for motion in terms of display lines.
8706
8707         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
8708         get the buffer a mark is inside
8709         
8710 2000-12-01  Alexander Larsson  <alexl@redhat.com>
8711
8712         * gdk/linux-fb/Makefile.am:
8713         * modules/linux-fb/Makefile.am:
8714         Freetype 2 final uses freetype-config
8715
8716         * gdk/linux-fb/gdkpango-fb.c:
8717         Upgrade to use Freetype 2 final.
8718         More flexible support for font aliases, this also fixes a bug with
8719         GtkFontSelector, as the aliases must be visible in the font/family list,
8720         or GtkFontSelector reads uninitialized memory.
8721
8722 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
8723
8724         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
8725         XGetIMValues to properly terminate variable argument list, and do
8726         NULL return check for ic_values and xim_styles.
8727
8728         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
8729         Restore preedit state after XmbResetIC().
8730         
8731         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
8732         XvaCreateNestedList() should take XvaNestedList, but not
8733         XvaNestedList*.
8734
8735         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
8736         preedit_draw_callback, preedit_caret_callback): Match
8737         "preedit-changed" signal name to "preedit_changed" to be
8738         consistent to the spec.
8739
8740         * gtk/gtkimcontextsimple.c (check_table):
8741         Match "preedit-changed" to "preedit_changed" to be consistent
8742         to the spec.
8743
8744 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
8745
8746         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
8747         gc->clip_region == NULL>
8748
8749 2000-11-30  Tor Lillqvist  <tml@iki.fi>
8750
8751         Changes by Hans Breuer:
8752         
8753         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
8754         Dont't use negative width and height as max_hints. This fixes
8755         Owen's recent testgtk changes for win32.
8756
8757         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
8758         gdk_win32_hdc_release): These are exported and may be called with
8759         other drawable types than our GdkDrawableImplWin32 (?).
8760
8761         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
8762         so always #define USE_BACKING_STORE.
8763
8764         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
8765         of printf for debugging output.
8766
8767         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
8768         
8769         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
8770
8771         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
8772         declaration.
8773
8774         * gtk/gtktexttypes.h: Ditto.
8775
8776         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
8777         (GDK_VoidSymbol) also if in case of arg check failure.
8778
8779         * gtk/gtkimcontextsimple.c
8780         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
8781         position to the pointer, but to the variable it points to.
8782
8783         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
8784
8785         * gtk/gtk.def: Updates.
8786
8787 2000-11-29  Elliot Lee  <sopwith@redhat.com>
8788
8789         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
8790         GTK_TYPE_TREE_MODEL.
8791
8792 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8793
8794         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
8795         Set the size of the font from the description.
8796         (gdk_text_width): Gross hack that calculates the width
8797         of text by text_length * size/2. This is necessary because
8798         GtkLabel does some ugly gtk_string_width call to calculate
8799         an good size.
8800         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
8801
8802 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
8803
8804         * docs/tutorial/gtk-tut.sgml: DND updates
8805
8806 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8807
8808         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
8809         If you pass width or height == 0 to gdk_window_clear_area they
8810         should be calculated from the window size.
8811
8812 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8813
8814         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
8815         a grab, but no grab-cursor, use the cursor from the grabbed
8816         window. (gdk_fb_window_send_crossing_events): Send normal
8817         enter/leave notifications if grab and owner_events == TRUE.
8818
8819 2000-11-29  Alexander Larsson  <alexl@redhat.com>
8820
8821         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8822         Do implicit button grabs, even if the window doesn't
8823         want the event.
8824         (gdk_fb_window_send_crossing_events): If there is a
8825         grab, only the grabbed window gets normal enter/leave
8826         notifications. On ungrab go from grabbed window to current.
8827         Don't send any notification to b when propagating from c -> b.
8828         If setting a grab on window, don't set prev_window.
8829         (handle_mouse_input): Send enter/leave events to the window the
8830         mouse is over, not the grabbed one.
8831         
8832 2000-11-28  Elliot Lee  <sopwith@redhat.com>
8833
8834         * gdk/gdkregion-generic.c: Zap warning.
8835         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
8836         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
8837
8838 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
8839
8840         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8841         The cursor should be hidden if it is part of either the
8842         source or destination region. Not only if it is in both.
8843         (gdk_window_set_transient_for): Silence warnings.
8844
8845 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8846
8847         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
8848         The default mode in X is Pie Arcs, therefore that is
8849         what Gtk+ uses.
8850
8851 2000-11-28  Alexander Larsson  <alexl@redhat.com>
8852
8853         * gdk/linux-fb/gdkinput-ps2.c:
8854         Implement correct EnterNotify/LeaveNotify:
8855         (gdk_fb_window_send_crossing_events): New function that sends
8856         all GdkCrossingEvents from the last mouse-window to the specified
8857         destination.
8858         (gdk_fb_window_visibility_crossing): Removed function.
8859         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
8860         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
8861         instead of gdk_window_get_pointer() for better readability.
8862
8863         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
8864         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
8865
8866         * gdk/linux-fb/gdkprivate-fb.h:
8867         removed gdk_fb_window_visibility_crossing, added
8868         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
8869
8870         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
8871         New function that finds the least common ancestor of two windows.
8872         (gdk_window_show, gdk_window_hide):
8873         Use gdk_fb_window_send_crossing_events.
8874         (gdk_fb_window_move_resize): Send configure events to toplevel
8875         windows. Use gdk_fb_window_send_crossing_events.
8876
8877 2000-11-27  Havoc Pennington  <hp@redhat.com>
8878
8879         * gtk/gtkprivate.h (enum): Remove a trailing comma
8880
8881 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
8882
8883         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
8884         the "changed" callback of the adjustment.  We need to redraw the
8885         spin button's arrows when the adjustment's range changes.
8886         (adjustment_changed_cb): Draw the arrows.
8887         (gtk_spin_button_value_changed): Draw the arrows.
8888
8889 2000-11-23  Alexander Larsson  <alexl@redhat.com>
8890
8891         * gdk/linux-fb/gdkselection-fb.c:
8892         Initial selection implementation.
8893
8894         * gtk/gtkselection.c:
8895         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
8896         requestor in gtk_selection_request.
8897         
8898         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
8899         Added gdk_selection_property atom.
8900
8901         * gdk/linux-fb/gdkprivate-fb.h:
8902         Export _gdk_selection_window_destroyed.
8903         Removed mask_off_x/y from GdkCursorPrivateFB.
8904         Removed hbearing, added top, left to PangoFBGlyphInfo.
8905
8906         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8907         Call _gdk_selection_window_destroyed
8908         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
8909         the root window has been created.
8910         (static_dx_hack, static_dy_hack, compare_draw_rects,
8911         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
8912         in region. They are already sorted. Instead just traverse them in
8913         reverse if draw_direction < 0.
8914         
8915         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
8916         Double-clicks must be sent after the normal button_press.
8917         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
8918         
8919         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
8920         Pass _gdk_fb_screen_gc instead of NULL.
8921
8922         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
8923         Initialize gdk_selection_property.
8924         (gdk_event_make): Remove unused code.
8925
8926         * gdk/linux-fb/gdkcursor-fb.c:
8927         Make the pixmap for the cursor the same size as the mask. Also remove
8928         the mask_off_x/y fields in GdkCursorPrivateFB and combine
8929         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
8930         Now the whole cursor is visible.
8931
8932         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8933         Fix bug where xdest+height instead of ydest+height was used
8934         to calculate if the source and dest overlapped. This fixes the
8935         redraw bug when the main window in testgtk was scrolled when
8936         partially covered by a tall window.
8937         Copy rectangles in region in order depending on draw_direction.
8938         Also moved the draw_direction flipping of start_y and end_y into
8939         the gc functions, as this might not be what all of them want.
8940         (gdk_fb_draw_lines): Support dashed lines.
8941         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
8942         so that the text is positioned correctly (was 1 pixel high).
8943
8944         gdk/linux-fb/gdkgc-fb.c:
8945         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
8946         all lines were drawn a pixel to short. Also checked the default of
8947         the rest of the values, and they're the same as X now.
8948
8949         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
8950         Clean up pixel positioning of the glyphs. Just use bgy->top and
8951         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
8952         to all divisions to get correct rounding behaviour.
8953
8954         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
8955         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
8956         Moved start_y/end_y flip into draw_drawable implementations.
8957         Flip also x rendering when draw_direction < 0.
8958         Remove unneccesary multiply with draw_direction.
8959
8960 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
8961
8962         * docs/tutorial/gtk-tut.sgml:
8963           - get rid of gtk_toggle_button_toggled FUD
8964           - start DND section - needs work - based on:
8965                 http://wolfpack.twu.net/docs/gtkdnd/
8966
8967 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8968
8969         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8970         Correct calculation of font metrics. Now GtkEntrys have sane
8971         size.
8972
8973 2000-11-22  Alexander Larsson  <alexl@redhat.com>
8974
8975         * gdk/gdktypes.h:
8976         Add new type GdkSpan
8977         
8978         * docs/reference/gdk/gdk-sections.txt,
8979         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
8980         gdk/gdkregion.h:
8981         Implement and document gdk_region_spans_intersect_foreach.
8982
8983         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
8984         Add new file gdkrender-fb.c which contains all core
8985         rendering code.
8986         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
8987         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
8988         (optimized rectangle fillers).
8989
8990         * gdk/linux-fb/gdkdrawable-fb2.c:
8991         Move all rendering code to gdkrender-fb.c.
8992         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
8993         Use the new span intersection functions in gdk_fb_fill_spans.
8994         gdk_fb_draw_rectangle() clips filled rectangles and calls
8995         gc->fill_rectangle with the result.
8996         gdk_fb_fill_spans() gets extra argument "sorted".
8997
8998         * gdk/linux-fb/gdkevents-fb.c:
8999         Remove unused includes and defines.
9000         New function gdk_fb_get_time() to get correct time for events.
9001
9002         * gdk/linux-fb/gdkinput-ps2.c:
9003         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
9004         Make sure to set the time of all events.
9005
9006         * gdk/linux-fb/gdkmain-fb.c:
9007         Use gdk_fb_get_time ().
9008
9009         * gdk/linux-fb/gdkprivate-fb.h:
9010         New virtual GC calls: fill_span & fill_rectangle.
9011         Export gdk_fb_get_time().
9012         gdk_fb_fill_spans() gets extra argument "sorted".
9013
9014         * gdk/linux-fb/mi*.c:
9015         Use GdkSpan instead of GdkRectangle.
9016         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
9017         from XFree 4 source)
9018         
9019 2000-11-22    <jrb@redhat.com>
9020
9021         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
9022         reversing the order in an if statement will do.  Doing so managed
9023         to make the treemodelsort half work.  Other half will follow after
9024         I get the insert function fully fixed.
9025
9026 2000-11-21  Elliot Lee  <sopwith@redhat.com>
9027         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
9028         more than 2 bits. Besides, I need to implement an evil hack. :)
9029
9030 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
9031
9032         * docs/tutorial/gtk-tut.sgml: minor corrections
9033
9034 2000-11-20  Jonathan Blandford <jrb@redhat.com>
9035         * gtk/gtktreemodelsort.h: Add convertion functions to let you
9036           convert to and from relative path's and iters.
9037
9038         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
9039           testing sorting functions a bit better.  Currently broken -- will
9040           fix in morning.
9041
9042 2000-11-20  Havoc Pennington  <hp@redhat.com>
9043
9044         * gtk/gtkwidget.c: Documented a bunch of functions in here
9045         (gtk_widget_realize): Warn if you try to realize
9046         a widget with no parent that isn't a toplevel
9047         (gtk_widget_intersect): return a gboolean
9048
9049 2000-11-20  Havoc Pennington  <hp@redhat.com>
9050
9051         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
9052         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
9053         scrolling to be implemented in GDK to finish. Also, right now
9054         we just size_allocate all children on every layout change,
9055         which is pretty lame. Test commented out of testtext.c, 
9056         until it works better.
9057
9058 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
9059
9060         * gdk/linux-fb/gdkdrawable-fb2.c:
9061         Removed unused arguments from gdk_fb_drawable_get_pixel().
9062
9063         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
9064         Renamed fidur specific mouse packet data in MouseDevice to
9065         generic. Used it in ps2 mouse handling code to avoid blocking
9066         reads.
9067
9068 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
9069
9070         * demos/gtk-demo/main.c: Changed to have the list become
9071         non-italic when the demo window is destroyed through an external
9072         event (like a close button).  Doing so found three bugs in the
9073         widget.
9074
9075         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
9076
9077         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
9078         we actually set the cell.
9079
9080         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
9081
9082         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
9083         free a leaked path.  Thanks memprof.
9084
9085 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
9086
9087         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
9088         off-by-one error when destroying allocated segments
9089         on failure. (Elliot)
9090
9091 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
9092
9093         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
9094         memleaks found by Evan Martin.
9095
9096 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
9097
9098         * Released 1.3.2
9099         
9100         * NEWS: Updates for 1.3.2
9101
9102 2000-11-17  Tor Lillqvist  <tml@iki.fi>
9103
9104         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
9105         but in general for window system specific events.
9106
9107         * gtk/gtk.def
9108         * gtk/makefile.mingw.in
9109         * gtk/makefile.msc.in: Update.
9110         
9111         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
9112
9113 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
9114
9115         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
9116         distribute gtk.immodules.
9117
9118         * gtk/Makefile.am (install-data-local): Don't install the
9119         gtk.immodules file created for the uninstalled modules;
9120         instead run gtk-query-immodules after install
9121
9122 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9123
9124         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
9125         -rpath to the right install location.
9126
9127         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
9128         -export-dynamic.
9129
9130         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
9131         properly.
9132
9133 2000-11-15  Havoc Pennington  <hp@pobox.com>
9134
9135         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
9136         patch from Mikael Hermansson to temporarily stop blinking while
9137         the user is using the keyboard to type or navigate. 
9138
9139         Also, when blinking, stay on for longer than we stay off. Also,
9140         return from start_cursor_blink if !cursor_visible, to save
9141         checking that flag all over the place before we call
9142         start_cursor_blink.
9143
9144 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
9145
9146         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
9147         only contain a "fontset" line, which is now ignored.
9148
9149         * gtk/gtkentry.c (gtk_entry_button_release): Make 
9150         double-click-to-select-word work.
9151         
9152 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
9153
9154         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
9155         Don't move back one char when we are actually at the end of the 
9156         paragraph.
9157
9158 2000-11-15  Robert Brady  <robert@suse.co.uk>
9159
9160         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
9161         'o' < 'p'.
9162         
9163         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
9164         bind_textdomain_codeset.
9165
9166         (gtk_init_check): Make the warning about translating default:LTR
9167         sterner.
9168         
9169 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
9170
9171         * **/Makefile.am : remove unecessary rules for win32-specific
9172         config-substituted targets. If you want these rules, use
9173         --enable-maintainer-mode (called automatically by autogen.sh).
9174         Stops a lot of unneccessary make-time warnings.
9175
9176         * gtk/gtktext{layout,display}.c: Factor in total width as
9177         well as screen when figuring alignment for word-wrap as well as
9178         no wrap; this is necessary to handle lines that cannot be wrapped
9179         at all.
9180
9181 2000-11-15  Havoc Pennington  <hp@redhat.com>
9182
9183         * gtk/testtext.c: Implement essential color cycling feature
9184
9185 2000-11-15  Havoc Pennington  <hp@redhat.com>
9186
9187         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
9188         when we invalidate the main window.
9189
9190         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
9191         GtkTextView will now invalidate the side windows for us when text
9192         changes.
9193
9194 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
9195
9196         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
9197         unconditionally, since we may need to update the horizontal
9198         scrollbars even if the height didn't change.
9199
9200         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
9201         the extra attrs, since some of them affect size.
9202
9203         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
9204         x_offset correctly.
9205
9206 2000-11-15  Havoc Pennington  <hp@redhat.com>
9207
9208         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
9209         don't move the first line out into the margin, instead move the
9210         whole paragraph in order to make space for the first line within 
9211         the margin
9212
9213 2000-11-15  Havoc Pennington  <hp@redhat.com>
9214
9215         * gtk/gtktextview.c (changed_handler): offset redraw rect by
9216         xoffset in addition to yoffset, so horizontal scrolling doesn't
9217         break redraws
9218
9219 2000-11-15  Havoc Pennington  <hp@redhat.com>
9220
9221         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
9222         from the cursor
9223         (render_layout_line): fix reversed test that caused weird
9224         underlines to get drawn
9225
9226 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9227
9228         * gdk/linux-fb/gdkprivate-fb.h:
9229         Fix debug macros.
9230         
9231 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9232
9233         * gdk/linux-fb/gdkprivate-fb.h:
9234         Added virtual functions set_pixel, get_color,
9235         fill_span and draw_drawable to the GC.
9236         Added global _gdk_fb_screen_gc to use instead of
9237         NULL when drawing to the screen.
9238         Added _gdk_fb_gc_calc_state() prototype.
9239
9240         * gdk/linux-fb/gdkgc-fb.c:
9241         Call _gdk_fb_gc_calc_state() on any gc state change.
9242
9243         * gdk/linux-fb/gdkglobals-fb.c:
9244         Add _gdk_fb_screen_gc
9245                 
9246         * gdk/linux-fb/gdkdrawable-fb2.c:
9247         _gdk_fb_gc_calc_state() calculates best functions
9248         for the GC state and depth.
9249         Moved bpp specialized code to separate functions.
9250         Added optimized 24 bpp AA draw_drawable.
9251
9252         * gdk/linux-fb/gdkevents-fb.c:
9253         Silence gcc warning.
9254
9255         * gdk/linux-fb/gdkimage-fb.c:
9256         Use _gdk_fb_screen_gc
9257
9258         * gdk/linux-fb/gdkwindow-fb.c:
9259         Init and use _gdk_fb_screen_gc
9260
9261         * gdk/linux-fb/mitypes.h:
9262         Remove unused types.
9263
9264 2000-11-14  Havoc Pennington  <hp@pobox.com>
9265
9266         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
9267         to pixels
9268
9269 2000-11-14  Havoc Pennington  <hp@pobox.com>
9270
9271         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
9272
9273         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
9274         unknown char, no real reason we were using a variable. 
9275         Remove gtk_text_unknown_char variable. Fix all the text widget
9276         files accordingly.
9277
9278         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
9279         since the Unicode spec seems to prefer that character for our
9280         purposes.
9281
9282 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
9283
9284         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
9285         value of g_getenv() isn't freeable, so g_strdup it.
9286
9287         * modules/input/inuktitut.c: Inuktitut input method.
9288
9289         * modules/input/Makefile.am: Build this.
9290         
9291 2000-11-14  Elliot Lee  <sopwith@redhat.com>
9292
9293         * gtk/Makefile.am: Install gtk.immodules, needed for operation
9294         of gtk programs.
9295
9296 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
9297
9298         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
9299         reversed > that was causing Home to go to end of previous line.
9300
9301         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
9302         modified-keypresses (leave for bindings.)
9303
9304         * modules/input/Makefile.am: Remove useless -export-dynamic
9305         from module LDFLAGS.
9306
9307 2000-11-14  Havoc Pennington  <hp@redhat.com>
9308
9309         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
9310         higher.
9311
9312         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
9313         account. Also, render rise, underline, background, etc. for
9314         pixbufs as well as text. Also, draw underlines one pixel higher.
9315
9316         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
9317         PangoAttribute for the rise, so it gets drawn properly. Also,
9318         add the GtkTextAppearance attribute for pixbuf/widget segments
9319         as well; we should go ahead and have rise, underline, background,
9320         stipple work for those
9321
9322         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
9323         Pango
9324
9325 2000-11-15  Tor Lillqvist  <tml@iki.fi>
9326
9327         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
9328
9329         * gtk/gtk.def: Update.
9330
9331         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
9332         included.
9333         (gtk_rc_get_im_module_file): Use run-time installation directory
9334         on Win32.
9335
9336         * gdk/win32/rc/gdk.rc: Remove.
9337         * gdk/win32/rc/gdk.rc.in: New file.
9338         * gdk/win32/rc/Makefile.am: New file
9339         * gdk/win32/Makefile.am: Corresponding changes.
9340
9341         * gtk/gtk.rc: Remove.
9342         * gtk/gtk-win32.rc.in: New file.
9343         * gtk/Makefile.am: Corresponding changes.
9344
9345         * configure.in: Corresponding changes.
9346
9347         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
9348         has a built gtkcompat.h. Developers using CVS code on Win32 can
9349         hand-edit it from gtkcompat.h.in.
9350
9351         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
9352         gtkcompat.h from gtkcompat.h.win32.
9353
9354 2000-11-14  Havoc Pennington  <hp@redhat.com>
9355
9356         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
9357         to default to GDK_ACTION_MOVE if the drag is within a single
9358         widget. Defaults to GDK_ACTION_COPY between widgets.
9359
9360 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
9361
9362         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
9363
9364         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
9365
9366         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
9367         srcdir != builddir
9368
9369         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
9370
9371         * configure.in (GTK_VERSION): Up to 1.3.2
9372
9373         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
9374         gtkimcontextxim.h
9375
9376         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
9377         missing doc comment.
9378
9379 2000-11-14  Alexander Larsson  <alexl@redhat.com>
9380
9381         * modules/linux-fb/basic.c:
9382         Use the glib iconv wrappers.
9383
9384 2000-11-13  Havoc Pennington  <hp@pobox.com>
9385
9386         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
9387         still more bugs.
9388
9389         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
9390         scroll the GdkWindows before realization.
9391
9392 2000-11-13  Havoc Pennington  <hp@redhat.com>
9393
9394         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
9395         where GC didn't always get updated properly
9396
9397         * demos/gtk-demo/textview.c (create_tags): Use subattributes
9398         of fonts instead of setting the entire font
9399
9400         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
9401         setting entire font
9402
9403         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
9404
9405         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
9406         a bunch of individually-settable font attributes. You can still 
9407         use the "font" and "font_desc" args, they just set all the font
9408         attributes at once.
9409
9410 2000-11-13 Elliot Lee <sopwith@redhat.com>
9411
9412         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
9413
9414 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
9415
9416         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
9417         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
9418
9419         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
9420         work better.
9421
9422 2000-11-13  Havoc Pennington  <hp@redhat.com>
9423
9424         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
9425         the module file.
9426
9427         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
9428         dest->language
9429
9430         * gtk/testtext.c: Test pixels above/below/inside paragraphs
9431         settings
9432
9433         * gtk/gtktextview.c: Implement object args and setters/getters for
9434         all the aspects of the GtkTextAttributes that are not set from
9435         GtkWidget attributes. This is spacing, justification, margins,
9436         etc.
9437
9438         (gtk_text_view_set_arg)
9439         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
9440         args
9441         (gtk_text_view_class_init): Add args for justify, left_margin,
9442         right_margin, indent, and tabs
9443         
9444
9445         * gtk/gtktextlayout.c (set_para_values): fix to display indent
9446         attribute properly
9447
9448         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
9449         replace with indent attribute
9450
9451         * gtk/gtktextlayout.c (set_para_values): multiply indent by
9452         PANGO_SCALE
9453
9454         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
9455         rearranging code to do that
9456         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
9457         i.e. don't subtract the top_margin first, just to keep
9458         all margin-futzing in one place.
9459
9460         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
9461
9462         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
9463         special case of last line, Pango now handles this itself.
9464         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
9465         Y coordinate
9466         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
9467         (find_display_line_above): wasn't moving the byte index as it
9468         iterated over lines, so always returned byte 0. Also, port to use
9469         PangoLayoutIter.
9470         (find_display_line_below): same problem as
9471         find_display_line_above. Also, port to use PangoLayoutIter.
9472
9473 2000-11-13  Alexander Larsson  <alexl@redhat.com>
9474
9475         * gdk/linux-fb/*.[ch]:
9476         Massive reindent to gtk+ standard. My hands hurt.
9477
9478         * gdk/linux-fb/gdkcolor-fb.c:
9479         Move GdkColorPrivateFB from inherited to windowing_data
9480
9481         * gdk/linux-fb/gdkcursor-fb.c:
9482         _gdk_cursor_new_from_pixmap made static
9483
9484         * gdk/linux-fb/gdkdnd-fb.c:
9485         GdkDragContextPrivate moved to windowing_data
9486
9487         * gdk/linux-fb/gdkdrawable-fb2.c:
9488         Removed endian.h, use glib endianness macros instead
9489         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
9490         and GDK_DRAWABLE_IMPL_FBDATA
9491
9492         * gdk/linux-fb/gdkfont-fb.c:
9493         Add empty gdk_font_load(). Needed for linking of Gtk+.
9494
9495         * gdk/linux-fb/gdkimage-fb.c:
9496         Removed endian.h, use glib endianness macros instead
9497         Moved GdkImagePrivateFB to windowing_data
9498         gdk_image_new_bitmap didn't always allocate enough
9499         memory.
9500
9501         * gdk/linux-fb/gdkinput-ps2.c:
9502         Added semi-working support for MS serial mice.
9503
9504         * gdk/linux-fb/gdkprivate-fb.h:
9505         s/GdkWindowPrivate/GdkWindowObject/
9506         Removed GdkWindowPrivate typedef
9507         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
9508         Removed GDK_DRAWABLE_P
9509         Move GdkColorPrivateFB from inherited to windowing_data
9510         Moved GdkImagePrivateFB to windowing_data
9511
9512         * gdk/linux-fb/gdkvisual-fb.c:
9513         Removed some unused debug code.
9514
9515         * gdk/linux-fb/gdkwindow-fb.c:
9516         Use stock cursors instead of including X headers.
9517         s/GdkWindowPrivate/GdkWindowObject/
9518
9519         * gdk/linux-fb/mitypes.h:
9520         Removed unused types.
9521
9522         * modules/linux-fb/basic.c:
9523         Use the pango fribidi wrappers.
9524
9525 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9526
9527         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9528         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9529         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9530         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9531         GEqualFunc where applicable.
9532         
9533         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9534         pango_font_description_equal as changed in pango.
9535         
9536         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9537
9538         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9539
9540         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9541
9542         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9543
9544         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9545
9546         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9547
9548         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9549         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9550
9551         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9552         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9553
9554 2000-11-12  Havoc Pennington  <hp@pobox.com>
9555
9556         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9557         dir to datadir/gtk+-2.0/demo
9558
9559         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9560         sorts of text widget and Pango font bugs. Urgh.
9561
9562         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9563
9564         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9565         tree that you should double click to see the demo. Fix 
9566         types of variables to reflect changed return values from 
9567         GtkTreeStore and GtkTreeViewColumn constructors.
9568
9569         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9570         newly-created buffer to prepare for GObject semantics
9571
9572         * gtk/testtext.c: don't leak the buffer with GObject semantics
9573
9574         * gtk/testtextbuffer.c: ditto
9575         
9576 2000-11-12  Havoc Pennington  <hp@pobox.com>
9577
9578         Rename this testgtk to gtk-demo to avoid confusion, and 
9579         install it so people can use it as a supplement to 
9580         the documentation.
9581         
9582         * demos/gtk-demo: Moved from demos/testgtk
9583
9584         * demos/testgtk: Removed
9585
9586         * configure.in: make Makefile in gtk-demo
9587         
9588         * demos/gtk-demo/Makefile.am: Install sample source to 
9589         datadir/gtk-demo (maybe there's a better place?), and 
9590         rename the binary to gtk-demo
9591         
9592         * demos/gtk-demo/main.c (load_file): Load installed sample
9593         source if source isn't found in pwd.
9594
9595 2000-11-09  Havoc Pennington  <hp@pobox.com>
9596
9597         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9598         argument to set the char displayed when visibility == FALSE
9599         (gtk_entry_create_layout): If !entry->visible, replace 
9600         all chars with the "invisible char"
9601
9602         * gtk/testgtk.c: Test the invisible_char deal
9603         
9604 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9605
9606         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9607         can't get a native font in the right encoding.
9608
9609 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9610
9611         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9612         respectively.
9613
9614 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9615
9616         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9617         Fix warning when moving between paragraphs.
9618
9619         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9620         delete => delete_from_cursor, insert => insert_at_cursor
9621
9622 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9623
9624         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9625
9626         * modules/input/imthai-broken.c: A Thai input method for use if
9627         Thai keys are really generating Latin1 keysyms.
9628
9629         * modules/input/Makefile.am: Build these.
9630
9631 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9632
9633         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9634         g_filename_{to,from}_utf8 now takes an extra parameter.
9635
9636         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9637         strftime into UTF-8.
9638
9639         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9640         calendars.
9641
9642         (gtk_calendar_paint_day_names): Draw day names in the right 
9643         place.
9644         
9645 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9646
9647         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9648         problem with using result of g_get_charset() backwards -
9649         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9650
9651         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9652         negative min_width/height and max_width/height to
9653         mean "requisition"; this allows setting a window
9654         to be user-resizable in only one direction easily.
9655
9656         * gtk/testgtk.c (create_main_window): Remove hard-coded
9657         usize - set a default size in the vertical direction.
9658
9659 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9660
9661         * gtk/gtkrange.c: Add some missing casts. Support 
9662         2 and 3 button clicks on the arrows to mean 
9663         "move by pages" and "jump to end". (Like gtkspinbutton)
9664
9665 2000-11-12 Hans Breuer <Hans@Breuer.Org>
9666
9667         * gdk/win32/makefile.msc : reflect build module changes
9668
9669         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
9670         from GdkPixmap*, cast implementation member instead.
9671
9672         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
9673         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
9674         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
9675         more Gdi functions return value checking. 
9676         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
9677         GdkImagePrivateWin32 *.
9678
9679         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
9680         menus useable again. Add #pragma message to keep reminded on this issue.
9681         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
9682         windows. This allows to enable backing store on Win32!
9683
9684         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
9685         in drawable is of impl type. Correct specific type checks appropriate.
9686  
9687         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
9688         GDK_WINDOW_DESTROYED before allocating new resources.
9689
9690         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
9691
9692         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
9693         (gdk_window_foreign_new) initialize parent handle.
9694         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
9695
9696         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
9697         Let the GDI invalidate the window on MoveWindow call to fix scrolling
9698         problems (e.g. main buttons in testgtk). 
9699
9700 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
9701
9702         * gtk/gtkentry.c (gtk_entry_key_press): Call 
9703         gtk_widget_activate for GDK_Return.
9704
9705         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
9706         of preedit cursor position.
9707
9708 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
9709
9710         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
9711         static.
9712
9713 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
9714
9715         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
9716         out support for multiple locales; that simple doesn't
9717         work reliably with current Xlib
9718
9719         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
9720         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
9721         Add support for positioning the cursor within the preedit string.
9722
9723 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
9724
9725         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
9726         at XIM input method module.
9727
9728         * gtk/gtktextview.c: Check for bindings after passing
9729         events to im context filter.
9730
9731 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
9732
9733         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
9734         empty attribute lists properly.
9735
9736 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
9737
9738         * gtk/queryimmodules.c (main): Return non-zero exit
9739         status if errors were encountered querying any
9740         modules.
9741
9742         * modules/input/Makefile.am (moduledir): remove
9743         leftover bin program target.
9744
9745         * docs/make-todo: Fix typo in error message.
9746
9747 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
9748
9749         * configure.in: Add modules/input/Makefile
9750
9751 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
9752
9753         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
9754         don't include gtkthemes.h.
9755
9756         * gtk/testgtk.c gtk/testtext.c: Set environment variables
9757         to point
9758
9759         * gtk/Makefile.am: Add new .c and .h files, build 
9760         gtk-query-immodules and use it to create a gtk.immodules
9761         file for use of test programs.
9762
9763         * gtk/gtkpreview.c: remove extra blank line.
9764
9765 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
9766
9767         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
9768         Add the ability to add extra tables beyond the default
9769         one, and also the ability to have compose sequences 
9770         that are prefixes of other compose sequences. 
9771
9772         * gtk/gtkimcontextsimple.c: Export a preedit string which
9773         consists of possible candidates for keystrokes that have
9774         been entered but not yet committed.
9775
9776         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
9777         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
9778
9779         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
9780         Add a function to add input-method switching menu items
9781         to a menu.
9782
9783         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
9784         when switching input methods.
9785
9786         * gtk/gtkimcontextsimple.[ch]: Change the format of
9787         the compose table to allow compose tables of different
9788         lengths / sequence.
9789
9790 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
9791
9792         * gtk/gtkimmodule.[ch]: Support routines for loading
9793         GtkIMContext implementations dynamically at runtime.
9794
9795         * modules/input/imcyrillic-translit.c: A sample input
9796         method (based on GtkIMContextSimple with an extra table),
9797         which demonstrates preedit strings and the module
9798         system for input modules
9799
9800         * gtk/queryimmodules.c: Program to query the available
9801         input modules and write the results into a file.
9802          
9803         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
9804         extra config options "im_module_file" (cache file for
9805         input method modules), and "im_module_path" - path
9806         to look for modules when generating cache file.
9807
9808         This doesn't scale.
9809
9810 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
9811
9812         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
9813         generic code from gtkthemes into a new abstraction
9814         GtkModule which has the logic for implementing
9815         a loadable module which implements a number of 
9816         GObject types.
9817
9818 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
9819
9820         * gtk/gtkeditable.[ch]: Convert GtkEditable from
9821         a class into an interface  
9822         
9823         * gtk/gtkoldeditable.[ch]: Move the old editable
9824         implementation into here, so legacy widgets can
9825         still rely on the implemenation. GtkOldEditable
9826         exports GtkEditable. Make selection handling
9827         code use new text conversion functions (and
9828         handle UTF-8 as a side-effect). Use GtkClipboard
9829         for CLIPBOARD.
9830
9831         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
9832         Adopt to match above changes.
9833
9834         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
9835         avoid GtkOldEditable implementation. Restructure
9836         to reduce number of places that modify state directly.
9837         Move to GtkBindingSet. Display the preedit string.
9838         Queue recomputation of PangoLayout and scroll position
9839         to improve effiency of doing complex changes naively.
9840         Add a menu with cut/copy/paste and input method selection.
9841
9842 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
9843
9844         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
9845         to set preedit string and attributes; display preedit string by
9846         inserting string and attributes at cursor when creating the
9847         GtkTextLineDisplay.
9848
9849         * gtk/gtktextlayout.c: Move all conversions between byte
9850         positions in PangoLayout and GtkTextIter into new functions
9851         line_display_iter_to_index/index_to_iter that properly
9852         handle the preedit string.
9853
9854         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
9855         it to return const char * (eventually will end up
9856         as GCONST char *, most likely.)
9857
9858         * gtk/gtktextview.[ch]: Handle the preedit string, call
9859         gtk_im_context_reset() as necessary, add a menu to switch
9860         input methods.
9861         
9862         * gtk/gtktextlayout.[ch]: Remove useless
9863         gtk_text_layout_get_log_attrs() function.
9864
9865 2000-11-11  Tor Lillqvist  <tml@iki.fi>
9866
9867         * gdk/gdk.def
9868         * gtk/gtk.def: Update.
9869
9870         * gdk/win32/*.c: Add last argument to g_type_register_static()
9871         calls.
9872
9873         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
9874
9875         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
9876         generated by older wheel mouse drivers. Get the correct y
9877         coordinate from WM_MOUSEWHEEL messages.
9878
9879         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
9880         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
9881         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
9882         Debugging functions.
9883
9884         * gdk/win32/gdkprivate-win32.h: Declare them.
9885
9886         * gdk/win32/gdkinput-win32.h: Add declaration for
9887         gdk_input_window_destroy().
9888
9889         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
9890
9891 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
9892
9893         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
9894         function to help handle keeping things in sync.
9895
9896 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
9897
9898         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
9899         BOXED marshallers.
9900
9901         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
9902         (gtk_list_store_class_init): use the new BOXED marshallers.
9903
9904         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
9905         new_with_values to new_with_types.
9906         (gtk_tree_store_get_column_type): add this.
9907         (gtk_tree_store_class_init): use the new BOXED marshallers.
9908
9909         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
9910         mirror some POINTER marshallers.
9911
9912 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
9913
9914         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
9915         allow more interesting iterators.  Also, made the lifecycle of
9916         iterators more explicit.
9917
9918         * gtk/gtktreemodelsort.[ch]: New model for sorting.
9919
9920         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
9921         types.
9922
9923 2000-11-09  Alexander Larsson  <alexl@redhat.com>
9924
9925         * demos/testgtk/menus.c:
9926         Changes to make the new testgtk compile after
9927         gtk_menu_append was removed.
9928
9929         * gdk/linux-fb/gdkdrawable-fb2.c
9930         (gdk_fb_get_depth, gdk_fb_get_visual,
9931         gdk_drawable_impl_fb_class_init): Implement
9932         these drawable functions. Now GtkImages work again.
9933
9934         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
9935
9936         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
9937         
9938         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
9939         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
9940         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
9941         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
9942
9943 2000-11-08  Havoc Pennington  <hp@pobox.com>
9944
9945         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
9946         visible_set args, don't know where these had gone, I thought they
9947         used to be there
9948
9949         * gtk/testtext.c: Add a menu item to apply invisibility tag;
9950         now we can test the feature and see that it's totally broken.
9951
9952 2000-11-08  Havoc Pennington  <hp@pobox.com>
9953
9954         Make DND copy pixbufs and tags when source and target share a 
9955         tag table.
9956         
9957         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
9958         in-process GTK_TEXT_BUFFER_CONTENTS target
9959         (gtk_text_view_drag_data_received): Paste from
9960         GTK_TEXT_BUFFER_CONTENTS if we receive it.
9961
9962 2000-11-08  Alexander Larsson  <alexl@redhat.com>
9963
9964         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
9965         API changes.
9966
9967         * gtk/gtkmenu.c: Add support for scrolling menus.
9968         Remove gtk_menu_append/prepend/insert, these have been moved to
9969         gtkcompat.h as #defines.
9970
9971         * gtk/gtkcompat.h.in:
9972         Add compatibility #defines for gtk_menu_append/prepend/insert
9973
9974         * gtk/gtkmenu.h: Add data needed for scrolling menus.
9975         GtkMenuPositionFunc gets an extra argument push_in.
9976         gtk_menu_append/prepend/insert removed.
9977         
9978         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
9979         positioning behaviour to fit to scrolling menus.
9980
9981         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
9982         into menuitem->submeny. That is wrong, and broke torn
9983         off submenus of torn off menus, since they were unrealized
9984         when the first menu was unrealized.
9985
9986         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
9987         gtk_menu_shell_select_item() since these need to be overridden in
9988         GtkMenu.
9989
9990         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
9991         positioning behaviour to fit to scrolling menus.
9992         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
9993         the current item so that it is prelighted when the menu pops up.
9994         This is a workaround to the fact that the menu doesn't get the
9995         initial enter event (due to grabs).
9996
9997         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
9998         s/gtk_menu_append/gtk_menu_shell_append/
9999
10000         * gtk/gtknotebook.c:
10001         s/gtk_menu_insert/gtk_menu_shell_insert/
10002
10003         * gtk/testgtk.c (create_menu, create_menus):
10004         Create the first menu with 50 items so that menu scrolling
10005         can be tested.
10006         
10007         
10008         Patch from Jonathan Blandford  <jrb@redhat.com>
10009
10010         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
10011         system to handle size requests.  First, we ask what the size of
10012         the toggle is.  Then, when allocating the size, we allocate the
10013         toggle_size first.  This way we can have multiple menu-item
10014         classes w/o needing a seperate class for each.
10015
10016         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
10017         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
10018
10019         * gtk/gtkcheckmenuitem.c
10020         (gtk_check_menu_item_toggle_size_request): New function to handle
10021         the toggle size-request.
10022
10023 2000-11-07  Havoc Pennington  <hp@redhat.com>
10024
10025         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
10026         Half-ass somewhat fix this function, so that scrolling to the
10027         insertion point works. Pango hacking is in the future to really
10028         fix it.
10029
10030         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
10031         length of data, no longer used.
10032
10033         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
10034         method contents in here, get rid of destroy method
10035         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
10036         that were backward. Remove debug spew.
10037         (cut_or_copy): Make the clipboard work with insert_range to
10038         preserve tags and pixbufs, not just the primary selection.
10039
10040 2000-11-07  Havoc Pennington  <hp@redhat.com>
10041
10042         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
10043         to gtk_text_mark_get_visible
10044
10045         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
10046         bug that was generating an invalid iterator
10047
10048         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
10049         ensure_char_offsets() in front of code placing the iter in an
10050         invalid state.
10051
10052         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
10053         make override_location arg const
10054         (paste): Replace the selection if we paste into the 
10055         current selection
10056
10057         * gtk/gtkselection.h: Remove "GtkSelectioData"
10058         (struct _GtkSelectionData): move the definition here.
10059
10060         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
10061         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
10062
10063         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
10064
10065         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
10066         (gtk_text_buffer_insert_range_interactive): implement
10067         (gtk_text_buffer_get_tags): Remove, replaced by
10068         gtk_text_iter_get_tags()
10069
10070         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
10071         limit parameter, to avoid infinite linear scan.
10072         (gtk_text_iter_backward_search): Add search limit
10073         (gtk_text_iter_forward_find_char): Add search limit
10074         (gtk_text_iter_backward_find_char): Add search limit
10075
10076 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
10077
10078         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10079         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
10080         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
10081         gdk/linux-fb/gdkwindow-fb.c:
10082         use g_object_new() instead of g_type_create_instance() which
10083         is a private function for fundamental type implementations.
10084
10085         * gdk/linux-fb/gdkinput-ps2.c:
10086         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
10087         instead just store the current modifier state. Add a (somewhat broken)
10088         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
10089         Rename exported function gdk_input_ps2_get_mouseinfo to
10090         gdk_input_get_mouseinfo.
10091
10092         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
10093         gdk/linux-fb/gdkwindow-fb.c:
10094         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
10095         
10096
10097 2000-11-02  Havoc Pennington  <hp@redhat.com>
10098
10099         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
10100         use stock buttons. Should be 100% source compatible, appropriate
10101         filesel fields now point to dialog->vbox and dialog->action_area.
10102         On the bizarre side, dialog->action_area and filesel->action_area
10103         are not the same widget.
10104         (gtk_file_selection_init): Put some padding around the selection
10105         entry, so it isn't touching the GtkDialog separator.    
10106
10107         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
10108         use stock buttons, etc. Should also be source compatible.
10109         Set the dialog default title in _init not _new().
10110         
10111         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
10112         Use stock buttons; don't put a button box inside the existing
10113         dialog button box. Don't bother with push/pop colormap anymore.
10114
10115         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
10116         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
10117         for message dialog, and necessary for the font selection and color
10118         selection with help and apply buttons.
10119         
10120         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
10121         to the created button widget. Set GTK_CAN_DEFAULT on the button.
10122         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
10123         between buttons, put less padding around the action area.
10124         (gtk_dialog_run): Exit on unmap rather than on destroy. 
10125         This will also exit the loop if the widget is hidden.
10126         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
10127         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
10128         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
10129         special-case delete event.
10130
10131         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
10132         formatting
10133         
10134 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
10135
10136         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
10137         button to temporarily disable position recording in the
10138         "saved position" test.
10139
10140 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
10141
10142         * gtk/gtkthemes.c: added compat code that temporarily implements
10143         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
10144         going to be revamped by owen's upcoming GtkModule patches, but
10145         untill then people want gtk to build, right? ;)
10146
10147 2000-11-04  Havoc Pennington  <hp@pobox.com>
10148
10149         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
10150         list
10151
10152         * docs/Changes-2.0.txt: Add note about
10153         gtk_container_get_toplevels()
10154
10155         * gtk/gtktextview.h: formatting
10156         
10157         * gtk/gtktextview.c: don't start descriptions with "Returns",
10158         confuses gtk-doc
10159
10160 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
10161
10162         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
10163         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
10164
10165 2000-11-03  Havoc Pennington  <hp@redhat.com>
10166
10167         * gtk/gtktexttagtable.c: Docs
10168         (gtk_text_tag_table_size): return a signed int
10169
10170         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
10171         (gtk_text_tag_event): make the event_object a GObject
10172
10173         * gtk/gtktextview.c: Write API docs for all functions.
10174
10175         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
10176         for gtk_text_view_get_window_type() called on one of the private
10177         windows.
10178
10179         * gtk/gtktextview.c: Instead of accessing text_view->buffer
10180         directly, call get_buffer() which demand-creates a default
10181         buffer. So gtk_text_view_new() can be used to create a view with a
10182         default buffer in it, if you just want an empty text box users can
10183         put data in. Useful for GUI builders also.
10184
10185 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
10186
10187         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
10188         the charset encodign portion MUST be in lowercase.
10189         * gtk/gtkrc.az: added file for Azeri language
10190
10191 2000-11-03  Havoc Pennington  <hp@redhat.com>
10192
10193         Get widgets working on the btree/buffer side. Display of them 
10194         still doesn't work.
10195         
10196         * gtk/gtktextview.c: start implementing child widget stuff
10197
10198         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
10199
10200         * gtk/gtktextlayout.c: handle embedded widgets
10201
10202         * gtk/gtktextdisplay.c: handle embedded widgets
10203
10204         * gtk/gtktextchild.c: Implement all the child anchor goo
10205
10206         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
10207         function
10208
10209         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
10210         (insert_pixbuf_or_widget_segment): abstract out common portions of 
10211         creating a child anchor or a pixbuf segment.
10212         (gtk_text_btree_create_child_anchor): new function
10213         (gtk_text_btree_unregister_child_anchor): new function
10214
10215         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
10216         allocate_child signal on GtkTextLayout
10217
10218         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
10219         values
10220         (gtk_text_iter_get_child_anchor): new function
10221
10222         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
10223         default handler for the changed signal, which calls
10224         gtk_text_buffer_set_modified(), instead of just always emitting
10225         changed then calling set_modified() manually. I guess this is
10226         maybe more flexible. It seems logical.
10227
10228 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
10229
10230         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
10231         now.
10232
10233         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
10234
10235 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
10236
10237         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
10238         been marked static.
10239
10240 2000-11-02  Havoc Pennington  <hp@redhat.com>
10241
10242         * gtk/testgtk.c (create_labels): had a test backward
10243
10244         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
10245         fields, so the dest GC ends up with the correct clip origin, 
10246         etc. Fixes a bug where colored labels didn't redraw 
10247         properly.
10248
10249 2000-11-02  Alexander Larsson  <alexl@redhat.com>
10250
10251         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10252         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
10253         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
10254         Add last argument to t_type_register_static call.
10255         
10256         * gdk/linux-fb/gdkdrawable-fb2.c:
10257         Add last argument to t_type_register_static call.
10258         export the get_image drawable virtual function.
10259
10260         * gdk/linux-fb/gdkimage-fb.c:
10261         Add last argument to t_type_register_static call.
10262         rename gtk_image_get to _gdk_fb_get_image and
10263         export it for use by gdkdrawable-fb2.
10264
10265         * gdk/linux-fb/gdkprivate-fb.h:
10266         export _gdk_fb_get_image.
10267
10268         * gdk/linux-fb/gdkselection-fb.c:
10269         Add new api call stubs.
10270
10271         * gtk/Makefile.am:
10272         Missing ( in linux-fb part.
10273
10274         * modules/linux-fb/Makefile.am:
10275         Must link with gdk_pixbuf or get unresolved symbol.
10276
10277 2000-11-01  Havoc Pennington  <hp@pobox.com>
10278
10279         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
10280         GTK_TYPE_TEXT_ITER and BOXED marshallers
10281
10282         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
10283
10284         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
10285         
10286         * gtk/gtk-boxed.defs: add GtkTextIter
10287
10288         * gtk/gtkmarshal.list: Add marshallers for text widget that 
10289         properly use OBJECT and BOXED
10290
10291 2000-11-01  Havoc Pennington  <hp@redhat.com>
10292
10293         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
10294
10295         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
10296         before returning it. 
10297         
10298 2000-11-01  Havoc Pennington  <hp@redhat.com>
10299
10300         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10301         Clip the rectangle to be rendered to the drawable, since
10302         get_from_drawable() requires a region within the drawable
10303
10304 2000-11-01  Havoc Pennington  <hp@redhat.com>
10305
10306         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
10307         from coordinates.
10308
10309 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
10310
10311         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
10312         it isn't NULL.
10313
10314 2000-11-01  Havoc Pennington  <hp@pobox.com>
10315
10316         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
10317         on a label
10318         (gtk_label_finalize): unref the attr list if any.
10319
10320         * gtk/testgtk.c (create_get_image): close test on second click
10321         (make_message_dialog): close dialog if it exists
10322
10323         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
10324
10325         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
10326         gdk-pixbuf
10327
10328         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
10329         from Pango markup format
10330         (gtk_label_set_markup_with_accel): ditto but with accelerator
10331         parsing
10332
10333         * gtk/gtkimage.c (gtk_image_expose): reformatting.
10334
10335         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
10336         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
10337         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
10338         call gdk_window_get_origin().
10339
10340         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10341         implement GDK_PIXBUF_ALPHA_FULL
10342         
10343 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
10344
10345         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
10346         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
10347         g_signal_handlers_disconnect_matched to block/unblock and disconnect
10348         multiple handlers respectively, instead of only treating the
10349         first handler found (bug reported by owen).
10350
10351 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
10352
10353         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
10354
10355         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
10356
10357         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
10358         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
10359         gtk/gtktreeviewcolumn.h: Fixed inline docs.
10360
10361         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
10362         widget.  Needs writing someday.
10363
10364         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
10365         the docs.
10366
10367 2000-10-30  Havoc Pennington  <hp@redhat.com>
10368
10369         * gtk/gtktextview.h, gtk/gtktextview.c:
10370         Rename delete_at_cursor delete_from_cursor, and 
10371         move to move_cursor.
10372
10373 2000-10-30  Havoc Pennington  <hp@redhat.com>
10374
10375         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
10376         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
10377         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
10378         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
10379         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
10380         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
10381         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
10382         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
10383         gtktexttypes.h, gtktextview.c, gtktextview.h:
10384
10385         Massive reindentation and reformatting. Arg alignment and comments
10386         still need fixing in various places.
10387
10388 2000-10-30  Havoc Pennington  <hp@redhat.com>
10389
10390         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
10391         to be named insert_at_cursor and delete_at_cursor so C++ can
10392         handle them.
10393
10394 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10395
10396         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
10397         to get a double directory separator in case the home directory
10398         ends with one. This would cause trouble especially on Windows,
10399         where the path will be confused with the syntax for an an UNC
10400         (network share) path \\server\share\path.
10401         (gtk_rc_add_initial_default_files): Ditto.
10402
10403 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
10404
10405         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
10406
10407         * gtk/gtktextview.c: Use correct marshallers.
10408
10409 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
10410
10411         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
10412         use new iter stuff, and added all the appropriate signals et al.
10413
10414         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
10415         code is internal to gtk only.
10416
10417 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10418
10419         * gtk/gtk.def
10420         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
10421         glib-genmarshal etc.
10422
10423 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
10424
10425         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
10426         parallel builds.
10427
10428 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
10429
10430         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
10431
10432 2000-10-27  Robert Brady  <robert@suse.co.uk>
10433
10434         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
10435         en_GB (British), ia (Interlingua).
10436
10437 2000-10-26  Havoc Pennington  <hp@redhat.com>
10438
10439         * gtk/gtktextiter.c (my_strrstr): fix constness warning
10440
10441         Fixed output of:
10442         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
10443         
10444         * gtk/gtktextsegment.c (char_segment_new): rename
10445         (_char_segment_new_from_two_strings): rename
10446         (_toggle_segment_new): rename
10447         
10448         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
10449         (make_clipboard_widget): make it static
10450         (text_get_func): static
10451         (text_clear_func): static
10452
10453         * gtk/gtkcolorsel.c (adjustment_changed): make this function
10454         static
10455         (hex_changed): make it static
10456         (hsv_changed): make it static
10457         (opacity_entry_changed): make it static
10458
10459         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
10460         (toggle_segment_check_func): rename with _gtk
10461
10462         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
10463         (_widget_segment_new): rename
10464         (_widget_segment_add): rename
10465         (_widget_segment_remove): rename
10466         (_widget_segment_ref): rename
10467         (_widget_segment_unref): rename
10468
10469         * gtk/gtktextmark.c (_mark_segment_new): Rename
10470         _gtk_mark_segment_new   
10471
10472 2000-10-26  Havoc Pennington  <hp@redhat.com>
10473
10474         * gtk/gtkmarshal.list: add new marshallers used by the text widget
10475         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10476         types
10477
10478         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
10479         marshaller types
10480
10481         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
10482         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
10483         license on these files.
10484
10485         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
10486         work.
10487
10488         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
10489         runtime random number different for each tree, instead of 
10490         a constant I made up.
10491
10492 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
10493
10494         * gtk/Makefile.am: buncha cleanups, kludged build sources
10495         dependencies with a Makefile: oldest-source-stamp dependancy
10496         for the moment. automake is really fighting us here, with
10497         intentionally not allowing user-defined rules or dependancies
10498         prior to it's -include $(DEP_FILES) statement. sucks rocks!
10499
10500         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
10501         to public headers. tehy have a comment stating that they are
10502         "semi-public" aren't included by gtk.h and if enums popup there,
10503         they can be /*< skip >*/-ed.
10504
10505         * gtk/gtktextlayout.h: 
10506         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
10507         added LGPL... <SIGH>
10508
10509 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
10510
10511         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
10512         GtkTreeIter.  Added iterators everywhere.
10513
10514         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
10515
10516         * gtk/gtktreeviewselection.c: Changed to use the iterators.
10517
10518         * gtk/gtktreestore.c: Changed to use the iterators.
10519
10520         * gtk/gtkliststore.c: Commented out the code.  Will convert to
10521         iterators tomorrow.
10522
10523         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10524         iterators tomorrow.
10525
10526         * gtk/treestoretest.c: Changed to use iterators.
10527
10528         * demos/testgtk/main.c: Moved to use the new iterator system.
10529
10530 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10531
10532         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10533         localization misbehaviour.
10534
10535         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10536         a useless type without copy/free.
10537
10538         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10539         of GTK_TYPE_CTREE_NODE.
10540
10541 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10542
10543         * gtk/gtksignal.c:
10544         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10545         applicable.
10546
10547         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10548         gtk_selection_data_copy and gtk_selection_data_free
10549         do GtkSelectionData work as params in signals.
10550
10551 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10552
10553         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10554         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10555         couldn't they at least give it a non-standard name?
10556         
10557         * gtk/gtktextlayout.c: arg! yet another implementation of
10558         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10559
10560         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10561         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10562         home. now i know this _is_ a conspiracy.
10563
10564         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10565         ::state-changed.
10566
10567         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10568         (gtk_accel_group_create_add): marshaller signature fixups.
10569
10570         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10571         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10572
10573         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10574         anymore.
10575
10576 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10577
10578         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10579         due to the signal system changes, it wouldn't build currently. to
10580         be fixed soon.
10581
10582         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10583
10584         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10585         so it needs gtk_marshal_VOID__ENUM() instead of
10586         gtk_marshal_NONE__UINT().
10587
10588         * gdk/gdk*.c: adapted type registration functions.
10589
10590         * gtk/gtkbindings.c:
10591         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10592         gone.
10593
10594         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10595
10596         * gtk/gtkobject.c:
10597         (gtk_object_destroy):
10598         (gtk_object_shutdown): fixed recursion guards. basically we have to
10599         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10600         is called during ::destroy, and avoid recursion there.
10601
10602         * gtk/gtktypeutils.c:
10603         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10604         boxed_copy/boxed_free. this needs a more general solution based on a
10605         publically installed code-generator utility.
10606
10607         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10608         glib's gobject has support for that now.
10609         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10610
10611 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10612
10613         * gtk/gtksignal.[hc]:
10614         * gtk/gtkmarshal.[hc]:
10615         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10616         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10617         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10618         care of that.
10619
10620         * *.c: marshaller name fixups.
10621
10622         * gtk/gtkmarshal.list: added a comment briefing the format.
10623
10624 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10625
10626         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10627         compatibility macros here now. more specifically, most of
10628         the API is preserved (yes, _most_, nonwithstanding the
10629         following exceptions listed, the API is stil lHUGE ;)
10630         things that got removed completely:
10631         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10632         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10633         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10634         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10635         gtk_signal_remove_emission_hook().
10636         non-functional functions variants:
10637         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10638         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10639         not supported anymore.
10640         (gtk_signal_compat_matched): new internal function to aid
10641         implementation of the compatibility macros, it  provides
10642         functionality to block/unblock/disconnect handlers based
10643         on func/data.
10644
10645         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10646
10647         * *.c: adaptions to new type registration API signatures.
10648
10649 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10650
10651         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10652
10653 2000-10-25  Robert Brady  <robert@suse.co.uk>
10654
10655         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10656         gdk_property_delete): If window == NULL, assume the root window.
10657         (restoring the behaviour that was in 1.2).
10658         
10659         * gtk/testtext.c (save_buffer): Allow creation of new files when
10660         saving.
10661
10662         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10663         calls to read().
10664
10665 2000-10-25  Tor Lillqvist  <tml@iki.fi>
10666
10667         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
10668
10669         * gdk/win32/gdkdrawable-win32.c
10670         * gdk/win32/gdkimage-win32.c
10671         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
10672         X11 backend.
10673
10674         * gdk/win32/gdkcc-win32.c
10675         * gdk/win32/gdkcolor-win32.c
10676         * gdk/win32/gdkfont-win32.c
10677         * gdk/win32/gdkinput-win32.c
10678         * gdk/win32/gdkmain-win32.c
10679         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
10680
10681 2000-10-24  Havoc Pennington  <hp@redhat.com>
10682
10683         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
10684         it a static function
10685
10686         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
10687         redraw text when a tag is applied to it.
10688
10689         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
10690         (gtk_text_tag_affects_nonsize_appearance): private functions to
10691         see if a tag requires various kinds of redraw/layout to be queued
10692         up.
10693
10694         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
10695
10696         * gtk/testtext.c (fill_example_buffer): Put the cursor 
10697         at the start of the buffer, so search works by default
10698
10699         * gtk/gtktextiter.c (lines_match): init match_start always
10700
10701         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
10702         function, get iter at a line + a byte index
10703
10704         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
10705         to set byte position within a line
10706         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
10707
10708 2000-10-23  Havoc Pennington  <hp@redhat.com>
10709
10710         * gtk/testtext.c: Re-enable the "find" dialog
10711
10712         * gtk/testgtk.c: Add test for gdk_drawable_get_image
10713         
10714         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
10715         the arguments to gdk_draw_drawable were in the wrong order
10716         (gdk_window_paint_init_bg): This function was ignoring the
10717         init_region, instead of clipping to it, so the entire backing
10718         pixmap was cleared on every begin_paint()
10719         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
10720         was in here again, the loop kept using the same GtkWindowPaint
10721         over and over.
10722         (gdk_window_begin_paint_region): Fix a bug where we had two
10723         x_offset instead of x_offset and y_offset
10724
10725         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
10726         before we get the image.
10727         (gdk_draw_drawable): get the composite before we draw the drawable.
10728         (gdk_drawable_real_get_composite_drawable): default
10729         get_composite_drawable implementation that returns the drawable 
10730         itself
10731
10732         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
10733         get_composite_drawable virtual function
10734
10735         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
10736         list-walking bug
10737
10738         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
10739         make this work if the source drawable is a GdkDrawableImplX11
10740         instead of a public drawable type. This is really broken; the
10741         problem is that GdkDrawable needs a virtual method get_xid(), but
10742         of course that doesn't work in practice. Enter RTTI.
10743
10744         Also, improve mismatched depth message.
10745
10746         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
10747         GdkPixmap
10748
10749         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
10750         install _gdk_x11_get_image as our implementation of get_image
10751         
10752         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
10753         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
10754
10755         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
10756         gdk_drawable_get_image
10757
10758         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
10759
10760         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
10761         get_image
10762
10763         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
10764         trailing semicolon after for loop
10765
10766 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
10767
10768         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
10769         where font_desc for widget's context lagged widget's font_desc by
10770         one step.
10771
10772 2000-10-22  Tor Lillqvist  <tml@iki.fi>
10773
10774         * gdk/win32/gdkgc-win32.c
10775         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
10776
10777         * gtk/makefile.mingw.in
10778         * gtk/gtk.def: Updates.
10779
10780         * gtk/testgtk.c: sleep() is called _sleep in MS's C
10781         library.
10782
10783         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
10784
10785         * gtk/makefile.msc: Remove
10786
10787         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
10788
10789         * gtk/Makefile.am: Add it.
10790
10791         * configure.in: Generate it.
10792
10793         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
10794         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
10795         something even if not implemented, to satisfy picky MSVC.
10796
10797         Patches by Hans Breuer:
10798         
10799         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
10800         SetBkMode() and SetTextAlign() before calling
10801         pango_win32_render().
10802
10803         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
10804         Set hcliprgn to NULL after destroying it.
10805         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
10806
10807         * gdk/win32/gdkgeometry-win32.c
10808         (_gdk_windowing_window_queue_antiexpose): More effective
10809         implementation.
10810
10811         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
10812         depth as default, not the visual's.
10813
10814         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
10815         against empty title.
10816
10817         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
10818         IMAGE_PRIVATE_DATA.
10819
10820         * gdk/win32/gdkimage-win32.c: Use it.
10821
10822 2000-10-22  Robert Brady  <robert@suse.co.uk>
10823
10824         * configure.in: Check for bind_textdomain_codeset
10825
10826         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
10827         present, make use of it.
10828
10829         Add a translatable string "default:LTR" which, if translated
10830         to "default:RTL", will cause the default direction to be
10831         Right-to-Left.
10832
10833         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
10834         direction if marked as flippable.
10835
10836         * gtk/gtkhscale.c: Mark widget as flippable.
10837         
10838 2000-10-04  Havoc Pennington  <hp@redhat.com>
10839
10840         * gtk/testgtk.c (create_buttons): create some stock buttons
10841         with the default accel group
10842         (create_image): test some new GtkImage features
10843         (make_message_dialog): test GtkMessageDialog
10844         (create_modal_window): fix someone's bizzarro indentation
10845
10846         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
10847         GTK_WIN_POS_CENTER_ON_PARENT. 
10848         Add "destroy with parent" setting, which means the window goes
10849         away with its transient parent.
10850         (gtk_window_get_default_accel_group): get the default accel group
10851         for the window.
10852         (gtk_window_set_destroy_with_parent): set/unset destroy with
10853         parent flag
10854         (gtk_window_read_rcfiles): invalidate icon set caches
10855         after reloading rcfiles 
10856
10857         * gtk/gtkenums.h (GtkWindowPosition): add
10858         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
10859         on its parent window when the dialog is mapped for the first time.
10860
10861         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
10862         a simple message dialog class
10863         
10864         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
10865         handler to emit response signal, and maybe later it would
10866         honor a hide_on_delete flag - though that isn't there yet.
10867         Set border width on the vbox to 2, so we get some padding.      
10868         Use a button box for the action area.
10869         (gtk_dialog_key_press): synthesize a delete event if Esc
10870         is pressed and the GtkWidget key press handler didn't 
10871         handle the escape key.
10872         (gtk_dialog_new_with_buttons): new function creates a dialog
10873         with some default buttons in it.
10874         (gtk_dialog_add_action_widget): add an activatable widget
10875         as a button in the dialog - you can also add a non-activatable
10876         widget by accessing the action area directly.
10877         (gtk_dialog_add_button): add a simple button - stock ID or 
10878         label - to the action area
10879         (gtk_dialog_response): emit response signal
10880         (gtk_dialog_run): block waiting for the dialog, return 
10881         the response. Override normal delete_event behavior, so that 
10882         delete_event does nothing inside gtk_dialog_run().
10883
10884         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
10885         emitted when an action widget is clicked or the dialog gets
10886         delete_event
10887
10888         * gtk/gtk.h: add gtkmessagedialog.h
10889
10890         * gtk/Makefile.am: add gtkmessagedialog.[hc]
10891
10892 2000-10-18  Havoc Pennington  <hp@redhat.com>
10893
10894         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
10895         where any number of empty lines would get skipped
10896
10897         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
10898         edge.
10899
10900         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
10901         warning about invalid iterators (explain more thoroughly)
10902         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
10903
10904         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
10905         big
10906
10907         * demos/*.c: Add error handling
10908
10909         * gtk/gtktextbuffer.c: don't modify const iterators
10910
10911         * gtk/gdk-pixbuf-loader.c: Add full error handling here
10912
10913         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
10914         on file load
10915
10916         * gtk/gtkiconfactory.c: Update to reflect addition of error
10917         handling to gdk-pixbuf loaders
10918
10919 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
10920
10921         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
10922         move to new modularized testgtk.
10923
10924 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
10925
10926         * gtk/gtktreeview.c: Draw the arrows correctly.
10927
10928         * gtk/gtktreemodel.c: Added user docs.
10929
10930         * gtk/gtk.h: remove gtktreedatalist.h.
10931
10932         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
10933         parent when generating my type.
10934
10935         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
10936         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
10937
10938 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10939
10940         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
10941         GtkTreeModel from object to interface.
10942
10943 2000-10-16  Havoc Pennington  <hp@redhat.com>
10944
10945         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
10946         compilation
10947
10948 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
10949
10950         * gtk/gtktreeselection.c: Add API documentation to all public
10951         functions.
10952
10953         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
10954         functions.
10955
10956 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
10957
10958         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
10959         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
10960         docs to all public functions.
10961
10962         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
10963         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
10964         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
10965         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
10966         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
10967         issue.
10968
10969 2000-10-14  Robert Brady  <robert@suse.co.uk>
10970
10971         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
10972
10973 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
10974
10975         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
10976         values other then G_TYPE_STRING.
10977         * gtk/gtktreeselection.c: Minor commenting updates.
10978         * gtk/gtktreeview.c: Format updates.
10979
10980 2000-10-09  Tor Lillqvist  <tml@iki.fi>
10981
10982         * README.win32: Update.
10983
10984         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
10985         lines that had been deleted by mistake (?).
10986
10987         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
10988         also the case fg==white and bg==black (but still not randomly
10989         coloured cursors). Thanks to Wolfgang Sourdeau.
10990
10991         * gdk/win32/*.c: Silence gcc -Wall.
10992
10993         * gtk/gtk.def: Add missing entry points.
10994
10995         Fixes by Hans Breuer:
10996
10997         * gdk/makefile.msc
10998         * gdk/win32/makefile.msc: Update.
10999
11000         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
11001         some MSVC thing, presumably), cause breakpoint on failures. Add
11002         GDK_NOR case. Call g_log_set_always_fatal.
11003
11004         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
11005         should be pased by reference.
11006         
11007         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
11008         
11009         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
11010
11011         * gdk/win32/gdkevents-win32.c
11012         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
11013
11014         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
11015         implementation object.
11016
11017         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
11018         not just windows.
11019         
11020         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
11021         Use the wrapper object.
11022         
11023 2000-10-06  Havoc Pennington  <hp@redhat.com>
11024
11025         * Makefile.am (SRC_SUBDIRS): contrib subdir
11026
11027         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
11028         so it can be used in Xlib version
11029
11030         * demos/testpixbuf.c (update_timeout): error checking from 1.0
11031         tree
11032
11033         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
11034         change from 1.0 tree that returns first frame of animation
11035         if the loaded file is an animation.
11036
11037         * contrib: add new directory to hold stuff that comes with GTK+
11038         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
11039         
11040         * configure.in: add contrib/*
11041
11042 2000-10-05  Havoc Pennington  <hp@redhat.com>
11043
11044         * demos/testpixbuf-save.c: add pixbuf save test
11045
11046         * demos/Makefile.am: add testpixbuf-save.c
11047
11048 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
11049
11050         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
11051         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
11052         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
11053         * gtk/gtktreeselection.[ch]: Replaced
11054         "node_selected"/"node_unselected" signal with "selection_changed"
11055         signal.
11056
11057 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11058
11059         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
11060         tree widget.
11061
11062 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11063
11064         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
11065         drawing.
11066
11067 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
11068
11069         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
11070         Move list pointer forwards before removing item from
11071         list. (Crash reported by Salmaso Raffaele)
11072
11073         * gdk/gdkwindow.h: Remove spurious trailing ,
11074
11075         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
11076         dependencies on uninstalled libraries, sorry folks.
11077
11078 2000-10-04  Havoc Pennington  <hp@redhat.com>
11079
11080         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
11081         gtk/gtkiconfactory.c: Fix copyrights    
11082
11083         * demos/testpixbuf.c: add inline pixbuf test
11084         
11085 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
11086
11087         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
11088         Add gdk_window_iconify.
11089
11090         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
11091         (gdk_window_set_geometry_hints): Add win_gravity
11092         to geometry structure.
11093
11094         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
11095         Implement _NET_WM_PING.
11096
11097         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
11098         Set _NET_WM_PID on the client leader.
11099
11100         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
11101         Handle UTF-8 better.
11102
11103         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
11104         UTF-8 better, set _NET_WM_NAME as well. Only set
11105         icon name if it hasn't previously been explicitely 
11106         set.
11107
11108 2000-10-03  Havoc Pennington  <hp@redhat.com>
11109
11110         * gtk/testtextbuffer.c: clean up trailing whitespace,
11111         add extensive tests for tag toggle iteration.
11112         
11113         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
11114         distance
11115
11116         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11117         optimize case where the tag root is on level 1
11118         (gtk_text_line_previous_could_contain_tag): attempt to implement
11119         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
11120         functionality
11121
11122         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
11123         Implement this, though not very efficiently.
11124
11125         * gtk/gtktextiterprivate.h: reformat
11126
11127         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
11128         iterator
11129
11130         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
11131         this to properly revalidate the iterators.
11132
11133         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
11134         properly at the end of the line (and therefore on empty lines)
11135
11136         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
11137         maybe we should return a value...
11138
11139 2000-10-03  Tor Lillqvist  <tml@iki.fi>
11140
11141         * config.h.win32: Guard definition of alloca(). glib.h now handles
11142         that.
11143
11144         * gdk/gdk.def
11145         * gtk/gtk.def: Add new entry points.
11146
11147         Changes just to make GTK+ build without errors on Win32. No hope
11148         of it working in its current state, though...:
11149         
11150         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
11151         some functions from the X11 backend, just to make GTK+ build.
11152
11153         * gdk/makefile.mingw.in
11154         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
11155         number. Add new object files.
11156
11157         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
11158         GetMessageTime to get timestamp (where on X11 uses
11159         gdk_x11_get_server_time()).
11160
11161 2000-10-02  Havoc Pennington  <hp@pobox.com>
11162
11163         * gtk/gtktextview.c: text_window_* weren't static and should have
11164         been.
11165         Start work on child widgets; not yet complete, syncing to 
11166         office computer.
11167
11168         * gtk/gtktextchild.h: change this to contain a public interface,
11169         starting work on child interfaces.
11170         * gtk/gtktextchildprivate.h: move private interfaces here
11171
11172         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
11173
11174         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
11175         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
11176         gtk/gtktextmark.c: copyright notices
11177
11178         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
11179         internal functions      
11180
11181         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
11182         internal function
11183
11184         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11185         Reformatting    
11186
11187 2000-09-30  Havoc Pennington  <hp@pobox.com>
11188
11189         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
11190         NULL start/end pointers
11191
11192         * gtk/gtktextbuffer.c: Write some docs
11193         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
11194         NULL, so you can just check whether there's a selection.        
11195
11196         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
11197         cleanup_line or segments_changed ourselves, it gets done 
11198         in unlink_segment
11199
11200         * gtk/gtktextmark.h:
11201         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
11202         
11203         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
11204
11205         * gtk/gtktextmark.c: delete some more old Tk cruft
11206
11207         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
11208         mark before removing it, so we can emit MARK_DELETED with a valid
11209         pointer.
11210         (gtk_text_buffer_mark_set): hold ref across signal emission
11211
11212         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
11213         whining about attempts to delete special marks
11214
11215         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
11216         underscore, since it's internal.
11217
11218         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
11219         now implemented in terms of iterators in gtktextiter.h
11220
11221         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
11222         New function, destructively sets contents of buffer. Also 
11223         a convenient way to clear the buffer by setting text to ""
11224
11225         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
11226         multiline string literal
11227
11228         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
11229         text changes.
11230
11231         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
11232         is not dereferenceable
11233         (gtk_text_iter_forward_lines): fix return value
11234
11235 2000-09-29  Havoc Pennington  <hp@redhat.com>
11236
11237         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
11238
11239         * gtk/gtktextview.c: Implement drag thresholding; change functions 
11240         that set border window size to have nicer name
11241         (gtk_text_view_mark_set_handler):  Fix this to have the 
11242         right signature.
11243
11244         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
11245
11246         * gtk/testtext.c: Update with API changes, put line numbers on 
11247         both sides.
11248         
11249         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
11250         with this
11251
11252         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
11253         pixbuf; delete a big block of #if 0 Tk code
11254
11255         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
11256         insert_pixmap with insert_pixbuf
11257
11258 2000-09-29  Martin Baulig  <baulig@suse.de>
11259
11260         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
11261         confusion with the GdkPixbuf of the GNOME 1.x platform.
11262
11263 2000-09-29  Havoc Pennington  <hp@pobox.com>
11264
11265         * gtk/gtktextview.c: Implement the side windows.
11266
11267         * gtk/testtext.c: Implement simple line numbering in the 
11268         left side window; seems to make scrolling sloooow. Oops.
11269         Also, cursor blink is for some reason causing redraws
11270         of the line numbers. Should investigate...
11271
11272 2000-09-28  Havoc Pennington  <hp@redhat.com>
11273
11274         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
11275         scrolling child windows, and draw focus rectangle properly.
11276         
11277         (gtk_text_view_buffer_to_window_coords):
11278         Coordinate transformation to deal with all these freaking windows
11279         and offsets
11280         (gtk_text_view_window_to_buffer_coords): transform the other way
11281
11282         * gtk/testtext.c (create_buffer): Update to match Pango API change
11283
11284         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
11285         anonymous tags
11286         (foreach_unref): don't emit remove signal from finalize, just
11287         set tag's parent to NULL
11288
11289 2000-09-26  Havoc Pennington  <hp@redhat.com>
11290
11291         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
11292         Fix some warnings       
11293
11294 2000-09-26  Havoc Pennington  <hp@redhat.com>
11295
11296         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
11297         headers into the private header list
11298
11299         * Makefile.am (pkgconfig_DATA): install pkg-config files
11300
11301         * configure.in: add pkg-config files
11302
11303         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
11304
11305         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
11306         outstanding icon caches on theme change.
11307
11308         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
11309         important types:
11310
11311         (GtkIconSource): Specification for creating a pixbuf 
11312         appropriate for a direction/state/size triplet from 
11313         a source pixbuf or filename
11314
11315         (GtkIconSet): List of GtkIconSource objects that are used to
11316         create the "same" icon (e.g. an OK button icon), and cache for
11317         rendered icons
11318
11319         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
11320         up the icon set for a given stock ID.  GTK maintains a stack of
11321         GtkIconFactory to search, and applications or libraries can add
11322         additional icon factories on top of the stack
11323         
11324         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
11325         the set of GtkIconSource specified for a given stock ID into 
11326         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
11327         RcStyle, under the specified stock ID.
11328
11329         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
11330         render_icon used to derive a GdkPixbuf from a GtkIconSource.
11331         This allows people to theme how prelight, insensitive, etc. are
11332         done.
11333
11334         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
11335         icon factories for a style, and return the resulting 
11336         icon set if any.
11337
11338         (gtk_style_render_icon): Render an icon using the render_icon 
11339         method in the GtkStyleClass.
11340
11341         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
11342         Use the style for a given widget to look up a stock ID, get the
11343         icon set, and render an icon using the render_icon method 
11344         of the style
11345
11346         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
11347         (contains information about a stock item), the built-in stock item
11348         IDs, and functions to add/lookup stock items.
11349
11350         * gtk/stock-icons/*: Stock icons that come with GTK
11351
11352         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
11353         a button based on a GtkStockItem
11354         (gtk_button_new_accel): Takes a uline string and accel group, and
11355         installs the accelerator.
11356
11357         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
11358         image-display widget.
11359
11360 2000-09-25  Havoc Pennington  <hp@redhat.com>
11361
11362         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
11363
11364         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
11365         Fix a bug when removing node data, we didn't properly 
11366         re-splice the linked list after removing the data.
11367
11368         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
11369         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
11370
11371         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
11372
11373         * gtk/gtktextlayout.c (set_para_values): Set tab array 
11374         for the layout from the GtkTextTag.
11375
11376         * gtk/gtktexttypes.h: delete tab and search cruft, 
11377         remove g_convert() in favor of GLib version
11378
11379         * gtk/gtktexttypes.c: remove tab implementation from here,
11380         move to Pango
11381
11382         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
11383         tab stuff using new PangoTabArray from Pango
11384
11385         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
11386         unused border_width stuff
11387
11388 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
11389
11390         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
11391         glib) and now useless utf_to_latin1() latin1_to_utf()
11392
11393         * gtk/gtktextview.[ch]: Change ::move_insert and
11394         ::delete_text action signals to ::move and ::delete;
11395         create the signals with the right enumeration type,
11396         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
11397         C-v bindings, change Home, End to move to beginning/end
11398         of line, Add C-Home C-End to move to beginning/end
11399         of buffer. Change ::cut_text to ::cut_clipboard, etc;
11400         combine ::scroll_text into ::move; use new GtkSelectionData
11401         functions to simplify DND text handling.
11402         
11403         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
11404         deletion enumerations here, rename enumeration values to 
11405         be consistently plural.
11406
11407         * gtk/gtktextbuffer.c: Use new clipboard interfaces
11408         for cut/copy/paste and primary selection.
11409
11410         * gtk/gtktextbuffer.[ch]: Remove excess time and
11411         'interactive' arguments from cut/copy/paste;
11412         rename cut to cut_clipboard, etc; remove
11413         gtk_text_buffer_get_clipboard_contents().
11414
11415         * gtk/gtktextlayout.[ch]: Add 
11416         gtk_text_layout_move_iter_to_line_end() to move the iter to 
11417         line ends.
11418
11419         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
11420         Functions to set or get a UTF-8 string on the selection
11421         data.
11422
11423         * gtk/gtkclipboard.[ch]: New, simplified selection handling
11424         interfaces.
11425
11426         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
11427         created widgets - one of these is useless if we don't.
11428
11429         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
11430         a public function clear all targets registered for the
11431         widget.
11432
11433         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
11434         Never call gtk_widget_realize() - that was just asking
11435         for bizarre side-effects.
11436
11437         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11438         gdk_selection_owner_set even if the widget is the
11439         same so that we reliably update the timestamp on
11440         the server.
11441
11442         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
11443         gdk_x11_get_server_time() function.
11444         
11445         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
11446         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
11447         Add some tricky filtering on serial numbers for
11448         selection clear events to fix up long-standard
11449         race condition FIXME's in gtkselection.c.
11450
11451         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
11452         routines to convert from utf8 to compound text or
11453         STRING and from a text property to UTF-8.
11454
11455         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
11456         a convenience function gdk_get_current_event_time().
11457
11458         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
11459         and free selection_data->data properly
11460
11461 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
11462
11463         * gtk/gtkthemes.c: Remove some unecessary includes.
11464
11465 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
11466
11467         * gtk/gtktextdisplay.c
11468         * gtk/gtktextlayout.c
11469         * gtk/gtktexttag.c
11470         * gtk/gtktexttag.h
11471         * gtk/testtext.c: Change the overstrike property to strikethrough,
11472         to closer match pango.
11473
11474 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
11475
11476         * gtk/gtktextview.c: Fix up visibility so that focus,
11477         cursor_visible and blink interact properly.  Reenable cursor blink
11478         which had been roughly disabled. Make blink and focus
11479         properly per-view.
11480
11481         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
11482         Add a flag for whether to display insertion cursor and
11483         a function to set the flag.
11484
11485         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
11486         get_line_y() to get_line_yrange(), to be a bit more generally
11487         useful.
11488
11489 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
11490
11491         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
11492           do stop_navigating_submenu, to clear last timeout properly.
11493           Also in gtk_menu_motion_notify move ignore_enter above
11494           the conditional to make it always happen as suggested by Owen
11495
11496 2000-09-07  Tor Lillqvist  <tml@iki.fi>
11497
11498         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
11499
11500         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
11501         w32api headers.
11502
11503         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
11504         declarations.
11505
11506         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
11507         (gdk_win32_get_colormap): A line had been deleted by mistake.
11508
11509         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
11510         (gdk_event_translate): Handle more virtual keycodes to be able to
11511         generate GDK events for Control-comma, Control-period, etc.
11512
11513         * gtk/gtk.def: Add some missing entry points.
11514
11515 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
11516
11517         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
11518         Doc comment fixing. (Mostly non-matching parameter names.)
11519
11520         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
11521         comments a little to avoid looking like a doc comment.
11522
11523         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11524         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11525         conversions be changed to GError?)
11526
11527         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11528         Move private #defines into .c file.
11529
11530         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11531         order of argument addition, remove duplicates.
11532
11533         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11534         parent class is FrameClass, not BinClass.
11535
11536         * gtk/gtk.h: Add gtkinvisible, which was missing.
11537         (It's occasionalyl useful for client apps, if seldom.)
11538
11539         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11540         #define.
11541
11542 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11543
11544         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11545         coordinates when creating window, instead of GDK-space
11546         coordinates. (Avoid BadValue on too large windows.)
11547
11548 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11549
11550         * configure.in (use_mmx_asm): Remove conftest* after use along the
11551         lines of AC_TRY_COMPILE.        
11552         
11553         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11554         of g_dirname, which is deprecated.
11555         (gtk_rc_parse_any): Removed calls to
11556         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11557
11558         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11559         Removed calls to g_hash_table_{freeze,thaw}, as they are
11560         deprecated now.
11561
11562         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11563         instead of g_basename.
11564         
11565 2000-09-04 Elliot Lee <sopwith@redhat.com>
11566         
11567         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11568         ANSI warning.
11569
11570 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11571
11572         * gtk/gtkwidget.h:  Add some documenting comments about 
11573           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11574           just as owen said on irc.
11575
11576         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11577           set HAS_DEFAULT.  Only set it if there isn't another window
11578           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11579           it if the widget is not the focused window with RECEIVES_DEFAULT.
11580           This fixes weird double default bugs in dialogs which has things
11581           call gtk_window_set_default at times.
11582
11583 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11584
11585         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11586         Nils Barth and David Santiago to improve submenu
11587         navigation. The patch does this by creating a triangular
11588         region from the point where the pointer leaves the
11589         menu to the submenu.  While the pointer is in
11590         that region and a timeout has not expired, events 
11591         that would cause the active submenu to change are
11592         ignored.
11593
11594 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11595
11596         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11597         moving a toplevel window immediately after sizing it would
11598         result in it being sized back to the old size since 
11599         impl->width, impl->height aren't updated until we hear
11600         back from the server. There is still a (longstanding) bug
11601         here that gdk_window_get_size() will give the wrong size
11602         until we do hear back.
11603
11604 2000-08-31  Havoc Pennington  <hp@redhat.com>
11605
11606         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11607         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11608         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11609         Rename GtkTextStyleValues to GtkTextAttributes
11610
11611 2000-08-31  Havoc Pennington  <hp@pobox.com>
11612
11613         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11614         for rapid testing whether an iterator is the end iterator
11615         (gtk_text_btree_new): init end line cache
11616         (gtk_text_line_is_last): use fast cached line to 
11617         see if we're the last line.
11618         (get_last_line): use cached line here too, should 
11619         speed up some random unrelated code.
11620         
11621 2000-08-30  Havoc Pennington  <hp@pobox.com>
11622
11623         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11624         signals.
11625
11626         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11627         delete_text signals. This allows the signals to be used for
11628         implementing undo.
11629
11630         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11631         provide "interactive" argument when emitting insert_text or
11632         delete_text signal.
11633         
11634 2000-08-30  Havoc Pennington  <hp@pobox.com>
11635
11636         * gtk/gtktextbuffer.c: Docs
11637
11638 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11639
11640         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11641         from switch statements, since Tor removed the enumeration
11642         value.
11643         
11644         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11645         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11646
11647 2000-08-29 Elliot Lee <sopwith@redhat.com>
11648         * */*.h: Use G_GNUC_CONST.
11649
11650 2000-08-27  Havoc Pennington  <hp@pobox.com>
11651
11652         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11653         minor indentation fixes, inserted some FIXME about stuff I
11654         realized was broken while documenting it.
11655         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11656         GTK convention  
11657
11658 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11659
11660         * gtk/testgtk.c (create_styles): Fix double free of
11661         font desc.
11662
11663 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11664
11665         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
11666         
11667         * gtk/testgtk.c (create_styles): Add a test for modifying
11668         the style through gtk_widget_modify_*.
11669
11670         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
11671         a function to get the current modifier style.
11672
11673         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
11674         of the passed in GtkRcStyle instead of ref'ing it.
11675
11676         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
11677
11678 2000-08-20  Tor Lillqvist  <tml@iki.fi>
11679
11680         * gdk/gdkimage.h
11681         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
11682         shared memory image+pixmap GdkImage type, or
11683         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
11684         I am dropping that.
11685
11686         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
11687         actually call gtk_init_abi_check(), passing also
11688         sizeof(GtkWindow). Ditto for gtk_init_check(). 
11689
11690         * gtk/gtk.def
11691         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
11692         New functions, used to check that the GTK+-using code has been
11693         compiled using the correct compiler and switches. In particular,
11694         with gcc one has to use the -fnative-struct switch as GTK+ is
11695         compiled with that.
11696
11697 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
11698
11699         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
11700         ->prev fields when merging lists. (Found simultaneously
11701         by Pawel Salek and Jakub Jelinek)
11702
11703 2000-08-12  Tor Lillqvist  <tml@iki.fi>
11704
11705         * gdk/gdk.def
11706         * gtk/gtk.def: Add missing entries.
11707
11708         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
11709         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
11710
11711         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
11712         function. Dummy implementation at this point.
11713
11714         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
11715         rules. Undefine GTK_COMPILATION when compiling the test programs.
11716         
11717         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
11718
11719 2000-08-11  Tor Lillqvist  <tml@iki.fi>
11720
11721         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
11722         to convert back and forth from UTF-8 and the "system" (or "current
11723         locale") charset when necessary. Indentation/spacing cleanup.
11724
11725 2000-08-10  Havoc Pennington  <hp@redhat.com>
11726
11727         * Makefile.am (snapshot): Change the format of the snapshot
11728         version to match glib
11729
11730         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
11731         from EXTRA_DIST since it doesn't seem to exist
11732
11733 2000-08-10  Tor Lillqvist  <tml@iki.fi>
11734
11735         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
11736         version of the directory name (not the UTF-8 one) when building
11737         the path name to stat().
11738
11739 2000-08-03  Elliot Lee  <sopwith@redhat.com>
11740
11741         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
11742         PANGO_ATTR_SHAPE set.
11743
11744 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
11745
11746         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
11747         Peter Osterlund to simplify the code while keeping the
11748         functionality the same.
11749
11750 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
11751
11752         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
11753         is_viewable() test further inside the function, since removing the 
11754         window from the redraw list without clearing ->update_area
11755         was also very broken.
11756
11757 2000-08-02  Tor Lillqvist  <tml@iki.fi>
11758
11759         * configure.in: Check for <unistd.h>.
11760
11761 2000-08-01  Martin Baulig  <baulig@suse.de>
11762
11763         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
11764         to display the message that this is a development version of GTK+.
11765
11766 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
11767
11768         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
11769         was depending on widget->allocation instead of the width of text_area,
11770         which was incorrect for subclasses like GtkSpinButton.
11771
11772         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
11773         with width == 1 tests that should be width == -1.
11774
11775 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
11776
11777         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
11778         (broken, Elliot, every single window blank on X) custom code with call
11779         to gdk_window_is_viewable() which a) prevents code duplicate and
11780         b) works. 
11781
11782 2000-07-31  Elliot Lee  <sopwith@redhat.com>
11783
11784         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
11785         to get the GDK_PARENT_ROOT() macro to work.
11786         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
11787         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
11788         of, windows that aren't shown.
11789         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
11790         pointer grab stuff.
11791
11792 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
11793
11794         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
11795           s/gtk_main_iteration/g_main_iteration/
11796
11797           Did this already in change:
11798                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11799           don't know how it got reverted.
11800
11801 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
11802
11803         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
11804         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
11805
11806         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
11807         not gdk_pixbuf.
11808
11809 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
11810
11811         * configure.in,po/{sp,sr}.po: Added Serbian files
11812
11813 2000-07-30  Tor Lillqvist  <tml@iki.fi>
11814
11815         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
11816
11817         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
11818         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
11819         GIOChannel implementation.
11820
11821         * gdk/win32/gdkinput.c
11822         * gdk/win32/gdkpango-win32.c: Update license name here, too.
11823
11824         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
11825         definition to match prototype.
11826
11827         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
11828
11829 2000-07-27  Elliot Lee  <sopwith@redhat.com>
11830
11831         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
11832         function, to allow handling image formats that cannot be detected
11833         by looking at content alone.
11834
11835 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
11836
11837         * docs/tutorial/*.gif *.jpg *.eps
11838           Update these to the same look-n-feel.
11839           Why does including images in DocBook suck so badly?
11840
11841 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
11842
11843         * gtk/gtktable.c: applied patch from Phil Thompson
11844         <phil@river-bank.demon.co.uk> that enables space settings for
11845         the last row/columns as well.
11846
11847 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
11848
11849         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
11850         updates the license headers to the GNU Lesser General Public License,
11851         as well as updating the copyright year to 2000.
11852
11853 2000-07-26  Robert Brady  <rwb197@zepler.org>
11854
11855         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
11856           and po/Makefile, was installing and looking for them under gtk20
11857           and gtk2 respectively.
11858
11859 2000-07-25  Havoc Pennington  <hp@redhat.com>
11860
11861         * gtk/testtext.c: Comment out some stuff that depends on the rest
11862         of my patches.
11863
11864 2000-07-25  Havoc Pennington  <hp@redhat.com>
11865
11866         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
11867         buffer
11868
11869 2000-07-25  Havoc Pennington  <hp@redhat.com>
11870
11871         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
11872         widget changes.
11873
11874         * gtk/gtktextview.h: To be consistent with usage of "line"
11875         throughout the API to mean "newline-terminated thingy", change
11876         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
11877         to MOVEMENT_LINE.
11878
11879         (GtkTextView): Add flags for default editability, and whether to
11880         show the cursor. Add functions to get/set that. Add 
11881
11882         (gtk_text_view_get_iter_location): new function
11883
11884         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
11885         gtktextlayout.h
11886         (g_convert): Add g_convert temporarily, will go in glib in a bit
11887         
11888         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
11889         GtkTextTagTableForeach instead of brokenly using GHFunc.
11890         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
11891
11892         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
11893         moved to public header.
11894
11895         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
11896         "invisible", since "elide" was a bad name.
11897         (gtk_text_tag_get_priority): Added
11898
11899         (GtkTextStyleValues): put this in public header, along with
11900         functions to use it.
11901
11902         * gtk/gtktextmarkprivate.h: Include more headers, since we no
11903         longer include gtktextbtree.h.
11904
11905         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
11906         gtk_text_mark_deleted
11907
11908         * gtk/gtktextlayout.h: Don't include the "really private" headers,
11909         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
11910         to make this possible. Now we only need to install
11911         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
11912         (However the Makefile.am isn't changed yet because of the
11913         logistics of merging gtk-hp-patches piecemeal)
11914
11915         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
11916         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
11917         gtk_text_iter_get_line is now used in the public API for a
11918         different purpose.
11919
11920         * gtk/gtktextiter.h: Clean up function names to be more
11921         consistent. Always call char offset "offset" and byte index
11922         "index". A "line" is always a line number. 
11923
11924         (gtk_text_iter_is_last): new function, more efficient than 
11925         the existing way to check
11926         (gtk_text_iter_is_first): new function, also more efficient
11927
11928         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
11929
11930         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
11931         gtk_text_iter_forward_char, etc.
11932
11933         (gtk_text_iter_forward_to_tag_toggle): Renamed from
11934         forward_find_tag_toggle, since this isn't a linear search
11935
11936         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
11937
11938         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
11939         New functions, search for a buffer substring.
11940
11941         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
11942         interactive and default editable (since we need to store that info
11943         until we receive the selection data).
11944
11945         Remove all the _at_char and at_line etc. versions of functions;
11946         only have iterator versions.
11947
11948         Add _interactive() versions of functions, that consider the
11949         editability of text. (FIXME add interactive flag to the 
11950         insert/delete signals per Darin's suggestion)
11951
11952         (gtk_text_buffer_get_tag_table): new function, demand-creates the
11953         tag table if necessary
11954
11955         Remove declaration of gtk_text_buffer_get_iter_from_string
11956
11957         (_gtk_text_buffer_get_btree): private/internal function, added.
11958         
11959
11960         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
11961         (gtk_text_line_is_last): new function
11962
11963 2000-07-25  Havoc Pennington  <hp@redhat.com>
11964
11965         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
11966         using GtkProgressBar. See Changes-2.0.txt for details.
11967
11968         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
11969         "pulse_step" which are the equivalent of
11970         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
11971         Implement new API.
11972         
11973         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
11974         (use_text_format) to mark whether text set on the progress bar is
11975         a format string. Deprecate entire GtkProgress interface.
11976
11977         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
11978         (gtk_progress_build_string): make this a no-op if use_text_format
11979         is FALSE
11980
11981         * docs/Changes-2.0.txt: Describe progress bar changes.
11982
11983 2000-07-25  Tor Lillqvist  <tml@iki.fi>
11984
11985         * Makefile.am: Include the build directory.
11986
11987         * configure.in: Generate build/Makefile, build/win32/Makefile,
11988         gdk/, gdk/win32/, and gtk/makefile.mingw.
11989
11990         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
11991         Add GETTEXT_PACKAGE.
11992         
11993         * gdk/gdk.def
11994         * gtk/gtk.def: Updates.
11995
11996         * gdk/gdkfont.h
11997         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
11998         need them any longer.
11999
12000         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
12001
12002         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
12003         PANGOWIN32_LIBS and gdk_pixbuf.
12004
12005         * gdk/win32: Compiles, but no doubt doesn't work at all.
12006
12007         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
12008
12009         * gdk/win32/gdkinput.c: New file, temporarily.
12010         
12011         * gdk/win32/gdkinput-win32.h: New file
12012
12013         * gdk/win32/gdkinputprivate.h: Remove.
12014
12015         * gdk/win32/gdkpango-win32.c: New file.
12016
12017         * gtk/makefile.mingw.in: New file
12018
12019         * gtk/makefile.cygwin: Removed
12020         
12021         * gtk/Makefile.am: Update accordingly.
12022
12023         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
12024         made externally visible.
12025
12026         * gtk/gtkmain.c: Use it.
12027         
12028         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
12029         is enough.
12030
12031         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
12032
12033 2000-07-24 Elliot Lee <sopwith@redhat.com>
12034         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
12035         individual backends already.
12036         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
12037         again. Yes, there really is a good reason for this, if you are using the gdkregion
12038         internals, and if you're not, why do you care?
12039         * gdk/gdkwindow.c: Fix inverted condition
12040         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
12041         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
12042         * gtk/gtkrange.c: Redraw trough when moving.
12043         * gtk/gtktypeutils.c: Fix warning by adding const cast.
12044         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
12045
12046 2000-07-23  Tor Lillqvist  <tml@iki.fi>
12047
12048         * configure.in: Check for mkstemp and sigsetjmp. Output
12049         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
12050
12051         More work on GDK for Win32. Still in an intermediate state.
12052
12053         * gdk/makefile.cygwin
12054         * gdk/win32/makefile.cygwin: Removed.
12055         
12056         * gdk/makefile.mingw.in
12057         * gdk/win32/makefile.mingw.in: New files.
12058
12059         * gdk/Makefile.am
12060         * gdk/win32/Makefile.am: Generate and distribute them.
12061
12062         * gdk/win32/gdkwindow-win32.h
12063         * gdk/win32/gdkdrawable-win32.h
12064         * gdk/win32/gdkpixmap-win32.h: New files.
12065
12066         * gdk/win32/gdkcolor-win32.c
12067         * gdk/win32/gdkcursor-win32.c
12068         * gdk/win32/gdkdrawable-win32.c
12069         * gdk/win32/gdkgc-win32.c
12070         * gdk/win32/gdkimage-win32.c
12071         * gdk/win32/gdkprivate-win32.h
12072         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
12073         Rename fields and variables called xcursor, xid, etc (these names
12074         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
12075
12076 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
12077
12078         * gtk/gtkentry.[ch]: Fix some problems with vertical
12079         alignment.
12080
12081         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
12082         char/byte confusion.
12083
12084 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
12085
12086         * gtk/gtktextview.c (changed_handler): Fix bug where
12087         redraw wasn't being done properly when height of
12088         dirty region changed.
12089
12090         * demos/Makefile.am: Remove various references to
12091         -lgmodule
12092
12093 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
12094
12095         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
12096         PangoAttrShape to reserve space for pixmaps, add 
12097         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
12098         in the display functions.
12099         
12100         * gtk/testgtk.c (create_layout): Set some more exotic
12101         scrolled window options
12102
12103         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
12104         Add function to set the shadow type of a window, to allow
12105         putting a shadow around widgets such as GtkLayout or GnomeCanvas
12106         which don't draw their own frame.
12107
12108 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
12109
12110         * docs/tutorial/package-db-tutorial.sh: New file for
12111           packaging DocBook format tutorial
12112
12113 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
12114
12115         * docs/tutorial/gtk-tut.sgml: Minor updates
12116
12117         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
12118
12119 2000-07-19  Tor Lillqvist  <tml@iki.fi>
12120
12121         * gtk/gtksignal.c: Fix C++ comment.
12122
12123         * gtk/gtkimmulticontext.c
12124         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
12125         don't return value from void functions.
12126
12127         * gtk/gtk.def: Add gtk_rc_style_unref.
12128
12129 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12130
12131         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
12132         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
12133         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
12134         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
12135         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
12136         gtk/gtktypeutils.h: Include files outside of the extern "C"
12137         block. Makes some C++ compiler happy. Reported by Denis Vakatov
12138         <vakatov@peony.nlm.nih.gov>.
12139
12140 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
12141
12142         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
12143           Completes first pass. Hurrah!
12144
12145 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
12146
12147         * docs/tutorial/gtk-tut.sgml: More clean ups.
12148
12149 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
12150
12151         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
12152         paint the background of the text area which was accidentally
12153         removed at some point.
12154
12155         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
12156           
12157          - Move most of the functionality from the theme vtable
12158            into GtkRcStyleClass and GtkStyleClass. The moved
12159            vtable functions were changed a bit in the move to
12160            work better in their new home.
12161
12162          - Get rid of the engine and engine_data fields from
12163            GtkRcStyle and GtkStyle; instead the theme
12164            engine derives theme-specific subclasses of GtkRcStyle
12165            and GtkStyle
12166
12167          - Add extra dlsym() found entry point to themes,
12168            theme_create_rc_style().
12169
12170         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
12171         in gtk_style_real_copy.
12172
12173         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
12174         to register a type associated with an engine. (The engine
12175         won't be unloaded as there is an instance of the type.)
12176
12177
12178 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
12179
12180         * docs/tutorial/gtk-tut.sgml: Clean ups.
12181
12182 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
12183
12184         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
12185           of cleaning up to do.
12186
12187 2000-07-15  Tor Lillqvist  <tml@iki.fi>
12188
12189         * gdk/testgdk.c: New file, quick hack to test backends for
12190         pixel-by-pixel correctness of the most simple graphic operations.
12191
12192 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
12193
12194         * Really release 1.3.1
12195         
12196         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
12197         include structure.
12198
12199 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
12200
12201         * Released 1.3.1
12202
12203 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
12204
12205         * gtk/gtktextlayout.c: use FALSE for size_only most
12206         of the time when calling gtk_text_layout_get_line_display()
12207         to avoid causing double reshapes when a redraw follows
12208         immediately after.
12209
12210 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
12211
12212         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
12213         appropriate region and gdk_window_process_updates() so trough
12214         updating doesn't lag behind the window being scrolled.
12215
12216         * gdk/gdkgc.c: Make parent_class pointer static.
12217          
12218 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
12219
12220         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
12221         include <string.h>.
12222          
12223         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
12224         cut-and-paste error in computing memory offset for 4 channels.
12225
12226 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
12227
12228         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
12229         gtk_rc_append_default_pixmap_path(), since it wasn't
12230         adding an interesting path and we don't have a meaningful
12231         default for this value.
12232
12233 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
12234
12235         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
12236         gtk-config to gtk-config-2.0 move gtk_.m4 to
12237         gtk-2.0.m4
12238
12239         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12240         gdk/Makefile.am demos/Makefile.am: Change 
12241         library names to libgtk-1.3.la, etc, so that we
12242         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
12243
12244         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12245         gdk/Makefile.am gdk/x11/Makfile.am
12246         Move include files into /usr/include/gtk-2.0, 
12247         /usr/lib/gtk-2.0/include/
12248          
12249         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
12250         gtk/gtkintl.h: Change package for gettext from 
12251         gtk+ to gtk20. Put hack in autogen.sh to modify
12252         po/Makefile.in.in after gettextize to make this
12253         possible.
12254
12255         * gtk+.spec: Some updates, not tested.
12256
12257         * gdk-pixbuf/Makefile.am: Move loaders into
12258         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
12259
12260         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
12261         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
12262         to THEMENAME/gtk-2.0/. Move engine directory  to
12263         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
12264         
12265 2000-07-12  Tor Lillqvist  <tml@iki.fi>
12266
12267         Win32 changes, still doesn't build though.
12268
12269         * gdk/makefile.cygwin
12270         * gdk/win32/makefile.cygwin
12271         * gtk/makefile.cygwin: Updates.
12272
12273         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
12274         default values for fg and bg pixel as X11 does (0 and 1), not
12275         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
12276         Use 0 for pen width by default (treated as 1 anyway later, but for
12277         apps that might check the value in the GdkGC).
12278         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
12279         interface to gdk_gc_predraw and _postdraw.
12280
12281         * gdk/win32/gdkwin32.h
12282         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
12283
12284         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
12285         extraneous semicolon.
12286
12287         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
12288
12289         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
12290         not the Win32 bitspixel value.
12291
12292         * gdk/win32/gdkcc-win32.c:
12293         * gdk/win32/gdkcolor-win32.c 
12294         * gdk/win32/gdkprivate-win32.h
12295         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
12296         GDK object structure.
12297
12298 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
12299
12300         * docs/tutorial/gtk_tut_12.es.sgml (name): 
12301         * docs/tutorial/gtk_tut_it.sgml (name): 
12302         * docs/tutorial/gtk_tut_fr.sgml (name): 
12303         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
12304         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
12305
12306 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
12307
12308         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
12309           small changes.
12310
12311 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
12312
12313         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
12314         a bug here, never been here and never fixed anything ;(
12315         (don't segfault if tree->root_tree is NULL, which happens prior
12316         to widget realization, but puke instead).
12317
12318 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
12319
12320         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
12321         add the necessary tokens.
12322
12323         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
12324         (gtk_rc_style_to_style): copy thicknesses.
12325         (gtk_rc_init_style): apply thicknesses.
12326         (gtk_rc_parse_style): parse xthickness and ythickness.
12327
12328         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
12329
12330         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
12331         (gdk_window_new): 
12332         (_gdk_windowing_window_init): 
12333         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
12334         (gdk_pixmap_create_from_data): 
12335         (gdk_bitmap_create_from_data): 
12336         (gdk_pixmap_new): 
12337         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12338         (gdk_image_new): 
12339         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
12340         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
12341         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
12342         (gdk_colormap_get_system): 
12343         (gdk_colormap_new): 
12344         * gdk/gdkwindow.c (gdk_window_init): 
12345         * gtk/gtkstyle.c (gtk_style_new):
12346         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
12347         * gdk/gdkpixmap.c (gdk_pixmap_init): 
12348         * gtk/gtkrc.c (gtk_rc_style_new):
12349         use g_object_new() instead of g_type_create_instance() which
12350         is a private function for fundamental type implementations.
12351
12352 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
12353
12354         * configure.in: Add check for db2html
12355
12356 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
12357
12358         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
12359         hack to set glib_debug_objects based on gtk_debug_flags.
12360
12361 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
12362
12363         * INSTALL.in: Update the Prerequisites section.
12364
12365         * Makefile.am demos/Makefile.am docs/Makefile.am
12366         docs/tutorial/Makefile.am gdk/x11/Makefile.am
12367         gdk/linux-fb/Makefile.am: Dist fixes
12368
12369 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
12370
12371         * NEWS: 10,000 foot view of 1.3.1 changes.
12372
12373 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
12374
12375         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
12376         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
12377         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
12378         gdk/x11/gdkmain-x11.c: 
12379
12380         Patch from George Lebl to add a GdkGrabStatus enumeration to use
12381         as a return value of gdk_*_grab(). Previously, we just
12382         returned the X11 values directly.
12383
12384 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
12385
12386         * gdk/x11/Makefile.am: Patch from George Lebl to 
12387         install all the headers in the right place.
12388
12389 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
12390
12391         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
12392           initial conversion to DocBook.
12393
12394 2000-07-04  Tor Lillqvist  <tml@iki.fi>
12395
12396         * README.win32: Improve a bit.
12397
12398         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
12399         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
12400         Alt+0nnn on the numpad (used to enter characters by numeric code
12401         from current DOS or ANSI codepage) working correctly, as in other
12402         Windows apps.
12403
12404         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
12405         same argument validity tests as in X11 version.
12406         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
12407
12408         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
12409         definitions in case missing from headers.
12410
12411         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
12412         destroy the window-specific cursor.
12413         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
12414         calling GetModuleHandle(NULL).
12415         (gdk_window_set_cursor): Reworked to always copy the passed cursor
12416         with CopyCursor before setting it as the window-specific
12417         cursor. It is OK for the caller to destroy the GdkCursor (and thus
12418         also its Windows cursor) after calling this function. Destroy any
12419         previous window-specific cursor.
12420
12421 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
12422
12423         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
12424         font charset is iso8859-1, not iso-8859-1.
12425
12426 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
12427
12428         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
12429         Use g_get_charset() instead of g_get_codeset().
12430
12431         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
12432         Comment out some strdup'ing functions to keep timj
12433         happy until we finish fighting this out.
12434
12435 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
12436
12437         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12438         <= width or height.
12439
12440         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
12441         from 1.2 for parent/child states.
12442
12443         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
12444         of typos.
12445
12446         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
12447         event structures, replace with a generic axes field. Replace 
12448         deviceid/sourec with GdkDevice *device.
12449
12450         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
12451         to extract particular axis use value from event. (Also
12452         can be used for normal X/Y.)
12453
12454         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
12455         allow for arbitrary number of axes, namespace everything
12456         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
12457         everywhere.
12458
12459         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
12460         Get rid of the gdk_input_vtable setup if favor of simply
12461         defining the functions in gdkinput-none/gxi/xfree.c in
12462         a similar fashion to the way that the port structure is 
12463         done.
12464
12465         * gtk/gtkdnd.c: Fix fields of synthesized button press event
12466         for new event structures. 
12467
12468         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
12469         new device interfaces.
12470
12471 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
12472
12473         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
12474         set the initial text.
12475
12476         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
12477         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
12478         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
12479         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
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:43:41 2000  Owen Taylor  <otaylor@redhat.com>
12485
12486         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12487         pango_layout_set_font_description to simplify.
12488
12489 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
12490
12491         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
12492         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
12493         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
12494
12495         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
12496         PANGO_PIXELS() macro.
12497
12498 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
12499
12500         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
12501         that returns a PangoContext owned by the widget and updated to
12502         match future changes in the widget. Also, make 
12503         gtk_widget_create_pango_layout() use this context. If we ever
12504         add a ::changed signal to PangoContext, this will make things
12505         much more convenient. 
12506
12507         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
12508         in the appropriate places instead of destroying the layouts and
12509         creating new ones.
12510
12511         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
12512         in a few strategic places.
12513
12514 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
12515
12516         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
12517         gtk_widget_size_request() on reparented child, if one. Otherwise,
12518         queue_resize() on the child never results in it getting size-requested
12519         at all.
12520
12521         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12522         in option menus, so that (with luck) people won't copy it into
12523         their apps in the future.
12524
12525         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12526         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12527         a lot of problems with changing the size of the menu's menu
12528         items after adding it to the option menu.
12529
12530         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12531
12532         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12533         the text direction for a widget changes.
12534
12535         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12536         ::direction_changed to get rid of various hacks.
12537
12538 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12539
12540         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12541         name.
12542
12543 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12544
12545         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12546         flag to the structure. Do not call XFreePixmap on pixmaps created
12547         by gdk_pixmap_foreign_new().
12548
12549 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12550
12551         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12552         value using GdkRGB functionality given GdkColormap and GdkColor.
12553         (name not final, waiting for inspiration.)
12554         
12555         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12556         set the foreground/background of a GC using the GC's colormap
12557         and GdkRGB. (name not final, waiting for inspiration.)
12558
12559         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12560         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12561
12562         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12563         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12564         purely a function of the corresponding colormap. Make
12565         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12566
12567         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12568         gdk_pixbuf_*create_from_xpm_* in terms of
12569         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12570         code.
12571
12572         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12573         advantage of the new draw_rgb_32_image_dithalign.
12574
12575         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12576
12577         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12578         on each created GC.
12579
12580         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12581
12582         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12583         which we initialize from the drawable when the GC is created,
12584         if the drawable has a colormap.
12585
12586         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12587
12588         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12589
12590         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12591
12592 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12593
12594         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12595         actually returning expose events, make sure to set
12596         the count field properly.
12597
12598         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12599         accidentally reintroced bug which always cleared
12600         the graphics_exposures value. 
12601
12602 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12603
12604         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12605
12606 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12607
12608         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12609
12610 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12611
12612         * docs/faq/gtk-faq.sgml: Start of Section 6.
12613
12614 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12615
12616         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12617         
12618         (Fixes problem with drawing childless frames. Pointed out
12619         by and a first patch from Anders)
12620         
12621         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12622         compute a child_allocation, even if we don't have a child.
12623
12624         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12625         Always chain to the parent's impl, even if we don't have a child.
12626
12627 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12628
12629         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12630         use multiple parts of it instead of creating a bunch of separate
12631         segments, since the maximum number of segments per system is not
12632         large. (This might be worth backporting to GTK+-1.2.x if we make a
12633         new release )
12634
12635         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12636         structure in preparation for per-colormap GdkRGB.
12637
12638         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12639         to False when we get EINVAL from shmget so that the caller of
12640         gdk_image_new can retry with a smaller segment size.
12641
12642 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12643
12644         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12645
12646 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12647
12648         * configure.in: make the current version number 1.3.1 (binary age 0,
12649         interface age 0).
12650         
12651         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12652         gtkcompat.h is all we want.
12653
12654         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12655         GLib primitive types. fixed g_type_register_fundamental() argument
12656         ordering.
12657
12658         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12659         compiles.
12660
12661         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12662         object code cleanup, comment trigraph fixes, etc...
12663
12664 2000-06-23  Havoc Pennington  <hp@redhat.com>
12665
12666         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
12667         instead of making up a bogus name for first_para_mark
12668
12669         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
12670         0 as a context ID
12671
12672 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
12673
12674         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
12675
12676 2000-06-21  Havoc Pennington  <hp@pobox.com>
12677
12678         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
12679         we didn't check window->bg_pixmap != GDK_NO_BG.
12680
12681         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
12682         gdk-pixbuf
12683
12684 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
12685
12686         * docs/faq/gtk-faq.sgm: Move file to here.
12687           TODO: Update Makfile.am 
12688
12689 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
12690
12691         * docs/gtk-faq.sgm: Add Section 2
12692
12693 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
12694
12695         * docs/gtk-faq.sgm: New file. Start of DocBook
12696           version of the FAQ.
12697
12698 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
12699
12700         * configure.in (GDK_PIXBUF_MAJOR): Define version
12701         numbers for GDK_PIXBUF_*, as they get substituted
12702         into a header file. Need to consider versioning
12703         for gdk-pixbuf more carefully later.
12704
12705 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
12706
12707         Work with srcdir != builddir.   
12708         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
12709         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
12710         * demos/testpixbuf.c: Likewise.
12711         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
12712         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
12713         <gdk/x11/gdkx.h>.
12714         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
12715         "gdk-pixbuf.h".
12716         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
12717
12718 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
12719
12720         * TODO.xml: Change 1.4 version numbers to 2.0.
12721
12722 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
12723
12724         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
12725         fixups to GTK+ standard.
12726
12727 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
12728
12729         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
12730         gdk-pixbuf.
12731
12732         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
12733         fixups for GObject.
12734
12735         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
12736         gdk-pixbuf with GDK dependencies moved into GDK.
12737         
12738         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
12739         move gdk-pixbuf-loader here until GObject has signals.
12740
12741         * demos/: New directory of demos. Move demos from
12742         gdk-pixbuf here.
12743
12744         * demos/pixbuf-init.c: Small bit of code to check for
12745         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
12746         set GDK_PIXBUF_MODULEDIR appropriately.
12747
12748         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
12749         define which no longer makes sense.
12750
12751 2000-06-21  Havoc Pennington  <hp@redhat.com>
12752
12753         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
12754         gtk_get_default_language
12755
12756         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
12757         new function to get the default language
12758
12759         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
12760         s/gtk_text_view_style_values/gtk_text_style_values/
12761
12762         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
12763         Add a "language" field to tags.
12764
12765         (gtk_text_tag_set_arg): Fix bug in setting
12766         "bg_full_height_set" tag.
12767
12768 2000-06-21  Havoc Pennington  <hp@redhat.com>
12769
12770         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
12771         in the interfaces
12772
12773         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
12774         stuff instead when possible.
12775
12776         * gtk/gtktexttypes.h: Delete some unused constants
12777
12778         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
12779         testtextbuffer.c: use glib instead of custom unicode routines
12780
12781 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
12782
12783         * docs/es/: Removed mistakenly added generated sgml
12784
12785         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
12786         Remove outdated info files.
12787
12788         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
12789         Moved tutorial files into subdir
12790
12791         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
12792         subdir.
12793
12794         * docs/man/gtk_button.pod: Remove. (contents will be
12795         integrated into gtk-reference button page.)
12796
12797         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
12798         docs/faq/Makefile.am: Adjust for new organization
12799
12800 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
12801
12802         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
12803         not $(MKINSTALLDIRS)
12804
12805 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
12806
12807         * gtk/testgtk.c (create_text): Finish the job Elliot started
12808         of removing font setting test for text widget. (Since text widget
12809         and GdkFont are not deprecated, and cause portability problems.)
12810
12811 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
12812
12813         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
12814         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
12815         Remove use of libunicode in favor of new GLib functions.
12816
12817         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
12818         nano-x, framebuffer. The X11 include is just a hack until we get
12819         the necessary functions in gdkcolor.h, so there is no reason to
12820         add other includes of platforms.
12821
12822         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
12823         window bigger than the screen change.
12824
12825         * gtk/testgtk.c: Revert some random changes from Elliot
12826         that had no particular point and were causing testgtkrc
12827         not to function correctly.
12828         
12829         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
12830         because GdkSegment and GdkRegionBox have the same fields,
12831         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
12832         results in clearer code.
12833
12834         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
12835         gdk_input_translate_coordinates): Fix missed GdkObjectification
12836
12837 2000-06-18  Elliot Lee  <sopwith@redhat.com>
12838
12839         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
12840         * gtk/gtk{plug,socket}.h: Missed commits from previous.
12841
12842 2000-06-20  Havoc Pennington  <hp@redhat.com>
12843
12844         * modules/linux-fb/Makefile.am: Make this compile
12845         without framebuffer enabled
12846
12847         * gdk/linux-fb/Makefile.am: Add conditional to not build
12848         framebuffer unless specified in configure
12849
12850         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
12851         the size of the target instead of source if -1 was passed for
12852         width/height
12853
12854         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
12855         width/height confusion.
12856
12857 2000-06-19  Havoc Pennington  <hp@redhat.com>
12858
12859         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
12860         GDK_DRAWABLE_XID. In the future, we probably want to make it
12861         faster with G_DISABLE_CHECKS turned on.
12862
12863 2000-06-14  Havoc Pennington  <hp@redhat.com>
12864
12865         * gdk/Makefile.am: add gdkpixmap.c
12866
12867         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
12868         s/gdk_image_init/_gdk_windowing_image_init
12869
12870         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
12871         ref/unref
12872
12873         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
12874
12875         * gdk/gdkcompat.h: remove GdkWindowType compat, since
12876         GdkWindowType is now non-deprecated; 
12877         change gdk_window_get_type() compat to be
12878         gdk_window_get_window_type().
12879
12880         * gdk/gdkdnd.h: make GdkDragContext a GObject.
12881
12882         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
12883         virtual GObject. Make all functions call into the vtable.
12884         Move gdk_image_put() guts in here. Remove GdkDrawableType
12885         and gdk_drawable_get_type(), these are now GdkWindow-specific.
12886         draw_image, get_depth, get_size, set_colormap, get_colormap,
12887         get_visual added to the vtable.
12888         
12889         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
12890         GObject. Virtualize everything. 
12891         (gdk_gc_new_with_values): remove check for destroyed window,
12892         because now GdkWindow::create_gc will check this.
12893         (gdk_gc_set_values): New function to set GC values, this 
12894         was already implemented but wasn't in the header
12895
12896         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
12897
12898         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
12899         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
12900         remove _gdk_window_class; add _gdk_window_impl_get_type() and
12901         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
12902         _gdk_windowing_window_init, rename gdk_image_init to
12903         _gdk_windowing_image_init.
12904         
12905         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
12906         (gdk_draw_layout): Remove check for destroyed window, 
12907         because all the drawable methods already check it.
12908         
12909         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
12910         Add gdkpixmap.c which contains implementation of GdkDrawable
12911         virtual table (by chaining to a platform-specific implementation
12912         object).
12913         
12914         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
12915         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
12916         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
12917         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
12918         GdkColormapPrivate. 
12919
12920         * gdk/gdktypes.h: #include <glib-object.h>
12921
12922         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
12923         Move most functionality to platform-specific implementation
12924         object. GdkWindow itself now handles the backing store, then
12925         chains to the platform-specific implementation.
12926         (gdk_window_get_window_type): return GdkWindowType of the window.
12927         (gdk_window_peek_children): New routine, returns the children of 
12928         a GdkWindow
12929         (gdk_window_get_children): Was in X11-specific code and did 
12930         XQueryTree. Changed to simply return a copy of window->children; 
12931         so it can go in cross-platform code.
12932         
12933         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
12934
12935         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
12936         GdkColormap; just changed to use the new private data instead
12937         of casting to GdkColormapPrivate.
12938
12939         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
12940         gdk_cursor_new().
12941
12942         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
12943         (private data member in the GObject). 
12944         (xdnd_manager_source_filter): Function had broken 
12945         error handling, fix it (use gdk_error_trap_push).
12946
12947         * gdk/x11/gdkdrawable-x11.c: This file now implements
12948         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
12949         base class is purely for the convenience of the X port,
12950         and not part of the interface to cross-platform GDK.
12951
12952         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
12953         
12954         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
12955         specific to X, and returned by the create_gc virtual method
12956         of GdkDrawableImplX11. 
12957         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
12958         rather than gchar, this was also changed in the GdkGC vtable.
12959         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
12960         mask is 0, return immediately, instead of checking every flag.
12961         This is faster, and keeps us from segfaulting if values is NULL
12962         and the mask contains some nonzero flags.
12963
12964         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
12965         GdkWindow.
12966
12967         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
12968         GdkWindowPrivate is gone.
12969
12970         * gdk/x11/gdkim-x11.c: rename things that got renamed.
12971
12972         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
12973         remove the image_put stuff that got transferred to GdkDrawable.
12974         
12975         * gdk/x11/gdkinput.c: renamings
12976
12977         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
12978
12979         * gdk/x11/gdkpixmap-x11.c: GObject conversion
12980
12981         * gdk/x11/gdkprivate-x11.h: indentation fixes
12982
12983         * gdk/x11/gdkproperty-x11.c: renamings
12984
12985         * gdk/x11/gdkselection-x11.c: renamings
12986
12987         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
12988         implements the platform-specific "impl" object.
12989         Moved gdk_window_get_children to gdk/gdkwindow.c
12990
12991         * gdk/x11/gdkx.h: Remove all the private structs and private datas
12992         that no longer exist. Add declaration of GdkGCX11 object here.
12993         Fix all the macros to still work. 
12994
12995         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
12996         GdkDragContext from the boxed types since they are now GObjects.
12997
12998         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
12999         moved xthickness/ythickness into the instance. GtkStyleClass
13000         functions are now in the standard vtable for GtkStyle, so you have
13001         to create a GObject subclass to write a theme engine.
13002         (gtk_style_copy): fixed a leaked PangoFontDescription
13003         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
13004         can be the standard GObject function.
13005         
13006         * Throughout GTK:
13007         s/style->klass->[xy]thickness/style->[xy]thickness
13008         s/pango_layout_unref/g_object_unref/
13009
13010         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
13011         
13012         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
13013         accessing GDK internals.
13014
13015         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
13016         accessing GDK internals.
13017
13018 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13019
13020         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
13021
13022         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
13023         problem by calculating event position relative to the trough
13024         rather than the slider.
13025         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
13026
13027         * gdk/gdkgc.h: Add GDK_NOR.
13028
13029         * configure.in, Makefile.am: Add modules top level dir
13030         * configure.in: Only use pangox library if building x11 target.
13031         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
13032
13033 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13034
13035         * gtk/gtkcolorsel.c: Change private class member to be named
13036         private_data throughout the file.
13037
13038         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
13039         private_data to avoid clashing with keyword.
13040
13041 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13042
13043         * gdk/gdkdnd.h: Add comment to remove warning.
13044
13045 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
13046
13047         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
13048         Byelorussian language; changed the Makefile and file names 
13049         to reflect that.
13050
13051 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
13052
13053         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
13054         rather than gdk_window_hide; this makes things work
13055         correctly if the window is programmatically hidden while
13056         iconified.
13057
13058 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
13059
13060         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
13061         cut and paste typo where wrong pixmap was being
13062         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
13063
13064 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
13065
13066         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
13067         Add helper function to compute format / bytes 
13068         relationship. Use in a couple places to fix up
13069         errors which assume 8 * format.
13070
13071         * gtk/gtkselection.c (gtk_selection_request): Use 32
13072         rather than 8 * sizeof (GdkAtom), to work correctly
13073         on Alpha.
13074
13075 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
13076
13077         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
13078         libgtk.la
13079         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
13080         versions
13081
13082         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
13083         checking macros return NULL since the function has a return value.
13084
13085 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
13086
13087         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
13088         GTK+ from building at all.
13089
13090         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
13091
13092 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
13093
13094         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
13095         gtk/Makefile.am: make it possible to configure gtk for different
13096         targets on the same platform. The library name is now 
13097         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
13098         flag. Only the x11 target compiles right now.
13099         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
13100         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
13101         * gdk/nanox/gdk*generic*: delete generic region code.
13102         * gdk/linux-fb/gdk*generic*: delete generic region code.
13103         * README.nanox: update information.
13104         
13105 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
13106
13107         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
13108         prepend not append. (Pointed out by Brett Hall.)
13109
13110 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
13111
13112         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
13113
13114 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
13115
13116         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
13117         need this later, and this makes sure that the atexit for
13118         glib gets called after that for GDK, so atexits are
13119         properly ordered for object leak checking.
13120
13121         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
13122
13123         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
13124         pango_x_shutdown_display()
13125
13126         * gtk/simple.c (main): Close window on destroy.
13127
13128 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
13129
13130         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
13131         to treat initial creation different from setting with 
13132         regards to the graphics-exposures parameter, so add a parameter
13133         indicating whether this is initial or not.
13134
13135 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
13136
13137         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
13138         to sort of work by adding an extra return_exposes arg
13139         to gdk_event_translate() - it might be better to simply
13140         deprecate the function altogether and force people to rewrite
13141         without it. gdk_window_scroll() handles most of it, and where
13142         gdk_window_scroll() doesn't work, simply redrawing more does.
13143
13144         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
13145         assertion.
13146
13147         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
13148
13149         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
13150         bunch of pretty much useless /* Print debugging info */ comments 
13151         which had drifted away from the code they were commenting.
13152
13153 2000-06-02  Havoc Pennington  <hp@pobox.com>
13154
13155         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
13156         is in working order.
13157         
13158         * gtk/testtext.c: Change to reflect anonymous mark API
13159
13160         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
13161
13162         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
13163         field, which was unused.
13164
13165         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
13166         saves some typing.
13167
13168         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
13169
13170         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
13171         flag on the insertion point and selection bound
13172
13173         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
13174         make mark-manipulation functions take a GtkTextMark* instead of a
13175         mark name.
13176         
13177         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
13178         GtkTextMarkBody; will be used to detect attempts to delete
13179         the permanent marks (insert and selection bound)
13180
13181         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
13182
13183 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
13184
13185         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
13186         flag to on.
13187
13188         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
13189         Honor DOUBLE_BUFFRED_FLAG
13190
13191         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
13192         function to set the DOUBLE_BUFFERED flag.
13193
13194         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
13195         or not exposes done on the widget should be double-buffered.
13196
13197         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
13198         to be what would be expected. (Fixes problem with a
13199         g_return_if_fail() validating a TextDirection enumeration)
13200
13201 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
13202
13203         * gtk/gtkwidget.c: Remove all references to 
13204         offscreen flag which was no longer used.
13205
13206         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
13207
13208         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
13209         for non-null label_widget->parent.
13210
13211         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
13212         which no longer was used.
13213
13214         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
13215
13216         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
13217         for null arguments.
13218
13219         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
13220         check for destroyed windows.
13221
13222 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
13223
13224         * gtk/gtkimmulticontext.c: Add a finalize method and unref
13225         the slave context there.
13226
13227         * gtk/gtkinvisible.[ch]: Make reference counting behavior
13228         identical to GtkWindow.
13229
13230 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
13231
13232         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
13233         pangox to here, so we can write them independent of rendering
13234         system, using GDK primitives.
13235
13236         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
13237         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
13238         since we have a rendering-system independent implementation in
13239         terms of draw_glyphs().
13240         
13241         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
13242         function to render a single line.
13243
13244         * gdk/x11/gdkpango.c: Move the guts of this file mostly
13245         into ../gdkpango.c, which simplifies things, since we
13246         don't have to deal with raw X gc's.
13247
13248 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
13249
13250         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
13251         get the logical attributes for a given GtkTextLine.
13252
13253 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
13256         g_locale_get_codeset() to g_get_codeset() change.
13257
13258 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
13259
13260         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
13261         descriptions.
13262
13263         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
13264         the entry.
13265
13266         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
13267         redoing (vastly simplifying) for Pango. Still needs quite
13268         a bit of work. (Size selection is currently poor. List of 
13269         predefined sizes is not a good idea, since all of these
13270         sizes won't necessarily be distinct.)
13271
13272 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
13273
13274         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
13275         CODESET results for LANG=C.
13276
13277 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
13278
13279         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
13280         which takes a stringized pango font description;
13281         ignore the older 'font' and 'fontset' declarations.
13282
13283         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
13284         field with a GdkFont derived via gdk_font_from_description(),
13285         for compatibility. (Should we just remove it entirely?
13286         Probably too much compatibility breakage, but people
13287         should be migrating to the new Pango stuff as quickly
13288         as possible.)
13289
13290 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
13291
13292         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
13293
13294 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
13295
13296         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
13297         redoing; there are some bugs in size allocation right
13298         now, the semi-existant distinction between header / day
13299         fonts was removed, but, with Pango, could actually
13300         be made functional in a nice way.
13301         
13302         * gtk/testcalender: Move calender from examples into this
13303         directory as a test program. (We really need to restrcture
13304         testgtk into a whole directory full of tests for every
13305         widget or functionality group, separated into multiple .c
13306         files.)
13307
13308 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
13309
13310         * gtk/testgtk.c (file_exists): Fix stupid typo that
13311         was keeping RC file from being loaded.
13312
13313         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
13314         RC file font code.
13315
13316 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
13317
13318         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
13319         Add function to load a GdkFont from a PangoFontDescription.
13320
13321 2000-05-29  Tor Lillqvist  <tml@iki.fi>
13322
13323         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
13324         variable should be of type GdkEventPrivate.
13325
13326 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
13327
13328         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
13329         to have any widget for the label, use a GtkLabel widget
13330         to display the text. (Based partially on a patch from
13331         Anders Carlson.)
13332
13333         (Quite a bit of code reorganization - strip 90% of the
13334         guts out of gtkaspectframe and add a single virtual
13335         func to GtkFrameClass - compute_child_allocation.)
13336
13337 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
13338
13339         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
13340         (Removed clist->row_center_offset field because caching
13341         it wasn't saving time or code, added private function
13342         _gtk_clist_create_cell_layout()).
13343
13344 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
13345
13346         * gtk/gtkaccellabel.c: Pangoized.
13347
13348         * gtk/[hv]ruler.c: Pangoized
13349
13350 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
13351
13352         * gtk/gtkfilesel.c (gtk_file_selection_init):
13353         Use gtk_clist_set_column_auto_resize() to remove need
13354         need for manual column width computations.
13355
13356 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
13357
13358         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
13359         ensuring Pango correctness, and considerably simplifying the
13360         code.
13361         
13362         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
13363
13364         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
13365         getting of numbers of lines.
13366
13367         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
13368         to the actual requested width of the lable, not to the wrap
13369         width we set.
13370
13371         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
13372
13373         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
13374           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
13375
13376         * gtk/gtktextview.c: Fix structure inheritance.
13377
13378         * gtk/gtkprogressbar.c: Pangoize.
13379
13380 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
13381
13382         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
13383         in a function.
13384
13385         * gtk/gtktextlayout.c (find_display_line_above): Fixed
13386         bug with computing line tops.
13387
13388         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
13389
13390 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13391
13392         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
13393         and y_offset coordinates to do what we need now. (The offset between
13394         buffer and layout coordinates has been reintroduced, but is a 
13395         bit different than before.)
13396
13397         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
13398         handle the adjustments ourselves, and scroll as necessary using
13399         the new gdk_window_scroll().
13400         
13401         The advantage of this is that when we are incrementally revalidating,
13402         we are essentially rearranging things around the visible portion
13403         of the screen. With the old setup, the visible portion of the
13404         screen was moved around in the layout, so scrolling and redrawing
13405         to track that caused jumping of the display. Since we now
13406         control the scrolling ourselves, we can suppress this and
13407         only redraw when things actually change.
13408
13409 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
13410
13411         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
13412         the region not just redisplay it after-all, since we store the
13413         cursors in the LineDisplay. (Ugly interactions here between
13414         GtkLayout and GtkTextBTree here.)
13415         
13416         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
13417
13418 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13419
13420         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
13421         Added function to scroll contents of a window while keeping the
13422         window constant. Works by XCopyArea or guffaw-scrolling depending
13423         on the details of how the window is set up. (guffaw-scrolling
13424         still needs to be filled in.)
13425
13426 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
13427
13428         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
13429         move the debugging that was tied to a global variable
13430         to that.
13431
13432         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
13433
13434         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
13435         validated flag, in line data instead of setting height/width to
13436         -1. This allows us to perform operations with partially invalid
13437         buffer (using the old size for invalid lines) and thus to do
13438         incremental vaidation. Keep height/width aggregates up to date
13439         when deleting text and rebalancing the tree.
13440
13441         * gtk/gtktextbtree.[ch]: Add functions validate a line
13442         (gtk_text_btree_validate_line), and to validate up
13443         to a number of pixels (gtk_text_btree_validate).
13444
13445         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
13446         that indicates that something is changed and a revalidation
13447         pass is needed. Change ::need_repaint to ::changed, and
13448         make it take old and new yranges instead of a rectangle.
13449
13450         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
13451         the line_data_destroy() function from 
13452         gtk_text_btree_add_view() to a virtual function in 
13453         GtkTextLayout
13454
13455         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
13456         since we are handling partial repaints in a different fashion
13457         now.
13458
13459         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
13460         of the selection instead of queueing a repaint on the
13461         entire widget.
13462
13463         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
13464         get_selection_bounds() down to btree, make the function
13465         in buffer a wrapper around the btree function.
13466
13467         * gtk/gtktextlayout.[ch]: Add functions to check if the
13468         layout is valid and to recompute either a range of pixels
13469         aroudn a line or a certain total number of pixels.
13470
13471         * gtk/gtktextlayout.[ch]: Cache a single line display;
13472         now that we only redraw the needed portions, the hit rate
13473         for this cache is quite high.
13474         
13475         * gtk/gtktextview.[ch]: Keep track of the first paragraph
13476         on the screen so that when re-laying-out the buffer, we can
13477         keep the same place. This requires connecting to ::value_changed
13478         on the adjustments
13479
13480         * gtk/gtktextview.[ch]: Add idle functions to revalidate
13481         the buffer after we receive an ::invalidated signal.
13482         
13483 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
13484
13485         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
13486         to max of allocation and layout size, not just to the
13487         layout size.
13488
13489         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
13490         Invalidate window so it gets redrawn properly.
13491
13492         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
13493         to mean the entire window.
13494
13495         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
13496         into public header.
13497
13498 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13499
13500         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
13501         to get the name of a mark.
13502
13503         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
13504         to find the paragraph from a y position.
13505
13506 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
13507
13508         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
13509         nodes have width/height >= 0, not > 0.
13510
13511 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
13512
13513         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
13514         Add a size_only flag, so when we only need the size, we don't create
13515         useless appearance attributes.
13516
13517         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
13518         duplicate setting of font description.
13519
13520         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
13521
13522 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13523
13524         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13525         EXTRA_DIST. It does not work well when the file that
13526         everything depends on is not in the tarball.
13527
13528 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13529
13530         * gtk/testgtk.c: Some hacks and fixes so that it basically
13531         works when not sitting in the GTK+ build tree.
13532
13533 2000-05-03  Havoc Pennington  <hp@redhat.com>
13534
13535         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13536         Properly determine the ordering of the tag root and the current
13537         line within the tree. Previous algorithm only worked if the tag
13538         root's immediate parent was the common root of both the current
13539         line and the tag root.
13540
13541 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13542
13543         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13544         alignment.
13545
13546         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13547         the widget text directional dynamically.
13548
13549         * gtk/gtktextview.[ch]: Added functions to get and set default
13550         wrap mode.
13551
13552 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13553
13554         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13555         in cursor location computation.
13556
13557 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13558
13559         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13560         vadjusment values properly when layout gets smaller.
13561
13562         * gtk/gtktextview.c (need_repaint_handler): Areas being
13563         passed in are far completely inaccurate, and sometimes
13564         too small, so, for now, just queue a redraw on the
13565         whole visible region.
13566
13567 2000-04-25  Havoc Pennington  <hp@redhat.com>
13568
13569         * gtk/gtktextbtree.c (summary_destroy): new function to 
13570         destroy tag summary nodes
13571         (gtk_text_line_next_could_contain_tag): this function was 
13572         totally broken if the line passed in wasn't below the tag
13573         root. Fix it.
13574         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13575         "wildcard" case, we have to do a linear scan. Blah.
13576         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13577         we have to do the linear scan
13578         (tag_removed_cb): When a tag is removed from the tag table, 
13579         remove the GtkTextTagInfo node from the btree.
13580         (gtk_text_btree_spew): Implement the spew function, for 
13581         our debugging pleasure.
13582
13583 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13584
13585         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13586         a problem with referring to the wrong buffer.
13587
13588         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13589
13590         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13591         font description to gtk_style_new() - otherwise things
13592         don't work without a .gtkrc file.
13593
13594         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13595         tags table if we create it ourself, too.
13596
13597         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13598         it was conflicting with XKB modifiers.
13599
13600         * gtk/gtktextview.[ch]: Add simple support for 
13601         GtkIMContext.
13602
13603 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13604
13605         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13606         with deletion from last commit.
13607
13608 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13609
13610         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13611         in the context from the current locale.
13612         
13613         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13614         context, not hardcoded value.
13615
13616         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13617         not logical.
13618
13619 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13620
13621         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13622         attributes - that doesn't handle partial-glyph selection
13623         properly. Instead use new pango_layout_line_get_x_ranges()
13624         functionality to draw the selection.
13625
13626         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13627         now properly handles out-of-range coordinates.
13628
13629         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13630
13631         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13632         public.
13633
13634         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13635         for paragraphs opposite to the base direction of the widget.
13636
13637         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13638
13639         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13640         causes Arabic words to reshape as you cursor through.
13641
13642         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13643         cursor position when moving vertically with the arrow keys and
13644         scrolling with page-up/page-down. (Arrow keys save only the X,
13645         scrolling saves both X and Y.)
13646
13647         This means you can line-up / line-down or page-up / page-down
13648         without losing your place, and also that moving vertically
13649         with the cursor keys keeps the same X position, not the same
13650         character count:
13651
13652         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13653         arrow keys move by display lines, not paragraphs.
13654
13655 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13656
13657         * gtk/gtklayout.c: Make sure that the bin window is at least
13658         as big as the allocation. (Should we also make sure that the
13659         bin window is big enough to completely cover widget->window?)
13660
13661         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13662         function to get the onscreen rectangle.
13663
13664         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
13665         for offsets in window coordinates.
13666
13667 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
13668
13669         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
13670         confusion.
13671
13672         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
13673         from the widget direction.
13674
13675         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
13676         Add a "direction" attribute.
13677
13678         * gtk/gtktextview.c: global s/tkxt/text_view/.
13679
13680         * gtk/testtext.c: Added long block of text in Arabic, to test out
13681         the direction attributes. (Some problems with the shaping system
13682         for arabic become obvious - like the fact the cursor splits words
13683         into unjoined pieces.)
13684
13685 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
13686
13687         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
13688
13689         * gtk/gtktextlayout.c: Fix up alignment.
13690
13691         * gtk/testtext.c: Add some tests for centering, wrapping.
13692
13693 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
13694
13695         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13696         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
13697         If we wrote GTK+-specific layout-render function this could just replace
13698         the draw_layout() operation in the vtable.
13699
13700         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
13701         pango_layout_get_cursor_pos() and use that function.
13702
13703         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
13704         is a non-static symbol.
13705
13706         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
13707         with gtk_text_btree_find_line_by_y()
13708
13709         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
13710         renderer that handles GtkTextAppearance attributes.
13711
13712         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
13713
13714           - Move the values in the style that don't affect geometry into a
13715             GtkTextAppearance structure.
13716           - Change underline to take a PangoUnderline and "font" a string
13717             representation of a font description
13718           - Add a "font_desc" attribute which takes a FontDescription structure.
13719
13720         * gtk/gtktextlayout.[ch]:
13721
13722           - Get rid of the display-line list per each line. Instead, we
13723             generate, on demand, a GtkTextLineDisplay structure which]
13724             contains a PangoLayout * and other necesary information
13725             (offsets, cursor locations) for displaying a paragraph.
13726           - Get rid of the code to wrap lines, create display chunks,
13727             etc. Instead, we just go through a paragraph and convert
13728             it into the necessary inputs to a PangoLayout.
13729           - Implement a new attribute type, GtkTextAttrAppearance. This
13730             holds a GtkTextAppearance, and is used to pass colors, 
13731             stipple, etc, through from the layout to the display without
13732             having to use lots and lots of individual attributes.
13733           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
13734             in terms of PangoLayout functions.
13735         
13736         * gtk/gtktextview.c: 
13737          
13738           - Handle passing the necessary PangoContext to the layout
13739           - Some fixups in painting to deal with the automatic backing store
13740             and offsetting of GTK+-1.4
13741           - Add a style_set handler so that the default style reacts
13742             properly to theme changes.
13743         
13744         * gtk/gtktext?*.[ch]: Random code-style fixes.
13745
13746         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
13747
13748 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
13749
13750         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
13751         in original form preparatory to Pango-ization and gdkimcontext-ization.
13752
13753 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
13754
13755         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
13756         so that we can derive from gtkimcontext in language bindings properly.
13757
13758 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
13759
13760         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
13761         Add a compose table including (almost) all the compose combinations
13762         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
13763         data in the XIM implementation.
13764
13765         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
13766         Moved functions to convert keyvalues from and to unicode here from
13767         the win32 port and made them public.
13768
13769 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
13770
13771         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
13772
13773 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
13774
13775         * gtk/gtkimcontext.[ch]: Base class for new input context system
13776
13777         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
13778         the real input context implementation to be loaded from modules
13779         and switched on the fly.
13780
13781         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
13782         context that just does direct keysymbol => unicode translation.
13783
13784         * gtk/gtkentry.[ch]: Start switching editing over to using
13785         GtkInputContext. (No handling of preedit yet.)
13786
13787 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
13788
13789         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
13790         many substitutions. (klass should not be subsituted.)
13791
13792 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
13793
13794         * configure.in: Add checks for Pango
13795
13796         * configure.in docs/Makefile.am: Add test for sgml2html
13797         and allow 'make dist' without building html, but print out
13798         warnings in that case. (For making snapshots)
13799
13800         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
13801         Add Pango libraries and C flags
13802
13803         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
13804         Add function (gdk_draw_layout) to draw a pango layout.
13805
13806         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
13807         for getting Pango contexts for GDK.
13808
13809         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
13810
13811         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
13812         editing.
13813
13814         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
13815         keysym => unicode translations. More languages can be added
13816         here, but real input-method support is needed.
13817
13818         * docs/Changes-1.4.txt: Added note about entry behavior.
13819         
13820         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
13821         to set the reading direction for a widget and the global direction.
13822         Add test which allows toggling the global direction. Two private
13823         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
13824
13825         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
13826           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
13827
13828         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
13829
13830         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
13831         underlining now handled by Pango.
13832
13833         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
13834         to RCStyle and Style. (Having both this and the old font name and GdkFont 
13835         is temporary.)
13836
13837         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
13838         convenience functions for creating contexts and layouts for widgets.
13839
13840         * gtk/testgtk.c: Enhance label tests with multilingual labels.
13841
13842 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
13843
13844         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
13845         titles to be active, even if they aren't visible.
13846         (gtk_clist_column_titles_passive):  Ditto.
13847
13848 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
13849
13850         * gtkmenu.c:
13851         * gtkmenu.h:
13852         * gtktypeutils.h: Spelling/grammar fixes in comments.
13853
13854 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
13855
13856         * gdk/nanox/*.h: add missing header files.
13857
13858 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
13859
13860         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
13861         send_event to TRUE.
13862         (gtk_drawing_area_size): queue a resize.
13863
13864 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
13865
13866         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
13867         the handlers, also invalidate them. bug nailed down by Karl Nelson
13868         <kenelson@ece.ucdavis.edu>.
13869
13870 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
13871
13872         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
13873         "(nil)" foundries, patch from Grigorios Magklis.
13874
13875         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
13876         on non-available fonts, based on a patch by Grigorios Magklis
13877         <maglis@cs.rochester.edu>.
13878
13879 2000-05-18  Elliot Lee  <sopwith@redhat.com>
13880
13881         * gdk/x11/gdkregion-generic.c: If a region does not have any
13882         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
13883         instead of GDK_OVERLAP_RECTANGLE_IN.
13884
13885 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
13886
13887         * gtk/gtklayout.c (gtk_layout_map): Remove references to
13888         OFFSCREEN, as it is no longer necessary.
13889
13890 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
13891
13892         * gtk/gtkcolorsel.c: Patch from David Santiago
13893         <mrcooger@cyberverse.com> to change things so that the 
13894         indicator of the active palette entry is done independently,
13895         not via the focus, since it should always be visible.
13896
13897 2000-05-17  Tor Lillqvist  <tml@iki.fi>
13898
13899         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
13900         refcount leaks as in the X11 backend.
13901
13902         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
13903         cosmetics.
13904
13905         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
13906         backend. Add _gdk_windowing_window_destroy().
13907
13908         * gtk/gtkcolorsel.c: Include correct backend-specific header.
13909         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
13910         either, but these probably do exist on nanox?)
13911         
13912         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
13913         which isn't necessarily defined by <math.h>.
13914
13915         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
13916         ancestry past GtkObject.
13917
13918         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
13919         from DLL on Win32.
13920
13921         * gtk/gtk.def: Update corresponding to recent changes.
13922
13923         * gtk/makefile.{cygwin,msc}: Updates.
13924
13925 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
13926
13927         * docs/Changes-1.4.txt: A bit of editing.
13928
13929         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
13930         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
13931         to clear the update area for the window, and clear it
13932         when hiding a window.
13933
13934         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
13935         if window destroyed.
13936
13937         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
13938
13939         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
13940         gdk_window_destroy() to the generic code, since there was a lot of 
13941         window-system-independent logic it in. Add a function:
13942         
13943          _gdk_window_destroy() 
13944
13945         to the internal API to destroy a window without unreferencing it.
13946         Add a function:
13947
13948          _gdk_windowing_window_destroy()
13949
13950         That does the windowing-system-dependent part of destroying 
13951         the window.
13952
13953 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
13954
13955         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
13956
13957 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
13958
13959         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
13960         Make gtk_widget_shape_combine_mask() keep a reference count on
13961         the pixmap since it keeps it around.
13962
13963 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
13964
13965         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
13966         leak.
13967
13968         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
13969         leak with event filters.
13970
13971 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
13972
13973         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
13974         signal handlers with the right data arguments. (Fixes
13975         some warnings when a widget was repeatedly set as a drag
13976         destination.)
13977
13978         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
13979         window so we can avoid avoid setting the DND properties on the
13980         toplevel window repeatedly.
13981
13982 2000-05-13  Tor Lillqvist  <tml@iki.fi>
13983
13984         * gdk/win32/gdkwin32.h: Define more message types missing from
13985         mingw headers.
13986
13987         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
13988         call gdk_window_destroy_notify(). It was never called. This
13989         probably meant that the GdkWindow was never freed. Thanks Owen for
13990         noticing (!).
13991
13992         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
13993         window as destroyed before calling DestroyWindow(). DestroyWindow()
13994         causes a call to the window procedure (gdk_WindowProc), which
13995         calls gdk_event_translate(), which calls
13996         gdk_window_destroy_notify(), which gets confused unless the window
13997         is set as destroyed.
13998
13999         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
14000         this function to indicate it's win32 only. Put inside #ifdef
14001         G_ENABLE_DEBUG.
14002
14003         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
14004         debugging function. (gdk_event_translate:) Add a default branch
14005         that uses the above function to print debug messages with all
14006         Windows messages symbolically.
14007
14008         * gdk/win32/gdkprivate-win32.h: Declare it, and
14009         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
14010
14011 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
14012
14013         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
14014         public header file.
14015
14016 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
14017
14018         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
14019
14020         * gtk/gtktext.c: made the adjustments no-construct args, simply
14021         provide default adjustments.
14022         (gtk_text_destroy): release adjustments.
14023
14024         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
14025         adjustment argument non-construct.
14026
14027         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
14028         instead of in finalize.
14029         (gtk_progress_get_text_from_value): 
14030         (gtk_progress_get_current_text): 
14031         (gtk_progress_set_value): 
14032         (gtk_progress_get_percentage_from_value): 
14033         (gtk_progress_get_current_percentage): 
14034         (gtk_progress_set_percentage): 
14035         (gtk_progress_configure): ensure an adjustment is present.
14036
14037 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
14038
14039         * gtk/gtkcolorsel.[hc]:
14040         * gtk/gtkcolorseldialog.[hc]:
14041         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
14042         their parent implementation, use bit fields for boolean values, don't
14043         create unused widgets, usage of glib types, braces go on their own
14044         lines, function argument alignment, #include directives etc. etc. etc..
14045
14046         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
14047
14048 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
14049
14050         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
14051
14052         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
14053         of NULL.
14054
14055         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
14056         to freed data.
14057         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
14058
14059         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
14060         to NULL when the toplevel is getting destroyed.
14061         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
14062         (gtk_menu_destroy): 
14063         (gtk_menu_init): store the information of whether we have to
14064         readd the initial child ref_count during destruction in a new
14065         GtkMenu field needs_destruction_ref_count.
14066
14067         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
14068         here, those reading: learn from my mistake! ;)
14069         in order for set_?adjustment to support a default adjustemnt if
14070         invoked with an adjustment pointer of NULL, the code read (pseudo):
14071         if (v->adjustment) unref (v->adjustment);
14072         if (!adjustment) adjustment = adjustment_new ();
14073         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
14074         now imagine the first unref to actually free the old adjustment and
14075         adjustment_new() creating a new adjustment from the very same memory
14076         portion. here, the latter comparision will unintendedly fail, and
14077         all hell breaks loose.
14078         (gtk_viewport_set_hadjustment):
14079         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
14080         after unreferencing it.
14081
14082         * gtk/gtkcontainer.[hc]: removed toplevel registration
14083         functions: gtk_container_register_toplevel(),
14084         gtk_container_unregister_toplevel() and
14085         gtk_container_get_toplevels() which had wrong semantics
14086         anyways: it didn't reference and copy the list.
14087
14088         * gtk/gtkwindow.c: we take over the container toplevel registration
14089         bussiness now. windows are registered across multiple destructions,
14090         untill they are finalized. the initial implicit reference count
14091         users are holding on windows is removed with the first destruction
14092         though.
14093         (gtk_window_init): ref & sink and set has_user_ref_count, got
14094         rid of gtk_container_register_toplevel() call. add window to
14095         toplevel_list.
14096         (gtk_window_destroy): unref the window if has_user_ref_count
14097         is still set, got rid of call to
14098         gtk_container_unregister_toplevel().
14099         (gtk_window_finalize): remove window from toplevel list.
14100         (gtk_window_list_toplevels): new function to return a newly
14101         created list with referenced toplevels.
14102         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
14103
14104         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
14105         adjustment a non-construct arg.
14106         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
14107         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
14108         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
14109
14110         * gtk/gtkrange.c: added some realized checks.
14111         (gtk_range_destroy): get rid of the h/v adjustments in the
14112         destroy handler instead of finalize. remove timer.
14113         (gtk_range_get_adjustment): demand create adjustment.
14114
14115         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
14116         we simply create them on demand now and get rid of them in
14117         the destroy handler.
14118         (gtk_viewport_destroy): get rid of the h/v adjustments in the
14119         destroy handler instead of finalize.
14120         (gtk_viewport_get_hadjustment): 
14121         (gtk_viewport_get_vadjustment): 
14122         (gtk_viewport_size_allocate): demand create h/v adjustment
14123         if required.
14124
14125         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
14126         gtk_widget_real_destroy () functionality.
14127         (gtk_widget_real_destroy): reinitialize with a new style, instead
14128         of setting widget->style to NULL.
14129
14130 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
14131
14132         * gtk/gtkcalendar.c:
14133         * gtk/gtkbutton.c: ported _get_type() implementation over to
14134         GType, either to preserve memchunks allocation facilities,
14135         or because Gtk+ 1.0 GtkTypeInfo was still being used.
14136
14137         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
14138         over. prepare for ::destroy to be emitted multiple times.
14139         removed reference tracer magic. chain into GObjectClass.shutdown()
14140         to emit ::destroy signal.
14141
14142         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
14143         fundamental.
14144
14145         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
14146         cludge.
14147
14148         * gtk/gtksocket.c:
14149         * gtk/gtkplug.c:
14150         * gtk/gtklayout.c:
14151         * gtk/gtklabel.c:
14152         * gtk/gtkargcollector.c:
14153         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
14154         not being a fundamental anymore, and to work with the new
14155         type system (nuked fundamental type varargs clutter).
14156
14157         * gtk/*.c: install finalize handlers in the GObjectClass
14158         part of the class structure.
14159         changed direct GTK_OBJECT()->klass accesses to
14160         GTK_*_GET_CLASS().
14161         changed direct object_class->type accesses to GTK_CLASS_TYPE().
14162
14163         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
14164         GType. made most of the GTK_*() type macros and Gtk* typedefs
14165         simple wrappers around macros and types provided by GType.
14166         most notably, a significant portion of the old API vanished:
14167         GTK_TYPE_MAKE(),
14168         GTK_TYPE_SEQNO(),
14169         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
14170         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
14171         GTK_TYPE_ARGS,
14172         GTK_TYPE_CALLBACK,
14173         GTK_TYPE_C_CALLBACK,
14174         GTK_TYPE_FOREIGN,
14175         GtkTypeQuery,
14176         gtk_type_query(),
14177         gtk_type_set_varargs_type(),
14178         gtk_type_get_varargs_type(),
14179         gtk_type_check_object_cast(),
14180         gtk_type_check_class_cast(),
14181         gtk_type_describe_tree(),
14182         gtk_type_describe_heritage(),
14183         gtk_type_free(),
14184         gtk_type_children_types(),
14185         gtk_type_set_chunk_alloc(),
14186         gtk_type_register_enum(),
14187         gtk_type_register_flags(),
14188         gtk_type_parent_class().
14189         replacements, where available are described in ../docs/Changes-1.4.txt.
14190         implemented compatibility functions for the remaining API.
14191
14192         * configure.in: depend on glib 1.3.1, use gobject module.
14193
14194 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
14195
14196         * TODO.xml: Various updates to current status.
14197
14198 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
14199
14200         * gtk.m4: Print out version when test succeeds.
14201
14202 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
14203
14204         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
14205         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
14206         
14207         (Original triangle color selector from Simon Budig
14208         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
14209         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
14210         Santiago <mrcooger@cyberverse.com>)
14211
14212         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
14213         out into a separate widget.
14214
14215         * gtk/testgtk.c: Add some checkbuttons for toggling palette
14216         and opacity controls.
14217
14218 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
14219
14220         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
14221         snuck in prematurely.
14222
14223 2000-05-07  Tor Lillqvist  <tml@iki.fi>
14224
14225         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
14226         had deleted a ! operator by mistake, which caused
14227         GDK_SELECTION_CLEAR events never to be generated, which caused
14228         only the first copy to the clipboard from an gtkeditable to
14229         actually cause a copy to the Windows clipboard.
14230
14231 2000-05-06  Tor Lillqvist  <tml@iki.fi>
14232
14233         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
14234         compilation, too. Current mingw gcc distributions include the
14235         necessary headers. Also the necessary IIDs are now in mingw
14236         headers/libraries, and own definitions unnecessary.
14237
14238         More hacking on OLE2 DND, still doesn't work though, and thus
14239         ifdeffed out.
14240
14241         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
14242         here, too.
14243
14244 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
14245
14246         * gdk/nanox/*: nano-X port work in progress.
14247         * gdk/simple.c: simple test for Gdk.
14248         * README.nanox: notes about the port: read this first!
14249         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
14250         with nano-X.
14251
14252 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
14253
14254         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
14255         gdk_window_clear() into common code, implement in terms of
14256         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
14257         not redirected to the backing rectangle.
14258
14259 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14260
14261         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14262         EXTRA_DIST. It does not work well when the file that
14263         everything depends on is not in the tarball.
14264
14265 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
14266
14267         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
14268         with recursion where process_updates() is called from
14269         an expose handler. (GtkTextView is highly broken in
14270         doing this, but it should work, so it is a nice test
14271         case.)
14272
14273 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14274
14275         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
14276         handle the case where updates are queued during processing of
14277         updates.
14278
14279 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14280
14281         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
14282         window is on gdk_display - use that instead of segfaulting.
14283
14284 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
14285
14286         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
14287         broken and require an empty arg, give it to them.
14288
14289 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
14290
14291         * gtk/gtklabel.h: indentation fixes.
14292
14293 2000-05-02  Tor Lillqvist  <tml@iki.fi>
14294
14295         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
14296         draw too narrow or too low arcs, they seem to fail, at least with
14297         some display drivers.
14298
14299         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
14300
14301         Large changes to the Win32 backend, partially made necessary by
14302         the changes to the backend-independent internal
14303         structures. Attempts to implement similar backing store stuff as
14304         on X11. The current (CVS) version of the Win32 backend is *not* as
14305         stable as it was before the no-flicker branch was merged. A
14306         zipfile with that version is available from
14307         http://www.gimp.org/win32/. That should be use by "production"
14308         code until this CVS version is usable. (But note, the Win32
14309         backend has never been claimed to be "production quality".)
14310
14311         * README.win32: Add the above comment about versions.
14312
14313         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
14314
14315         * gdk/gdk.def: Update.
14316
14317         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
14318         presumably be replaced by some more better mechanism as 1.4 gets
14319         closer to release shape.
14320
14321         * gdk/makefile.{cygwin,msc}: Update.
14322
14323         * gdk/win32/*.c: Correct inclusions of the backend-specific and
14324         internal headers. Change code according to changes in these. Use
14325         gdk_drawable_*, not gdk_window_* where necessary.
14326
14327         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
14328         our old DND.
14329
14330         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
14331         to interpret single characters as UTF-8. Thanks to Hans Breuer.
14332         Use correct function name in warning messages.
14333
14334         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
14335         GSourceFuncs gdk_event_prepare and gdk_event_check.
14336         (gdk_event_get_graphics_expose): Do implement, use
14337         PeekMessage. Thanks to Hans Breuer.
14338         (event_mask_string): Debugging function to print an GdkEventMask.
14339         (gdk_pointer_grab): Use it.
14340
14341         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
14342         (old) book I used claimed was Hangul actually is CJK Unified
14343         Ideographs Extension A. Also, Hangul Syllables were missing.
14344         Improve logging.
14345
14346         * gdk/win32/gdkgc-win32.c: Largish changes.
14347
14348         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
14349         g_win32_getlocale() from GLib, and not setlocale() to get current
14350         locale name.
14351
14352         * gdk/win32/gdkprivate-win32.h
14353         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
14354         gdkwin32.h, similarily as in the X11 backend.
14355
14356         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
14357         assignment was used instead of equals in if test. Thanks to Hans
14358         Breuer.
14359
14360         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
14361         the X11 version.
14362
14363         * gdk/win32/makefile.{cygwin,msc}
14364         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
14365         path to the Win32 headers that works also with the mingw compiler.
14366
14367         * gtk/gtkstyle.c: Include <string.h>.
14368
14369 2000-04-26  Havoc Pennington  <hp@redhat.com>
14370
14371         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
14372         replacing the broken gtk_label_get ()
14373
14374 2000-04-15  Havoc Pennington  <hp@pobox.com>
14375
14376         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
14377         this keeps scanner scripts from getting confused.
14378
14379         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
14380         data, rather than void
14381
14382 2000-04-15  Tor Lillqvist  <tml@iki.fi>
14383
14384         * gtk/gtkclist.c (gtk_clist_motion)
14385         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
14386         with is_hint FALSE, get x and y from the event. They used to be
14387         used uninitialised. The Win32 backend never sends motion events
14388         marked as hints. This for instance fixes the annoying file and
14389         font selector behaviour in the Win32 version.
14390
14391 2000-04-14  Tor Lillqvist  <tml@iki.fi>
14392
14393         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
14394         gtk_private_n_signals variables, they are used by some software,
14395         sigh.
14396
14397         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
14398         installation directory from the Registry, where the installer
14399         should have put it.
14400
14401 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
14402
14403         * gdk/x11/Makefile.am: Fix problem with installation directory for
14404         gdkx.h
14405
14406         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
14407         <mrcooger@cyberverse.com> so that when selecting menus with the
14408         mouse, the first item will not be selected, but when selecting
14409         with an accelerator, or navigating left-right on a menubar with
14410         the menus popped up, the first item will be selected.
14411
14412 2000-04-05  Dan Damian  <dand@dnttm.ro>
14413
14414         * configure.in: Added "ro" to ALL_LINGUAS.
14415
14416 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
14417
14418         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
14419         indentation.
14420
14421         * Makefile.am (EXTRA_DIST): Fix typo.
14422
14423         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
14424         to catch gdkconfig.h
14425
14426         * gtk/gtkitemfactory.c: Added FIXME.
14427
14428 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
14429
14430         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
14431         s/return_if_fail/return_val_if_fail/g and add a return value.
14432
14433 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14434
14435         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
14436         merge slipup.
14437
14438         * gdk/gdkinput.h: Fix missing line from merge.
14439
14440 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
14441
14442         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
14443         instead of gdkprivate.h.
14444
14445 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
14446
14447         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
14448         parent class to correctly be GtkDialogClass.
14449
14450 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
14451
14452         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
14453         toplevel windows and their immediate children by their parents,
14454         since the size of toplevel windows is out of our immediate
14455         control and we don't get any real benefit from trying to track
14456         this size for clipping.
14457
14458         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
14459         for input_only windows.
14460
14461         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
14462         to fix some hacks and make sure that we don't try to set the
14463         background of input only windows.
14464
14465 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
14466
14467         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
14468         the _really_ internal stuff, and leave gdkprivate.h for the fake private
14469         stuff that we've traditionally exposed.
14470
14471         * gdk/**.c: Use gdkinternals.h where appropriate.
14472
14473         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
14474         not include gdkprivate-x11.h, move all stuff of conceivable public
14475         interest into gdkx.h; keep all really private stuff in
14476         uninstalled header gdkprivate-x11.h.
14477
14478         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
14479         image->image_put on windows through a new function _gdk_window_draw_image()
14480         to allow us to do backing store for images. (Sort of ugly)
14481
14482         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
14483         contexts locally so that we can offset them properly when drawing 
14484         onto backing pixmaps.
14485
14486         * gdk/gdkinput.h: Reindented
14487
14488         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
14489         pixmap or color for the window, so we can properly initialize
14490         our double-buffer pixmaps, and also so that we temporarily set
14491         a background of None while scrolling.
14492
14493         * gdk/gdkregion.h: Revise region boolean operators to have an
14494         interface that is actually convenient - switch from creating new
14495         regions on every op, to "methods" that modify existing regions
14496         (A = A OP B). 3 argument forms which allow dest == src, would also
14497         be possible, but the current interfaces seem to map nicely
14498         onto what needs to be done. (There is quite a lot of region
14499         code in GDK now.)
14500
14501         * gdk/gdkregion.h: Add constructor from rectangle and a copy
14502         operator.
14503
14504         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
14505         gdkpoly-generic.h: Copy region code from Xlib, switch it over
14506         to 32 bit coordinates, modify it to be mostly GTK+ style
14507         and to have interfaces that match gdkregion.h.
14508
14509         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
14510         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
14511         create a backing pixmap and redirect all drawing to
14512         that backing pixmap until a matching gdk_window_end_paint().
14513
14514         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
14515         Create a special drawable class for GtkWindow's that 
14516         redirects the drawing to the backing pixmap as necessary
14517         and then calls the real operations in _gdk_windowing_window_class.
14518
14519         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
14520         Store invalid region for each window. Generate expose events for invalid
14521         region in an idle. This replaces both the expose compression
14522         and the redrawing queuing in GTK+. It is both more efficient and
14523         simpler than either one individually and far more so then the
14524         combination.
14525
14526         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14527         Emulate 32 bit coordinates for windows with 16 bit coordinates
14528         by offsetting drawing, guffaw scrolling techniques and
14529         mapping/unmapping child windows as necessary.
14530
14531         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14532         where, when invalid regions are processed, the region is stored,
14533         and if expose events come in that are detectably duplicate
14534         the processed exposes (by comparison of event serial numbers),
14535         the stored region is subtracted out of those exposes.
14536
14537         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14538         regions newly exposed when scrolling or resizing windows.
14539         This, combined with forcing processesing of queued invalidated
14540         regions, gives nice flicker-free scrolling.
14541
14542         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14543         invalidated regions after every scroll.
14544
14545         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14546         emulation in GDK. Its, for all practical purposes just a
14547         GtkViewport/GtkFixed hybrid now.
14548
14549         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14550         (16-bit) structures as necessary instead of just casting.
14551
14552         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14553         in terms of the structures from gdkregion-generic.c, using appropriate
14554         offsets from GDK to X11 coordinates. Cache clip mask and
14555         origin and ts origin locally and only flush to the server
14556         when drawing, to avoid constantly setting and resetting these
14557         values when offsetting GC's for scrolling and backing pixmaps.
14558
14559         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14560
14561         * gtk/gtkcontainer.c: Call process_all_updates at end
14562         of resizing to reduce flicker. (Avoids having redraw
14563         lag arbitrarily behind resize under some circumstances)
14564
14565         * gtk/gtkentry.c: Remove old backing store code, and simply take
14566         advantage of the new backing store capabilities of GDK.
14567
14568         * gtk/gtkmain.c: Simple implementation of widget backing
14569         store - simply push a paint while handling each expose.
14570         (Should really be configurable widget for widget.)
14571         
14572         * gtk/gtkwidget.c: Remove all the old complicated redraw
14573         code, and simply invalidate the GDK windows from
14574         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14575         debugged complexity ... gone to the winds.)
14576
14577         Remove all the code for suppressing expose events while
14578         resizes are pending; this isn't needed since the invalid
14579         areas won't be processed until after the resizes are
14580         processed, since they are in a lower priority idle.
14581
14582 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14583
14584         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14585         and height of dest rectangle for non-intersecting rectangles.
14586
14587 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14588
14589         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14590         for GdkRectangle.
14591
14592 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14593
14594         * gdk/gdk{events,image,private,types,window}.h
14595          gdk/x11/gdkinputprivate.h: Change all coordinates
14596          from int16 to int. Also, Change width and height from
14597          unsigned to signed to avoid all the stupid C 
14598          signedness bugs.
14599
14600 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14601
14602         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14603         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14604         Add some more detailed checking.
14605
14606         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14607         New function to retrieve the depth of a drawable.
14608
14609         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14610         field, reorder fields to save memory. 
14611
14612 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14613
14614         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14615         of the background image instead of scaling the background down to
14616         a line.
14617
14618         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14619         which temporarily set slider to wrong size.
14620
14621         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14622         queue_clear().
14623
14624 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14625
14626 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14627
14628         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14629
14630 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14631
14632         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14633         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14634
14635         * gdk/win32/gdkfont-win32.c
14636         * gdk/win32/gdkproperty-win32.c
14637         * gdk/win32/gdkselection-win32.c
14638         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14639         now declared such.
14640
14641 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14642
14643         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14644
14645 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14646
14647         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14648         is called without trapping X errors.
14649
14650 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14651
14652         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14653         way into the fontset lists.
14654
14655 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14656
14657         * gtk/gtkthemes.h: add extern "C" scope.
14658
14659 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14660
14661         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14662         to make appends to the list constant. (gtk-guy-990901-0.patch)
14663
14664 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
14665
14666         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
14667         for the typename hash table.
14668
14669 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
14670
14671         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
14672         to make sure we never divide by zero. 
14673         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
14674
14675 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
14676
14677         * gtk/gtkfontsel.c: Apply patch from
14678         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
14679         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
14680
14681         Also, some cleanups in atom handling.
14682
14683 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
14684
14685         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14686         not GtkWidget.
14687
14688 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
14689
14690         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
14691         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
14692         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
14693         more guint wrap-around bugs before going to bed.
14694
14695 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
14696
14697         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
14698         guint wrap arounds in allocation.width.
14699
14700         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
14701         process untill we fit the allocation given.
14702
14703 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
14704
14705         * gtk/gtkwidget.c:
14706         (gtk_widget_unrealize): guard widget access with ref/unref
14707         around signal emission.
14708         (gtk_widget_hide): same here, but also check its destroyed
14709         state before queueing a resize.
14710
14711 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
14712
14713         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
14714         of gtk_default_insensitive_bg as insensitive base color.
14715
14716         * gtk/gtktext.c (gtk_text_style_set): set the background color according
14717         to the widget's state.
14718         (gtk_text_realize): same here.
14719         (gtk_text_state_changed): same here.
14720         (draw_bg_rect): compare background color against base[] from
14721         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
14722
14723 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
14724
14725         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
14726         grabs are active, unless a delete event is send to the toplevel
14727         of the currently grab holding widget.
14728
14729 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
14730
14731         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
14732         debugging g_print's.
14733
14734 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
14735
14736         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
14737         ever make the scrolled-window requisition ever depend on the 
14738         visibility state of the scrollbars for the AUTOMATIC policy. 
14739         This breaks the GTK+ requisition model, and causes loops.
14740
14741 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
14742
14743         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
14744         the default font to avoid problems with XFree86-4.0 where the
14745         default charset is iso10646-1, not iso8859-1.
14746
14747 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
14748
14749         * acinclude.m4
14750         * config.guess
14751         * config.sub
14752         * ltconfig
14753         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
14754
14755         * gtk/Makefile.am: minor cosmetic consistency tweak
14756
14757 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
14758
14759         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
14760         the activate_time to 0, so that we handle a quick
14761         press/release press/release properly and don't suppress
14762         the second release. (Red Hat bug #7545)
14763
14764 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
14765
14766         * gtk/gtkctree.c (row_delete):
14767         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
14768         bugs with destruction notifier, *always* update internal
14769         structures *before* calling user code.
14770
14771 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
14772
14773         A few more fixes for bug #5487, #2051, #2677.
14774         * gtk/gtkclist.c : 
14775         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
14776         not GDK_BUTTON_PRESS.
14777         (resync_selection): resync only if selection_mode is
14778         GTK_SELECTION_EXTENDED
14779         * gtk/gtkctree.c (resync_selection): same here
14780
14781 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
14782
14783         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
14784         gdk_drag_get_selection() and gtk_menu_detach().
14785
14786         [ From Jeroen Ruigrok/Asmodai ]
14787
14788 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
14789
14790         * gtk/gtknotebook.c (gtk_notebook_size_request): 
14791         page->tab_label can be NULL.
14792
14793 2000-01-25  Havoc Pennington  <hp@pobox.com>
14794         
14795         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
14796         arg is boolean
14797
14798         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
14799
14800         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
14801
14802         * gdk/gdkproperty.c (gdk_property_get): return boolean
14803
14804         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
14805
14806         * gdk/gdkim.c (gdk_im_ready): return boolean
14807
14808         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
14809
14810         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
14811         glib clash, should fix glib)
14812
14813         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
14814         (gdk_get_show_events): return gboolean, and canonicalize 
14815         to TRUE/FALSE
14816
14817         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
14818         colormap is private
14819         (gdk_colors_alloc): gboolean whether to be contiguous
14820         (gdk_color_equal): return gboolean since we are a predicate
14821         and not a qsort() (this looks semi-wrong due to glib breakage,
14822         IMO glib should be fixed)
14823         
14824         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
14825         (gdk_get_use_xshm): return gboolean
14826         (gdk_pointer_is_grabbed): return gboolean
14827
14828         * gdk/gdk.h: Change prototypes to match all the above changes,
14829         and re-run egtk-format-protos as required.
14830
14831 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
14832
14833         * gtk/gtkctree.c (resync_selection): 
14834         * gtk/gtkclist.c (resync_selection):
14835
14836         Return immediately if clist->drag_pos < 0. This is a workaround
14837         for the corrupt state that the clist gets into when a
14838         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
14839
14840         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
14841         
14842         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
14843         variable from recent commit.
14844
14845 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
14846
14847         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
14848
14849 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
14850
14851         * gtk/Makefile.am: prefix all autogenerated source that get build in
14852         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
14853         in builddir. since we subsequently cd into srcdir for autogeneration,
14854         the paths have to be stripped from the target file names, thusly we
14855         use $(@F) as target names now.
14856         put a comment about configure.in's --disable-rebuilds option,
14857         which can be used for non-writable source directories, for development
14858         setups though, srcdir has to be *writable*.
14859
14860 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
14861
14862         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
14863           Finish the job of allowing event to be NULL.
14864           (Fixes bug #4283, reported by Chris Blizzard)
14865
14866         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
14867           things so that the cursor appears on screen, properly
14868           take into account INNER_BORDER.
14869           (Fixes bug #4754, reported by Antonio Campos)
14870
14871 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
14872
14873         * gtk/gtknotebook.c (gtk_notebook_map): Don't
14874           show the tab_label unless it itself is visible.
14875
14876           gtk/gtknotebook.c (gtk_notebook_size_request):
14877           Do a better job of making sure that the visibility
14878           of the tab label corresponds to whether it should
14879           be mapped or not.
14880
14881 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
14882
14883         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
14884           Use the requisition, not the allocation, since the
14885           allocation has not necessarily been computed yet.
14886           (Pointed out by Eugene Osintsev)
14887
14888 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
14889
14890         * gtk/gtkstyle.c (gtk_style_new): Dont' set
14891           style/base[GTK_STATE_INSENSITIVE] both to
14892           gtk_default_insensitive_bg!
14893           (Bug #2187, reported by Jonathan Blandford)
14894
14895         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
14896           Add Alt_L, Alt_R to list of invalid accelerators.
14897           (Bug #3736, reported by Vlad Harchev)
14898
14899 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
14900
14901         * gtk/gtkfilesel.c (open_ref_dir): Fix several
14902         bugs which occured after an attempt to open 
14903         invalid home directory left cmpl_state->reference_dir == NULL.
14904
14905          - completion on files in home directory didn't work
14906          - completion on an empty string caused  segfault
14907
14908          (Bug #3678, reported by Steve Ratcliffe)
14909
14910         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
14911         cut and paste error that was causing scales to
14912         be incorrectly positioned.
14913         (Bug #2956,
14914          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
14915
14916 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
14917
14918         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
14919         when checking for dcgettext, if we've found we needed
14920         it for dgettext.
14921 +
14922 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
14923
14924         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14925         queue_clear on NO_WINDOW widgets during a reparent,
14926         since at that point the window and widget heirarchies
14927         are out of sync. This stops crashing in some cases
14928         (the scrolled window reparent test, for instance), and
14929         _probably_ won't cause drawing errors.
14930
14931         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
14932         test do what it was supposed to do and be robust against
14933         window closings, etc. (Bug #2443)
14934
14935 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
14936
14937         * gtk/gtkentry.c: Fix return values on mouse events.
14938         (Bug #2686, Sky <seb_sky@yahoo.com>)
14939
14940         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
14941         (pointed out by George Lebl)
14942
14943         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
14944         (From Ettore Perazzoli  <ettore@helixcode.com>)
14945  
14946 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
14947
14948         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
14949         clicks between rows or outside calender area correctly.
14950         (Patch from Damon Chaplin)
14951
14952         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
14953         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
14954           Call destroy function when overwriting existing data. 
14955           (Pointed out by Damon Chaplin)
14956
14957 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
14958
14959         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
14960           which was causing problems on various systems with Xmu.
14961           This hasn't been needed for a very long time.
14962           (Fixes #1185 3167)
14963
14964 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
14965
14966         * gdk/gdki18n.h: Include <ctype.h> when defining
14967           gdk_isw* in terms of is* as a fallback.
14968           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
14969
14970 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
14971
14972         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
14973           realize the widget when it is size allocated!
14974           (old, old bug)
14975
14976         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
14977           Removed unused call to gdk_window_get_size() that
14978           showed up when the above was fixed.
14979
14980 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
14981
14982         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
14983           fix up widget->window when the widget is a
14984           NO_WINDOW container widget.
14985
14986 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
14987
14988         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
14989           to account for the fact that feof() does _not_ 
14990           return TRUE on errors, and thus avoid infinite loops
14991           when trying to use gdk_pixmap_create_from_xpm()
14992           on unreadable values.
14993
14994 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
14995
14996         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
14997
14998 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
14999
15000         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
15001           gdk_gc_set_dashes to take gint8 instead of gchar to
15002           make it clearer that it is _not_ a NULL terminated string.
15003
15004         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
15005           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
15006           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
15007           arguments.
15008
15009 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
15010
15011         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
15012         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
15013         background size relative to our allocation, guard against small
15014         allocations, we may have not yet been size allocated.
15015
15016 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
15017
15018         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
15019         not just version == 3. We implement all 3 + most of 4 - 
15020         (we don't support matching text/plain;charset=iso-8859-1
15021         to a dest that expects text/plain). We'll still advertise
15022         3 to be safe, but any client implementing version >= 3
15023         must interoperate with 3.
15024         
15025 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15026
15027         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
15028         background and gc members, add a warning in gtk_tooltips_set_color()
15029         indicating that this function is deprecated.
15030
15031 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
15032
15033         * docs/gtkfaq.sgml: FAQ Update:
15034           - Minor cleanups (Emmanuel, me)
15035           - New questions:
15036                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
15037                 How can I retrieve the text from a GtkMenuItem? (timj)
15038                 How do I validate/limit/filter the input to a GtkEntry? (me)
15039                 Memory does not seem to be released when I free the list
15040                         nodes I've allocated (timj)
15041
15042 2000-03-07  Tor Lillqvist  <tml@iki.fi>
15043
15044         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
15045         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
15046         for which it is no use to call GetLastError onWin9x.
15047         (gdk_other_api_failed) New function, for general error
15048         reporting without calling GetLastError.
15049         (gdk_win32_api_failed) OTOH, this function always calls
15050         GetLastError. (gdk_win32_last_error_string) Remove this function,
15051         GLib has the equivalent now.
15052
15053         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
15054         call them with function name, file name and line number in the
15055         arguments.
15056
15057         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
15058         functions.
15059         
15060         * gtk/gtk.def: Add some missing entry points.
15061
15062         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15063         gtk_paned_set_gutter_size, which don't exist any longer, as void.
15064         
15065         Fixes by Hans Breuer:
15066
15067         * gdk/makefile.msc: Update for debugging.
15068
15069         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
15070         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
15071         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
15072         in the dash_list.
15073
15074         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
15075         the x11 backend.
15076
15077         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
15078
15079         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
15080
15081 2000-03-04  Tor Lillqvist  <tml@iki.fi>
15082
15083         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
15084         just pixel value of background colour.
15085
15086         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
15087         containing code snippet previously duplicated in a couple of
15088         places.
15089         
15090         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
15091         gdk_colormap_color.
15092
15093         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
15094         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
15095         events for autorepeated Shift, Control and Alt keys. Use
15096         gdk_colormap_color.
15097
15098         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
15099         pointer is inside the window the cursor of which we are setting,
15100         call SetCursor immediately.
15101
15102         * gdk/win32/makefile.cygwin
15103         * gtk/makefile.cygwin: If we don't have the build number stamp
15104         file, use zero.
15105
15106         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15107         gtk_paned_set_gutter_size as empty.
15108
15109         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
15110         
15111 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
15112
15113         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
15114           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
15115           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
15116           docs/gtk_tut.sgml docs/gtk.texi TODO:
15117
15118           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
15119
15120 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
15121
15122         * gtk/gtkcalendar.c: Implement num_marked_dates,
15123           and don't emit mutiple day_selected signals on
15124           month_prev.
15125
15126 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
15127
15128         * docs/make-todo (lineno): let title and logo be configurable so
15129         that GNOME can use this script too.
15130
15131         * TODO.xml: added logourl and a title
15132
15133 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
15134
15135         * TODO.xml: Added some UI items, and an explanatory
15136         comment at the top of the file.
15137
15138 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
15139
15140         * TODO.xml: some updates, added abunch of new entries.
15141         a note for those fiddeling with this file, when done
15142         with it, invoke:
15143         $ ./docs/make-todo TODO.xml >/dev/null
15144         and correct output errors before comitting changes.
15145
15146 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
15147
15148         * TODO.xml: Added XML-structured TODO file.
15149         * docs/make-todo: python script to turn TODO.xml into
15150           pretty XML output. 
15151
15152 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
15153
15154         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
15155         the function to let it draw the seven dots, instead of the old,
15156         much maligned, method.
15157         (draw_dot): New function to draw a dot.
15158
15159         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
15160         to draw the handle inside the border width as opposed to outside.
15161         Use paint function instead of gdk_draw_point.
15162
15163         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
15164         to draw the handle inside the border width as opposed to outside.
15165         Use paint function instead of gdk_draw_point.
15166
15167         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
15168         Change indenting to be more GTK like.
15169
15170 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
15171
15172         * docs/gtk_tut.sgml: New section on GtkCalendar
15173         * examples/calendar: Update example code
15174
15175 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
15176
15177         * docs/gtkfaq.sgml: FAQ Update
15178
15179 2000-02-19  Anders Carlsson  <andersca@gnu.org>
15180
15181         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
15182         to prevent the scroll event to be propagated upwards.
15183
15184 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15185
15186         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
15187         OwnerGrabButtonMask from button entries for
15188         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
15189
15190         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
15191         to the event mask (which will result in button/press release
15192         being added to the event mask on Unix) so scrolling works
15193         for layouts in scroll windows.
15194
15195         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
15196
15197         Patch from Anders Carlsson  <andersca@gnu.org> to add
15198         a scroll event.
15199
15200         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
15201         scrolling to the "Test Scrolling" part of testgtk.
15202  
15203         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
15204  
15205         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
15206         it against GDK_SCROLL.
15207  
15208         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
15209         way of mouse wheel scrolling.
15210  
15211         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
15212  
15213         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
15214  
15215         * gtk/gtkmain.c: Removed previous mouse wheel hack.
15216  
15217         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
15218         gdk_event_mask_table.
15219  
15220         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
15221         GdkEventScroll handler.
15222  
15223         * gdk/gdkevents.h: Added GdkEventScroll structure.
15224  
15225 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
15226
15227         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
15228         and Anders Carlsson to change the Paned widgets so that they
15229         can be dragged from anywhere along the length. Also change
15230         the way that this is drawn to make this apparent.
15231
15232         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
15233         from George Lebl to check that option_menu->menu is present
15234         before getting history.
15235
15236 2000-02-14  Tor Lillqvist  <tml@iki.fi>
15237
15238         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
15239         before the assertion for non-NULL segment list.
15240
15241         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
15242         Seems that pattern brushes *must* be 8x8 pixels! At least on my
15243         machine, but it might be display driver dependent. Sigh, so make
15244         sure the stipple is that size. Does Windows suck or what?
15245
15246         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
15247         places.
15248
15249 2000-02-13  Havoc Pennington  <hp@pobox.com>
15250
15251         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
15252         refcount to 1
15253         (gdk_cursor_new): init refcount to 1
15254
15255         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
15256
15257 2000-02-13  Tor Lillqvist  <tml@iki.fi>
15258
15259         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
15260         so that we don't have to do unnecessary settings to the HDC.
15261
15262         * gdk/win32/gdkdrawable-win32.c
15263         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
15264         gdk_gc_predraw.
15265
15266         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
15267         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
15268         GDI paths, call WidenPath to get the outline of the stroken path,
15269         and then fill the outline (with the brush that was built from the
15270         stipple).
15271
15272         * gdk/win32/gdkgc-win32.c: Factor out common code from
15273         _gdk_win32_gc_new and gdk_win32_gc_set_values into
15274         gdk_win32_gc_values_to_win32values. Use correct colour for
15275         SetBkColor() (Until now the code actually used a random colour in
15276         the call to SetBkColor()... but that didn't show up as not many
15277         GDI APIs use the background colour. Pattern (opaque stippled)
15278         brushes do.)
15279
15280         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
15281         gdk_win32_api_failed): New functions for error logging.
15282
15283         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
15284         WIN32_API_FAILED to call them, passing function or file name and
15285         line number.
15286
15287         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
15288
15289         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
15290         GdkColor for foreground and background in GdkGCWin32Data.
15291
15292         * gdk/makefile.cygwin: Link in the resource object separately.
15293
15294         * gdk/win32/rc/gdk.rc
15295         * gtk/gtk.rc (New file)
15296         * gdk/win32/makefile.cygwin
15297         * gtk/makefile.cygwin: Update build number in DLLs automatically,
15298         as in GLib.
15299
15300 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
15301
15302         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
15303         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
15304         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
15305         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
15306         parameters given and cursor->ref_count. coding style fixups.
15307
15308         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15309         not GtkWidget.
15310         
15311         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
15312         fix up widget macros and add _GET_CLASS() variant.
15313         
15314         * gtk/*.c: some GtkType fixups.
15315
15316 2000-02-09  Tor Lillqvist  <tml@iki.fi>
15317
15318         * gdk/win32/gdkproperty-win32.c
15319         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
15320         were reversed.
15321
15322 2000-02-04  Tor Lillqvist  <tml@iki.fi>
15323
15324         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
15325         g_filename_to_utf8 to convert the font names Windows gives us from
15326         whatever is the default codepage to UTF-8.
15327         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
15328         in the other direction.
15329
15330         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
15331         error in debugging output.
15332
15333 2000-02-02  Tor Lillqvist  <tml@iki.fi>
15334
15335         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
15336         and height parameters to gdk_window_clear_area(). Not minus one.
15337
15338 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
15339
15340         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
15341         checks if the widget passed to gtk_drag_get_data() was not the
15342         dest widget.
15343
15344 2000-02-01  Tor Lillqvist  <tml@iki.fi>
15345
15346         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
15347         g_filename_from_utf8 functions (which were added a moment ago to
15348         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
15349         size buffers.
15350
15351         gtk_file_selection_get_filename returns the filename in the C
15352         runtime encoding. It calls g_filename_from_utf8, but copies the
15353         returned string to a static buffer, which is returned. I think
15354         this is better than returning the result from g_filename_from_utf8
15355         directly, which would mean all apps that use it would have to free
15356         the return value. Or should this function care about this issue at
15357         all? Maybe a new function with clearly defined semantics.
15358
15359         * gtk/gtkfilesel.h: Add comment about
15360         gtk_file_selection_get_filename returning the filename in the C
15361         runtime's encoding.
15362
15363         * README.win32
15364         * gdk/gdk.def
15365         * gdk/makefile.{cygwin,msc}
15366         * gtk/gtk.def: Updates.
15367
15368         * gdk/gdkcursor-win32.c: Initialise refcount.
15369
15370 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
15371
15372         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
15373
15374 2000-01-30  Havoc Pennington  <hp@pobox.com>
15375
15376         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
15377         destroy
15378
15379         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
15380
15381         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
15382         implemented in platform-specific code
15383
15384         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
15385
15386         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
15387         underscore in front
15388
15389         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
15390         put an underscore in front
15391
15392         * gdk/gdkcursor.c: new file, implements
15393         gdk_cursor_ref/gdk_cursor_unref
15394
15395         * gdk/gdkcursor.h: Refcount GdkCursor
15396
15397         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
15398
15399 2000-01-29  Tor Lillqvist  <tml@iki.fi>
15400
15401         * gdk/gdkwindow.h
15402         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
15403
15404 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15405
15406         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
15407         structures to properly inherit from GtkWidget not GtkBin.
15408
15409 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
15410
15411         * gtk+.spec.in: Added lib/gtk+/include/* to %files
15412         (bug #5178 - Peter Wainright)
15413         
15414         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
15415         so that it will be installed.
15416         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
15417
15418 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
15419
15420         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
15421         for the GtkStyleClass vtable const.
15422
15423         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
15424         take a const string argument like GtkTranslateFunc. This will
15425         require changes in use code.
15426
15427 2000-01-19  Tor Lillqvist  <tml@iki.fi>
15428
15429         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
15430         semantics (to mimic the X11 backend, which just calls XClearArea)
15431         is to check for zero width (and height), and in that case use the
15432         window's width minus x (height minus y). This fixes for instance
15433         some redraw problems with gtkclist, which were easily noticeable
15434         in the gtk file selection widget.
15435
15436         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15437         windows.
15438
15439 2000-01-13  Tor Lillqvist  <tml@iki.fi>
15440
15441         * configure.in
15442         * gdk/Makefile.am
15443         * gdk/x11/Makefile.am
15444         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
15445         (bug #5177).
15446         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
15447         out later.
15448
15449 2000-01-09  Tor Lillqvist  <tml@iki.fi>
15450
15451         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
15452         WM_MOVE for iconified or invisible windows. This fixes various
15453         problems when minimising windows. Thanks to Bernd Herd.
15454
15455 2000-01-05  Tor Lillqvist  <tml@iki.fi>
15456
15457         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
15458         backend's draw_lines method, not draw_points.
15459
15460 2000-01-02  Tor Lillqvist  <tml@iki.fi>
15461
15462         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
15463         before Owen's reorganisation: Don't have queued_events and
15464         queued_tail statics in this file, but use gdk_queued_events and
15465         gdk_queued_tail. This makes exposure event compression work again.
15466
15467         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
15468         seem to be needed?
15469
15470 1999-12-30  Tor Lillqvist  <tml@iki.fi>
15471
15472         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
15473         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
15474         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
15475         doesn't do anything.
15476
15477         * gdk/gdk.def: Add gdk_xid_table_insert.
15478
15479         * gdk/win32/gdkprivate-win32.h
15480         * gdk/win32/gdkevents-win32.c
15481         * gdk/win32/gdkinput-win32.c
15482         
15483         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
15484         extension_events field in the GdkWindowWin32Data struct. Use only
15485         the extension_events field in GdkWindowPrivate. Previously one was
15486         set, and the other one tested, which broke tablet
15487         functionality. Thanks to Keishi Suenaga for pointing this out.
15488
15489 1999-12-18  Tor Lillqvist  <tml@iki.fi>
15490
15491         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
15492         When handling a single character (text length == 1), don't handle
15493         it as if it was UTF-8.
15494
15495 1999-12-11  Tor Lillqvist  <tml@iki.fi>
15496
15497         * Makefile.am: Distribute README.win32.
15498         
15499         * gdk/Makefile.am
15500         * gdk/win32/Makefile.am: Distribute Win32 files.
15501
15502         * gdk/makefile.msc: New file.
15503
15504         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
15505         after label).
15506
15507         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
15508         gdk_error_code as GDKVAR, as they are referred outside GDK.
15509
15510         * gdk/win32/makefile.msc: Update.
15511
15512         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
15513         tweaks. Check only if at least one of those Unicode subrange bits
15514         we care for is set. If no code page bits are set, guess (wildly)
15515         based on the charset.
15516
15517         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
15518
15519         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
15520         non-NULL.
15521
15522         * gtk/gtkdnd.c
15523         * gtk/gtklayout.c
15524         * gtk/gtkplug.c
15525         * gtk/gtkselection.c
15526         * gtk/gtksocket.c
15527         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15528         appropriate. There must be a cleaner way to handle this?
15529
15530         * gtk/gtkrc.c: Must include windows.h on Win32.
15531
15532         * gtk/testgtk.c: No need to include gdkx.h.
15533
15534         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15535
15536 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15537
15538         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15539         the rbearing is set to the same as the width, but this should be
15540         fixed.
15541
15542 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15543
15544         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15545         function. If Windows doesn't tell us what Unicode subranges a font
15546         covers, guesstimate based on the codepages it covers. This will
15547         hopefully help those Windows versions or fonts that don't give us
15548         any useful Unicode subrange information with GetTextCharsetInfo.
15549         Call this function in gdk_font_load_internal.
15550
15551         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15552         minor changes.
15553
15554 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15555
15556         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15557         New function, long needed.
15558
15559 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15560
15561         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15562         only_if_exists argument of gdk_atom_intern to
15563         bool.
15564
15565 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15566
15567         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15568         Fix two copy&paste errors.
15569
15570         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15571         win32 has changed.
15572
15573         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15574         GdkWin32SingleFont struct.
15575
15576         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15577         subranges of loaded fonts. Clear font signature first, in case
15578         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15579         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15580
15581         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15582         Unoffset clip region.
15583
15584 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15585
15586         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15587         event->any.window before calling filter functions.
15588
15589 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15590
15591         * gtk/gtkgamma.h: Adapt cast macros to standard.
15592
15593 [ Merges from 1.2 ]
15594
15595 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15596
15597         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15598         If translation does not include a '/', use entire
15599         translation instead of crashing.
15600
15601 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15602
15603         * docs/gtk_tut.sgml:
15604         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15605
15606 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15607
15608         * gtk/gtkselection.c (gtk_target_list_remove): Use
15609         g_list_remove_link, not g_list_remove.
15610
15611         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15612         
15613 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15614
15615         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15616         statement upon unselection (how the heck did that slip in?).
15617
15618 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15619
15620         * gtk/gtktext.c (gtk_text_freeze): 
15621         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15622         in frozen state (and aparently crashes). patch provided by Anders
15623         Melchiorsen <and@kampsax.dtu.dk>.
15624
15625 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15626
15627         * fix insensitive default/focus widget activation,
15628         reported by Matt Goodall <mgg@isotek.co.uk>.
15629
15630         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15631         (gtk_window_activate_default):
15632         (gtk_window_activate_focus):
15633         return handled=FALSE for actiavtion of insensitive default
15634         widgets. return handled=TRUE for activation of insensitive
15635         focus widgets. don't activate in either case.
15636
15637 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15638
15639         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15640         and $glib_cflags to match library order and in the
15641         theory that an old version of GLib is more likely to
15642         be in the include directory for X then vice-versa.
15643         (Bug #2776)
15644
15645 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15646
15647         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15648         to determine the locale for fontsets, not LC_MESSAGES;
15649         the user may want English messages with a handling
15650         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15651         will still be broken) (Bug #2891)
15652
15653 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15654
15655         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15656
15657 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15658
15659         * gtk/gtkrc.ko: Changed the Korean default fontset.
15660
15661 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15662
15663         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
15664         where when scrolling to the left or top double exposes
15665         were done, causing major slowdowns.
15666
15667 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
15668
15669         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
15670         names to lowercase and alphanumeric, before looking
15671         them up.
15672
15673         * gtk/Makefile.am: Install codeset variant gtkrc files
15674         with normalized names.
15675
15676 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
15677
15678         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
15679         popup menus when the menu is already visible, but its parent
15680         is still hidden, (happens after tornoff window got hidden).
15681
15682 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
15683
15684         * gtk/Makefile.am (install-data-local): Fix
15685         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
15686         deleted, causing error messages on install.
15687
15688 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
15689
15690         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
15691         the handle as well, since we now sometimes ignore
15692         exposes on the handle while resizing.
15693
15694 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
15695
15696         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
15697         extra g_free introduced in one of the last one or two 
15698         commits.
15699
15700 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
15701
15702         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
15703         consistent, put each style that a gtkrc.* file creates
15704         in a unique namespace, remove old files before installing.
15705
15706 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
15707
15708         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
15709         gtk_rc_init is called multiple times. (Yes, people who
15710         do that have bugs in their code.)
15711
15712 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
15713
15714         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
15715         Remove it since it's generated by the Makefile anyway
15716
15717 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
15718
15719         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
15720         device->info.axes for core pointer.
15721
15722 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
15723
15724         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
15725         idle_id, to deal with obsolete, broken C libraries.
15726
15727 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
15728
15729         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
15730         allocation->x/y twice!
15731
15732         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
15733         consistent with gtk_vscale_pos_trough().
15734
15735 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
15736
15737         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
15738         be queueing a resize on a toplevel container between
15739         the time we show it and when we map it. So, we need
15740         to test GTK_WIDGET_VISIBLE() for toplevels, and only
15741         use GTK_WIDGET_DRAWABLE() for child windows.
15742
15743 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
15744
15745         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
15746         (fixes bug #2144)
15747
15748 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
15749
15750         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
15751         container DRAWABLE (instead of VISIBLE), so we don't queue
15752         resizes on non-toplevel containers.
15753
15754 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
15755
15756         * gtk/gtkselection.[ch]: Make the data argument
15757         const guchar *.
15758
15759 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
15760
15761         * gtk/gtkwindow.c: Try to behave sensibly if 
15762         the focus widget is the window itself. (Should
15763         we allow this at all?)
15764
15765 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
15766
15767         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
15768         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
15769         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
15770         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
15771         in prototypes and implementations consistent (Tomas Ogren).
15772
15773         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
15774         before the widget is unparented (reported by damon).
15775
15776         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
15777         since we provide unsigned data anyways.
15778
15779 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
15780
15781         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
15782         the call to gtk_tooltips_layout_text() until later.
15783
15784         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
15785         Call gtk_widget_ensure_style() before using the style.
15786
15787 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
15788
15789         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
15790         for old widgets that don't propagate draws to all
15791         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
15792
15793 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
15794
15795         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
15796         for a redraw but just the widget that requested the resize.
15797
15798 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
15799
15800         * gtk/gtkcontainer.c: added new widget level method
15801         gtk_container_set_reallocate_redraws() and a GtkContainer flag
15802         reallocate_redraws : 1 to reflect the setting, exported this through
15803         the argument system as a boolean ::reallocate_redraws.
15804
15805         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
15806         on the widget because the allocation changes, do so as well for
15807         widget->parent if the parent has reallocate_redraws set to TRUE.
15808         with that containers requesting reallocation redraws get automatically
15809         redrawn if their children changed allocation (this unfortunately
15810         affects also other children that didn't change allocation, but we
15811         cannot work around that before 1.3).
15812
15813 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
15814
15815         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
15816         _and_ height are >0 (not _or_).
15817
15818         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
15819         instead of gtk_container_queue_resize(), which is a core gtk internal
15820         function (must have been on crack when i queued that).
15821
15822         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
15823         we can check more reliably if we want to discard expose events.
15824         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
15825         flag.
15826         
15827         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
15828         we simply trust these events. for deciding whether to discard exposes,
15829         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
15830         
15831 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
15832
15833         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15834         queues of areas that are completely off screen.
15835
15836         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
15837         logic for handleboxes.
15838
15839         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
15840         check on width/height.
15841
15842 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
15843
15844         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
15845         we are fine with using $@ the way we do (if we actually encounter
15846         brokeness with $@ in VPATH builds because of additional path prefixes,
15847         we need to use $(@F) actually).
15848
15849 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
15850
15851         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
15852         short lived bugs, that would allow language bindings to do surgeries
15853         to our guts.
15854
15855 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
15856
15857         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
15858         where comparison was being done against an uninitialized
15859         value causing intermittant results depending on
15860         compiler flags. Also make it clearer that we aren't
15861         ever initializing the child as 0x0 (though this will
15862         be caught in gtk_widget_size_allocate())
15863
15864 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
15865
15866         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
15867         gtk_window_unset_transient_for() call after we do checks
15868         involving the old transient parent.
15869         [ From Lance Capser <lmc@cyberhighway.net> ]
15870
15871 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
15872
15873         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
15874         an empty file.
15875
15876 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
15877
15878         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
15879         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
15880
15881 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
15882
15883         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
15884         `$@' is valid only in the build dir, not after we've done 
15885         `cd $srcdir'.  Also use `test -f' instead of less portable
15886         `test -e'.
15887
15888 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
15889
15890         * gtk/gtktext.c (correct_cache_insert): Rewrite
15891          for simplicity, and hopefully correctness.
15892          (Fixes bug #1322, which was a segfault when
15893           on some insertions with the properties around
15894           the insertion set up just wrong.)
15895
15896         * gtk/gtktext.c (gtk_text_adjustment): When we receive
15897          a "changed" signal, clamp the new value to the adjustment
15898          bounds to avoid segfaulting if someone tries to change
15899          the adjustment to a bogus value. (Bug #1795)
15900
15901 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
15902
15903         * gtk/gtkmain.c: Ignore unexpected destroy notifies
15904         for children, for toplevel windows handle them
15905         like delete_event.
15906
15907         * gtk/gtkplug.c: Add an unrealize handler so that
15908         we unref plug->socket_window when we are done
15909         with it.
15910
15911 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
15912
15913         * gtk/gtktext.c (clear_area): Fix stupid signedness
15914          problem that was causing background to sometimes
15915          be misaligned.
15916
15917 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
15918
15919         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
15920         
15921         * gtk/gtkmenu.c (gtk_menu_position): Make
15922          sure we never position menus with negative x, y,
15923          since gtk_widget_set_uposition() can't handle that.
15924
15925         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
15926          Modify the positioning code a bit so that we always
15927          put the top-left corner onscreen. (This is for
15928          UI reasons, gtk_menu_position() now takes care of
15929          gtk_widet_set_uposition() brokeness.)
15930
15931 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
15932
15933         * gtk/Makefile.am: fixed up things for -jx, x > 1.
15934
15935 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
15936
15937         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
15938           RC style that is passed in. The lack of the ref
15939           before was a bug. If people worked around this
15940           bug, this will introduce a slight memory leak
15941           in their code. The code should typically look like:
15942
15943             rc_style = gtk_rc_style_new ();
15944             [...]
15945             gtk_widget_modify_style (widget, rc_style);
15946             gtk_rc_style_unref (rc_style);
15947
15948         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
15949           the style if it was already set.
15950
15951         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
15952           style if it was set before.
15953
15954 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
15955
15956         * gtk/testgtk.c (main): Add a check to see if we
15957           are being run from the correct directory and
15958           to quit nicely if we are not.
15959
15960         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
15961           static.
15962
15963 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
15964
15965         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
15966
15967         * gtk/gtkwindow.c:
15968         queue resizes unconditionally (gtk_widget_queue_resize will figure
15969         what to do if the window is not realized).
15970         (gtk_window_move_resize): only recenter the window
15971         for GTK_WIN_POS_CENTER_ALWAYS.
15972         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
15973         the same way as GTK_WIN_POS_CENTER.
15974
15975 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
15976
15977         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
15978         with (!(info->last_flags & GDK_HINT_POS)) instead of
15979         (!info->last_flags & GDK_HINT_POS).
15980
15981         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
15982         new_height unconditionally, because we use these values even if
15983         !default_size_changed && !hints_changed.
15984         comented the (default_size_changed || hints_changed) case with
15985         respect to resize rejects from the window manager.
15986
15987         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
15988         in the zvt condition hack, since this includes the window hints, set
15989         the hints after the handling_resize case.
15990
15991         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
15992         window is initially shown with to the geometry.
15993
15994 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
15995
15996         * gtk/gtkwindow.c (gtk_window_move_resize):
15997         s/size_changed/default_size_changed/g so i know what's
15998         really going on (frying brain on smaller flame now).
15999
16000 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
16001
16002         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
16003         we have size_changed upon handling_resize. this is a gross
16004         workaround for the broken zvt widget and should be removed in
16005         1.3 again (search for FIXME).
16006         Owen provided an accurate comment for this:
16007
16008         /* We could be here for two reasons
16009          *  1) We coincidentally got a resize while handling
16010          *     another resize.
16011          *  2) Our computation of size_changed was completely
16012          *     screwed up, probably because one of our children
16013          *     is broken. It's probably a zvt widget.
16014          *
16015          * For 1), we could just go ahead and ask for the
16016          * new size right now, but doing that for 2)
16017          * might well be fighting the user (and can even
16018          * trigger a loop). Since we really don't want to
16019          * do that, we requeue a resize in hopes that
16020          * by the time it gets handled, the child has seen
16021          * the light and is willing to go along with the
16022          * new size. (this happens for the zvt widget, since
16023          * the size_allocate() above will have stored the
16024          * requisition corresponding to the new size in the
16025          * zvt widget)
16026          *
16027          * This doesn't buy us anything for 1), but it shouldn't
16028          * hurt us too badly, since it is what would have
16029          * happened if we had gotten the configure event before
16030          * the new size had been set.
16031          */
16032
16033 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
16034
16035         * gtk/gtkrc.c: deal properly with the fact that RC
16036           style lists may include rc styles more than once.
16037
16038         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
16039           unused static function.
16040
16041         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
16042           stack of directories of RC files currently being
16043           parsed and implicitely add them to pixmap path.
16044           
16045           This fixes a bug where the directory would get
16046           appended then overwritten by pixmap_path declarations.
16047
16048           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
16049
16050         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
16051           theme's exit function. (Patch from Peter Wainwright,
16052           bug #1454)
16053
16054         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
16055           Add a destroy() handler to take care of removing
16056           group for menu item. (Fixes bug #1197)
16057
16058         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
16059           in warning message.
16060
16061 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
16062
16063         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
16064         roundtrip to figure window's width and height, since we know that
16065         anyways from widget->allocation.
16066
16067 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
16068
16069         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
16070           the hints after we request the new size.
16071
16072 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
16073
16074         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
16075           GTK_WIDGET_REALIZED() assertion - we can compute the
16076           hints before we are realized.
16077
16078         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
16079           hint changing so that we have a value of hints_changed
16080           when we decide whether to constrain the window size.
16081
16082         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
16083
16084         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
16085         change back to G_MAXINT.
16086
16087 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
16088
16089         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
16090         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
16091         contain uncluttered values.
16092         (gtk_window_compute_hints): simply assert that window is realized
16093         and that geometry_info is valid, since we rely on this anyways.
16094         (gtk_window_constrain_size): major cleanups to the code.
16095         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
16096         for the base size, instead of the minimums. use 32767 as max width
16097         and height (like in gtkwindow.c) instead of G_MAXINT.
16098
16099 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
16100
16101         * cleaned up the GtkContainer.need_resize flag handling mess, we
16102         only need to force resize requests when we were prematurely
16103         realized, or our widget tree was modified when we were temporarily
16104         hidden. handling these cases directly upon showing the window (i.e.
16105         while the GdkWindow is still unmapped) avoids the need to wait for
16106         a configure event response and therefore makes the GUI more snappier
16107         and avoids blank windows during the roundtrip.
16108
16109         * gtk/gtkwidget.c:
16110         (gtk_widget_hide): 
16111         (gtk_widget_show): don't queue resizes on toplevels, they know how
16112         to deal with matters.
16113
16114         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
16115         flag directly for not visible resize containers and spare us unecessary
16116         signal emissions.
16117
16118         * gtk/gtkwindow.c:
16119         (gtk_window_realize): if we need to enforce premature size allocation,
16120         queue a container resize so we are correctly resized later on.
16121         (gtk_window_init):
16122         (gtk_window_size_request):
16123         don't freak around with the ->need_resize flag,
16124         gtk_container_queue_resize() will care about that.
16125         (gtk_window_show):
16126         handle initial resizing issues here, we can handle matters better in
16127         this place, especially since we know that our GdkWindow is still
16128         unmapped.
16129         (gtk_window_move_resize):
16130         don't care about ->need_resize at all.
16131         handle size changes properly that occoured while we waited for a
16132         configure event.
16133
16134 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
16135
16136         * gtk/gtkwidget.c (gtk_widget_set_uposition):
16137         * gtk/gtkwindow.[hc] (gtk_window_reposition):
16138         Move the hint setting code from gtk_widget_set_uposition
16139         to here; set the hints so that we respect any previously
16140         set geometry hints.
16141
16142         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
16143         change the window hints here or move the window here,
16144         let that happen in gtk_window_move_resize().
16145
16146 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
16147
16148         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
16149         to already queued resizes (and therefore redraws) on a widget, check
16150         its anchestry as well.
16151
16152         * gtk/gtkcontainer.c:
16153         (gtk_container_queue_resize): clear resize widgets for resize
16154         containers before aborting prematurely. this is especially important
16155         for toplevels which may need imemdiate processing or their resize
16156         handler to be queued.
16157         (gtk_container_dequeue_resize_handler): added new internal function for
16158         gtkwindow.c.
16159
16160         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
16161         configure event, take possible changes in window position into account
16162         as well.
16163         if we request a new window size, queue up a resize handler that will
16164         last until the configure event response arrives.
16165         combined the ->need_resize case (initial show) with the general size
16166         (hints) changed case and added even more comments.
16167         if !auto_shrink, only revert to the old allocation if the new size
16168         is smaller than the current allocation.
16169
16170 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
16171
16172         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
16173                            gtk_window_set_geometry_hints
16174                            gtk_window_set_default_size):
16175         When hints are set, queue a resize so that the hints will
16176         be eventually reset on the toplevel.
16177
16178         * gtk/gtkwindow.c (gtk_window_show): Use
16179         gtk_window_compute_default_size(). Clear the need_resize flag
16180         on the initail map so that we don't unnecessarily trigger the
16181         resize code.
16182
16183         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
16184         into separate functions. Compare the hints we are setting
16185         with what we set last time so that we can accurately
16186         tell when we need to reset the hints.
16187
16188         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
16189         function to figure out the size from requisition
16190         and default_size.
16191
16192         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
16193         from fvwm to constrain a size to the geometry hints.
16194
16195         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
16196         to compare two sets of geometry hints.
16197
16198         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
16199         from gtk_window_set_hints(), just compute the hints,
16200         don't set them.
16201
16202         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
16203         code from gtk_window_move_resize() to separate function,
16204         rationalize a bit.
16205
16206 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
16207
16208         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
16209         structure into a new private structure.
16210
16211         * gtkrc.c: Split GtkRcStyle into public/private.
16212         In the private part, add a list of pointers to the
16213         RcStyle lists this RcStyle participates in.
16214
16215         * gtkrc.c: When a RcStyle is free, remove all
16216         lists referencing it from the 
16217         realized_style_ht hash, and free those lists.
16218         
16219         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
16220         gtk_rc_init(), since that adds the default styles
16221         to the list of parsed RC files again.
16222
16223         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
16224         
16225 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
16226
16227         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
16228         checks that ensure that a widget's allocation is at least 1 in width
16229         and height. (GNOME note: this doesn't affect old panel code anymore,
16230         because GtkSocket will request width and height of at least 1 since
16231         Fri Jul 23).
16232
16233         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
16234         allocated yet (happens if the user realizes the window prematurely),
16235         size request and allocate it.
16236         (gtk_window_size_allocate): guard against guint underflows.
16237
16238 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
16239
16240         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
16241         in gtk_built_sources, so gtk.defs gets built prior to all other
16242         sources.
16243
16244 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16245
16246         * gtk/Makefile.am:
16247         invoke indent on gtkmarshal.*. 
16248         rewrote source generation rules, use COPYING as oldest source tag for
16249         a piggyback rule to generate all sources from (don't touch it ;).
16250         major cleanups, strip spaces on build rules for GNU Make.
16251
16252         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
16253         source and target files from commandline arguments. don't invoke indent.
16254
16255 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16256
16257         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16258         notebook after switch to avoid drawing problems.
16259         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16260         
16261         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16262         show them instead. 
16263         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16264
16265 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16266
16267         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16268         notebook after switch to avoid drawing problems.
16269         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16270         
16271         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16272         show them instead. 
16273         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16274
16275 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
16276
16277         * gtk/gtkwindow.c:
16278         we use window->need_resize from configure_event now, to indicate that
16279         the gtkwindow should keep its allocation (e.g. because the user resized
16280         the window through window manager handles). resize_count is now reliably
16281         used to figure whether we got the allocation we requested from the
16282         window manager.
16283         configure events get queued as resizes now, the real stuff (size
16284         computation and allocation) now only goes on in gtk_window_move_resize().
16285         GtkWindow's requisition now contains its *real* requisition (like all
16286         other widgets), *not* taking usize into account.
16287         geometry_info->last_{width|height} is now updated from set_hints() only
16288         so it always contains the last hints we set for the window manager.
16289         made some event handlers return TRUE instead of FALSE.
16290         the overall code should be much more straight forward now, and the
16291         significant code portions are accompanied by comments now.
16292         (gtk_window_set_hints):
16293         removed requisition argument and made it
16294         fetch the requisition through gtk_widget_get_child_requisition.
16295         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
16296         does that now.
16297         (gtk_window_show):
16298         ensure that the widget is realized before calling 
16299         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
16300         ensure that we got properly size requested and allocated before
16301         realization.
16302         (gtk_window_configure_event):
16303         ignore plain window moves, or reallocate the widget tree through the
16304         resize queue otherwise.
16305         (gtk_window_move_resize):
16306         mostly rewrote this function to figure window manager hints more
16307         reliably, coalesce window moves and resizes to reduce configure events
16308         and do actuall size allocations.
16309
16310 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16311
16312         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
16313         that have a resize pending, because a redraw is already queued for them.
16314
16315         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
16316         hack to clear resize_widgets.
16317
16318         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
16319         for resize containers prior to size allocation. (this is also a bit
16320         ugly, but avoids side effects for stopped emissions and is thus more
16321         reliable).
16322         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
16323
16324         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
16325         function from gtk_tooltips_expose, as we connect to ::expose_event
16326         *and* ::draw now.
16327
16328 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16329
16330         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
16331         checks.
16332         (gtk_target_list_unref): Likewise.
16333
16334         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
16335
16336 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
16337
16338         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
16339         guard against division by zero. (Fixes bug #1339)
16340
16341 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
16342
16343         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
16344         Prevent the trivial leak of information of allowing
16345         word motion when the entry is not visible.
16346
16347 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
16348
16349         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
16350         modality to error dialog as well as confirmation dialogs.
16351         (Bug #1803, reported by Rosanna Wing Sze Yuen)
16352
16353 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16354
16355         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
16356         tree->view_lines.
16357         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
16358
16359         * gtk/Makefile.am (install-data-local): Solaris apparently
16360         has various troubles with ln -f; use rm first instead.
16361         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
16362
16363 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
16364
16365         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
16366         use `cp' followed by `rm' (the `rm' was already there).
16367
16368 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16369         
16370         * configure.in: Fix autoconf warnings about cross compilation by
16371         trying to provide sane defaults for AC_TRY_RUN.
16372         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
16373         put them into $(srcdir) when generated. Also add a dependency of
16374         gtksignal.h on gtkmarshal.h for -j builds. 
16375         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
16376
16377 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
16378
16379         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
16380         GDK_THREADS_{LEAVE,ENTER} pair.
16381         (From Paul Fisher <pnfisher@redhat.com>)
16382
16383 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
16384
16385         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
16386         width and height are always >0 (owen).
16387
16388 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
16389
16390         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
16391         change that assured that a widget's allocated with and height are
16392         always >1, since this breaks *buggy* panel code. unfortunately this
16393         back-breaks the gimp's color selector.
16394
16395         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
16396         allocation is always >0 in width and height, before sending the
16397         configure event; this is a *gross* hack to get the gimp back to work.
16398         
16399         * marked both cases with TODO-1.3
16400
16401 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
16402
16403         * gtk/gtktext.c: Don't display wrap indicators when
16404         text is not editable and word wrap is on.
16405
16406 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
16407
16408         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
16409         option menus here as they are not derived from menu shell, assure that
16410         the option menu has a menu we can add items to.
16411
16412 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
16413
16414         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
16415         width/height to (gint) before calculations and check against < 0 to
16416         avoid guint wraparounds.
16417
16418 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
16419
16420         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
16421         width and height is never zero. sanity check both dimensions against
16422         32767 and issue a warning if the allocation is greater than that.
16423
16424 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
16425
16426         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
16427         to g_main_pending() as well.
16428
16429 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
16430
16431         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
16432         call to g_main_iteration() - since that will regrab
16433         GTK+ lock to process events.
16434
16435 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
16436
16437         * gtk/gtkwindow.c
16438         - Regularize with the rest of GTK+ by making widget->requisition
16439           not reflect the set_usize()
16440         - Always recompute geometry hints, then check if they
16441           changed before sending them to the X server. The
16442           previous checks for changes would fail in a number
16443           of circumstances. 
16444
16445 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
16446
16447         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
16448
16449 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
16450
16451         * gtk/gtkdnd.c:
16452         - Code cleanups
16453         - Instantaneously update on modifier key presses
16454         - Allow cancellation of the drag with Escape.
16455
16456 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
16457
16458         * gtk/testgtk.c (create_handle_box): Set the policy
16459         to auto_shrink - otherwise the appearance is rather
16460         strange when flipping between horizontal and vertical.
16461
16462 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
16463
16464         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
16465         (gtk_window_set_default_size): don't change a value if it's < 0.
16466         queue a resize.
16467
16468 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
16469
16470         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
16471
16472 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
16473
16474         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
16475         add an extra "/" when concating "/" + filename.
16476         (From Matt Grossman <mattg@oz.net>)
16477
16478 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
16479
16480         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
16481         for fg_gc if we set it for drawing pixmap.
16482
16483 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
16484
16485         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
16486         
16487         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
16488         already set, call old engine's destroy function and
16489         unref the old engine.
16490
16491 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
16492
16493         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
16494
16495 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
16496
16497         * gtk/gtkaccelgroup.h: mark certain functions as internal.
16498
16499 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
16500
16501         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
16502         expand behaviour changed.
16503
16504         * gtk/gtklabel.c (gtk_label_set_pattern):
16505         (gtk_label_set_justify):
16506         (gtk_label_set_line_wrap):
16507         don't bother invoking queue_clear, the reallocation does
16508         that for us, always free_words so the upcoming resize will
16509         relayout the label's contents.
16510
16511 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
16512
16513         * applied argument implementation patches from Elena Devdariani
16514         <elena@cogent.ca>.
16515
16516         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
16517         ::space_style, ::relief
16518         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
16519         * gtk/gtkpreview.c: ::expand
16520         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
16521         * gtk/gtknotebook.c: ::homogeneous
16522         * gtk/gtklabel.c: ::wrap
16523         * gtk/gtklist.c: ::selection_mode
16524         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16525         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16526         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16527         * gtk/gtkclist.c: ::sort_type
16528         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16529         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16530
16531 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16532
16533         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16534         comment.
16535
16536 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16537
16538         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16539         counting right when we have to attach a new style
16540         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16541
16542         * gtk/gtkstyle.c: Documented the refcounting
16543         peculularities of gtk_style_attach.
16544
16545 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16546
16547         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16548         window types.
16549
16550         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16551         of GTK_TOPLEVEL for creating the window.
16552
16553 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16554
16555         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16556         the last argument (reported by Per Winkvist).
16557         
16558 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16559
16560         Fixes for invisible XOR lines (Frank Loemker
16561         <floemker@TechFak.Uni-Bielefeld.DE>)
16562         
16563         * gtk/gtkclist.c (gtk_clist_realize): Always use
16564         a non-zero pixel for GDK_XOR.
16565
16566         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16567         Use GDK_INVERT instead of GDK_XOR.
16568
16569 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16570
16571         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16572         signals if h/voffsets differ from adjustment values.
16573         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16574
16575 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16576
16577         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16578         ::selection-done emissions up to the topmost menu shell.
16579
16580 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16581
16582         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16583         the user data on the window before destroying it.
16584
16585         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16586         unrealize handler to take care of destroying 
16587         notebook->panel properly. 
16588         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16589
16590         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16591         of g_new and g_realloc to stop memory leak. (Actually,
16592         we could just use g_realloc(), but I'm not 100% sure
16593         that is portable).
16594         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16595
16596 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16597
16598         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16599
16600         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16601         for fontsets.
16602
16603         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16604         with bin/button confusion.
16605
16606 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16607
16608         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16609         and show how preselection of radio items is done.
16610
16611 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16612
16613         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16614         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16615         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16616         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16617         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16618         * gtk/gtktable.c (gtk_table_attach): 
16619         * gtk/gtklist.c (gtk_list_insert_items): 
16620         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16621         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16622         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16623         * gtk/gtkbin.c (gtk_bin_add): 
16624         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16625         * gtk/gtkfixed.c (gtk_fixed_put): 
16626         * gtk/gtklayout.c (gtk_layout_put):
16627         general fixups to container_add logic. always realize child if
16628         child->parent is realized, only map the child and queue a resize
16629         if child and child->parent are both visible.
16630
16631 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16632
16633         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16634         instead of gtk_container_foreach to walk and unrealize children, so
16635         composite children get also unrealized.
16636         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16637         (gtk_widget_map): assert that the widget is visible (basic constrain).
16638         (gtk_widget_real_map): assert that the widget is realized (basic
16639         constrain).
16640
16641 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16642
16643         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16644
16645 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16646
16647         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16648         file for iso-8859-2 locales.
16649
16650         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16651
16652 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16653
16654         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16655          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16656          Remove some suspicious and useless lines. 
16657
16658 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16659
16660         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16661         width,height = 0, 0 to mean - here to edge of window,
16662         instead of -1, -1, since the former is all we support.
16663
16664 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
16665
16666         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
16667         when removing from quit_functions list.
16668
16669 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
16670
16671         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
16672
16673 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
16674
16675         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
16676          When redrawing characters on non-visible entry, use appropriate
16677          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
16678
16679 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
16680
16681         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
16682         from drag coordinates.
16683         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
16684         use drag_dest_cell.
16685
16686         * gtk/gtktree (drag_dest_cell)
16687         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
16688         (Bug #1129)
16689
16690 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
16691
16692         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
16693         translate_* fields.
16694         (gtk_item_factory_finalize): invoke translate_notify independant from
16695         translate_data.
16696         (gtk_item_factory_set_translate_func): likewise.
16697         (gtk_item_factory_destroy): only remove ifactory pointer from those
16698         widgets that belong to us (stupid me).
16699
16700 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
16701
16702         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
16703         rc_style list when lookup succeeeds.
16704
16705 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
16706
16707         * gtk/gtkctree.c (resync_selection): 
16708         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
16709         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
16710         bug.
16711
16712 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
16713
16714         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
16715         Add some missing GDK_THREADS_ENTER()/LEAVE around
16716         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
16717
16718 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
16719
16720         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
16721         rather than emit_by_name.
16722
16723         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
16724         on the widget across multiple signal emissions.
16725         (gtk_editable_delete_text): same here.
16726         (gtk_editable_class_init): set widget_class->activate_signal after
16727         editable_signals[ACTIVATE] has been created.
16728
16729 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
16730
16731         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
16732         position here prematurely -- we might not have the
16733         right ->min_position and ->max_position yet.
16734
16735 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16736
16737         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
16738         Add error traps so if the other end of the connection
16739         dies, we survive.
16740
16741         * gtk/gtkselection.c (gtk_selection_notify): Clean
16742         up properly when selection property retrieval fails.
16743         
16744         * gtk/gtkselection.c (gtk_selection_request): Correctly
16745         reject SelectionRequest notifies where the handler
16746         returns no data.
16747
16748 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16749
16750         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
16751         when we've previously highlighted.
16752
16753         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
16754         emit two "drag_leave" signals for Motif drops.
16755
16756         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
16757         back the correct status messages when dropping from
16758         Motif onto a proxy window that is rejecting the
16759         drop.
16760
16761 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
16762
16763         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
16764         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
16765         to compare two argument values. added gtk_arg_to_valueloc() to set a
16766         variable from an arg through its location (pointer).
16767
16768         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
16769         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
16770         as gfloat*, uchars are collected as guchar*, ints are collected as
16771         gint*, etc...
16772
16773 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
16774
16775         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
16776         Include <string.h> instead of <strings.h>.
16777
16778         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
16779         (actually, a lot more duplicate includes occur if
16780          you trace through the sequence of #include's)
16781         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
16782         
16783 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16784
16785         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16786         gtk-a-higuti-990322-[0-3]
16787
16788         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16789         that was causing -DX_LOCALE not to work.
16790
16791         * gtk/gtkrc.c (gtk_rc_init):
16792         X_LOCALE will never have LC_MESSAGES defined
16793
16794 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
16795
16796         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
16797         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
16798
16799         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
16800         left/right as well (gtk-michael-980726-0.patch.gz).
16801
16802         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
16803         for pointer values, use gchar instead of char. fixed uline allocation
16804         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
16805         chunks instead of G_ALLOC_ONLY.
16806         (gtk_label_size_request): always alter requisition as passed and leave
16807         widget->requisition alone.
16808         (gtk_label_set_text): allow NULL strings.
16809         (gtk_label_new): likewise.
16810
16811 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
16812
16813         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
16814
16815 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
16816
16817         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
16818         *and* mapped (i.e. drawable).
16819         (gtk_bin_expose): only send exposes to drawable children.
16820
16821         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
16822         (gtk_box_expose): only send exposes to drawable children.
16823
16824         * gtk/gtkhscale.c (gtk_hscale_draw): 
16825         * gtk/gtkvscale.c (gtk_vscale_draw):
16826         hm, this is an ugly one. we first compute the size of our trough area
16827         here (window relative) and then check intersection with the draw_area
16828         which is parent relative because we're a NO_WINDOW widget, so we need
16829         to offset the trough area by allocation.x and allocation.y before the
16830         check. (this must not be done for the background area though, since
16831         that's already computed parent relative).
16832
16833 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
16834
16835         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
16836         unrealize title buttons.
16837
16838 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
16839
16840         * gtk/gtkclist.c (gtk_clist_column_title_passive)
16841         (gtk_clist_column_title_active): 
16842         only connect/disconnect to GtkWidgetClass::event to block mouse events.
16843
16844         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
16845         zero initialize event, removed superfluous gdk_window_get_pointer call
16846
16847         * gtk/gtklist.c (gtk_list_vertical_timeout)
16848         (gtk_list_horizontal_timeout): removed superfluous
16849         gdk_window_get_pointer call
16850
16851 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16852
16853         * plugging problems reported by "Bruce Mitchener, Jr."
16854         <bruce@puremagic.com> due to a purify session.
16855
16856         * gtk/gtkstyle.c:
16857         (gtk_style_ref): 
16858         (gtk_style_unref): assert ref_count to be > 0.
16859
16860         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
16861         the requisition.
16862         (gtk_clist_set_shift): likewise.
16863
16864         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
16865         adjustments.
16866
16867         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
16868         event before sending it and set send_event to TRUE (which needs to
16869         be done for *all* synthesized events).
16870         (gtk_list_vertical_timeout): likewise.
16871
16872         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
16873         leaks.
16874
16875         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
16876         to TRUE when synthesizing events.
16877
16878 [ *** end of merges from 1.2 *** ]      
16879         
16880 1999-11-21  Tor Lillqvist  <tml@iki.fi>
16881
16882         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
16883         (or copied from gdkconfig.h.win32 on Win32, sigh).
16884
16885         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
16886
16887         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
16888
16889         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
16890
16891         * gdk/gdkconfig.h.win32: New file.
16892
16893         * gdk/win32/makefile.cygwin: Build just a static archive here.
16894
16895         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
16896         for the DLL from the static archive built above.
16897
16898         * gdk/gdk.def: Moved here from the win32 subdirectory.
16899
16900         * gdk/win32/*: Adapt for the changed private struct organisation.
16901
16902         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
16903
16904 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
16905
16906         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
16907         for wheel mice (buttons 4 and 5).
16908
16909 1999-11-18  Tor Lillqvist  <tml@iki.fi>
16910
16911         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
16912         drawables use just the pixel field in the foreground and
16913         background GdkColor of the GdkGC.
16914
16915         gdk_gc_set_{fore,back}ground() are called in the GIMP with
16916         GdkColors containing uninitialized (red,green,blue) fields, and
16917         just the pixel field filled in, and furthermore in the
16918         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
16919         It thus turns out that we really don't need to have the full
16920         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
16921         it later to have just the pixel values.
16922
16923 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
16924
16925         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
16926
16927 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
16928
16929         * docs/gtkfaq.sgml: threads example from Erik Mouw.
16930         New question on GtkLabel background colors.
16931
16932         * docs/gtk_tut.sgml:
16933           - Correct the example code callback
16934             function definitions.
16935           - Update the gtkdial example code, from Frans van Schaik.
16936           - Update setselection.c to current API.
16937
16938         * examples/Makefile examples/*/*.c: Update to code
16939         listed in tutorial.
16940
16941 1999-11-10  Tor Lillqvist  <tml@iki.fi>
16942
16943         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
16944         subrange table (from the "Developing International Software for
16945         WIndows 95 and Windows NT" book) was missing the Hangul syllable
16946         block... Get the loaded font's charset correctly.
16947
16948         (Note that this, and the other *-win32.c files, still really are
16949         the old ones, the win32 subdirectory is not ready for compilation
16950         yet after the reorg.)
16951
16952 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
16953
16954         * gtk/gtkclist.c: Fix off-by-one bug in parameter
16955         check.
16956
16957 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
16958
16959         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
16960         on results of XQueryDeviceState().
16961
16962 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
16963
16964         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
16965         we need to accesss only ->children. We need an accessor
16966         for the children.
16967
16968         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
16969         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
16970         to get rid of gdkx.h include.
16971         
16972         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
16973         and random references to 'None'.
16974
16975         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
16976         Get rid of unused #include <gdk/gdkx.h>
16977
16978         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
16979         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
16980         gdkconfig.h.
16981
16982 1999-11-08  Tor Lillqvist  <tml@iki.fi>
16983
16984         * gdk/win32/gdkdraw.c
16985         * gdk/win32/gdkfont.c
16986         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
16987         following yesterday's changes. (Unrelated to Owen's reorg.)
16988
16989 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
16990
16991         * gdk/x11/gdkinput-gxi.c: Add missing include,
16992           fix GdkWindowPrivate => GdkDrawablePrivate.
16993
16994         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
16995
16996         * gdk/x11/Makefile.am (xinput_sources): Add missing
16997         backslash to fix building with --with-xinput=none
16998
16999 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
17000
17001         Move all X specific code into the x11/ directory.
17002         Aside from shuffling things around, did the following:
17003
17004        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
17005          gdk_arg_context_* - a simple argument parsing system
17006          in the style of popt.
17007
17008        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
17009          gdk/x11/gdkprivate-x11.h:
17010          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
17011          add ->klass and ->klass_data fields. The klass_data
17012          field points to an auxilliary structure that is
17013          windowing system dependent.
17014
17015        * gdk/gdkfont.c: Make most of the measurement functions
17016          simply wrappers around gdk_text_extents().
17017
17018        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
17019          _gdk_font_strlen() function that hides the weird
17020          behavior in gtk+-1.[02] where a string is interpreted
17021          differently for 8-bit and 16-bit fonts.
17022
17023        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
17024          to store common code for synthesizing double/triple
17025          press events.
17026         
17027        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
17028          Make all the function that modify an existing GC
17029          simply wrappers around gdk_gc_set_values().
17030          
17031        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
17032          for throwing out later.
17033
17034        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
17035          GdkImagePrivate and GdkColormapPrivate to have a
17036          windowing system dependent part (GdkFontPrivateX etc.)
17037          that "derives" from the system-independent part.
17038
17039        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
17040          Got rid of the included-source-files for XInput in
17041          favor of automake conditionals. (Which didn't exist
17042          when XInput support was originally added.)
17043
17044        * gdk/gdkrgb.c: Remove the visual id from the debugging
17045          statements since that is X11 specific; print out
17046          type/depth info instead.
17047          
17048
17049 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
17050
17051         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
17052         loading duplicates of hashed fonts.
17053
17054         * gdk/gdk.c (gdk_keysym_convert_case): rename
17055         gdk_XConvertCase to gdk_keysym_convert_case, allow
17056         results to be NULL in the GTK+ style.
17057
17058         * gdk/gdkcompat.h: Started compatibility header
17059         for renames.
17060
17061 1999-11-07  Tor Lillqvist  <tml@iki.fi>
17062
17063         * gdk/win32/gdkprivate.h: New font private structures, related to
17064         fontsets.
17065
17066         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
17067         gdk_font_list_free(). On X11, will just be wrappers to
17068         XListFonts() and XFreeFontNames(). On Win32, the code previously
17069         in gtkfontsel.c is now here.
17070
17071         New function gdk_font_xlfd_create(). On X11 will get the FONT
17072         property of the font (for GDK_FONT_FONTs), or call
17073         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
17074         builds a XLFD style name from the font information in the LOGFONT
17075         struct(s).
17076
17077         New function gdk_font_xlfd_free(), which correspondingly frees the
17078         string returned by gdk_font_xlfd_create().
17079
17080         Implement fontsets on Win32. Add a function that iterates over a
17081         wide char string and calls a callback function for each substring
17082         of wide chars from the same Unicode subrange (and thus probably
17083         available in the same real font).
17084
17085         Improve the XLFD emulation a bit.
17086
17087         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
17088
17089         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
17090         Beta3, WM_IME_CHAR messages don't seem to contain the composed
17091         multi-byte char as with the Active IMM on Win9x. Oh well, handle
17092         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
17093         ImmGetCompositionStringW() to get the composed Unicode chars.
17094
17095         * gdk/win32/gdkgc.c
17096         * gdk/win32/gdkdraw.c: Changes needed because of the font private
17097         struct changes.
17098
17099         * gdk/win32/gdk.def: Add the new functions.
17100
17101 1999-11-04  Tor Lillqvist  <tml@iki.fi>
17102
17103         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
17104         get the Platform SDK to get <dimm.h>.
17105
17106         * gdk/win32/gdkevents.c: More event handling fixes and
17107         simplification. Never generate motion events with is_hint true. We
17108         used to do that on bogus grounds earlier. Windows sends
17109         WM_MOUSEMOVE messages on button events even if the mouse hasn't
17110         moved, ignore these.
17111
17112         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
17113
17114         * gdk/win32/gdkglobals.c
17115         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
17116         the TrackMouseEvent function, and use it.
17117
17118         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
17119         char before calling WideCharToMultiByte in order to get a string
17120         for the window title.
17121
17122         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
17123
17124         * gdk/win32/gdk.def: Remove obsolete functions.
17125
17126         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
17127         /nodefaultlib and /defaultlib switches.
17128
17129         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
17130
17131 1999-10-31  Tor Lillqvist  <tml@iki.fi>
17132
17133         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
17134         EuroSign).
17135
17136         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
17137         same type as GdkWChar, especially on Win32.
17138
17139         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
17140
17141         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
17142         before passing to Windows GDI for drawing etc. Convert to the
17143         system default codepage before passing to Windows as window
17144         titles.
17145
17146         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
17147         support changing input locale on the fly.
17148
17149         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
17150         on-the-fly changes. Convert incoming characters from the current
17151         codepage to Unicode (and then to a UTF-8 multi-byte string) based
17152         on the current input language. Use keysym<->Unicode mapping tables
17153         and functions borrowed from xterm sources.
17154
17155         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
17156         editions of Win9x, use the ActiveX-based Active IMM (Input Method
17157         Manager) if available. IMEs and the Active IMM are available under
17158         the disguise of Chinese, Korean and Japanese support for IE and
17159         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
17160         support is present in all editions (as long as you install it).
17161
17162         Call DispatchMessage from gdk_events_queue() (and thus
17163         gdk_WindowProc()), instead of duplicating the code in
17164         gdk_WindowProc().
17165
17166         Reworked the grab handling and propagation code, factored out
17167         duplicated code snippets into separate functions. Other cleanups,
17168         too.
17169
17170         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
17171         the <dimm.h> header describing the Active IMM.
17172
17173         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
17174         just do the same as for "single" fonts.
17175
17176         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
17177         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
17178         the new keysyms from gdkkeysyms.h.
17179
17180         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
17181         fontset, so that gtkentry uses wide characters.
17182
17183         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
17184         GTk+'s system directory "gtk+", not "gtk".
17185
17186 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
17187
17188         * docs/gtkfaq.sgml: FAQ update
17189
17190 1999-10-21  Tor Lillqvist  <tml@iki.fi>
17191
17192         * gdk/win32/gdkprivate.h: Add more font private data.
17193
17194         * gdk/win32/gdkfont.c
17195         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
17196         fonts and strings. Now works much better. You still have to
17197         have a correct font selected, though. No fontset emulation yet.
17198
17199 1999-10-19  Tor Lillqvist  <tml@iki.fi>
17200
17201         * gtk/maketypes.awk: Use G_OS_WIN32.
17202
17203         * gtk/gtk.def: Add some missing entry points. Also some non-public
17204         ones, but PyGTK porter claims to need them.
17205
17206         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
17207         built-in type generation.
17208
17209 1999-10-14  Tor Lillqvist  <tml@iki.fi>
17210
17211         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
17212         GDK_FONT_FONT fonts (which is all we have for now, we don't
17213         emulate fontsets). The X11 version uses plain XDrawString in that
17214         case, too. The string passed to gdk_draw_text_wc seems to be in
17215         fact (at least, when used by gtkentry and gtktext) either in a
17216         single-byte charset, or a DBCS. Not Unicode.
17217
17218         This fixes the problem in gtkfontsel, where even if you had
17219         selected a font with a non-Latin1 charset (windows-greek, for
17220         instance), the preview still used Latin-1 glyphs.
17221
17222         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
17223         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
17224         (gdk_font_load): Recognize the demibold etc weights, even if we
17225         don't have the corresponding constants in the headers.
17226         (gdk_font_hash_insert): Use same hash mechanism as in the X11
17227         version. Should save font resources a bit, when we don't have
17228         multiple HFONTs for the same font.
17229
17230         * gdk/win32/gdkprivate.h: Add the names field as in the X11
17231         version.
17232
17233 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
17234
17235         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
17236         X values
17237
17238 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
17239
17240         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
17241         layout support (as mentioned on
17242         http://www.jcinteractive.com/gnome-ui/software/widgets/)
17243
17244 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
17245
17246         * gtk/fnmatch.c
17247         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
17248
17249 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
17250
17251         * configure.in (ALL_LINGUAS): Added Galician (gl)
17252
17253 1999-10-05  Tor Lillqvist  <tml@iki.fi>
17254
17255         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
17256
17257         * gdk/win32/gdkcompat.c: New file, actually provide an
17258         implementation for the deprecated functions. (Just temporarily.)
17259
17260         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
17261
17262         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
17263
17264         * gdk/win32/gdk.def gtk/gtk.def: Updates.
17265
17266 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
17267
17268         * configure.in: Added "uk" to ALL_LINGUAS.
17269         
17270 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
17271
17272         * configure.in: correct checking for BeOS check
17273
17274         * gdk/gdktypes.h
17275         * gtk/fnmatch.c
17276         * gtk/gtkfilesel.c
17277         * gtk/gtkitemfactory.c
17278         * gtk/gtkmain.[ch]
17279         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
17280
17281 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17282
17283         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
17284         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
17285         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
17286         by Bulgarian). 
17287
17288 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
17289
17290         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
17291         Fix a reference to window_private->destroyed.   
17292
17293         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
17294         (ugly) setting of an internal GdkWindow member to use
17295         a _slightly_ cleaner macro.
17296
17297         * gdk/gdkprivate.h: Split GdkWindowPrivate into
17298         GdkDrawablePrivate and GdkWindowPrivate.
17299         Add extra macros for accessing GDK_DRAWABLE_ components.
17300
17301         * *.[ch]: Massive adjustments for the above, use the
17302         new macros in a lot of places.
17303
17304 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
17305
17306         * gdk/gdktypes.h: Make GdkDrawable the base type,
17307         not GdkWindow.
17308
17309 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
17310
17311         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
17312
17313 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
17314
17315         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
17316
17317 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
17318
17319         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
17320         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
17321
17322         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
17323
17324         * docs/gtk-config.1: Now autogenerated.
17325         * docs/Changes-1.4.txt: started
17326         
17327 1999-10-03  Tor Lillqvist  <tml@iki.fi>
17328
17329         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
17330         to #ifdef also here.
17331
17332         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
17333         Owen did to the X11 backend.
17334
17335         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
17336         ScrollWindowEx when blitting inside a window, it can't be correct
17337         in the general case.
17338
17339         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
17340         WM_GETMINMAXINFO is easier.
17341
17342         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
17343         depth equal to the bitspixel value, not the visual's depth.
17344
17345         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
17346         to 24 even if the bitspixel value is 32.
17347
17348         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
17349         need to check for depth==32 when bpp==32, depth will always be 24.
17350
17351 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
17352
17353         * docs/Changes-1.4.txt: Started
17354         
17355         * gtk/Makefile.am (gdk_headers): Include all the new headers.
17356
17357         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
17358         
17359         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
17360         into C file.
17361         
17362         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
17363         header to gdkinputprivate.h.
17364
17365         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
17366         unused since before 1.2.
17367
17368 1999-09-30  Tor Lillqvist  <tml@iki.fi>
17369
17370         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
17371         expand possible hex escapes in the font family (put there by
17372         logfont_to_xlfd if the font name isn't a legal XLFD font family,
17373         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
17374         On Win32, add hex escapes here, too.
17375
17376 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
17377
17378         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
17379         to #ifdef GDK_WINDOWING_X11.
17380
17381 [ Merges from gtk-1-2 ]
17382
17383 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
17384
17385         * configure.in: fixed "GNU Make" check to pass with new make version
17386         3.77.95.
17387
17388 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
17389
17390         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
17391         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
17392         AM_PATH_GTK() macros don't get confused by the -pre1.
17393
17394 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17395
17396         * configure.in (REBUILD): Change check for perl5
17397           to check explicitely for v >= 5.002. (5.001
17398           does not work with our scripts.)
17399
17400 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
17401
17402         * configure.in: evaluate $PERL for the perl version check. added
17403         --disable-rebuilds to give the user an option to completely disable
17404         any source autogeneration rules.
17405
17406 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
17407
17408         * configure.in: evaluate $ac_make when checking for GNU Make.
17409
17410 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17411
17412         * docs/Makefile.am: added generation.txt.
17413
17414         * Makefile.am: require automake 1.4, build README from README.in and
17415         INSTALL from INSTALL.in in dist-hook.
17416         
17417         * README.in:
17418         * INSTALL.in: new files to autogenerate README and INSTALL from.
17419
17420         * configure.in: figure whether we have GNU Make
17421
17422         * docs/generation.txt: minor additions/corrections.
17423
17424 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17425
17426         * docs/gtkfaq.sgml: FAQ Update
17427
17428 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17429         
17430         * configure.in: Fix autoconf warnings about cross compilation by
17431         trying to provide sane defaults for AC_TRY_RUN.
17432
17433 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
17434
17435         * ltconfig
17436         * ltmain.sh: upgrade to libtool 1.3.3
17437
17438 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17439
17440         * INSTALL: Indicate that the --with-glib= configure
17441         time flag is unsupported.
17442
17443 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
17444
17445         * docs/generation.txt: Added a file that gives
17446         documenation about the autogeneration process for
17447         various autogenerated files.
17448         
17449 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17450
17451         * configure.in (LIBS): Look for libgmodule in the
17452         right location.
17453
17454 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
17455
17456         * docs/gtk_tut.sgml: Removed references to
17457         code examples in my directory on gtk.org as
17458         they should all be in the tutorial now.
17459
17460         * docs/gtk_tut.sgml: Added sources for dial-test
17461         and scribble-xinput programs that were previously
17462         missing.
17463
17464 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
17465
17466         * TODO: Added entry about menu keyboard navigation, removed
17467         some finished items.
17468
17469 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
17470
17471         * acinclude.m4: Standardize on func_dgettext
17472         not func_gettext, so that the checks for dgettext
17473         actually are paid attention to.
17474
17475 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
17476
17477         * configure.in (LIBS): Add $INTLLIBS into $LIBS
17478         directly, rather than repeating the checks for
17479         gettext.
17480
17481         * INSTALL: Added information about gettext and
17482         NLS support.
17483
17484         * acinclude.m4 (LIBM): Check for dgettext, not
17485         just gettext. This should hopefully fix things wrt
17486         systems with old versions of GNU gettext installed.
17487
17488 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17489
17490         * configure.in (LIBS): Look for libgmodule in the
17491         right location.
17492
17493 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17494
17495         * autogen.sh: add --enable-maintainer-mode
17496
17497         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
17498
17499 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
17500
17501         * docs/gtk-config.1.in:
17502           docs/Makefile.am:
17503           configure.in: gtk-config is now generated.
17504
17505         * docs/gtk-config.1: Removed, now generated.
17506
17507 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
17508
17509         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
17510         handle CreateNotify itself, still put out a debuging message for
17511         --gdk-debug=events. made the ReparentNotify debugging message more
17512         verbose.
17513         wrap xcoords translation for ConfigureEvents into an error trap,
17514         a destroy event may already be pending, and in that case, the
17515         actuall coordinate values are not at all critical.
17516
17517 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
17518
17519         * gdk/gdkcc.c: Stop leaking the color_hash all over
17520         the place. Simplify and improve the logic.
17521
17522 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17523
17524         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17525         for prototypes and function implementations consistent (reported
17526         by Tomas Ogren).
17527
17528 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17529
17530         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17531         send_event set in debugging output.
17532         (gdk_compress_exposures): default initialize the event so we don't
17533         operate on bogus values (namely send_event).
17534
17535 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17536
17537         * gdk/gdkwindow.c: When we receive an unexpected
17538         destroy notify on one of our windows, don't just
17539         warn about it, also mark our windows as destroyed.
17540
17541 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17542
17543         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17544           name => font and name => fontset hashes. The 
17545           name => fontset hash is a _big_ win since we
17546           weren't previously caching fontsets at all and loading
17547           fontsets is expensive. The name => font hash
17548           is less of a win, but it does save us from doing
17549           repeated XQueryFont calls on the same font.
17550
17551         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17552           list so we can remove font/fontset from hash.
17553
17554 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17555
17556         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17557           and slightly confusing test. [ XInternAtom (,,TRUE)
17558           will never return None ].
17559
17560 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17561
17562         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17563           gdk/gdkwindow.c (gdk_window_set_hints):
17564
17565         Don't omit setting the properties if flags == 0 -
17566         there may be an existing set of properties there
17567         already. (Very old bug. Would it be better to
17568         delete the property instead?)
17569
17570         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17571           spelling error in comment.
17572
17573 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17574
17575         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17576           to avoid stomping over gdk_error_warnings.
17577
17578         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17579           as (bits_per_pixel + 7) / 8. This gives the same
17580           result as before for multiples of 8, but actually
17581           a "reasonable" value for 1bit or 4bit displays.
17582
17583 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17584
17585         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17586         GNU Make.
17587
17588 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17589
17590         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17591         discarding configure events.
17592
17593 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17594
17595         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17596         refcount is greater than zero.
17597
17598         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17599
17600         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17601
17602         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17603
17604         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17605
17606 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17607
17608         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17609         that format 32 => sizeof(item) == 4. It really is
17610         sizeof(long).
17611
17612 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17613
17614         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17615         core dump at all on X IO errors, only core dump
17616         if --enable-debug for X errors.
17617
17618 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17619
17620         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17621         unknown window:" message. disabled ConfigureNotify discarding code,
17622         because it led to events being processed out of order.
17623
17624 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17625
17626         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17627
17628         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17629         we export this function, supress error warnings and don't reset the
17630         error code in the first half of this function.
17631
17632         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17633         code (instead of just -1) so gdk_error_trap_pop() reveals something
17634         actually informative about the error that happened.
17635
17636         * gdk/*.c:
17637         don't rely on gdk_error_code being -1 if an error occoured, but just
17638         gdk_error_code != 0.
17639
17640 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17641
17642         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17643         pointer *before* invoking the filter function, so we at least don't
17644         crash if a filter is removed that is currently executed. window filters
17645         *really* need to be made truely reentrant at some point.
17646
17647 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17648
17649         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17650         PropertyNotify debug messages.
17651
17652 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17653         
17654         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17655         
17656         * gdk/gdkim.c: Fix cut-and-paste errors for 
17657         x/y and PreeditAttributes/StatusAttributes.
17658
17659 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17660
17661         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17662         G_MAXINT to 2^16 to alleviate overflow problems in
17663         various window managers.
17664
17665 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17666
17667         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17668         for fontsets.
17669
17670 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
17671
17672         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
17673         Initialize size_hints.x and size_hints.y because kwm
17674         brokenly pays attention to them.
17675         (Bug #1181 -  Lars Heete <hel@admin.de>)
17676
17677 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
17678
17679         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
17680         return value of gdk_list_visuals(). 
17681         (Bug #1193 - Morten Welinder <terra@diku.dk>)
17682
17683 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
17684
17685         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
17686         XSetIMValues to (void *) when comparing to NULL, to workaround
17687         the problem of some compilers barfing since older X headers don't
17688         have the prototype for it.
17689
17690 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
17691
17692         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
17693         for pseudocolor where colormap->colors was double
17694         allocated.
17695
17696         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
17697         color value in the hash table with the pixel filled
17698         in so when we do later hash table lookups, the color
17699         value is correct.
17700         
17701 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
17702
17703         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
17704         making the call
17705
17706 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
17707
17708         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
17709         pointed out by Morten Welinder <terra@diku.dk>.
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 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17717
17718         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17719           default filter from the list
17720
17721 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
17722
17723         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
17724
17725         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
17726         g_strdup_printf instead of calcing the length separately
17727
17728 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
17729
17730         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
17731         that we don't do in many other places. (Fixing duplicate 
17732         #include of config.h)
17733
17734         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
17735         Otherwise, #ifndef XINPUT_NONE check in the latter
17736         doesn't work. (Bug #546)
17737
17738 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
17739
17740         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
17741         "None" case insensitive.
17742
17743 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17744
17745         * gdk/gdkselection.c: 
17746         Add error traps so if the other end of the connection
17747         dies, we survive.
17748
17749 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17750
17751         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
17752         dest_xid field into two fields - one for the window
17753         to send in messages, one to indicate the last looked
17754         up window for caching purposes. This is needed, so
17755         that Leave messages get the correct window.
17756
17757 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
17758
17759         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
17760         Fix warning created by people mucking around
17761         with the gsource API.
17762
17763         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
17764         Change mapping between GIOCondition and GdkInputCondition
17765         to match the way the Linux kernel does it. This should
17766         fix problems where closed pipes were no longer signalling
17767         GDK_INPUT_READ on systems with a native poll().
17768
17769 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
17770
17771         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
17772         explicitly for the string "None" - it is in the XPM
17773         spec and some servers treat unknown colors in odd ways
17774         (like asking the user!)
17775
17776 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17777
17778         * gdk/gdkevents.c: made "->" into a "." of previous change so
17779         it compiles
17780
17781 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
17782
17783         * gdk/gdkevents.c (gdk_compress_exposures): Set the
17784         window field of the event structure before calling
17785         user filters.
17786
17787 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17788
17789         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
17790         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
17791
17792 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
17793
17794         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
17795         intermediate text property - prevents major memory
17796         leak when gdk_use_mb.
17797         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
17798
17799 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17800
17801         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17802         gtk-a-higuti-990322-[0-3]
17803
17804         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
17805         sizeof(wchar_t) != sizeof (GdkWChar)
17806
17807         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17808         that was causing -DX_LOCALE not to work.
17809
17810         * gtk/gtkrc.c (gtk_rc_init):
17811         X_LOCALE will never have LC_MESSAGES defined
17812
17813         * gdk/gdk.c (gdk_init_check):
17814         Remove --xim-preedit and --xim-status from argv properly.
17815
17816         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
17817         that the client window is present on the X server
17818         before we pass it to the input method.
17819
17820 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17821
17822         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
17823         if --display is specified on the command line, than
17824         the drag window will not be created on that display.
17825         
17826 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
17827
17828         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
17829         lookups with only_if_exists == TRUE were inserting
17830         bogus values into the atom cache.
17831
17832 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17833
17834         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
17835         then reset it to NULL.
17836
17837         * gdk/gdkcolor.c:
17838         (gdk_colors_free): 
17839         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
17840         key for g_hash_table_remove() in both functions, this prevents us
17841         from accessing possibly uninitialized portions of a GdkColor structure
17842         where we are only interested in its pixel value.
17843
17844 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17845
17846         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17847         font hash table, if we have a GdkFontPrivate entry for this font
17848         already, simply increment its reference count, provided by Olaf Dietsche
17849         <olaf.dietsche+list.gtk@netcologne.de>.
17850
17851 1999-09-21  Tor Lillqvist  <tml@iki.fi>
17852
17853         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
17854         just to be sure.
17855
17856         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
17857         unused variables, leftovers from the X11 version.
17858
17859         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
17860
17861         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
17862         downcase fields on X11.
17863
17864 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17865         
17866         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
17867         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
17868
17869 1999-09-17  Tor Lillqvist  <tml@iki.fi>
17870
17871         * gdk/win32/gdk.def: Add gdk_threads_mutex.
17872
17873         * gtk/makefile.msc: Correct path to libintl.
17874
17875         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
17876         use of gint vs. int, and gint vs. gboolean in headers and
17877         definitions. Use GtkType for the *_get_type functions. Note that
17878         these changes preserve binary compatibility.
17879
17880         * gdk/gdk.c
17881         * gdk/win32/gdk.c
17882         * gdk/gdk.h: Fix inconsistencies: gint vs int.
17883
17884         * gtk/gtkmain.c
17885         * gtk/gtkclist.c
17886         * gtk/gtkmenufactory.c
17887         * gtk/gtknotebook.c
17888         * gtk/gtkwidget.c: Fix inconsistencies, also gint
17889         vs. gboolean.
17890
17891         * gtk/gtkcolorsel.[ch]
17892         * gtk/gtkcombo.[ch]
17893         * gtk/gtkdrawingarea.[ch]
17894         * gtk/gtkgamma.[ch]
17895         * gtk/gtkhandlebox.[ch]
17896         * gtk/gtkhpaned.[ch]
17897         * gtk/gtkhruler.[ch]
17898         * gtk/gtkplug.[ch]
17899         * gtk/gtkpreview.[ch]
17900         * gtk/gtkruler.[ch]
17901         * gtk/gtksocket.[ch]
17902         * gtk/gtkstatusbar.[ch]
17903         * gtk/gtktoolbar.[ch]
17904         * gtk/gtkvbbox.[ch]
17905         * gtk/gtkvpaned.[ch]
17906         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
17907         functions.
17908
17909         * gtk/gtkgamma.h: Fix bug, missing () in call of
17910         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
17911
17912 1999-09-14  Tor Lillqvist  <tml@iki.fi>
17913
17914         * gdk/gdkcolor.c (gdk_colormap_new)
17915         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
17916         colormap->colors was allocated twice.
17917
17918         * gdk/win32/gdk.c: Remove some unused stuff.
17919
17920         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
17921         colormap.
17922
17923         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
17924         * gtk/gtklabel.h (gtk_label_get_type)
17925         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
17926         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
17927         in a couple of places, not guint.
17928
17929 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17930
17931         * configure.in,po/et.po: added Estonian language file
17932
17933 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
17934
17935         * configure.in,po/da.po: added Danish file
17936
17937 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
17938
17939         * docs/gtkfaq.sgml: Minor FAQ Update
17940
17941 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
17942
17943         * docs/gtkfaq.sgml: FAQ update
17944
17945 1999-08-27  Tor Lillqvist  <tml@iki.fi>
17946
17947         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
17948         way to get window contents continually refreshed while resizing. I
17949         didn't like the effects myself, so it's not on by default.
17950
17951         * gdk/win32/gdkprivate.h: New flag variable
17952         gdk_event_func_from_window_proc, FALSE by default.
17953
17954         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
17955         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
17956         are passed --gdk-event-func-from-window-proc.
17957
17958         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
17959         and we have am event_func, call it instead of enqueing the event.
17960
17961 1999-08-23  Tor Lillqvist  <tml@iki.fi>
17962
17963         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
17964         Kelley: Set expose_count in GdkEventExposes correctly.
17965
17966         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
17967         MULTIPLE_WINDOW_CLASSES).
17968
17969         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
17970         for bug in NT, apparently NT *does* draw the end pixel, too, in
17971         LineTo with a one-pixel pen, so we don't have to do it ourselves.
17972
17973 1999-08-21  Tor Lillqvist  <tml@iki.fi>
17974
17975         Improvements by Hans Breuer: 
17976
17977         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
17978
17979         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
17980         CS_?REDRAW flags as they cause lots of (late) redraws when "show
17981         window contents while dragging" is turned on. Allocate at least
17982         one unique class for every GdkWindowType. If support for single
17983         window-specific icons is ever needed (eg. Dialog specific), every
17984         such window should get its own class.
17985
17986 1999-08-19  Tor Lillqvist  <tml@iki.fi>
17987
17988         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
17989         error that caused crashes.
17990
17991 1999-08-17  Tor Lillqvist  <tml@iki.fi>
17992
17993         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
17994         window, use ScrollWindowEx, and call UpdateWindow. This prevents
17995         bugs when for instance part of the window was outside the
17996         display. Thanks to Philippe Colantoni for finding and fixing this.
17997
17998 1999-08-16  Tor Lillqvist  <tml@iki.fi>
17999
18000         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
18001         endpoint calculations which were totally wrong. (A little RTFMing
18002         helps a lot ;-)
18003
18004         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
18005         from a separate directory, not from gettext, because of licensing
18006         issues (we want to use the LGPL version).
18007
18008         * README.win32: Mention the intl from glibc vs from gettext issue.
18009
18010 1999-08-13  Tor Lillqvist  <tml@iki.fi>
18011
18012         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
18013         in the key event handling: Now AltGr chars work again. Also,
18014         now Alt-digits are passed up as well as Control-digits.
18015         Pass keypad plus and minus as normal plus and minus.
18016
18017 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18018
18019         * docs/gtkfaq.sgml: FAQ Update
18020
18021 1999-07-25  Tor Lillqvist  <tml@iki.fi>
18022
18023         * README.win32
18024         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
18025         the Wintab SDK.
18026
18027         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
18028         OK, but getting closer. Guard against bogus tilt data from Wacom
18029         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
18030         enable easier building without Wintab.
18031
18032         * gdk/win32/gdkinput.h
18033         * gdk/win32/gdkevents.c 
18034         * gdk/win32/gdkwindow.c: Minor changes related related to above.
18035         
18036         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
18037         code. As we have just one visual on Win32, no sense to have it in a
18038         table, and no need for the hash table.
18039
18040         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
18041         better on white background.
18042
18043 1999-07-21  Tor Lillqvist  <tml@iki.fi>
18044
18045         * README.win32: Update gcc build instructions. Mention gettext is
18046         GPL.
18047
18048         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
18049         supported cursor size with GetSystemMetrics.
18050
18051         * gdk/win32/gdkfont.c
18052         * gtk/gtkfontsel.c: Guard against some font weight and charset
18053         symbols being undefined (in mingw32 headers).
18054
18055         * gdk/win32/makefile.cygwin
18056         * gtk/makefile.cygwin
18057         * gtk/gtkthemes.c: No longer need to have differently named
18058         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
18059
18060 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
18061
18062         * docs/gtkfaq.sgml: Long awaited FAQ update.
18063
18064 1999-07-15  Tor Lillqvist  <tml@iki.fi>
18065
18066         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
18067         it. Obscure bit manipulation needed.
18068
18069         * gdk/win32/gdkevents.c: Logging.
18070         
18071         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
18072         style (file name include compiler name) for theme engines.
18073
18074 1999-07-13  Tor Lillqvist  <tml@iki.fi>
18075
18076         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
18077
18078         * gdk/win32/gdkevents.c: Fix long-standing bug in key
18079         events. The key.string wasn't zero-terminated, still we strdup'ed
18080         it in gdk_event_copy(). Synthesize crossing events for button
18081         events before possible propagation.
18082
18083         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
18084
18085         * gdk/win32/makefile.cygwin
18086         * gtk/makefile.cygwin: Use new DLL naming style for the
18087         GCC-compiled ones.
18088
18089         * gdk/win32/makefile.msc
18090         * gtk/makefile.msc: Cosmetics mostly.
18091
18092         * gtk/gtk.def: Add missing entry points.
18093
18094         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
18095
18096 1999-07-09  Tor Lillqvist  <tml@iki.fi>
18097
18098         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
18099         or height is zero. Don't print a warning if Pie or Arc fails, they
18100         always fail (?) for very narrow ellipses.
18101
18102         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
18103         the part or the destination window corresponding to source area
18104         outside of the source drawable's boundary.
18105
18106         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
18107         anything if less than two points.
18108
18109         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
18110         return NULL. Gtk cut-and-paste inside a single program works
18111         better this way. (It always gets the clipboard contents from
18112         Windows, not from its own copy, which is cleared anyway. I can't
18113         say I fully understand what happens... Emulating the X selection
18114         and property stuff is a bit of a mess.)
18115
18116         * gdk/win32/gdkevents.c
18117         * gdk/win32/gdkproperty.c: A bit more verbose logging.
18118
18119         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
18120         that never got deleted). Revamp gdk_region_shrink.
18121
18122         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
18123         after use.
18124
18125         * gtk/gtk.def: Add some missing entry points.
18126
18127         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
18128         component.
18129
18130 1999-07-04  Tor Lillqvist  <tml@iki.fi>
18131
18132         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
18133         Control-digits specially.
18134
18135 1999-07-03  Tor Lillqvist  <tml@iki.fi>
18136
18137         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
18138
18139 1999-06-28  Tor Lillqvist  <tml@iki.fi>
18140
18141         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
18142         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
18143         finding this.)
18144
18145 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
18146
18147         * gtk+.spec.in: Corrected some typos in files section.
18148         
18149 1999-06-15  Tor Lillqvist  <tml@iki.fi>
18150
18151         * README.win32: Mention using GNU gettext.
18152         * config.h.win32: Enable NLS stuff.
18153         * gtk/makefile.msc: Use GNU gettext.
18154         * gdk/win32/gdkdnd.c: Minor header reorg.
18155         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
18156         cosmetics.
18157         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
18158         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
18159
18160 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
18161
18162         * acinclude.m4
18163         * config.guess
18164         * config.status
18165         * ltconfig
18166         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
18167
18168 1999-05-30  Tor Lillqvist  <tml@iki.fi>
18169
18170         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
18171         SafeAdjustWindowRectEx. Don't override all calls to
18172         AdjustWindowRectEx by it, but use it only in two places: When
18173         creating a new top-level window and when moving a top-level
18174         window.
18175
18176         Use screen coordinate rectangle, not client rectangle, in
18177         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
18178         when we try to place a window so that the decoration (mainly,
18179         title bar) isn't visible.
18180
18181         These changes fix the bug that showed up for instance as the
18182         GIMP's saved top-level windows moving right and down (by an amount
18183         equal to the window decoration) for each session. This bug showed
18184         up also in testgtk's "Saved Position".
18185
18186         gdk_window_resize also redone a bit.
18187
18188 1999-05-25  Tor Lillqvist  <tml@iki.fi>
18189
18190         * gtk/testgtkrc: Add (commented out) Windows-style theme
18191         include line.
18192
18193         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
18194
18195 1999-05-18  Tor Lillqvist  <tml@iki.fi>
18196
18197         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
18198         gdkx.h to a gdk subdirectory, so that applications can include
18199         these with <gdk/*.h> without trouble.
18200
18201         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
18202         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
18203         have their bitmap destroyed.
18204
18205         * gdk/win32/gdk.def: Add gdk_root_parent.
18206
18207 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
18208
18209         * configure.in
18210           gtk-config.in
18211           ltconfig
18212           ltmain.sh     
18213           gtk/Makefile.am: changes to compile nicely (with xlib) 
18214           on BeOS
18215
18216 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
18217
18218         * acinclude.m4
18219         * config.guess
18220         * config.sub
18221         * ltconfig
18222         * ltmain.sh: upgrade to libtool 1.3
18223
18224 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
18225
18226         * gtk/gtkclist.c:
18227         * gtk/gtkctree.c: merges from gtk-1-2
18228
18229 1999-04-25  Tor Lillqvist  <tml@iki.fi>
18230
18231         Support added for building using a GNU toolchain on Win32,
18232         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
18233
18234         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
18235         * config.h.win32: Changes for gcc.
18236         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
18237         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
18238         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
18239         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
18240         Protect shl stuff unavaiilable with mingw32 headers.
18241         * gdk/win32/gdkevents.c: Fix typo.
18242         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
18243         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
18244         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
18245         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
18246         the mingw32 headers.
18247         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
18248         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
18249         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
18250         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
18251         Test for NATIVE_WIN32, not _MSC_VER.
18252         * gtk/gtkmain.c: No use warning about developer version on Win32,
18253         there aren't any non-developer versions anyhow.
18254         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
18255         * gtk/makefile.msc: Use pthread from another directory. Minor other
18256         changes. 
18257
18258 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18259
18260         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18261           default filter from the list
18262
18263 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
18264
18265         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
18266          when gtk_widget_grab_default() is called for a widget that
18267          is not within a GtkWindow.
18268
18269 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
18270
18271         * docs/gtk_tut.sgml, examples/clist.c: use a
18272           scrolled window in the clist example. Minor
18273           tutorial fixes.
18274
18275 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
18276
18277         * docs/gtk_tut.sgml: Style check from David King
18278           <dking@youvegotmail.net>
18279
18280 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
18281
18282         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
18283         compile with unknown value of GDK_WINDOWING
18284
18285 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
18286
18287         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
18288         after the rule is fired.
18289         (install-exec-local): Install gdkconfig.h only if the contents are
18290         different from the currently installed gdkconfig.h.
18291
18292 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
18293
18294         * gdk/Makefile.am (configexecincludedir): Rename from 
18295         configincludedir so that gdkconfig.h will be installed 
18296         as part of `make install-exec'. 
18297
18298 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
18299
18300         * acinclude.m4
18301         * config.guess
18302         * config.sub
18303         * ltconfig
18304         * ltmain.sh: upgrade to libtool 1.2f
18305
18306         * autogen.sh: libtool is not required to autogen gtk+
18307
18308         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
18309         needed)
18310
18311 1999-03-18  Tor Lillqvist  <tml@iki.fi>
18312
18313         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
18314         declaring gdk variables exported/imported from the DLL. New image
18315         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
18316         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
18317         GDK_DRAG_PROTO_OLE2.
18318
18319         * gdk/gdk.h: Merge in Win32 version: Two new functions,
18320         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
18321         declared only for the Win32 version, but could be in the X11
18322         version as well. (Needed for a Xlib-less gdk_imlib.)
18323         gdk_color_hash should have only one parameter. Declare
18324         gdk_threads_mutex with GDKVAR.
18325         
18326         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
18327         just one parameter.
18328
18329         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
18330         per pixel, not bits.
18331
18332         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
18333         Fetch bpp (which means bits-per-pixel here) from another place on
18334         Win32. Accept also depth==32 (which we might get on Win32) with
18335         bpp==32.
18336
18337         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
18338         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
18339         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
18340         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
18341         in the backend-dependent directory, not in the common gdk
18342         directory.
18343
18344         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
18345         headers.
18346
18347 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
18348
18349         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
18350         want to use the Gtk+ devel version (which is true, and yes - even i am
18351         currently working with the 1.2.x branch). so everyone reading this, you
18352         probably want to issue
18353         cvs checkout -r glib-1-2 glib
18354         and
18355         cvs checkout -r gtk-1-2 gtk+
18356         as your next two comands.
18357
18358 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
18359
18360         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
18361         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
18362
18363         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
18364         file. strongly deprecated the GTK_HAVE_* macros, we provide
18365         GTK_CHECK_VERSION() for people that need to check for certain
18366         Gtk+ versions.
18367
18368         * gtk/gtkcompat.h: removed this from CVS.
18369         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
18370         idea right from the start, it just didn't seem like that back then.
18371
18372 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
18373
18374         * merges from gtk-1-2:
18375
18376 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
18377
18378         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
18379         item factory class has been created.
18380         (gtk_item_factory_parse_rc): likewise.
18381
18382         * gtk/gtkmenu.c:
18383         keep proper references for old_active_menu_item.
18384         (gtk_menu_reparent): unset the usize of the new parent,
18385         so the menu can sanely be size requested and we don't get nasty screen
18386         artefacts upon next reparentation.
18387         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
18388         enter notify. only synthesize enter notifies if the pointer really is
18389         inside the event window.
18390         (gtk_menu_popdown): use gtk_menu_shell_deselect().
18391         (gtk_menu_popup): move the background setting stuff into
18392         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
18393
18394         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
18395         gtk_menu_shell_select_item() to select the new item.
18396         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
18397         do the right thing for deselection as well.
18398
18399 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
18400
18401         * gtk/gtkwidget.[hc]:
18402         (gtk_widget_accelerators_locked): return whether a widget's accelerators
18403         are locked.
18404
18405         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
18406         existing accelerators if the widget's accelerators are locked.
18407
18408 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
18409
18410         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
18411
18412         * gtk/gtkmenu.c: truely forward key press and key release events to
18413         the menu widget from the toplevel or tearoff window. we can't simply
18414         connect to that, we need to stop further processing of the events as
18415         well.
18416
18417 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
18418
18419         * gtk/gtkmenu.c:
18420         (gtk_menu_key_press): pass event->keyval, event->state to
18421         gtk_accelerator_valid, instead of event->keyval twice.
18422         refuse to install single letter accelerators for menus that use
18423         single letter shortcuts.
18424
18425         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
18426         gtk_menu_ensure_uline_accel_group().
18427
18428         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
18429         which will always return an uline accel group, made
18430         gtk_menu_get_uline_accel_group() return NULL if the group isn't
18431         yet created.
18432
18433 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
18434
18435         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
18436
18437         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18438         Leave button sensitive, trap  button_press, button_release,
18439         motion_notify, enter_notify and leave_notify events instead.
18440         (gtk_clist_column_title_active): disconnect event handler.
18441         (gtk_clist_drag_data_get): fixed memory leak. Reported by
18442         Guillaume Laurent <glaurent@worldnet.fr>
18443
18444 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
18445
18446         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
18447         width/height mixups.
18448
18449         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
18450         if needed.
18451
18452 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
18453
18454         * gtk/testgtk.c (create_item_factory): unref the item factory after
18455         window's destruction.
18456
18457         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
18458         count on the menu shell around the menu item's activation, since the
18459         signal emission may cause menu shell destruction.
18460
18461         * gtk/gtkitemfactory.c:
18462         the previous code leaked one accel group per menu. we use
18463         gtk_menu_get_uline_accel_group() now to fix that, and with that
18464         also create the underline accelerator group of the menus only if
18465         required (i.e. an underline accelerator has been specified).
18466         (gtk_item_factory_construct):
18467         (gtk_item_factory_create_item): removed code that would create an
18468         extra accel group for the menu (and leak references).
18469         (gtk_item_factory_create_item): adapted the underline accelerator
18470         installation code to properly feature gtk_menu_get_uline_accel_group().
18471
18472         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
18473         menu->accel_group, this may return NULL if the accelerator group
18474         hasn't been set yet.
18475         added gtk_menu_get_uline_accel_group() to retrive the underline
18476         accelerator group of the menu, this will be created on demand
18477         and proper care is taken about its reference count.
18478
18479         * gtk/gtkitemfactory.h:
18480         * gtk/gtkitemfactory.c:
18481         dumped the approach of keeping a widgets by action list on the
18482         factory since the factory<->widget destroy negotiation didn't work
18483         and would be hard to get going at all. instead we keep a list of
18484         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
18485         persistant throughout a program's life time).
18486         also, i removed the static const gchar *key_* variables, and made
18487         them inline strings (they weren't actually used anyways).
18488         (gtk_item_factory_add_item): update ifactory->items.
18489         (gtk_item_factory_destroy): destroy ifactory->items (and remove
18490         the item factory pointer from the remaining ifactory widgets).
18491         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
18492         list to find the widget.
18493         (gtk_item_factory_get_item): new function that works around
18494         gtk_item_factory_get_widget() limitations, this function will only
18495         return menu items, even for <Branch> entries.
18496
18497 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18498
18499         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18500         font hash table, if we have a GdkFontPrivate entry for this font
18501         already, simply increment its reference count, provided by Olaf Dietsche
18502         <olaf.dietsche+list.gtk@netcologne.de>.
18503
18504         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18505         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18506
18507 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
18508
18509         * gtk/gtkcontainer.c:
18510         (gtk_container_add_with_args):
18511         (gtk_container_addv):
18512         (gtk_container_add): before adding a child to a conatiner, make sure
18513         it is (default) constructed, this is neccessary because under certain
18514         circumstances the child will get relized and mapped immediatedly, in
18515         which case it has to be constructed already.
18516
18517 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
18518
18519         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
18520         values > 1 as TRUE also.
18521
18522 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18523
18524         * README.win32: New file.
18525                 
18526         * configure.in: Check for lstat.
18527
18528         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18529         completeness.
18530
18531         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18532
18533         * gtk/gtk.def: Removed CRs.
18534
18535         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18536         ..\gdk\win32).
18537
18538         * gdk/win32/makefile.msc: Correct upwards relative paths.
18539         
18540 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18541
18542         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18543           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18544           it was connecting a void function to expose_event and the int
18545           returning function to the draw signal
18546
18547 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18548
18549         * configure.in:
18550         Use correct path to libgmodule.la when ref'ing uninstalled copy
18551         of glib.  (Already in stable branch, Bug #417)
18552
18553 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18554
18555         Win32 merge and general portability stuff:
18556                 
18557         * acconfig.h,configure.in: Check for <sys/time.h>.
18558
18559         * gdk/win32: New directory (actually, been there for a while).
18560         
18561         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18562         NATIVE_WIN32, and use these. Always case fold on Win32. No
18563         backslashed escapes on native Win32.
18564
18565         * gtk/{gtk.def,makefile.msc}: New files.
18566
18567         * gtk/Makefile.am: Add above new files.
18568         
18569         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18570         instead of <strings.h>.
18571
18572         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18573         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18574         <unistd.h> appropriately.
18575
18576         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18577         Use ABS() (from <glib.h>) instead of abs().
18578         
18579         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18580         of gtk (and thus glib) headers, so that WIN32 will be
18581         defined. With MS C, include <direct.h> for mkdir prototype.
18582
18583         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18584         some casts, needed by MS C.
18585
18586         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18587         implemented).
18588
18589         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18590         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18591         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18592
18593         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18594                 
18595         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18596         the event is not a hint, or its window is not the slider. Needed
18597         on Win32, at least.
18598
18599         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18600         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18601         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18602         a subdirectory of the Windows directory as gtk system
18603         configuration directory.
18604
18605         * gtk/gtkselection.c: No chunks on Win32.
18606
18607         * gtk/gtksocket.c: Not implemented on Win32.
18608
18609         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18610
18611         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18612
18613         * gtk/maketypes.awk: Declare variables with a macro that expands to
18614         necessary export/import magic in the case of Win32.
18615                 
18616         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18617
18618 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18619
18620         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18621         since those were meant only for gdki18n.h.  
18622         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18623         for widechar tests.
18624         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18625
18626 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18627
18628         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18629         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18630
18631         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18632         installed) to CFLAGS.
18633
18634         * gdk/Makefile.am: Add rules for gdkconfig.h.
18635
18636         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18637         APIs.
18638
18639         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18640         gdkx.h anyway when compiling for X11.
18641         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18642         general): Merge in Win32 version.
18643         
18644         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18645         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18646         expansion (if we don't have HAVE_PWD_H), allow for drive
18647         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18648         included code from Craig Setera's port to Win32 (the one that uses
18649         X11, and the cygwin dll), even if it probably will be abandoned.
18650
18651         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18652         the user entered one herself.  This way one can complete *.h and
18653         don't get matches on any .help files, for instance.
18654         
18655 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18656
18657         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18658         font hash table, if we have a GdkFontPrivate entry for this font
18659         already, simply increment its reference count, provided by Olaf Dietsche
18660         <olaf.dietsche+list.gtk@netcologne.de>.
18661
18662         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18663         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18664
18665 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18666
18667         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
18668         the number of calls to gdk_draw_point() (and thus to X) by
18669         clipping the points by hand.
18670
18671         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
18672         the clip parameter.
18673         (gtk_handle_box_paint): Only paint the handle if the expose area
18674         intersects it.
18675
18676 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18677
18678         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
18679
18680 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
18681
18682         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
18683         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
18684
18685 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
18686
18687         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
18688          textmode (O_TEXT) for OS/2 version.
18689
18690 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
18691
18692         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
18693         GtkSpinButton, "input" and "output", to make the output more flexible.
18694         The user has to provide a mapping between adjustment->value and the
18695         output string (and vice versa, if the spin button is editable). 
18696         See testgtk for examples.
18697
18698 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
18699
18700         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
18701         new one.
18702         
18703         * configure.in: set gtk+ version to 1.3.0.