]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Remove spurious const.
[~andy/gtk] / ChangeLog.pre-2-2
1 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4         const.
5
6         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
7
8         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
9         is no focus widget for the dialog currently, grab the focus as well
10         as the default.
11
12         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
13         the action area's children to iterate through, not the
14         dialog's children.
15
16 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
17
18         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
19         Add plug-socket tests. (Won't work worth a darn until I commit
20         the rest of the plug-socket changes, but no reason these
21         can't go into CVS now.)
22
23 2001-03-02  Havoc Pennington  <hp@redhat.com>
24
25         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
26         _gdk_region_get_xrectangles()
27
28         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
29
30         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
31
32         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
33         function, contributed by Ron Steinke    
34
35         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
36         gdk_net_wm_supports
37
38         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
39         New function, contributed by Ron Steinke
40
41         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
42         used to line up the text in the entry when using the entry for
43         editable sheet cell hacks
44
45         * gtk/testgtk.c (create_entry): test the activate_default setting
46         on GtkEntry
47
48         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
49         cause the entry to activate the default button for a dialog when 
50         activated
51         (gtk_entry_get_activates_default): new function
52
53 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
54
55         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
56         Hwang to move call to sync_selection() up a few lines
57         to before the row list is modified, to fix crash when
58         removing rows in the undo_selection list.
59
60         (Test case provided by Daniel Elstner:
61
62         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
63
64 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
65
66         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
67         of tree->root_tree in parent_set rather than _map(), 
68         fixing #50892 in a bit better manner.
69
70 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
71
72         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
73
74 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
75
76         * gtk/gtkstyle.c : Remove duplicate fwd decl for
77         gtk_default_draw_shadow.
78
79 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
80
81         * gdk/gdkimage.c (gdk_image_new): Remove excess 
82         warning, make warnings more verbose, treat a error
83         in shmat as permanent, and don't try again.
84         (#51163, Ed Randall.)
85
86 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
87
88         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
89         delay for the first click before starting to scroll.
90         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
91
92         * gtk/gtktext.c: GtkText should have I-beam cursor. 
93         (based on gtk-enf-990513-1.patch, Eric Fisher.)
94
95 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
96
97         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
98         cleanup to remove some references to unused
99         ->xoffset, ->yoffset.
100
101 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
102
103         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
104         mask. (#51039, fix from Martin Maierhofer)
105
106 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
107
108         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
109         for unshifted + and shifted = for non-us keyboards.
110         Make <Control>+ and <Control>- work as well as 
111         <Control>KP_Plus, <Control>KP_Minus for recursive
112         open/close.  (#2682, RenĂ© Seindal)
113
114 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
115
116         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
117         the active menu item before deactivating the menu,
118         so gtk_menu_popdown doesn't change the history. (#50964)
119         
120 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
121
122         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
123         draw lines with text_gc rather than black_gc.
124         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
125
126 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
127
128         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
129         Move handling of buttons fully in gtktreeviewcolumn.  This code is
130         less interrelated then it was, but it still requires the
131         GtkTreeView to map it.
132
133         * test/testtreecolumn.c: Now I can add a column to one view,
134         remove it, add it to the another view, remove it, then re-add it
135         to the first.  Nifty.
136
137 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
138
139         * docs/tutorial/gtk-tut.sgml: Minor corrections
140
141 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
142
143         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
144         GtkRowReference.
145
146 2001-02-28  Havoc Pennington  <hp@redhat.com>
147
148         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
149         draw_default
150         (gtk_widget_draw_focus): remove this function; we could instead
151         make it just gtk_widget_draw(), but in most cases I think the
152         result would be broken user code, so think it's better to have
153         that code not compile and get fixed
154         (gtk_widget_draw_default): ditto
155
156         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
157         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
158         
159         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
160         widgets lose/get the default, instead of calling draw_default
161         
162         * docs/Changes-2.0.txt: note about all this
163
164         Then fixed every widget in GTK, I won't list all the filenames.
165
166 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
167
168         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
169         _gtk_tree_row_reference_deleted.
170         (inserted_callback): Proxy out to
171         _gtk_tree_row_reference_inserted.
172         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
173         get around signal emission ordering problem.
174
175         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
176         fix to work with SINGLE 
177         (_gtk_tree_selection_internal_select_node): Major sanitization on
178         selections.  SINGLE now seems to work.
179
180         * tests/Makefile.am: add testtreecolumn.c:
181
182         * tests/testtreecolumn.c: New test.  Mostly points out selection
183         bugs currently, but will test columns later.
184
185         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
186         selection bug.  I hate touching this code -- it's scary.
187
188 2001-02-26  Havoc Pennington  <hp@redhat.com>
189
190         * gtk/testgtk.c: test the window state stuff
191
192         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
193         window come to the user's attention as if it were just created
194         (gtk_window_iconify): new function
195         (gtk_window_deiconify): new function
196         (gtk_window_stick): new function
197         (gtk_window_unstick): new function
198         (gtk_window_maximize): new function
199         (gtk_window_unmaximize): new function
200
201         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
202
203         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
204
205         * gdk/x11/gdkevents-x11.c: create window state events when
206         appropriate
207         (gdk_wmspec_supported): new function
208
209         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
210         iconification before showing the window
211         (gdk_window_deiconify): new function
212         (gdk_window_stick): new function
213         (gdk_window_unstick): new function
214         (gdk_window_maximize): new function
215         (gdk_window_unmaximize): new function
216
217         * gdk/gdkwindow.c: store the window state in the window; 
218         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
219         window->mapped.
220         (gdk_window_get_state): return the current window state
221
222         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
223         (gdk_event_get_state): handle GDK_WINDOW_STATE
224         (gdk_synthesize_window_state): function to create the window state
225         events
226
227         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
228         event, for changes to "window state" such as maximized, sticky, 
229         etc.
230         
231         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
232         focuses a window
233
234         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
235         finds out if we support a given WM spec hint
236
237 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
238
239         * docs/faq/gtk-faq.sgml: New question re memory leaks.
240
241 2001-02-25  Hans Breuer  <hans@breuer.org>
242
243         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
244         cause we want to loose those prototypes only in the latter case
245
246         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
247         GdkPixmapImplWin32 because it itsn't derived from it. Use the
248         impl member variable instead
249
250         * gtk/gtk.def : updated
251
252         * gtk/gtklist.c : 
253         * gtk/gtkmenus.c : include <string.h> for memset ()
254
255         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
256         for everthing built here, but for gtk-x.x.dll only. This solves
257         problem of indifferent gtk type definitions
258
259 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>
260
261         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
262
263 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
264
265         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
266         column that is exposed.
267
268         (_gtk_tree_view_update_size): Changed name from set_size, and
269         changed function to do more work, and not force people calling it
270         to figure out the size.  Simplifies a lot of code elsewhere.
271
272 2001-02-23  Alexander Larsson  <alexl@redhat.com>
273
274         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
275         return solid masks for xpms that have no transparent color.
276         This makes the ..._create_from_xpm... API backwards
277         compatible.
278
279 2001-02-23  Tor Lillqvist  <tml@iki.fi>
280
281         * README.win32: Update. Mention the gtk-1-3-win32-production
282         branch.
283
284         * gdk/win32/bdfcursor.c: New file. A program that generates
285         xcursors.h. Thanks to Stefan Ondrejicka.
286
287         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
288         compact format.
289
290         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
291
292         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
293         function, uses xcursors.h.
294         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
295         cursor from inline data instead of using LoadCursor() to generate
296         it from a resource.
297
298         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
299         event, must check the Windows message for mouse button state, as
300         the GDK event state might not have been built if it is
301         undelivered. Remove one goto.
302
303         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
304         SetCursor() if the current cursor as returned by GetCursor() is
305         the window's previous cursor. The ChildWindowFromPoint() test
306         apparently didn't work correctly.
307
308         * gdk/win32/rc/*.cur: Remove.
309
310         * gdk/win32/rc/gdk.rc.in: Remove cursors.
311
312         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
313
314         * gtk/makefile.{mingw,msc}.in: Updates.
315
316 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
317
318         * gtk/gtktreemodel.h: add functions for signal emission.
319
320         * gtk/gtktreestore.c: move to use above functions instead of
321         g_signal_emit.
322
323         * gtk/gtkliststore.c: ditto
324
325 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
326
327         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
328         GObject instead of GtkObject.
329
330         * gtk/gtkliststore.c: ditto.
331
332         * gtk/gtktreemodelsort.c: ditto.
333
334         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
335         GtkTreeModelIface, instead of in each model.
336
337 2001-02-21  Havoc Pennington  <hp@redhat.com>
338
339         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
340         unbreak this function
341
342         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
343         properties
344
345         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
346         properties
347
348         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
349         properties
350
351         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
352         mean unset the max length
353
354 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
355
356         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
357         Changed name to be set_cell_data_func to make it clear what
358         the functino does.  Close bug #51069.
359
360 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
361
362         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
363         have memory actually freed.  Keeps box running longer.
364
365 2001-02-21  Alexander Larsson  <alexl@redhat.com>
366         
367         * gtk/gtkseparatormenuitem.[ch]:
368         Added new menu separator item. The drawing and size handling
369         is still done in GtkMenuItem, but the API is a bit more sane.
370         
371         * gtk/Makefile.am:
372         Add gtkseparatormenuitem.[ch].
373
374         * gtk/gtk.h:
375         Add gtkseparatormenuitem.h.
376         
377         * gtk/gtkentry.c:
378         * gtk/gtkmenufactory.c:
379         * gtk/gtktextview.c:
380         Use the new API for menu separators.
381         
382         * demos/gtk-demo/menus.c (create_menu):
383         Add some GtkSeparatorMenuItem demo code.
384
385 2001-02-20  Havoc Pennington  <hp@redhat.com>
386
387         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
388         Lee Mallabone
389
390         * gtk/gtkarrow.c: Convert to new property API, patch from 
391         Lee Mallabone
392
393 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
394
395         * tests/testtreeview.c (toggled_callback): fix to reflect change
396         in GtkTreeModelStore.
397
398 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
399
400         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
401         function to create an icon set from a pixbuf.
402
403 2001-02-20  Alexander Larsson  <alexl@redhat.com>
404
405         * gtk/gtkcellrenderertext.[ch]:
406         Add a "markup" property.
407
408         * gtk/treestoretest.c:
409         Use the markup property, remove some leftover stuff from
410         GtkTreeModelMapping.
411
412 2001-02-20  Alexander Larsson  <alexl@redhat.com>
413
414         * gtk/gtklabel.c (gtk_label_set_selectable):
415         Queue a redraw if the selectable setting was changed.
416
417 2001-02-20  Alexander Larsson  <alexl@redhat.com>
418
419         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
420         Actually copy the whole gc, not just the public parts.
421         
422         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
423         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
424         labels.
425
426 2001-02-19  Havoc Pennington  <hp@pobox.com>
427
428         * gdk/gdkwindow.c: docs
429
430         * gdk/gdkrgb.c: docs
431
432         * gdk/gdkregion-generic.c: docs
433
434         * gdk/gdkgc.c (gdk_gc_set_values): docs
435
436         * gdk/gdkdraw.c: docs
437
438         * gdk/gdkdrawable.h: deprecate drawable get/set data
439
440 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
441
442         * demos/gtk-demo/dialog.c: Add simple new demo.
443
444 2001-02-19  Havoc Pennington  <hp@redhat.com>
445
446         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
447         insert_child_anchor signal, bug #50245
448
449         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
450         from create_child_anchor, so the anchor is passed in
451
452         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
453         (_gtk_widget_segment_new): have the child anchor object passed in, 
454         instead of creating it.
455
456         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
457         to gtk_text_buffer_get_modified
458
459 2001-02-19  Havoc Pennington  <hp@redhat.com>
460
461         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
462         changed GLib without fixing GTK
463
464         * gtk/gtkrange.h: Rename all the stupid implementation detail 
465         functions to have an underscore in front. Most of them should 
466         probably just go away, but for starters don't export them.
467         Bug #50482
468
469 2001-02-19  Havoc Pennington  <hp@redhat.com>
470
471         * gdk/gdkcolor.h: test was backward, so deprecated functions were
472         excluded by default
473
474         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
475         clean up the old code a bit
476
477         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
478         inconsistent state
479
480         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
481         draw inconsistent state
482
483         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
484         (create_menu): add inconsistent test
485
486         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
487         new function
488         (gtk_check_menu_item_get_inconsistent): new function
489         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
490         state (using etched in for now)
491
492         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
493         draw inconsistent state
494
495         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
496         function, used when the user has selected a range of stuff in
497         different states
498         (gtk_toggle_button_get_inconsistent): accessor for that
499         (gtk_toggle_button_paint): draw inconsistent state (etched in?
500         don't know what else to do)
501
502 2001-02-19  Hans Breuer <hans@breuer.org>
503
504         * gtk/gtk.def : updated exported symbols
505
506         * gtk/makefile.msc.in : updated
507
508         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
509         a colormap, when invoked from testgtk::entry. I'm not sure where
510         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
511         avoids immediate crashing ...
512
513         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
514         any objections ?
515
516         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
517         0 parameter. At least msvc doesn't like macros with var args. 
518         I simply removed the extra 0, was it a feature or a typo ?
519
520         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
521         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
522         because the value assignment to the internal struct wasn't working.
523         I'm not absolutely sure. The problem could have been resolved by
524         changing the "func" declartion in the struct, but was the pointer
525         to the function pointer intended ?
526
527         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
528
529         * gdk/gdk.def : updated exported symbols
530
531         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
532         only use SetDIBitsToDevice if there is a palette at the drawable
533         and the image is GDK_VISUAL_PSEUDO_COLOR
534
535         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
536
537         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
538
539         * gdk/*/makefile.msc : updated
540
541 2001-02-19  Havoc Pennington  <hp@redhat.com>
542
543         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
544         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
545
546         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
547         (gdk_key_repeat_restore): nuke
548
549         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
550         (gdk_init_check): no atexit func
551
552         * gdk/gdkrgb.h: mark some stuff deprecated
553
554         * gdk/gdkcolor.h: mark some stuff deprecated
555         
556         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
557
558         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
559
560 2001-02-16  Havoc Pennington  <hp@redhat.com>
561
562         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
563         scroll steps.
564
565         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
566         steps, and add Ctrl-arrow shortcuts for paging visually as with
567         HScale, since Page Up and Page Down move logically.
568
569         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
570         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
571         
572         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
573         steps
574         (gtk_range_scroll): handle the visual steps
575
576         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
577         scroll steps
578
579         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
580         steps, not the logical ones.
581
582         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
583         (scroll_vertical): handle up/down steps
584
585 2001-02-19 Alexander Larsson  <alexl@redhat.com>
586
587         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
588         Copy data and free data with free().
589
590         * gdk-pixbuf/gdk-pixbuf.c:
591         * gdk-pixbuf/io-jpeg.c:
592         * gdk-pixbuf/io-png.c:
593         Use g_try_malloc/g_free instead malloc/free.
594         
595         * gdk-pixbuf/test-gdk-pixbuf.c:
596         Must... initialize... gobject...
597         
598         * gdk-pixbuf/pixops/timescale.c:
599         * gtk/gtkcalendar.c:
600         Use g_malloc instead of malloc.
601         
602 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
603
604         * gtk/testgtkrc:
605         Comment out property assignments, these don't work yet.
606
607 2001-02-17  Havoc Pennington  <hp@pobox.com>
608
609         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
610         bit.
611
612 2001-02-17  Havoc Pennington  <hp@pobox.com>
613
614         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
615         shadowed variables that had broken size request in some cases,
616         leading to bogus tooltips (#50996)
617
618 2001-02-06  Jon K Hellan  <hellan@acm.org>
619
620         Implement fast browsing of tooltips, bug #50619
621         
622         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
623         and last_popdown
624         
625         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
626         use_sticky_delay and last_popdown.
627         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
628         time of popdown.
629         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
630         is NULL.
631         (gtk_tooltips_recently_shown): New static function.  Return true
632         if < sticky_delay has elapsed since last popdown.
633         (gtk_tooltips_event_handler): Display window after sticky_delay
634         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
635         since last popdown.
636         
637 2001-02-17  Havoc Pennington  <hp@pobox.com>
638
639         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
640         instead of (). #6394
641
642         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
643         G_CONST_RETURN, make it return by reference, #50473
644         
645 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
646
647         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
648         generated ENTER_NOTIFY event with 0, otherwise not explicitely
649         setup fields contain garbage (e.g. subwindow, breaking
650         gdk_drawable_ref() upon event copy).
651         (gtk_menu_stop_navigating_submenu_cb): same here.
652
653         * gtk/gtklist.c (gtk_list_vertical_timeout): 
654         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
655         * gtk/gtkclist.c (vertical_timeout): 
656         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
657         default-zero-intialization for unions to memset(,0,), as unions are
658         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
659         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
660
661         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
662         g_closure_sink() warning.
663
664         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
665         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
666         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
667         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
668         
669 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
670
671         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
672         gtk_*_store_get, and moved to GtkTreeModel.
673
674         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
675
676         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
677
678         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
679
680         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
681         set the func.
682
683         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
684         freeze/thaw notify between setting all the properties for a cell.
685
686         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
687
688 2001-02-15  Havoc Pennington  <hp@redhat.com>
689
690         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
691         the X coordinates so they're with respect to the line, rather than 
692         with respect to the layout.
693
694         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
695         Mallabone
696
697         * gtk/testgtk.c (create_range_controls): add vscale tests, 
698         and inverted test
699
700         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
701         #50806
702
703         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
704
705         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
706         gtk_text_iter_is_end
707
708         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
709         rename gtk_text_buffer_get_end_iter
710
711         * gtk/testgtk.c (create_labels): Add test for selectable
712
713         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
714         the selection stuff. This code is kind of broken since it doesn't 
715         use the theme engine.
716
717         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
718         fix infinite loop and y offset problem
719         (gdk_draw_layout_line_with_colors): fix foreground color handling
720
721         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
722         that makes the label selectable.
723         
724         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
725         layout when the style is set, since fonts etc. could have changed.      
726
727 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
728
729         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
730
731         * gtk/gtktreemodelsimple.[ch]: removed.
732
733 2001-02-16  Alexander Larsson  <alexl@redhat.com>
734
735         * gtk/gtktreemodelmapping.[ch]:
736         New files. Implement GtkTreeModelMapping.
737         
738         * gtk/Makefile.am:
739         Add gtktreemodelmapping.[ch].
740         
741         * gtk/gtk.h:
742         Add gtktreemodelmapping.h
743
744         * gtk/treestoretest.c:
745         Test the GtkTreeModelMapping
746
747 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
748
749         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
750         have a demo, we might as well pass in real values.  Thanks to
751         clahey for pointing this out.
752
753 2001-02-14  Havoc Pennington  <hp@pobox.com>
754
755         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
756         "static" to a private function
757         (gtk_image_menu_item_class_init): remove destroy handler,
758         add "image" object property
759
760 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
761
762         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
763         Add a shortcut if the window and the current clip_region doesn't
764         overlap. This is needed when there are a lot of windows in a
765         window. The layout test in testgtk is a good test.
766
767         * gdk/linux-fb/gdkwindow-fb.c:
768         Whitespace fix.
769
770 2001-02-13  Sven Neumann  <sven@convergence.de>
771
772         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
773
774 2001-02-13  Alexander Larsson  <alexl@redhat.com>
775
776         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
777         Don't reference last_cursor if it is null. Fixes crash when rotating
778         the screen before having moved the mouse.
779
780         * gdk/linux-fb/gdkcc-fb.c: Zapp!
781
782         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
783
784         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
785         when using 90 or 270 degrees rotation.
786
787 2001-02-12  Havoc Pennington  <hp@pobox.com>
788
789         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
790         it always set the foreground, even if we were only using
791         a stipple.
792         (gdk_draw_layout_line_with_colors): new function, allow
793         override colors
794         (gdk_draw_layout_with_colors): new function, allow override
795         colors
796         (gdk_pango_layout_line_get_clip_region): function to get the clip
797         region for a logical text range
798         (gdk_pango_layout_get_clip_region): get the clip region for a
799         logical text range
800
801         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
802         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
803         the right number of arguments.
804
805         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
806         enhance the function to check that node data corresponds to a 
807         view still belonging to the tree.
808
809         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
810         GtkTreePath
811         (gtk_tree_view_inserted): ditto
812         (gtk_tree_view_child_toggled): ditto
813
814         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
815         simplify this code.
816
817         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
818         a PangoAttrList
819
820         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
821
822         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
823
824         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
825         size in the size request 
826         (gtk_menu_bar_size_allocate): consider toggle size here
827
828         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
829         that displays a widget in the toggle slot
830
831         * gtk/testgtk.c: test GtkImageMenuItem
832
833         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
834         
835         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
836         request and allocation
837
838         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
839
840         * gtk/gtkcheckmenuitem.c
841         (gtk_check_menu_item_toggle_size_request): ditto
842         
843 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
844
845         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
846         reference.
847
848         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
849         and refuse to initialize GTK+ if they fail.
850
851 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
852
853         * configure.in: Add check for gtk-doc version.
854
855 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
856
857         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
858         where the xpad/ypad was only being used on one side!
859
860 2001-02-11  Tor Lillqvist  <tml@iki.fi>
861
862         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
863         function, copied from X11 version.
864
865         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
866         DestroyCursor failures. The reason for the problem (despite the
867         inconsistent messages from GetLastError()) was that
868         DestroyCursor() cannot be called while a cursor is set in a
869         window. Set the new cursor first and then destroy the old one.
870         Thanks to jpe@archaeopteryx.com.
871
872         * gdk/win32/gdkcc-win32.c: Remove.
873
874         * gdk/win32/Makefile.am: Remove from here, too.
875         
876         * gdk/gdk.def
877         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
878
879         * gtk/gtk.def
880         * gtk/makefile.mingw.in: Updates.
881
882 2001-02-08  Havoc Pennington  <hp@redhat.com>
883
884         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
885         add a widget to a bin that already has a child.
886
887         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
888
889         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
890         
891         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
892
893         * gdk/gdk.h: remove gdkcc.h
894
895         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
896
897         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
898         GdkPixbuf, since the previous implementation was GdkColorContext
899         dependent.
900
901         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
902         
903 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
904
905         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
906         a sane value!
907
908 2001-02-08  Havoc Pennington  <hp@redhat.com>
909
910         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
911         lighten them.
912
913 2001-02-08  Havoc Pennington  <hp@redhat.com>
914
915         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
916         validation idle
917
918         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
919         cell renderer
920
921         * demos/pixbuf-demo.c (timeout): remove deprecated
922         gtk_widget_draw
923
924         * demos/testpixbuf-save.c (main): remove deprecated
925         gtk_drawing_area_size
926
927         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
928         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
929         at the start of the allocation.
930         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
931         unsetup or NULL model.
932
933         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
934         even/odd/sorted cells in the tree view.
935
936         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
937         bugfixes
938
939         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
940         backgrounds with draw_flat_box using different detail for even/odd
941         rows.
942
943         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
944         row, so we can draw the alternating colors thing
945
946         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
947         property from a synonym property, notify for the synonym.
948         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
949         (gtk_text_tag_get_property): Always return the font, even if
950         all its fields aren't set
951
952         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
953         store the attr list; it leaves us with no way to change attributes
954         in _render according to the render flags, and no way to implement
955         get_property. Instead store all the specific text attributes. 
956         Separate whether an attribute is enabled from its value. Sync all
957         properties with GtkTextTag, make them all consistent, etc.
958
959         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
960         renderers can highlight the sort row/column     
961
962         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
963         accessor functions to get values; this has the side effect of
964         showing up which accessor functions were missing. Added those.
965
966         * gtk/gtktreeviewcolumn.h: Replace set_justification with
967         set_alignment, to be consistent with GtkLabel, GtkMisc
968
969         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
970         arrow.
971
972         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
973
974         * gtk/gtktreesortable.h: updates in here
975
976 2001-02-07  Sven Neumann  <sven@convergence.de>
977
978         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
979         pango dimensions after painting the background. We used to draw
980         gigantic flat boxes here.
981
982 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
983
984         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
985         error introduced with earlier commit) (pointed out by
986         Ollie Lho)
987
988 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
989
990         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
991         which are no longer necessary.
992
993 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
994
995         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
996
997 2001-02-04  Tor Lillqvist  <tml@iki.fi>
998
999         * gdk/gdk.def
1000         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
1001         Provide dummy implementations.
1002
1003 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
1004
1005         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
1006
1007         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
1008         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
1009         deprecated this function.
1010
1011         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
1012         argument.
1013
1014 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
1015
1016         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1017
1018 2001-02-03  Havoc Pennington  <hp@pobox.com>
1019
1020         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1021         Mikael Hermansson with patch from Mikael (if there was a toggle
1022         start one after the first character in the range, this function
1023         was broken). Bug #50380
1024
1025 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
1026
1027         * configure.in: Remove confusing comment about X11.
1028
1029 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
1030
1031         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
1032         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
1033         
1034 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
1035
1036         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
1037         it breaks things on BSD. If you want to compile GTK+ with
1038         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
1039         when configuring, since GTK+ simply can't be "pure ANSI" 
1040         in the header files it uses. (#8170, Greg Hudson)
1041
1042 2001-02-02  Havoc Pennington  <hp@redhat.com>
1043
1044         * gtk/gtkwindow.c: docs
1045
1046         * gtk/gtkwidget.c: docs
1047         (gtk_widget_set_colormap): add a reference to the colormap
1048         (gtk_widget_get_default_colormap): add a reference to the colormap
1049
1050         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
1051
1052         * gtk/gtktextiter.c: docs
1053
1054         * gtk/gtkmain.c (gtk_propagate_event): docs
1055
1056         * gtk/gtkpaned.c (gtk_paned_get_position): docs
1057         (gtk_paned_set_position): docs
1058
1059         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
1060         sort interface, no implementation yet.
1061
1062         * demos/testpixbuf.c (new_testrgb_window): replace
1063         gtk_drawing_area_size() with gtk_widget_set_usize()
1064
1065         * demos/testpixbuf-drawable.c (main): ditto
1066         
1067         * gtk/testgtk.c: remove use of GtkStatusbarMsg
1068
1069         * gtk/gtktextbuffer.c: docs
1070
1071         * gtk/gtkstock.c: docs
1072
1073         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
1074
1075         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
1076
1077         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
1078         
1079         * gtk/gtkimage.c: add some docs in here
1080         (gtk_image_size_request): change name of
1081         gtk_widget_render_stock_icon
1082         (gtk_image_get_icon_set): don't dup returned string
1083         (gtk_image_get_icon_set): don't dup returned string
1084
1085         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
1086         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
1087         and gtkiconfactory.h functions
1088
1089         * gtk/gtkiconfactory.c: add some docs in here
1090
1091         * gtk/gtkmain.c (gtk_get_default_language): document
1092         (gtk_get_current_event): document
1093         (gtk_get_current_event_state): document
1094         (gtk_get_event_widget): document
1095
1096         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
1097
1098         * gtk/gtkcontainer.c: Add some documentation
1099         (gtk_container_add): give a more explanatory warning on adding an
1100         already-parented widget, this is kind of a FAQ and also a common
1101         typo that's easier to debug with a nice warning 
1102
1103         * gtk/gtkcellrenderertoggle.c
1104         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
1105         adding this, it's useless
1106         (gtk_cell_renderer_toggle_set_active): remove
1107         (gtk_cell_renderer_toggle_get_radio): add
1108
1109         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
1110         the NULL cell renderer, that doesn't make any sense to me. 
1111
1112         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
1113         demo code should never use deprecated features.
1114
1115         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
1116         code should never use deprecated features.
1117
1118         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
1119         gtk_widget_queue_clear_area deprecated
1120
1121         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
1122         deprecated
1123
1124         * gtk/gtklabel.h: mark gtk_label_get() deprecated
1125
1126         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
1127         a GdkImage deprecated, replaced by new consistently-named
1128         functions       
1129
1130         * gtk/gtkmain.h: Mark gtk_exit() deprecated
1131
1132         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
1133
1134         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
1135         deprecated
1136
1137         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
1138         so it won't appear in docs and confuse people.
1139
1140         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
1141
1142         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
1143         macros deprecated. (can't mark the type itself deprecated, since
1144         GtkProgressBar is not deprecated and we need the type decl to use
1145         GtkProgressBar)
1146
1147         * gtk/gtkpixmap.h: Mark deprecated
1148
1149         * gtk/gtkoldeditable.h: Mark deprecated
1150
1151         * gtk/gtklist.h: Mark deprecated
1152
1153         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
1154         for anything anymore.
1155
1156         * gtk/gtkctree.h: Mark deprecated
1157
1158         * gtk/gtkclist.h: Mark deprecated
1159
1160         * gtk/gtkpreview.h: Mark deprecated
1161
1162         * gtk/gtkpacker.h: Mark deprecated
1163
1164         * gtk/gtktipsquery.h: Mark deprecated
1165
1166         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
1167
1168         * gtk/gtkvruler.h: Add comment that it will move out of GTK
1169
1170         * gtk/gtkhruler.h: Add comment that it will move out of GTK
1171
1172         * gtk/gtkruler.h: Add comment that it will move out of GTK
1173
1174         * gtk/gtkgamma.h: Add comment that it will move out of GTK
1175
1176         * gtk/gtkcurve.h: Add comment that it will move out of GTK
1177
1178 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
1179
1180         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
1181         gdk_colormap_sync private since it was never exported
1182         in a header file.
1183
1184         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
1185         colormap->colors[] for StaticGray, StaticColor colormaps.
1186
1187         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
1188         was being used as if it was image->bits_per_pixel.
1189
1190         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
1191         for the image in the GdkImage structure since it isn't
1192         reconstructable, and we need it to handle packed types
1193
1194         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
1195         the assumption that on Win32 image->bits_per_pixel == image->depth,
1196         always.
1197
1198         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
1199
1200         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
1201         warning message if no converter can be found. 
1202
1203 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
1204
1205         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
1206         chars to isupper() / tolower(). (#567)
1207
1208         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
1209         to clear up 64-bit warnings. (#567)
1210
1211 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
1212
1213         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
1214         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
1215
1216         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
1217         since some people set $(libdir) separately. (#1290, David Kaelbling)
1218
1219 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
1220
1221         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
1222         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
1223         MAXPATHLEN, but the code here depends on a fixed value.)
1224         (#4524)
1225
1226 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
1227
1228         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
1229         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
1230
1231 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
1232
1233         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
1234         viewable there is no way that moving the node will cause the 
1235         focus row to become not viewable, so omit check on the visibility
1236         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
1237
1238 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
1239
1240         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
1241         selection before inserting new text.
1242
1243 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
1244
1245         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
1246         Make the sensitivity of the reparented child track that of
1247         the original parent menu item. (#34218, David Hodson)
1248
1249         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
1250         the case where the current item is destroyed properly.
1251
1252         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
1253         some edge cases with child-less menuitems.
1254         
1255 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
1256
1257         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
1258         key pop down window. (#12074, Jon K Hellan)
1259
1260 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
1261
1262         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
1263         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
1264         The solution here isn't perfect - you get an extraneous
1265         emission of "toggle", which could conceivably confuse an app,
1266         but better than the current situation. LXR search seems to
1267         indicate that no apps in GNOME CVS connect to "toggle".
1268
1269 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
1270
1271         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
1272         gtk_public_h_sources to directly here to avoid warning when
1273         building srcdir != builddir. (#9656)
1274
1275 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
1276
1277         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
1278         handlers in gtkrange.c return the proper values (TRUE == handled)
1279         (#10316).
1280
1281         This is just the tip of the iceberg, but gtkrange.c is the
1282         most common place where the propagation is problematical,
1283         and also a place where it is almost certainly safe to change
1284         this in the stable branch.
1285
1286         (You don't want right click popups on a range control or anything...)
1287
1288 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
1289
1290         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
1291         area on focus out, even if a background pixmap isn't set.
1292         (#13941)
1293         
1294 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
1295
1296         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
1297         to deal with setting the shape properly when scrolling arrows are
1298         turned on, but not visible because there is sufficient space.
1299         (#13432)
1300
1301 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
1302
1303         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
1304         items with submenus, destroy the item along with the submenu.
1305         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
1306         properly.
1307
1308         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
1309         later.
1310
1311 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
1312
1313         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
1314         the focus widget sometimes wasn't drawn with the default if there
1315         was no default widget.
1316
1317         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
1318         unreference pixmaps. 
1319
1320         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
1321         for some extra safety.
1322
1323 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
1324
1325         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
1326         the text of a cell to the old pointer value better, by
1327         copying the new text before freeing the old text. Some code
1328         cleanup. (#8079, Karl Nelson)
1329
1330 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
1331
1332         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
1333         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
1334
1335 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
1336
1337         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
1338         item from a menu, check to see if it matches 
1339         menu->old_active_menu_item, and if so, unref and clear
1340         old_active_menu_item (Patch from Pavel Cisler)
1341
1342         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
1343         menu_shell->active_menu_item, if it is the child being
1344         removed. (Patch based on that of Gene Ragan, #50337)
1345
1346 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
1347
1348         * gdk/linux-fb/gdkselection-fb.c: 
1349         * gdk/linux-fb/gdkcolor-fb.c: 
1350         * gdk/linux-fb/gdkdrawable-fb2.c: 
1351         * gdk/linux-fb/gdkfont-fb.c: 
1352         * gdk/linux-fb/gdkim-fb.c: 
1353         * gdk/linux-fb/gdkinput.c: 
1354         * gdk/linux-fb/gdkkeyboard-fb.c: 
1355         * gdk/linux-fb/gdkmain-fb.c: 
1356         * gdk/linux-fb/gdkrender-fb.c: 
1357         A bunch of whitespace cleanup.
1358         
1359 2001-01-30  Havoc Pennington  <hp@pobox.com>
1360
1361         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
1362         #ifdef GTK_ENABLE_BROKEN.
1363
1364         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
1365         GTK_ENABLE_BROKEN just before including the broken headers.
1366         
1367         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
1368         deprecated types registered.
1369
1370         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
1371         we have to test the broken stuff.
1372
1373         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
1374         
1375 2001-01-30  Havoc Pennington  <hp@redhat.com>
1376
1377         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
1378         here where prev pointer was set to the wrong thing
1379
1380         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
1381         (gtk_tree_path_is_descendant): new function
1382
1383         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
1384         cached length
1385         (gtk_list_store_get_iter): don't modify iter if we can't get the
1386         path.
1387
1388         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
1389         
1390         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
1391         GtkTreeDragDest
1392
1393         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
1394         was causing segfault
1395
1396         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
1397         pointer to NULL
1398
1399         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
1400
1401         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
1402         on returning FALSE
1403         (gtk_list_store_iter_children): ditto
1404         (gtk_list_store_iter_nth_child): ditto
1405         (gtk_list_store_iter_nth_child): ditto
1406         (gtk_list_store_iter_parent): ditto
1407
1408         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
1409         on iter->user_data != NULL instead of silently accepting it.
1410         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
1411         we are returning TRUE.
1412         (gtk_tree_store_iter_children): ditto
1413         (gtk_tree_store_iter_nth_child): ditto
1414         (gtk_tree_store_iter_parent): ditto
1415         (gtk_tree_store_insert): remove handling of parent->user_data ==
1416         NULL, replace with parent == NULL       
1417
1418         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
1419         and a comment explaining things
1420
1421         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
1422         interface support to GtkTreeStore.
1423
1424         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
1425         FALSE if no prev, fix
1426
1427         * gtk/gtktreeview.c (set_source_row): use a row reference
1428         (set_dest_row): use a row reference
1429
1430 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
1431
1432         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
1433         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
1434         (gtk_tree_selection_select_iter): The same as above.
1435
1436 2001-01-26  Havoc Pennington  <hp@redhat.com>
1437
1438         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
1439         which holds a handle to a specific row (particular set of values
1440         in the model, i.e. pointer-identity row).
1441
1442         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
1443         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
1444         Still need to use it for the src/dest row saved on the drag context.
1445
1446 2001-01-26  Havoc Pennington  <hp@redhat.com>
1447
1448         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
1449
1450         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
1451         not offset by TREE_VIEW_HEADER_HEIGHT
1452         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
1453         TREE_VIEW_HEADER_HEIGHT
1454
1455         * configure.in (included_loaders): for me, --with-included-loaders
1456         generates the error "the specified loader yes does not exist",
1457         i.e. the arg defaults to "yes", so change test for value ""
1458         to test for value "yes", and include all loaders in that case.
1459
1460         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
1461
1462         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
1463         handle TREE_VIEW_VERTICAL_SEPARATOR
1464         (gtk_tree_view_bin_expose): fix to consider the row offset as
1465         pointing halfway into vertical separator.       
1466         (gtk_tree_view_draw_node_focus_rect): ditto
1467
1468         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
1469         --gtk-debug=updates, which causes gdk_window_set_debug_updates
1470         (TRUE) to be called.
1471
1472         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
1473         debug mode where the invalid region is colored in on invalidate,
1474         so you can see the flicker and know whether your redraw code is 
1475         doing a good job.
1476
1477         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
1478         tree window coordinates (clip rect is in tree window coords)
1479
1480         * gtk/Makefile.am: add gtktreednd.[hc]
1481
1482         * gtk/gtkliststore.c: implement gtktreednd interfaces.
1483
1484         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
1485         drag-and-drop data operations on a model (so we can set up tree
1486         drag-and-drop automatically)
1487
1488         * gtk/testgtk.c: Add a window to change sensitivity in the
1489         GtkLabel test; add a way to change the entry frame in GtkEntry
1490         test
1491
1492         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
1493         (gtk_entry_get_has_frame): new functions to remove the frame
1494         around an entry
1495         (gtk_entry_size_request): shrink requisition if no frame
1496         (gtk_entry_draw_focus): don't draw frame if no frame
1497
1498         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
1499         checks inside a cell renderer
1500         (gtk_default_draw_option): ditto for options
1501
1502         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
1503         children from the alignment, not the button
1504         (gtk_tree_view_column_init): ref/sink the column, to emulate
1505         GObject refcounting.
1506
1507         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
1508         
1509         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1510         Use theme functions to draw the toggles 
1511
1512         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
1513
1514         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
1515         GdkPangoAttrEmbossed to use in rendering insensitive text
1516
1517         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
1518
1519         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
1520         using new GDK features
1521         
1522 2001-01-24  Alexander Larsson  <alexl@redhat.com>
1523
1524         * gtk/gtkimage.c:
1525         Splitted gtk_image_clear into gtk_image_clear() and
1526         gtk_image_reset(). Call gtk_image_clear() in ::destroy
1527         to avoid leaks.
1528
1529         * gtk/gtklabel.c (set_markup):
1530         Don't leak text.
1531
1532         * gtk/gtktextlayout.c:
1533         Always free display->shaped_objects.
1534
1535         * gtk/testgtk.c (create_clist):
1536         Don't leak custom style.
1537
1538 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1539
1540         * gtk/gtkcolorsel.c (grab_color_at_mouse):
1541         Don't leak image. Simplify using gdk_colormap_query_color().
1542         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
1543
1544         * linux-fb/gdkcolor-fb.c:
1545         Implemented gdk_colormap_query_color.
1546
1547 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1548
1549         * linux-fb/gdkcursor-fb.c:
1550         Don't leak built-in cursors.
1551
1552         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
1553         Don't leak tmp_points.
1554
1555         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
1556         Don't modify desc. Don't leak font if the PangoFont
1557         isn't found.
1558         
1559         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
1560         Free dash_list.
1561
1562         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
1563         Don't leak string.
1564         
1565 2001-01-20  Havoc Pennington  <hp@pobox.com>
1566
1567         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
1568         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
1569         me, matches Pango
1570
1571 2001-01-22  Havoc Pennington  <hp@redhat.com>
1572
1573         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
1574
1575         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
1576
1577         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
1578         Remove, move back to gdk-pixbuf
1579
1580         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
1581         to all the word functions
1582
1583         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
1584         before doing anything on NULL layout or if we don't have the focus
1585
1586         * gtk/testtext.c (fill_example_buffer): "justification"
1587
1588         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
1589         to be called "justification" not "justify"
1590
1591         * demos/gtk-demo/textview.c (create_tags): "justification"
1592         
1593         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
1594
1595 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1596
1597         * gdk/gdkwindow.c (gdk_window_invalidate_region):
1598         Don't leak visible_region. Use visible_region instead of region.
1599         
1600         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1601         Don't do extra gdk_drawable_ref(). This is not X.
1602         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
1603         gdk_fb_focused_window is ref:ed.
1604         (gdk_fb_window_send_crossing_events): Watch out for destroyed
1605         windows.
1606
1607 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1608
1609         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
1610         Don't leak the PangoFontDescriptor.
1611
1612 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
1613
1614         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1615         when not realized.
1616         (gtk_tree_view_scroll_to_cell): Make work when not realized.
1617         (gtk_tree_view_realize): add scroll_to support
1618         (gtk_tree_view_finalize): add a finalize method.  Populate.
1619         (gtk_tree_view_insert_column): ref and sink the column.
1620         (gtk_tree_view_append_column): ref and sink the column.
1621         (gtk_tree_view_queue_draw_node): New function to handle redrawing
1622         individual nodes.  Should make the code much more efficient, if
1623         actually used.
1624
1625 2001-01-19  Havoc Pennington  <hp@redhat.com>
1626
1627         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1628         byte_offset variable was being used to mean both "offset into
1629         layout" and "offset into buffer line" which was no longer true
1630         with addition of preedit string; fix
1631
1632 2001-01-19  Havoc Pennington  <hp@redhat.com>
1633
1634         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1635
1636         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1637         function
1638
1639         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1640         implement
1641
1642         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
1643         scroll_to_cell, matches TextView scroll functions better
1644         (gtk_tree_view_tree_to_widget_coords): new function
1645         (gtk_tree_view_widget_to_tree_coords): new function
1646         (gtk_tree_view_get_visible_rect): new function
1647         (gtk_tree_view_get_path_at_pos): accept negative coordinates
1648         (gtk_tree_view_draw_node_focus_rect): new function moved from
1649         draw_focus, also, use width of bin_window as width of the focus
1650         rect
1651         (gtk_tree_view_expand_row): fix bug where it didn't recognize
1652         already-expanded rows
1653         (gtk_tree_view_get_cell_rect): new function
1654         (gtk_tree_view_get_path_at_pos): return the click position
1655         relative to the passed-in cell
1656         (gtk_tree_view_set_expander_column): new function
1657
1658         * configure.in: remove gtk-config-2.0 chmod
1659
1660         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
1661         and properly handle drags with targets we don't understand
1662         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
1663         scrolling anyway
1664         (gtk_text_view_drag_drop): stop scrolling here though, and set the
1665         mark invisible
1666
1667         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
1668         function
1669         (gtk_drag_dest_get_target_list): new function
1670         (gtk_drag_dest_set_target_list): new function
1671         
1672         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
1673
1674         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
1675         related to drag-and-drop
1676
1677 2001-01-19  Alexander Larsson  <alexl@redhat.com>
1678
1679         * gdk/linux-fb/gdkprivate-fb.h:
1680         Define EMULATE_GDKFONT.
1681         Add extra pango_font stuff to GfkFontPrivate.
1682         
1683         * gdk/linux-fb/gdkdrawable-fb2.c:
1684         * gdk/linux-fb/gdkfont-fb.c:
1685         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
1686         emulation using PangoFont.
1687
1688 2001-01-17  Havoc Pennington  <hp@pobox.com>
1689
1690         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
1691         all the non-deprecated set_foo functions. Added missing object
1692         properties, and added g_object_notify() to setters. 
1693         Wrote docs.
1694         
1695 2001-01-18  Tor Lillqvist  <tml@iki.fi>
1696
1697         * gtk/gtkmain.c
1698         * gtk/gtkrc.c: (Win32) Use the new
1699         g_win32_get_package_installation_(sub)directory() functions.
1700
1701         * config.h.win32.in: New file.
1702         
1703         * config.h.win32: Removed.
1704
1705         * configure.in: Output config.h.win32.
1706
1707         * Makefile.am: Add it to EXTRA_DIST.
1708
1709         * gtk/gtk.def: Update.
1710
1711 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
1712
1713         * gtk/gtklabel.c (gtk_label_size_request): Set the
1714         attributes onto the PangoLayout even if they are newly
1715         created from label->pattern.
1716
1717 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
1718
1719         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
1720
1721         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
1722         structures in functions. Fixes bug where gtk_dataset_*
1723         was accidentally still being used in one place, causing
1724         every dest side event to be treated independently.
1725
1726         * gtk/gtkdnd.c: Remove last vestages of handling
1727         ::draw (fixes warning)
1728         
1729         * gtk/gtkentry.[ch]: Add drag and drop support.
1730
1731         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
1732         new function gtk_check_drag_threshhold() for checking
1733         to check if (dx,dy) has exceeded the threshhold for starting
1734         a drag and use it everywhere.
1735
1736 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
1737
1738         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
1739         add -I{includedir}/gtk-2.0.
1740
1741         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
1742         gdk/gdk-pixbuf.h: Doc fixups.
1743         
1744         * gtk/gtkobject.h: Remove trailing , from enum
1745
1746 2001-01-17 Alexander Larsson <alexl@redhat.com> 
1747
1748         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
1749         Doh! Mixed up x and y.
1750
1751         * gdk/linux-fb/gdkglobals-fb.c:
1752         Removed gdk_fb_pointer_grab_window_events,
1753         added _gdk_fb_pointer_grab_owner_events and
1754         _gdk_fb_keyboard_grab_owner_events.
1755
1756         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
1757         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
1758         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
1759         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
1760         Send crossing events after ungrab finished.
1761         (gdk_keyboard_grab): Set ..._owner_events
1762         (type_masks): Move out of function.
1763         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
1764         gdk_fb_keyboard_event_window): New functions, return the
1765         window an event should be targeted at. Handles grabs and
1766         event propagation. Can return NULL.
1767         (gdk_event_make): Remove event_mask checking. Now always
1768         returns an event.
1769                 
1770         * gdk/linux-fb/gdkkeyboard-fb.c:
1771         * gdk/linux-fb/gdkproperty-fb.c:
1772         * gdk/linux-fb/gdkselection-fb.c:
1773         Use new event_window/gdk_event_make() behaviour.
1774         
1775         * gdk/linux-fb/gdkmouse-fb.c:
1776         Use new event_window/gdk_event_make() behaviour.
1777         Only send motion events if in the same window.
1778         If grabbed, use cursor from window if sibling of grabbed
1779         window, and cursor from grabbed window otherwise.
1780
1781         * gdk/linux-fb/gdkprivate-fb.h:
1782         Update gdk_fb_window_send_crossing_events, gdk_event_make
1783         and grab varaible declarations. Add gdk_fb_*_event_window().
1784
1785         * gdk/linux-fb/gdkwindow-fb.c:
1786         Use new event_window/gdk_event_make() behaviour.
1787         Keep correct track of focus window.
1788         (gdk_window_set_events): Set all specific button motion masks
1789         if GDK_BUTTON_MOTION_MASK set.
1790
1791         * gtk/gtkdnd.c (gtk_drag_update):
1792         Free info->last_event if gdk_drag_motion returned FALSE.
1793
1794 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1795
1796         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
1797         Eliminate redraws when input-only windows are shown or
1798         hidden. Thanks to jpe@archaeopteryx.com.
1799
1800 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
1801
1802         * docs/faq/gtk-faq.sgml: FAQ update:
1803           - Update to bugzilla
1804           - Add GTK+ and security/SUID/SGID
1805           - Add DnD question
1806
1807 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
1808
1809         * gdk/linux-fb/gdkdnd-fb.c:
1810         Some cleanups.
1811         
1812 2001-01-15  Havoc Pennington  <hp@pobox.com>
1813
1814         * tests/testtreeview.c: add test stuff for CellRendererToggle
1815
1816         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
1817         accessor
1818
1819         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
1820         only toggle on button press (would do release like GtkButton, but
1821         we'd need implicit grab code for treeview cells)
1822
1823 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1824
1825         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
1826
1827         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
1828         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
1829
1830         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
1831         to g_{locale,filename}_{to,from}_utf8 to match current API.
1832
1833         * gtk/makefile.msc.in (gtk_OBJECTS)
1834         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
1835
1836         * gtk/gtk.def: Update.
1837
1838 2001-01-15  Tor Lillqvist  <tml@iki.fi>
1839
1840         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
1841         implementaion that more closely mimics the events that an X server
1842         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1843         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1844         with nested preview widgets, for instance, more responsive when
1845         you move the mouse quickly into them.
1846         (find_window_for_pointer_event): Make it actually compile.
1847         (gdk_event_translate): Set send_event to the value of
1848         InSendMessage (). This doesn't really mean the same as X11's
1849         send_event flag, but is close enough, says jpe@archaeopteryx.com
1850
1851 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1852
1853         * gdk/linux-fb/gdkdnd-fb.c:
1854         Implemented drag and drop.
1855         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
1856         when it tries to free and then copy the same event (info->last_event).
1857         I am not sure about why this happens, but will continue looking.
1858
1859 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1860
1861         * gdk/linux-fb/gdkwindow-fb.c:
1862         Use gdk_window_invalidate_rect instead of
1863         gdk_window_invalidate_rect_clear to minimise flashing.
1864         When hiding windows you need to clear the root window though.
1865
1866 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1867
1868         * gdk/linux-fb/gdkdrawable-fb2.c:
1869         For optization, add an full_shapes argument to gdk_fb_clip_region.
1870         If this is false, only the cliprects of the shapes are used.
1871
1872         * gdk/linux-fb/gdkprivate-fb.h:
1873         Export gdk_fb_window_peek_shape.
1874         Add full_shapes to gdk_fb_clip_region.
1875
1876         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1877         When moving a window, don't clear everything under the it, just the
1878         root window. Makes stuff faster and flash less.
1879         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1880         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1881         offset of the shape.
1882         
1883
1884 2001-01-12  Havoc Pennington  <hp@redhat.com>
1885
1886         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
1887         current invalid region, fixes redraw bug while scrolling the 
1888         text widget
1889
1890         * gtk/gtktextview.c, gtk/gtktextview.h:
1891         Rearrange the scrolling/validation/etc. code in a major way, 
1892         so it seems to make sense to me. Probably isn't genuinely that
1893         much better, but...
1894
1895         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1896         notifies
1897
1898         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1899
1900 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
1901
1902         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1903         Hide mouse pointer while rotation. Show it afterwards.
1904
1905 2001-01-12  Alexander Larsson  <alexl@redhat.com>
1906
1907         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1908         windows in consideration when generating clip region.
1909
1910         * gdk/linux-fb/gdkfb.h:
1911         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1912
1913         * gdk/linux-fb/gdkprivate-fb.h:
1914         Add shape to GdkWindowFBDatat.
1915         exported gdk_fb_window_get_abs_shape().
1916         removed gdk_fb_draw_lines declaration.
1917
1918         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1919         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1920         send focus changes when there is a grabbed window.
1921         (gdk_window_get_pointer): Handle shaped windows.
1922         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1923         (gdk_fb_window_peek_shape): Returns the shape for a window,
1924         handles GDK_FB_USE_CHILD_SHAPE.
1925         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1926         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1927         (gdk_window_shape_combine_mask): Implement.
1928
1929         * gtk/gtkwindow-decorate.c:
1930         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1931         setting the shape of a window makes the window transparent.
1932
1933 2001-01-11  Havoc Pennington  <hp@redhat.com>
1934
1935         * gtk/gtktreemodelsimple.h: Oops, broke some macros
1936
1937 2001-01-10  Havoc Pennington  <hp@redhat.com>
1938
1939         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1940         add this function, bug 40251
1941
1942         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1943         of type macro   
1944
1945 2001-01-11  Alexander Larsson  <alexl@redhat.com>
1946
1947         * acconfig.h:
1948         Added ENABLE_SHADOW_FB
1949
1950         * configure.in:
1951         Added --disable-shadowfb
1952
1953         * gdk/linux-fb/gdkcursor-fb.c:
1954         Update shadowfb when updating cursor
1955
1956         * gdk/linux-fb/gdkdrawable-fb2.c:
1957         Added wrappers for shadowfb that calls  the normal drawable
1958         methods, but calls gdk_shadow_fb_update(bounding box) when
1959         GdkWindows are drawed to.
1960         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1961         which also returns the bounding box.
1962
1963         * gdk/linux-fb/gdkfb.h:
1964         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1965
1966         * gdk/linux-fb/gdkgeometry-fb.c:
1967         Update shadowfb when scrolling window.
1968
1969         * gdk/linux-fb/gdkglobals-fb.c:
1970         Add _gdk_fb_screen_angle.
1971         
1972         * gdk/linux-fb/gdkkeyboard-fb.c:
1973         Test code for screen rotation. Shift-F2 in the xlate driver
1974         rotates the screen.
1975
1976         * gdk/linux-fb/gdkmain-fb.c:
1977         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1978
1979         * gdk/linux-fb/gdkmouse-fb.c:
1980         Use fb_width/height instead of modeinfo.xres/yres.
1981
1982         * gdk/linux-fb/gdkprivate-fb.h:
1983         Added fb_men, fb_width, fb_height & fb_stride. When using
1984         shadow fb these can differ from the framebuffer stuff.
1985         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1986         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1987         _gdk_fb_screen_angle. Removed CM, RP.
1988
1989         * gdk/linux-fb/gdkrender-fb.c:
1990         Added code for shadowfb handling and screen rotation using
1991         shadowfb.
1992
1993         * gdk/linux-fb/gdkwindow-fb.c:
1994         Use fb_mem, fb_stride, fb_width, fb_height.
1995         Added recompute_rowstride to reset the rowstride of all windows.
1996         Added gdk_fb_recompute_all() which recomputes rootwindow size,
1997         window abs positions and window rowstrides. Usefull when the
1998         rotation has changed.
1999
2000 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
2001
2002         * docs/faq/gtk-faq.sgml: update to make web site updating easier
2003
2004 2001-01-10  Havoc Pennington  <hp@redhat.com>
2005
2006         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
2007         where sibling == iter
2008         (gtk_tree_store_insert_after): handle sibling == iter
2009         (gtk_tree_store_prepend): remove stamp checks
2010         (gtk_tree_store_insert_before): ditto
2011         (gtk_tree_store_append): ditto
2012         (gtk_tree_store_get_path): ditto
2013         (gtk_tree_store_get_value): ditto
2014         (gtk_tree_store_iter_has_child): ditto
2015         (gtk_tree_store_iter_n_children): ditto
2016         (gtk_tree_store_iter_nth_child): ditto
2017         (gtk_tree_store_insert_after): ditto
2018         (gtk_tree_store_is_ancestor): ditto
2019         (gtk_tree_store_iter_depth): ditto
2020         (gtk_tree_store_insert_before): assert that sibling's parent is
2021         the same as the passed-in parent
2022         (gtk_tree_store_insert_after): assert that sibling's parent is
2023         the same as the passed-in parent
2024
2025         
2026         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
2027         function to get the first iterator in a model
2028         
2029         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
2030         conventionally the "root" in this sense is just NULL afaict.
2031
2032         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
2033         where sibling == iter
2034         (gtk_list_store_insert_after): handle case where sibling == iter
2035
2036         * tests/testtreeview.c (run_automated_tests): fairly lame basic
2037         automated tests for ListStore, TreeStore
2038
2039         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
2040         (gtk_list_store_insert): update tail pointer, and fix it to work
2041         (gtk_list_store_insert_before): update tail pointer, and fix it to work
2042         (gtk_list_store_append): use tail to be faster
2043         (gtk_list_store_prepend): fix it, update tail pointer
2044         (gtk_list_store_insert_after): fix it, update tail pointer
2045
2046         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
2047         the list
2048
2049 2001-01-09  Havoc Pennington  <hp@redhat.com>
2050
2051         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
2052         is NULL due to a pending resize
2053
2054         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
2055         column width to values less than 1
2056
2057         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
2058         width to be between min/max width, and still set the width 
2059         even if autosize is turned on, so the tree view can use this 
2060         function in order to autosize.
2061         (gtk_tree_view_column_init): set initial width to 1 not 0
2062
2063         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
2064         setter function to modify column width, so we get notification
2065         (gtk_tree_view_insert_iter_height): ditto
2066         (gtk_tree_view_calc_size): ditto
2067         (gtk_tree_view_check_dirty): ditto
2068
2069         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
2070         properties to change all the interesting attributes of the tree
2071         view column.
2072         (gtk_tree_view_column_set_header_clickable): rename set_clickable
2073         (gtk_tree_view_column_get_clickable): add
2074         (gtk_tree_view_column_set_cell_renderer): don't unset the current
2075         attributes; assume a cell renderer with equivalent object
2076         properties has been swapped in. Do g_object_notify().
2077         (gtk_tree_view_column_set_visible): g_object_notify
2078         (gtk_tree_view_column_get_sizing): rename from get_col_type
2079         (gtk_tree_view_column_set_sizing): g_object_notify
2080         (gtk_tree_view_column_set_width): add g_object_notify
2081         (gtk_tree_view_column_set_min_width): ditto
2082         (gtk_tree_view_column_set_max_width): ditto
2083         (gtk_tree_view_column_set_title): ditto
2084         (gtk_tree_view_column_set_clickable): ditto
2085         (gtk_tree_view_column_set_widget): ditto
2086         (gtk_tree_view_column_set_justification): ditto
2087
2088 2001-01-09  Havoc Pennington  <hp@redhat.com>
2089
2090         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
2091         there are no rows in the model
2092
2093         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
2094         NULL, then return the start of the list
2095
2096         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
2097         if we can't get any rows from an empty model 
2098
2099         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
2100         extraneous * after function pointer typedef usage
2101
2102         * Makefile.am: don't specify full path to cp and rm
2103
2104         * gtk/gtkcellrenderertextpixbuf.c
2105         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
2106         NULL before dereferencing, fixes a segfault that happened from
2107         time to time
2108
2109         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
2110         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
2111         and reindent the function
2112         (gtk_cell_renderer_pixbuf_get_size): indentation
2113
2114         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
2115         we quit it
2116         (gtk_dialog_add_buttons_valist): add g_return_if_fail
2117         (gtk_dialog_set_default_response): New function, to set default
2118         button
2119         (gtk_dialog_set_response_sensitive): New function, to set 
2120         sensitivity of buttons
2121
2122         * gtk/gtkcellrendererpixbuf.c
2123         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
2124         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
2125
2126         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2127         handle any G_TYPE_OBJECT subclass, not just the base class, and 
2128         also boxed types.
2129         (_gtk_tree_data_list_value_to_node): ditto
2130
2131         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
2132         --gtk-debug=tree
2133
2134         * gtk/gtkmain.c: add GTK_DEBUG_TREE
2135
2136         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
2137
2138 2001-01-09  Tor Lillqvist  <tml@iki.fi>
2139
2140         * gdk/win32/gdkevents-win32.c: Implement better mouse
2141         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
2142         (find_window_for_pointer_event): New function.
2143         (gdk_event_translate): Use it when handling mouse events.
2144
2145 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
2146
2147         * configure.in:
2148         Added --with-included-loaders option
2149
2150         * gdk-pixbuf/Makefile.am:
2151         * gdk-pixbuf/gdk-pixbuf-io.c:
2152         Add support for including selected gdk-pixbuf loaders only.
2153
2154         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
2155         gtk_window_set_has_frame):
2156         Added inline documentation.
2157
2158         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
2159         * docs/reference/gdk/tmpl/windows.sgml:
2160         Added inline documentation.
2161
2162 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
2163
2164         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
2165         realizing buttons that have already been realized.
2166
2167 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
2168
2169         * tests/testtreeview.c (main): Show menu items before adding to
2170         option menu.
2171
2172         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
2173         around if we kill them.
2174
2175         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2176         Return if we pass in a NULL model.
2177
2178 2001-01-08  Havoc Pennington  <hp@redhat.com>
2179
2180         * tests/testtreeview.c: hack on this some
2181
2182         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
2183         gtk_tree_store_set_valist, v is for arrays, valist for varargs
2184         list
2185         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
2186
2187         * gtk/gtkliststore.h: Add varargs set() and get() convenience
2188         functions
2189
2190 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2191
2192         * gtk/gtkwindow-decorate.[hc]:
2193         * gtk/Makefile.am:
2194         New files. Contains an implementation of a minimal WM for
2195         linux-fb.
2196
2197         * gtk/gtkwindow.h:
2198         Add the possibility for GtkWindows to specify a frame. This
2199         is used for the window decoration code, but could concievably
2200         be used for X programs too (xmms style windows).
2201         GtkWindow->frame is the toplevel window if the window is framed.
2202         The signal frame_event gets all events that are targeted to
2203         GtkWindow->frame.
2204         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
2205         
2206         * gtk/gtkwindow.c:
2207         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
2208         Call out to gtkwindow-decorate.c for WM support in linx-fb.
2209
2210 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2211
2212         * docs/README.linux-fb:
2213         Correct filename ~/.pangoft2_aliases
2214
2215         * gdk/gdkwindow.h:
2216         Added new function gdk_window_get_decorations.
2217
2218         * gdk/linux-fb/gdkfb.h:
2219         Removed _gdk_window_get_decorations declaration.
2220         Renamed _gdk_window_set_child_handler to
2221         gdk_fb_window_set_child_handler.
2222
2223         * gdk/linux-fb/gdkwindow-fb.c:
2224         Renamed _gdk_window_set_child_handler to
2225         gdk_fb_window_set_child_handler.
2226
2227         * gdk/x11/gdkwindow-x11.c:
2228         New function gdk_window_get_mwm_hints().
2229         Implemented gdk_window_get_decorations.
2230
2231         * docs/reference/gdk/tmpl/windows.sgml:
2232         * docs/reference/gdk/gdk-sections.txt:
2233         Added gdk_window_get_decorations docs.
2234         
2235 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
2236
2237         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
2238         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
2239         gdk_fb_window_send_crossing_events):
2240         Possibly send focus events when the mouse moves from one
2241         window to another.
2242
2243 2001-01-07  Tor Lillqvist  <tml@iki.fi>
2244
2245         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
2246         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
2247         to match current API.
2248
2249         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
2250         environment variable is set, don't call g_error when on a
2251         palettized (PseudoColor) display. Some people want to use GTK+ 
2252         in 256-colour mode even though works only partially.
2253
2254         * gdk/gdk.def
2255         * gtk/gtk.def
2256         * gtk/makefile.mingw.in: Update.
2257
2258 2001-01-05  Havoc Pennington  <hp@redhat.com>
2259
2260         * tests/testtreeview.c: hack on this a bit
2261
2262         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
2263         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
2264
2265         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
2266         was spelled incorrectly
2267         (GTK_IS_TREE_MODEL_SIMPLE): ditto
2268
2269         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
2270         from gtk_tree_view_set_headers_active   
2271
2272         * gtk/gtktexttag.c:
2273         (gtk_text_tag_get_property): handle PROP_DIRECTION
2274         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
2275         properties, bug 40235
2276
2277         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
2278         forward_to_line_end
2279
2280 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
2281
2282         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
2283         modules/input/gtkimcontextxim.c: Adapt to new prototypes
2284         for unicode,locale,filename conversion functions.
2285
2286 2001-01-05  Havoc Pennington  <hp@redhat.com>
2287
2288         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
2289         broken if called on the first position in the buffer.
2290
2291         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
2292         forward_to_delimiters to be called only if we aren't already at
2293         the delimiters.
2294
2295 2001-01-05  Havoc Pennington  <hp@redhat.com>
2296
2297         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2298
2299 2001-01-05  Alexander Larsson  <alexl@redhat.com>
2300
2301         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
2302         colormap in here. Sync from X port.
2303         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
2304         Sync from X port.
2305         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
2306         This happens now and then, and i don't think it is a bug.
2307         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
2308         != endpoint.
2309         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
2310         GDK_LINE_SOLID.
2311
2312         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
2313         some of the fields filled in at least.
2314
2315         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
2316         miLineArcD is no more, remove it from the function definition.
2317
2318 2001-01-04  Havoc Pennington  <hp@redhat.com>
2319
2320         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
2321         this
2322
2323         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
2324         user_data instead of tree_node
2325
2326         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
2327         TREE_VIEW_COLUMN_SIZE
2328
2329         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
2330         "size" field to "width" finishes bug 40061
2331
2332         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
2333         for bitfields, bug 40268
2334
2335 2001-01-04  Havoc Pennington  <hp@redhat.com>
2336
2337         Rename some stuff:
2338         
2339         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
2340
2341         s/GtkModelSimple/GtkTreeModelSimple/g;
2342         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
2343         s/gtk_model_simple/gtk_tree_model_simple/g;
2344         s/gtkmodelsimple/gtktreemodelsimple/g;
2345
2346         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
2347
2348         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
2349         s/column_set_col_type/column_set_sizing/g;
2350
2351         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
2352         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
2353
2354         s/GtkCellRendererType/GtkCellRendererState/g;
2355         
2356         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
2357         (gtk_cell_renderer_toggle_class_init): change "state" property to
2358         "active", to match GtkToggleButton
2359         (gtk_cell_renderer_toggle_get_active): new function, bug
2360         40269
2361         (gtk_cell_renderer_toggle_set_active): new function
2362         (gtk_cell_renderer_toggle_set_property): route changes to toggle
2363         state through gtk_cell_renderer_set_active
2364
2365 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
2366
2367         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
2368         temporarily until they work again.  Brought up to date with
2369         changes in the model.
2370         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
2371         model.
2372
2373 2001-01-04  Havoc Pennington  <hp@redhat.com>
2374
2375         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
2376         equal to the line length, then position iterator before paragraph 
2377         separators. Fixes crash reported by Mikael Hermansson when
2378         pressing left arrow from the start of a line.   
2379
2380         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
2381         about byte indexes off the end
2382         (iter_set_from_char_offset): add g_error about char offsets
2383         off the end
2384
2385 2001-01-03  Havoc Pennington  <hp@redhat.com>
2386
2387         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
2388
2389         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
2390         of private functions; remove inclusion of private headers.
2391
2392         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
2393         function, so we don't need private functions in gtktextdisplay.c
2394
2395         * gtk/gtktextiterprivate.h: underscore-ification
2396
2397         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
2398         to instead say "only useful to implement widgets"
2399
2400         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
2401         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
2402         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
2403
2404         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
2405         This function was completely broken
2406
2407         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
2408
2409         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
2410
2411         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
2412
2413         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
2414
2415         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
2416
2417         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
2418
2419         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
2420         gtk_paint_layout
2421
2422         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
2423         gtk_paint_layout
2424
2425         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
2426         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
2427         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
2428         which were not implemented.     
2429
2430         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
2431         insert_pixbuf signal. Rename delete_text to delete_range since it
2432         also deletes pixbufs and child anchors. This almost closes bug
2433         40245 (still need to deal with child anchors)
2434
2435         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
2436         insert_pixbuf, change signal names as appropriate, change types of
2437         signals taking marks/tags to have the specific type, not just
2438         G_TYPE_OBJECT
2439         
2440         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
2441         closes bug 40051
2442
2443         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
2444         unnecessary remove_contents() call
2445         (gtk_option_menu_class_init): add a "changed" signal, closes
2446         bug 40039
2447         (gtk_option_menu_update_contents): emit "changed" if the 
2448         active menu item changes
2449
2450         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
2451         cast to GtkObject, reported by Jonas Borgstrom
2452         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
2453         we can't do stuff with side effects in finalize. Instead, spew a
2454         warning if the loader isn't closed.
2455
2456         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
2457         colormap in here, non-X ports probably need to sync to this change
2458
2459         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
2460         assertion that colormap != NULL, you can set the colormap to NULL
2461         if you like.
2462         
2463         * Makefile.am: remove gtk-config-2.0
2464
2465         * configure.in: Use pkg-config to locate GLib. Remove
2466         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
2467         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
2468         Use pkg-config to locate Pango. Output correct Pango libs to
2469         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
2470
2471         * Makefile.am (pkgconfig_DATA): install only target-specific pc
2472         files
2473         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
2474         X11 pc files
2475
2476         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
2477         unref from here
2478
2479 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
2480
2481         * configure.in:
2482         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2483
2484 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2485
2486         * gtk/gtktextlayout.c
2487         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
2488         variable when moving back onto a single line.
2489
2490 2001-01-01  Havoc Pennington  <hp@redhat.com>
2491
2492         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2493
2494         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2495
2496         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
2497         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2498
2499 2001-01-01  Havoc Pennington  <hp@redhat.com>
2500
2501         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
2502
2503         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
2504         GtkTextAttributes
2505
2506         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
2507         #40246
2508         (gtk_text_attributes_copy_values): rename from 
2509         gtk_text_attributes_copy
2510         (gtk_text_attributes_copy): a more standard GTK copy function, 
2511         which returns a new object
2512
2513 2001-01-01  Havoc Pennington  <hp@redhat.com>
2514
2515         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
2516         
2517         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
2518         don't fill in tree_view->priv->selection, kind of an unexpected
2519         side effect
2520
2521         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
2522         gtkintl.h
2523         
2524         * gtk/gtkcellrenderer.c: Remove definition of _ and include
2525         gtkintl.h
2526         (gtk_cell_renderer_get_property): remove calls to g_value_init
2527
2528         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
2529         gtkintl.h
2530
2531         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
2532         and include gtkintl.h
2533         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
2534         property names
2535
2536         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
2537         GtkTreeSelection
2538         (_gtk_tree_selection_new_from_with_view): rename, return
2539         GtkTreeSelection
2540         (_gtk_tree_selection_set_tree_view): rename with uscore
2541         (gtk_tree_selection_get_selected): fill in the "model" out param
2542         first, so it gets filled in even if we return at the top of the 
2543         function
2544         (gtk_tree_selection_real_select_all): add a comment and an else{}
2545         to clarify this a bit
2546         (gtk_tree_selection_real_unselect_all): add the same else{}
2547
2548         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
2549         set_tree_view to have underscore prefixes, move them to the
2550         private header, fix return type of new_with_tree_view
2551         (struct _GtkTreeSelection): mark struct
2552         fields private  
2553
2554         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
2555         GtkTreeModelFlags, not a guint
2556         (gtk_tree_path_prev): return gboolean not gint
2557         (gtk_tree_path_up): return gboolean not gint
2558
2559         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
2560         return GtkTreeModelFlags, not a guint
2561
2562         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
2563         that child model is non-null before unrefing it
2564         (g_value_int_compare_func): make this a qsort compare func, not 
2565         a boolean predicate
2566
2567         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
2568         (add -umn to the end), and mark it unimplemented
2569         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
2570         I don't see what it's for - doesn't the model always sort itself?
2571         (gtk_tree_model_sort_set_compare): this had the wrong signature
2572
2573         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
2574         Fix the docs to say that it destructively replaces existing
2575         attributes (previously said that it added attributes).
2576         (gtk_tree_view_column_set_visible): canonicalize bool before
2577         equality testing. Also, check for realization before
2578         hiding/showing the tree_column->window; if this window could exist
2579         before realization, then it's busted and needs fixing, we can't 
2580         create GDK resources pre-realization. Also, remove
2581         superfluous queue_resize(), since set_size() does that for us.
2582         (gtk_tree_view_column_set_col_type): check realization before 
2583         using tree_column->window
2584
2585         * gtk/gtktreedatalist.c: fix filename in copyright notice
2586
2587 2000-12-31  Havoc Pennington  <hp@pobox.com>
2588
2589         * gtk/gtktextview.c: Rearrange all the
2590         scroll-while-dragging-or-selecting code to be different, not
2591         necessarily better. ;-)
2592         (gtk_text_view_scroll_to_mark): Change this
2593         function to take within_margin as a fraction instead of a pixel
2594         value, and to take alignment arguments (indicating where to align 
2595         the mark inside the visible area)
2596         
2597         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
2598         to GtkObject
2599
2600         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
2601         behavior so that offsets past the end of the line are not 
2602         allowed, and an offset equal to the line length moves the iterator
2603         to the next line
2604         (gtk_text_iter_set_line_index): make parallel change
2605         (gtk_text_iter_get_bytes_in_line): add this function
2606         
2607         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
2608         of byte indexes off the end of the line; byte index at the end of
2609         the line now returns FALSE and doesn't fill in the requested
2610         values, byte index past the end of the line is an error.  Also,
2611         don't allow -1 offset anymore, since its meaning is unclear.
2612
2613         This change exposes some bug in visual cursor motion, where we
2614         end up with a huge invalid byte index; needs fixing. Symptom of 
2615         bug is a crash when you hit up arrow.
2616         
2617         (_gtk_text_line_char_locate): match the change to byte_locate
2618
2619         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2620         from start of line properly. fixes bug reported by Mikael
2621         Hermansson where backspace would delete all text before the
2622         cursor.
2623
2624 2000-12-30  Tor Lillqvist  <tml@iki.fi>
2625
2626         * gdk/win32/gdkwindow-win32.c
2627         (gdk_window_impl_win32_get_visible_region): New function, as in
2628         the X11 backend.
2629         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2630         instead of duplicating the same code here.
2631
2632         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2633         GDK_COLORMAP macro.
2634
2635         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2636         destroy function.
2637         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2638         access that.
2639
2640         * gtk/gtk.def: Update.
2641
2642         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
2643
2644 2000-12-30  Havoc Pennington  <hp@pobox.com>
2645
2646         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
2647         colormap on input only windows, to avoid special cases all over
2648         the code for these windows.
2649
2650 2000-12-26  Tor Lillqvist  <tml@iki.fi>
2651
2652         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
2653         we are on a palettized display ("PseudoColor" in X11), as the code
2654         for that doesn't work anyway, and never has.
2655
2656 2000-12-22  Alexander Larsson  <alexl@redhat.com>
2657
2658         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
2659         Don't use isprint() for chars > 255.
2660
2661 2000-12-21  Havoc Pennington  <hp@redhat.com>
2662
2663         * tests/testtreeview.c: more work
2664
2665 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2666
2667         * docs/README.linux-fb:
2668         Update the docs to the new pangoft2 way.
2669
2670 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2671
2672         * configure.in:
2673         For linux-fb get the pangoft2 cflags and libs. This needs a recent
2674         pango version.
2675         Remove modules/linux-fb/Makefile.
2676
2677         * gdk/linux-fb/gdkdrawable-fb2.c:
2678         Render glyphs using freetype.
2679
2680         * gdk/linux-fb/gdkfb.h:
2681         Add new fb-specific functions needed for managing windows.
2682
2683         * gdk/linux-fb/gdkmain-fb.c:
2684         Remove gdk_font_init/fini() calls.
2685
2686         * gdk/linux-fb/gdkpango-fb.c:
2687         Remove old implementation. Use pangoft2 instead.
2688
2689         * gdk/linux-fb/gdkprivate-fb.h:
2690         Remove PangoFBFont and related stuff.
2691
2692         * gdk/linux-fb/gdkwindow-fb.c:
2693         Implement drawable->get_visible_region.
2694         Implement support for _gdk_window_set_child_handler () and
2695         _gdk_window_get_decorations().
2696
2697         * modules/Makefile.am:
2698         Remove linux-fb subdir.
2699
2700         * modules/linux-fb/*:
2701         Removed all.
2702         
2703 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
2704
2705         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
2706         calls, as they are no longer needed.
2707
2708         * gtk/gtktreemodelsort.c: Fix up the comparison code.
2709         
2710         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
2711         figure out how to emit a signal on an interface.
2712
2713 2000-12-20  Havoc Pennington  <hp@redhat.com>
2714
2715         * tests: new directory to contain tests, gtk/test* should move
2716         here sometime (with appropriate on-cvs-server hackery)
2717
2718         * tests/testtreeview.c, tests/Makefile.am: a test
2719         
2720         * configure.in (AC_OUTPUT): add tests/Makefile
2721
2722         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
2723         and "invisible_set" which were missing
2724
2725         * gtk/gtkrbtree.h: some cheesy indentation fix
2726         
2727 2000-12-20  Alexander Larsson  <alexl@redhat.com>
2728
2729         * gtk/gtkinvisible.c (gtk_invisible_realize):
2730         Attach the style to the window so that the style it is not
2731         leaked when unrealizing the window.
2732
2733 2000-12-18  Havoc Pennington  <hp@redhat.com>
2734
2735         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
2736         begin/end user action where appropriate
2737         (gtk_text_view_commit_handler): add begin/end user action
2738
2739         * gtk/gtktextbuffer.c: add begin/end user action signals, and
2740         bracket interactive operations with begin/end user action pair.
2741         
2742         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
2743         "interactive" arg from insert_text and delete_text signals.
2744         Add begin_user_action, end_user_action signals
2745         (gtk_text_buffer_begin_user_action): 
2746         (gtk_text_buffer_end_user_action): New functions to delimit 
2747         a user-visible action
2748
2749         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
2750         signals.
2751         
2752 2000-12-18  Havoc Pennington  <hp@redhat.com>
2753
2754         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
2755         was pretty non-working.
2756
2757         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
2758         by passing the length to g_utf8_validate().
2759
2760 2000-12-16  Havoc Pennington  <hp@pobox.com>
2761
2762         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
2763         Port to GObject, can go back in gdk-pixbuf after setting up 
2764         a gdk-pixbuf-marshal.h header over there.
2765
2766         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
2767         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
2768         args
2769         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
2770         set
2771         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
2772         here, do it when we create the buttons later
2773         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
2774         (gtk_tree_view_map): paranoia checks that column->button is shown 
2775         and unmapped
2776         (gtk_tree_view_size_request): only request visible children.
2777         Move header size calculation in here, for cleanliness, and 
2778         to maintain invariants for child widgets if we eventually 
2779         let users set different children inside the buttons
2780         (gtk_tree_view_map_buttons): factor out code to map buttons,
2781         since it was being called several times
2782         (gtk_tree_view_size_allocate_buttons): move_resize the drag
2783         windows instead of just moving them; their height may change 
2784         if we allow random widgets in there, or the theme changes.
2785         (gtk_tree_view_size_allocate): move button size allocation 
2786         above emitting the scroll signals, to ensure a sane state when we
2787         hit user code
2788         (gtk_tree_view_button_release): remove queue_resize after
2789         tree_view_set_size(), set_size() will handle any resize queuing
2790         that's needed
2791         (gtk_tree_view_focus_in): just queue a draw, don't fool with
2792         draw_focus goo
2793         (gtk_tree_view_focus): use gtk_get_current_event() and
2794         gdk_event_get_state()
2795         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
2796         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
2797         semicolon
2798         (gtk_tree_view_create_button): show the button here
2799         (gtk_tree_view_button_clicked): actually emit the clicked signal
2800         on the column
2801         (_gtk_tree_view_set_size): return right away if the size is
2802         unchanged, as a cheesy optimization
2803         (gtk_tree_view_setup_model): rename set_model_realized to 
2804         setup_model to match the flag that indicates whether we've 
2805         called it
2806         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
2807         exist, because set_scroll_adjustment does that and it shouldn't
2808         matter what order you call these in
2809         (gtk_tree_view_get_vadjustment): ditto
2810         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
2811         for paranoia
2812         (gtk_tree_view_set_headers_visible): call
2813         gtk_tree_view_map_buttons() instead of using cut-and-paste code
2814         (gtk_tree_view_append_column): clarify whether the return value
2815         is the count of columns before or after, and do the increment 
2816         separately from the return statement so you can tell from the code.
2817         (gtk_tree_view_remove_column): ditto
2818         (gtk_tree_view_insert_column): ditto
2819         (gtk_tree_view_get_column): remove g_return_if_fail for columns
2820         outside the existing range, the docs say that outside-range
2821         columns are allowed, so we handle them as documented. (Presumably
2822         this allows a nice loop with column != NULL as test.)
2823         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
2824         mean (left/right/center etc.).
2825         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
2826         (gtk_tree_view_expand_row): add docs
2827         (gtk_tree_view_collapse_row): add docs
2828
2829         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
2830         function to emit the clicked signal on a column
2831         
2832         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
2833         state of an event
2834         (gdk_event_get_time): don't treat GDK_SCROLL 
2835         as a button event, remove default case from switch so gcc 
2836         will whine if we don't explicitly handle all event types
2837
2838         * gtk/gtktreeselection.h: added some FIXME 
2839         
2840         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
2841         "columns" to "n_columns" and "column" to "columns" for clarity
2842
2843 2000-12-16  Havoc Pennington  <hp@pobox.com>
2844         
2845         * gtk/gtktextiter.c: General cleanup of the log attr iteration
2846         stuff. This should make e.g. the delete key work again in the
2847         text widget...
2848         (gtk_text_iter_forward_cursor_positions): handle negative count
2849         (gtk_text_iter_backward_cursor_positions): handle negative count
2850         (gtk_text_iter_forward_word_ends): handle negative count
2851         (gtk_text_iter_backward_word_starts): handle negative count
2852
2853         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
2854         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
2855         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
2856         GObject. No doubt will cause breakage.
2857
2858         * demos/gtk-demo/textview.c: remove hacks around
2859         non-GObject-ification of the text objects
2860
2861         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
2862         the text tag
2863         
2864 2000-12-14  Havoc Pennington  <hp@pobox.com>
2865
2866         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2867         that we have Xrender
2868
2869 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
2870
2871         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2872         Add two virtualized functions gdk_drawable_get_clip_region - to
2873         get the clip region when drawing.
2874         
2875         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2876         use invalidate_region.
2877
2878         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2879         region.
2880
2881         * acconfig.h configure.in: Check for Xft. For now, assume
2882         that if Xft is found, Pango was compiled with Xft support
2883         as well.
2884
2885         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
2886         gdk_colormap_query_color().
2887         
2888         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2889         with Xft if appropriate.
2890
2891         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2892         a pangoxft context if we have XFT and the environment
2893         variable GD_USE_XFT is set.
2894         
2895         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2896         and also possibly an XftDraw structure.
2897
2898         * gtk/gtkfontsel.c: Handle the case where the font from the
2899         style doesn't match any of the fonts a bit better.
2900         
2901         * gtk/testgtk.c: Add tabs between directional segments for
2902         hebrew/arabic test. (Not really necessary, just a little
2903         prettier.)
2904
2905 2000-12-14  Havoc Pennington  <hp@redhat.com>
2906
2907         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2908         reading a file
2909
2910 2000-12-14  Havoc Pennington  <hp@redhat.com>
2911
2912         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2913         unused call to get_last_line()
2914
2915         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2916         here until boxed is working (and maybe after that - we should
2917         really not gratuitously break old code)
2918
2919         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2920         specific types for font_desc and tabs args, move them to
2921         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
2922         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2923
2924         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2925         use GTK_TYPE_POINTER for signal signatures as a hack-around
2926
2927         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2928         PangoTabArray
2929
2930         * gtk/gtktextlayout.c (line_display_iter_to_index): 
2931         make static
2932         (line_display_index_to_iter): make static
2933
2934         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2935         to marshal a string not a boxed
2936
2937         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2938
2939         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2940         since the UTF-8 isn't validated yet
2941
2942         * gtk/gtktextsegment.c (char_segment_check_func): don't require
2943         lines to end in '\n'
2944         
2945         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2946         forward_to_delimiters, and grapheme boundaries
2947         (gtk_text_view_delete_from_cursor): properly handle non-newline
2948         delimiters, and grapheme boundaries
2949
2950         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2951         to gtk_text_iter_forward_to_delimiters, and make it work properly
2952         if empty lines end with a character other than '\n'
2953
2954         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2955         position
2956
2957 2000-12-15  Tor Lillqvist  <tml@iki.fi>
2958
2959         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2960
2961         * gtk/gtk.def
2962         * gdk/gdk.def: Update.
2963
2964         * gdk/win32/gdkmain-win32.c
2965         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2966         gdkmain-win32.c here.
2967
2968         * gdk/win32/makefile.mingw.in (all): No need to make
2969         gdk-win32res.o here, the makefile one step up will call us to make
2970         it.
2971
2972         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2973         gdkkeys-win32.
2974
2975         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2976
2977         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2978         call to g_source_add().
2979
2980         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2981         leak. Thanks to Andreas Kemnade.
2982
2983 2000-12-13  Havoc Pennington  <hp@pobox.com>
2984
2985         * gtk/gtktextbtree.h: Remove double _ in front of some functions
2986
2987         * gtk/gtktext*.[hc]: update accordingly
2988         
2989 2000-12-13  Havoc Pennington  <hp@pobox.com>
2990
2991         * gtk/gtktextbtree.h: Put _ in front of every function in this 
2992         header file
2993
2994         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2995
2996 2000-12-13  Alex Larsson  <alexl@redhat.com>
2997
2998         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2999         Add support for ps2 intellimouse.
3000
3001         * gdkkeyboard-fb.c:
3002         Move shift-F1 repaint handling to xlate handler only.
3003         
3004         * docs/README.linux-fb:
3005         Add imps2 to docs.
3006         Document the new refresh keys.
3007         
3008 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
3009
3010         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
3011
3012         * gtk/gtkbox.c: change property types from (u)long to (u)int for
3013         ::position and ::padding.
3014
3015         * gtk/gtkcontainer.c: make ::border_width an INT property.
3016
3017         * gtk/gtkpacker.c: make ::position an INT property.
3018
3019         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3020         guard against NULL h/v scrollbars, since this is used at construction
3021         time.
3022
3023         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3024         internal gtk_clist_constructor().
3025
3026         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3027         gtk_ctree_constructor().
3028
3029         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
3030         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
3031
3032         * docs/reference/Makefile.am: fun stuff, disabled docs generation
3033         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
3034
3035         * gtk/gtkwidget.[hc]:
3036         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
3037         and gtk_widget_get().
3038         (gtk_widget_new): use g_object_new_valist().
3039         (gtk_widget_set): use g_object_set_valist().
3040
3041         * gtk/gtkobject.[hc]:
3042         removed gtk_object_arg_get_info(), gtk_object_getv(),
3043         gtk_object_query_args(), gtk_object_newv(),
3044         gtk_object_class_add_signals(),
3045         gtk_object_class_user_signal_new(),
3046         gtk_object_class_user_signal_newv(),
3047         gtk_object_arg_set(), gtk_object_arg_get(),
3048         gtk_object_args_collect(),
3049         gtk_object_default_construct(),
3050         gtk_object_constructed(),
3051         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
3052         removed nsignals, signals and n_args members from GtkObjectClass.
3053         (gtk_object_new): use g_object_new_valist().
3054         (gtk_object_set): use g_object_set_valist().
3055         (gtk_object_get): use g_object_get_valist().
3056         
3057         * gtk/gtkcompat.h: define gtk_object_default_construct().
3058         
3059         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
3060         g_object_new().
3061
3062         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
3063         fucntions, cleaned up method assignments (make sure your structures
3064         are setup properly before calling out). removed all GTK_CONSTRUCTED
3065         hacks ;)
3066
3067 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
3068
3069         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
3070         off-by-one error in checks. (Dave Lambert)
3071
3072 2000-12-12  Alexander Larsson  <alexl@redhat.com>
3073
3074         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
3075         Don't free gdk_fb_keyboard twice.
3076
3077 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
3078
3079         * gtk/testgtk.c:
3080         (create_tooltips): 
3081         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
3082         use GObject swapped_signal:: properties instead.
3083
3084         * gtk/gtkcellrenderertoggle.c: 
3085         * gtk/gtkcellrenderertextpixbuf.c: 
3086         * gtk/gtkcellrenderertext.c: 
3087         * gtk/gtkcellrendererpixbuf.c: 
3088         * gtk/gtkcellrenderer.c:
3089         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
3090         missing warnings for invalid property ids, install properties
3091         with g_object_class_install_property() now.
3092         
3093         * gtk/gtksignal.c:
3094         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
3095         
3096 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
3097         
3098         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
3099         to determine if a window is the focus widget within
3100         its toplevel.
3101
3102         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
3103         to be boolean.
3104
3105         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
3106         of the case where the container CAN_FOCUS to here instead
3107         of having it in each individual move-the-focus place.
3108
3109         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
3110         focusing to be geometric in a much more obvious sense. Arrowing
3111         around is still non-intuitive because it isn't perfect and
3112         because entries, etc, grab the arrow keys, but it at least
3113         usually will do what you expect now.
3114         
3115         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
3116         file.
3117
3118         * gtk/gtknotebook.c: Change tabs to be a single item in
3119         the focus chain. Make movement of focus on tabs with arrow
3120         keys wrap around.
3121         
3122         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
3123         CHECK_FIND_CHILD macro to give informative error messages
3124         instead of silent returns.
3125
3126         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
3127         flag since we handle GdkReturn on the tabs.
3128
3129         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
3130         windows rather than sending expose events directly.
3131
3132         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
3133         definition for GtkNotebookPage into .c file, since it is private.
3134
3135         * gtk/testgtk.c (create_notebook): Add option for 
3136         testing borderless notebook.
3137
3138         * gtk/testgtk.c (page_switch): Removed egregious poking
3139         around in GTK+ internals.
3140
3141         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
3142
3143         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
3144         properly through gtk_clist_focus. Make the title headers a
3145         single item in the tab-focus chain, and make left-right wrap
3146         around.
3147
3148         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
3149         focus method so that wrapping around works properly.
3150
3151         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
3152         that is handled for the widget now. 
3153
3154 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
3155
3156         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
3157         widgets as TOPLEVEL.
3158
3159         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
3160         TOPLEVEL widgets are containers.
3161
3162         * gtk/gtkinvisible.h: Remove useless include.
3163
3164 2000-12-11  Havoc Pennington  <hp@redhat.com>
3165
3166         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
3167         Handle chopping off \r\n and 0x2029 in addition to \n before
3168         passing to PangoLayout
3169
3170         * gtk/gtkimcontextsimple.c
3171         (gtk_im_context_simple_get_preedit_string): 
3172         return an empty string if no match is pending
3173
3174         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
3175         assertion that the returned preedit string was sane
3176
3177         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
3178         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
3179         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
3180
3181 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
3182
3183         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
3184         Fix up finalizer to chain to its parent.
3185
3186 2000-12-11  Alexander Larsson  <alexl@redhat.com>
3187
3188         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
3189         Clearified the difference between the keyboard types. Wrote a note
3190         about the magic sysrq key to get out of raw mode.
3191
3192 2000-12-09  James Henstridge  <james@daa.com.au>
3193
3194         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
3195         member to hold masks for detecting the start of a protocol packet.
3196         (mouse_devs): add packet start masks for ps2 and ms device types.
3197         Left the mask for fidmour blank, as I have no idea what it should
3198         be.
3199         (handle_mouse_io): skip bytes until we get to the start of a
3200         packet.  My Logitech mouse seems to be passing an extra NULL pad
3201         byte, and GPM does a similar thing here.
3202         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
3203         this is the ms mouse driver.
3204         (gdk_fb_mouse_ms_packet): fix up button handling, which was
3205         completely broken except for button1.  It was checking the wrong
3206         bit in the packet for the status of the right mouse button, and
3207         wrongly assuming right == button2 rather than 3.  I fixed that and
3208         also added support for middle button (button2).
3209
3210 2000-12-08  Havoc Pennington  <hp@redhat.com>
3211
3212         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
3213         that cause a segfault on text insertion
3214
3215         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
3216         warning
3217
3218         * gtk/gtktextiter.c (test_log_attrs): use
3219         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
3220
3221         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
3222         Get log attrs for a line, using a cache stored on the buffer
3223         
3224         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
3225         reported by Jeff Franks
3226
3227 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3228
3229         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
3230         /dev/ttyS0 -> /dev/mouse
3231
3232 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3233
3234         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
3235         Added dummy gdk_fontset_load.
3236
3237 2000-12-08  Alexander Larsson  <alexl@redhat.com>
3238
3239         * docs/README.linux-fb:
3240         * docs/Makefile.am:
3241         Initial GtkFB docs.
3242         
3243         * gdk/linux-fb/Makefile.am:
3244         Define GDK_DATA_PREFIX.
3245
3246         * gdk/linux-fb/gdkmain-fb.c:
3247         Fix typo.
3248         Change default display to /dev/fb0.
3249
3250         * gdk/linux-fb/gdkpango-fb.c:
3251         Add $(prefix)/share/fonts/ to font path.
3252         
3253 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3254
3255         * gdk/linux-fb/gdkkeyboard-fb.c:
3256         New file containing the abstracted keyboard driver. Most code
3257         taken from gdkinput-ps2.c
3258
3259         * gdk/linux-fb/gdkinput-ps2.c:
3260         Removed file.
3261         
3262         * gdk/linux-fb/Makefile.am:
3263         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
3264
3265         * gdk/linux-fb/gdkcolor-fb.c:
3266         display->fb was renamed to display->fb_fd.
3267
3268         * gdk/linux-fb/gdkcursor-fb.c:
3269         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3270
3271         * gdk/linux-fb/gdkinput.c:
3272         Moved gdk_input_init here from gdkinput-ps2.c
3273
3274         * gdk/linux-fb/gdkmain-fb.c:
3275         display->fb was renamed to display->fb_fd.
3276         Now the tty and the console is opened here instead
3277         of in the keyboard driver. Also check GDK_VT to see what
3278         tty to open.
3279         Move gdk_beep () here from gdkinput-ps2.c
3280         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3281
3282         * gdk/linux-fb/gdkmouse-fb.c:
3283         Add header.
3284         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3285         Return correct keyboard modifiers.
3286         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
3287
3288         * gdk/linux-fb/gdkprivate-fb.h:
3289         Add tty and vt info to display.
3290         Add orignal modeinfo storage to display
3291         Update global functions
3292
3293         * gdk/linux-fb/gdkwindow-fb.c:
3294         Added gdk_fb_window_find_focus().
3295         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3296
3297 2000-12-07  Havoc Pennington  <hp@pobox.com>
3298
3299         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
3300         function, noticed by Alex
3301
3302 2000-12-06  Elliot Lee  <sopwith@redhat.com>
3303
3304         * configure.in: Detect freetype properly
3305
3306         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
3307         above.
3308
3309 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3310
3311         * gdk/linux-fb/Makefile.am:
3312         Add gdkmouse-fb.c
3313         
3314         * gdk/linux-fb/gdkmouse-fb.c:
3315         New file. Abstracted the mouse drivers a bit.
3316
3317         * gdk/linux-fb/gdkcursor-fb.c:
3318         The cursor hide/show functions was moved here from gdkinput-ps2.c.
3319
3320         * gdk/linux-fb/gdkinput-ps2.c:
3321         Removed old mouse handling code. Moved cursor handling code
3322         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
3323         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
3324         gdk_mouse_get_info.
3325
3326         * gdk/linux-fb/gdkmain-fb.c:
3327         Pass NULL pointers for x,y in gdk_mouse_get_info call.
3328
3329         * gdk/linux-fb/gdkprivate-fb.h:
3330         Removed public gdk_fb_find_common_ancestor, added and renamed
3331         functions for the new mouse handling code.
3332
3333         * gdk/linux-fb/gdkwindow-fb.c:
3334         Moved gdk_fb_window_send_crossing_events here. added global
3335         variable gdk_fb_window_containing_pointer. made
3336         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
3337         renamed to gdk_mouse_get_info.
3338
3339 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3340
3341         * gdk/linux-fb/gdkevents-fb.c:
3342         Update to match latest gmain/gsource changes.
3343
3344         * gdk/linux-fb/gdkinput-ps2.c:
3345         Bogus gdk_keymap_get_entries_for_keycode implementation so that
3346         it links. Will be implemented later.
3347
3348 2000-12-03  Havoc Pennington  <hp@pobox.com>
3349
3350         * gdk/Makefile.am: add gdkkeys.[hc]
3351
3352         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
3353         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
3354
3355         * acconfig.h, configure.in: add checks and command line options
3356         for XKB
3357
3358         * gdk/x11/gdkkeys-x11.c: Implement the above functions
3359         
3360         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
3361         and group in the key event
3362
3363         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
3364         field with the low-level hardware key code, and a group
3365         field with the keyboard group
3366
3367         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
3368         and declare a couple globals used for keymap handling
3369         
3370         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
3371         hold down Shift-Control and type a hex number to get a Unicode 
3372         character corresponding to the hex number
3373         (gtk_im_context_simple_get_preedit_string): Fix cursor position
3374         (return bytes not chars)
3375
3376 2000-12-05  Elliot Lee  <sopwith@redhat.com>
3377
3378         * gdk/gdkcolor.h: Make GdkColor specify element sizes
3379         to avoid waste on 64-bit platforms.
3380
3381 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
3382
3383         * INSTALL: Fix link to PNG home, remove reference
3384         to fribidi.
3385
3386         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
3387         
3388         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
3389         tested.)
3390
3391         * gtk/gtkcheckmenuitem.c: Permanently turn on
3392         always_show_toggle.
3393
3394         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
3395         be NULL. (Vladimir Klebanov, #26545)
3396
3397         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
3398         some signed/unsigned comparison problems. (#6510,
3399         David Kaelbling)
3400
3401         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
3402         return type to boolean (Oskar Liljeblad, #18648)
3403
3404 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3405
3406         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
3407         Remove bogus colormap setting.
3408
3409 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3410
3411         * gdk/linux-fb/gdkcolor-fb.c:
3412         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
3413
3414         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
3415         Must set colormap.
3416         
3417 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
3418
3419         * docs/tutorial/gtk-tut.sgml: DND updates
3420
3421 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
3422
3423         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3424         Remove old debug g_warning().
3425         (gdk_fb_draw_drawable): The src argument can be either a wrapper
3426         or an implementation, just pass the implementation to draw_drawable_2.
3427         
3428         * gdk/linux-fb/gdkprivate-fb.h:
3429         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
3430
3431         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3432         clear and invalidate area when window is destroyed.
3433         (send_map_events): Remove old commented out code.
3434
3435 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3436
3437         * gdk/linux-fb/gdkpango-fb.c:
3438         Use italic instead of oblique in font aliases.
3439         
3440         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
3441         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
3442         other unsupported functions.
3443
3444 2000-12-04  Havoc Pennington  <hp@redhat.com>
3445
3446         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
3447
3448         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
3449
3450         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
3451
3452         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
3453         hack to avoid infinite loops (synthetic expose event) - 
3454         Owen has more appropriate fixes in a branch he'll check in later.
3455
3456         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
3457         separator, CR, and CRLF as line ends
3458
3459         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
3460         into lines using pango_find_paragraph_boundary(); other bits of
3461         the widget are still going to be broken if the boundary isn't '\n'
3462         though
3463
3464 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3465
3466         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
3467         multiply.
3468
3469         * gdk/linux-fb/gdkpango-fb.c:
3470         Copied some 26.6 scaling macros from pango to clean up the rounding.
3471         (pango_fb_font_get_glyph_info): Correct sign on x value.
3472
3473         * gdk/linux-fb/gdkprivate-fb.h:
3474         Removed unreferenced external functions.
3475
3476         * modules/linux-fb/Makefile.am: Use ` instead of '.
3477
3478         * modules/linux-fb/basic.c:
3479         Remove dead code. In particular the dummy lang engine which broke all
3480         pango layouts in GtkFB. Don't include tables-big.i anymore.
3481
3482         * modules/linux-fb/tables-big.i:
3483         Upgrade to latest version from pango. Left for reference, basic_ranges
3484         moved to basic.c.
3485         
3486 2000-12-04  Havoc Pennington  <hp@redhat.com>
3487
3488         Fix bugs Alex found:
3489         
3490         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
3491         to "draw"
3492
3493         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
3494
3495         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
3496
3497         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
3498         implementation in here, apparently the expose() implementation was
3499         dead code.
3500
3501 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3502
3503         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3504         Return positive descent.
3505
3506 2000-12-02  Havoc Pennington  <hp@pobox.com>
3507
3508         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
3509         method and signal
3510         
3511         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
3512         calls gdk_window_process_updates() to push the exposes through
3513         (gtk_widget_class_init): No more draw signal, no
3514         gtk_widget_real_draw()  
3515         
3516         * gtk/gtkbin.c (gtk_bin_draw): remove
3517
3518         * gtk/gtkbox.c (gtk_box_draw): remove
3519
3520         * gtk/gtkbutton.c (gtk_button_draw): remove
3521
3522         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
3523
3524         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
3525
3526         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
3527
3528         * gtk/gtkclist.c (gtk_clist_draw): remove
3529
3530         * gtk/gtkentry.c (gtk_entry_draw): remove
3531
3532         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
3533
3534         * gtk/gtkfixed.c (gtk_fixed_draw): remove
3535
3536         * gtk/gtkframe.c (gtk_frame_draw): remove
3537
3538         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
3539
3540         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
3541
3542         * gtk/gtklayout.c (gtk_layout_draw): remove
3543
3544         * gtk/gtklist.c (gtk_list_draw): remove
3545
3546         * gtk/gtklistitem.c (gtk_list_item_draw): remove
3547
3548         * gtk/gtkmenu.c (gtk_menu_draw): remove
3549
3550         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
3551
3552         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
3553
3554         * gtk/gtknotebook.c (gtk_notebook_draw): remove
3555
3556         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
3557
3558         * gtk/gtkpacker.c (gtk_packer_draw): remove
3559
3560         * gtk/gtkrange.c (gtk_range_draw): remove
3561
3562         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
3563
3564         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
3565
3566         * gtk/gtktable.c (gtk_table_draw): remove
3567
3568         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
3569
3570         * gtk/gtktext.c (gtk_text_draw): remove
3571
3572         * gtk/gtktextview.c (gtk_text_view_draw): remove
3573
3574         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
3575
3576         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
3577
3578         * gtk/gtktree.c (gtk_tree_draw): remove
3579
3580         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
3581
3582         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
3583
3584         * gtk/gtkviewport.c (gtk_viewport_draw): remove
3585
3586         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
3587
3588         * gtk/gtkvscale.c (gtk_vscale_draw): remove
3589
3590         * gtk/gtkwindow.c (gtk_window_draw): remove
3591
3592 2000-20-01  Anders Carlsson  <andersca@gnu.org>
3593
3594         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
3595         a GtkToggleButton is both insensitive and active, it was being
3596         drawn by the GtkButton draw handler which doesn't check the
3597         state. Now it's calling gtk_toggle_button_paint instead.
3598         
3599 2000-12-01  Havoc Pennington  <hp@redhat.com>
3600
3601         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
3602         dangling pointers to the appearance attributes from the 
3603         line display
3604
3605         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
3606         width/height to mean "full width/height of drawable"
3607
3608         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
3609         click to select word/line
3610         
3611         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
3612         when getting log attrs. Get a slice, so that pixmaps and stuff
3613         are properly handled.
3614
3615         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3616         paste into the selection (replaces selection now, previously
3617         crashed or added to selection). Reveals longstanding btree bug -
3618         select multiple lines, middle-click on the selection, boom. This
3619         isn't related to my changes though.
3620
3621         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3622         PangoLogAttrs changes
3623         (gtk_entry_move_backward_word): ditto
3624
3625         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3626         functions return bool whether the iter moved onto a
3627         dereferenceable position.
3628  
3629         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3630         functions for motion in terms of display lines.
3631
3632         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3633         get the buffer a mark is inside
3634         
3635 2000-12-01  Alexander Larsson  <alexl@redhat.com>
3636
3637         * gdk/linux-fb/Makefile.am:
3638         * modules/linux-fb/Makefile.am:
3639         Freetype 2 final uses freetype-config
3640
3641         * gdk/linux-fb/gdkpango-fb.c:
3642         Upgrade to use Freetype 2 final.
3643         More flexible support for font aliases, this also fixes a bug with
3644         GtkFontSelector, as the aliases must be visible in the font/family list,
3645         or GtkFontSelector reads uninitialized memory.
3646
3647 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
3648
3649         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
3650         XGetIMValues to properly terminate variable argument list, and do
3651         NULL return check for ic_values and xim_styles.
3652
3653         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
3654         Restore preedit state after XmbResetIC().
3655         
3656         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
3657         XvaCreateNestedList() should take XvaNestedList, but not
3658         XvaNestedList*.
3659
3660         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
3661         preedit_draw_callback, preedit_caret_callback): Match
3662         "preedit-changed" signal name to "preedit_changed" to be
3663         consistent to the spec.
3664
3665         * gtk/gtkimcontextsimple.c (check_table):
3666         Match "preedit-changed" to "preedit_changed" to be consistent
3667         to the spec.
3668
3669 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
3670
3671         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
3672         gc->clip_region == NULL>
3673
3674 2000-11-30  Tor Lillqvist  <tml@iki.fi>
3675
3676         Changes by Hans Breuer:
3677         
3678         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3679         Dont't use negative width and height as max_hints. This fixes
3680         Owen's recent testgtk changes for win32.
3681
3682         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
3683         gdk_win32_hdc_release): These are exported and may be called with
3684         other drawable types than our GdkDrawableImplWin32 (?).
3685
3686         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
3687         so always #define USE_BACKING_STORE.
3688
3689         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
3690         of printf for debugging output.
3691
3692         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
3693         
3694         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
3695
3696         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
3697         declaration.
3698
3699         * gtk/gtktexttypes.h: Ditto.
3700
3701         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
3702         (GDK_VoidSymbol) also if in case of arg check failure.
3703
3704         * gtk/gtkimcontextsimple.c
3705         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
3706         position to the pointer, but to the variable it points to.
3707
3708         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
3709
3710         * gtk/gtk.def: Updates.
3711
3712 2000-11-29  Elliot Lee  <sopwith@redhat.com>
3713
3714         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
3715         GTK_TYPE_TREE_MODEL.
3716
3717 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3718
3719         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
3720         Set the size of the font from the description.
3721         (gdk_text_width): Gross hack that calculates the width
3722         of text by text_length * size/2. This is necessary because
3723         GtkLabel does some ugly gtk_string_width call to calculate
3724         an good size.
3725         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
3726
3727 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
3728
3729         * docs/tutorial/gtk-tut.sgml: DND updates
3730
3731 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3732
3733         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3734         If you pass width or height == 0 to gdk_window_clear_area they
3735         should be calculated from the window size.
3736
3737 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3738
3739         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
3740         a grab, but no grab-cursor, use the cursor from the grabbed
3741         window. (gdk_fb_window_send_crossing_events): Send normal
3742         enter/leave notifications if grab and owner_events == TRUE.
3743
3744 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3745
3746         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3747         Do implicit button grabs, even if the window doesn't
3748         want the event.
3749         (gdk_fb_window_send_crossing_events): If there is a
3750         grab, only the grabbed window gets normal enter/leave
3751         notifications. On ungrab go from grabbed window to current.
3752         Don't send any notification to b when propagating from c -> b.
3753         If setting a grab on window, don't set prev_window.
3754         (handle_mouse_input): Send enter/leave events to the window the
3755         mouse is over, not the grabbed one.
3756         
3757 2000-11-28  Elliot Lee  <sopwith@redhat.com>
3758
3759         * gdk/gdkregion-generic.c: Zap warning.
3760         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
3761         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
3762
3763 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
3764
3765         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3766         The cursor should be hidden if it is part of either the
3767         source or destination region. Not only if it is in both.
3768         (gdk_window_set_transient_for): Silence warnings.
3769
3770 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3771
3772         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
3773         The default mode in X is Pie Arcs, therefore that is
3774         what Gtk+ uses.
3775
3776 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3777
3778         * gdk/linux-fb/gdkinput-ps2.c:
3779         Implement correct EnterNotify/LeaveNotify:
3780         (gdk_fb_window_send_crossing_events): New function that sends
3781         all GdkCrossingEvents from the last mouse-window to the specified
3782         destination.
3783         (gdk_fb_window_visibility_crossing): Removed function.
3784         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
3785         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
3786         instead of gdk_window_get_pointer() for better readability.
3787
3788         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
3789         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
3790
3791         * gdk/linux-fb/gdkprivate-fb.h:
3792         removed gdk_fb_window_visibility_crossing, added
3793         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
3794
3795         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
3796         New function that finds the least common ancestor of two windows.
3797         (gdk_window_show, gdk_window_hide):
3798         Use gdk_fb_window_send_crossing_events.
3799         (gdk_fb_window_move_resize): Send configure events to toplevel
3800         windows. Use gdk_fb_window_send_crossing_events.
3801
3802 2000-11-27  Havoc Pennington  <hp@redhat.com>
3803
3804         * gtk/gtkprivate.h (enum): Remove a trailing comma
3805
3806 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
3807
3808         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
3809         the "changed" callback of the adjustment.  We need to redraw the
3810         spin button's arrows when the adjustment's range changes.
3811         (adjustment_changed_cb): Draw the arrows.
3812         (gtk_spin_button_value_changed): Draw the arrows.
3813
3814 2000-11-23  Alexander Larsson  <alexl@redhat.com>
3815
3816         * gdk/linux-fb/gdkselection-fb.c:
3817         Initial selection implementation.
3818
3819         * gtk/gtkselection.c:
3820         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
3821         requestor in gtk_selection_request.
3822         
3823         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
3824         Added gdk_selection_property atom.
3825
3826         * gdk/linux-fb/gdkprivate-fb.h:
3827         Export _gdk_selection_window_destroyed.
3828         Removed mask_off_x/y from GdkCursorPrivateFB.
3829         Removed hbearing, added top, left to PangoFBGlyphInfo.
3830
3831         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3832         Call _gdk_selection_window_destroyed
3833         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
3834         the root window has been created.
3835         (static_dx_hack, static_dy_hack, compare_draw_rects,
3836         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
3837         in region. They are already sorted. Instead just traverse them in
3838         reverse if draw_direction < 0.
3839         
3840         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3841         Double-clicks must be sent after the normal button_press.
3842         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3843         
3844         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
3845         Pass _gdk_fb_screen_gc instead of NULL.
3846
3847         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3848         Initialize gdk_selection_property.
3849         (gdk_event_make): Remove unused code.
3850
3851         * gdk/linux-fb/gdkcursor-fb.c:
3852         Make the pixmap for the cursor the same size as the mask. Also remove
3853         the mask_off_x/y fields in GdkCursorPrivateFB and combine
3854         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
3855         Now the whole cursor is visible.
3856
3857         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3858         Fix bug where xdest+height instead of ydest+height was used
3859         to calculate if the source and dest overlapped. This fixes the
3860         redraw bug when the main window in testgtk was scrolled when
3861         partially covered by a tall window.
3862         Copy rectangles in region in order depending on draw_direction.
3863         Also moved the draw_direction flipping of start_y and end_y into
3864         the gc functions, as this might not be what all of them want.
3865         (gdk_fb_draw_lines): Support dashed lines.
3866         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3867         so that the text is positioned correctly (was 1 pixel high).
3868
3869         gdk/linux-fb/gdkgc-fb.c:
3870         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3871         all lines were drawn a pixel to short. Also checked the default of
3872         the rest of the values, and they're the same as X now.
3873
3874         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3875         Clean up pixel positioning of the glyphs. Just use bgy->top and
3876         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3877         to all divisions to get correct rounding behaviour.
3878
3879         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3880         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3881         Moved start_y/end_y flip into draw_drawable implementations.
3882         Flip also x rendering when draw_direction < 0.
3883         Remove unneccesary multiply with draw_direction.
3884
3885 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
3886
3887         * docs/tutorial/gtk-tut.sgml:
3888           - get rid of gtk_toggle_button_toggled FUD
3889           - start DND section - needs work - based on:
3890                 http://wolfpack.twu.net/docs/gtkdnd/
3891
3892 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3893
3894         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3895         Correct calculation of font metrics. Now GtkEntrys have sane
3896         size.
3897
3898 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3899
3900         * gdk/gdktypes.h:
3901         Add new type GdkSpan
3902         
3903         * docs/reference/gdk/gdk-sections.txt,
3904         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3905         gdk/gdkregion.h:
3906         Implement and document gdk_region_spans_intersect_foreach.
3907
3908         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3909         Add new file gdkrender-fb.c which contains all core
3910         rendering code.
3911         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3912         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3913         (optimized rectangle fillers).
3914
3915         * gdk/linux-fb/gdkdrawable-fb2.c:
3916         Move all rendering code to gdkrender-fb.c.
3917         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3918         Use the new span intersection functions in gdk_fb_fill_spans.
3919         gdk_fb_draw_rectangle() clips filled rectangles and calls
3920         gc->fill_rectangle with the result.
3921         gdk_fb_fill_spans() gets extra argument "sorted".
3922
3923         * gdk/linux-fb/gdkevents-fb.c:
3924         Remove unused includes and defines.
3925         New function gdk_fb_get_time() to get correct time for events.
3926
3927         * gdk/linux-fb/gdkinput-ps2.c:
3928         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3929         Make sure to set the time of all events.
3930
3931         * gdk/linux-fb/gdkmain-fb.c:
3932         Use gdk_fb_get_time ().
3933
3934         * gdk/linux-fb/gdkprivate-fb.h:
3935         New virtual GC calls: fill_span & fill_rectangle.
3936         Export gdk_fb_get_time().
3937         gdk_fb_fill_spans() gets extra argument "sorted".
3938
3939         * gdk/linux-fb/mi*.c:
3940         Use GdkSpan instead of GdkRectangle.
3941         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3942         from XFree 4 source)
3943         
3944 2000-11-22    <jrb@redhat.com>
3945
3946         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3947         reversing the order in an if statement will do.  Doing so managed
3948         to make the treemodelsort half work.  Other half will follow after
3949         I get the insert function fully fixed.
3950
3951 2000-11-21  Elliot Lee  <sopwith@redhat.com>
3952         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3953         more than 2 bits. Besides, I need to implement an evil hack. :)
3954
3955 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
3956
3957         * docs/tutorial/gtk-tut.sgml: minor corrections
3958
3959 2000-11-20  Jonathan Blandford <jrb@redhat.com>
3960         * gtk/gtktreemodelsort.h: Add convertion functions to let you
3961           convert to and from relative path's and iters.
3962
3963         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
3964           testing sorting functions a bit better.  Currently broken -- will
3965           fix in morning.
3966
3967 2000-11-20  Havoc Pennington  <hp@redhat.com>
3968
3969         * gtk/gtkwidget.c: Documented a bunch of functions in here
3970         (gtk_widget_realize): Warn if you try to realize
3971         a widget with no parent that isn't a toplevel
3972         (gtk_widget_intersect): return a gboolean
3973
3974 2000-11-20  Havoc Pennington  <hp@redhat.com>
3975
3976         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3977         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3978         scrolling to be implemented in GDK to finish. Also, right now
3979         we just size_allocate all children on every layout change,
3980         which is pretty lame. Test commented out of testtext.c, 
3981         until it works better.
3982
3983 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
3984
3985         * gdk/linux-fb/gdkdrawable-fb2.c:
3986         Removed unused arguments from gdk_fb_drawable_get_pixel().
3987
3988         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3989         Renamed fidur specific mouse packet data in MouseDevice to
3990         generic. Used it in ps2 mouse handling code to avoid blocking
3991         reads.
3992
3993 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
3994
3995         * demos/gtk-demo/main.c: Changed to have the list become
3996         non-italic when the demo window is destroyed through an external
3997         event (like a close button).  Doing so found three bugs in the
3998         widget.
3999
4000         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
4001
4002         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
4003         we actually set the cell.
4004
4005         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
4006
4007         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4008         free a leaked path.  Thanks memprof.
4009
4010 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
4011
4012         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
4013         off-by-one error when destroying allocated segments
4014         on failure. (Elliot)
4015
4016 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
4017
4018         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4019         memleaks found by Evan Martin.
4020
4021 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
4022
4023         * Released 1.3.2
4024         
4025         * NEWS: Updates for 1.3.2
4026
4027 2000-11-17  Tor Lillqvist  <tml@iki.fi>
4028
4029         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
4030         but in general for window system specific events.
4031
4032         * gtk/gtk.def
4033         * gtk/makefile.mingw.in
4034         * gtk/makefile.msc.in: Update.
4035         
4036         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
4037
4038 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
4039
4040         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
4041         distribute gtk.immodules.
4042
4043         * gtk/Makefile.am (install-data-local): Don't install the
4044         gtk.immodules file created for the uninstalled modules;
4045         instead run gtk-query-immodules after install
4046
4047 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
4048
4049         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4050         -rpath to the right install location.
4051
4052         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
4053         -export-dynamic.
4054
4055         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
4056         properly.
4057
4058 2000-11-15  Havoc Pennington  <hp@pobox.com>
4059
4060         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
4061         patch from Mikael Hermansson to temporarily stop blinking while
4062         the user is using the keyboard to type or navigate. 
4063
4064         Also, when blinking, stay on for longer than we stay off. Also,
4065         return from start_cursor_blink if !cursor_visible, to save
4066         checking that flag all over the place before we call
4067         start_cursor_blink.
4068
4069 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
4070
4071         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
4072         only contain a "fontset" line, which is now ignored.
4073
4074         * gtk/gtkentry.c (gtk_entry_button_release): Make 
4075         double-click-to-select-word work.
4076         
4077 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
4078
4079         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
4080         Don't move back one char when we are actually at the end of the 
4081         paragraph.
4082
4083 2000-11-15  Robert Brady  <robert@suse.co.uk>
4084
4085         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
4086         'o' < 'p'.
4087         
4088         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
4089         bind_textdomain_codeset.
4090
4091         (gtk_init_check): Make the warning about translating default:LTR
4092         sterner.
4093         
4094 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
4095
4096         * **/Makefile.am : remove unecessary rules for win32-specific
4097         config-substituted targets. If you want these rules, use
4098         --enable-maintainer-mode (called automatically by autogen.sh).
4099         Stops a lot of unneccessary make-time warnings.
4100
4101         * gtk/gtktext{layout,display}.c: Factor in total width as
4102         well as screen when figuring alignment for word-wrap as well as
4103         no wrap; this is necessary to handle lines that cannot be wrapped
4104         at all.
4105
4106 2000-11-15  Havoc Pennington  <hp@redhat.com>
4107
4108         * gtk/testtext.c: Implement essential color cycling feature
4109
4110 2000-11-15  Havoc Pennington  <hp@redhat.com>
4111
4112         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
4113         when we invalidate the main window.
4114
4115         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
4116         GtkTextView will now invalidate the side windows for us when text
4117         changes.
4118
4119 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
4120
4121         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
4122         unconditionally, since we may need to update the horizontal
4123         scrollbars even if the height didn't change.
4124
4125         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
4126         the extra attrs, since some of them affect size.
4127
4128         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
4129         x_offset correctly.
4130
4131 2000-11-15  Havoc Pennington  <hp@redhat.com>
4132
4133         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
4134         don't move the first line out into the margin, instead move the
4135         whole paragraph in order to make space for the first line within 
4136         the margin
4137
4138 2000-11-15  Havoc Pennington  <hp@redhat.com>
4139
4140         * gtk/gtktextview.c (changed_handler): offset redraw rect by
4141         xoffset in addition to yoffset, so horizontal scrolling doesn't
4142         break redraws
4143
4144 2000-11-15  Havoc Pennington  <hp@redhat.com>
4145
4146         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
4147         from the cursor
4148         (render_layout_line): fix reversed test that caused weird
4149         underlines to get drawn
4150
4151 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4152
4153         * gdk/linux-fb/gdkprivate-fb.h:
4154         Fix debug macros.
4155         
4156 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4157
4158         * gdk/linux-fb/gdkprivate-fb.h:
4159         Added virtual functions set_pixel, get_color,
4160         fill_span and draw_drawable to the GC.
4161         Added global _gdk_fb_screen_gc to use instead of
4162         NULL when drawing to the screen.
4163         Added _gdk_fb_gc_calc_state() prototype.
4164
4165         * gdk/linux-fb/gdkgc-fb.c:
4166         Call _gdk_fb_gc_calc_state() on any gc state change.
4167
4168         * gdk/linux-fb/gdkglobals-fb.c:
4169         Add _gdk_fb_screen_gc
4170                 
4171         * gdk/linux-fb/gdkdrawable-fb2.c:
4172         _gdk_fb_gc_calc_state() calculates best functions
4173         for the GC state and depth.
4174         Moved bpp specialized code to separate functions.
4175         Added optimized 24 bpp AA draw_drawable.
4176
4177         * gdk/linux-fb/gdkevents-fb.c:
4178         Silence gcc warning.
4179
4180         * gdk/linux-fb/gdkimage-fb.c:
4181         Use _gdk_fb_screen_gc
4182
4183         * gdk/linux-fb/gdkwindow-fb.c:
4184         Init and use _gdk_fb_screen_gc
4185
4186         * gdk/linux-fb/mitypes.h:
4187         Remove unused types.
4188
4189 2000-11-14  Havoc Pennington  <hp@pobox.com>
4190
4191         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
4192         to pixels
4193
4194 2000-11-14  Havoc Pennington  <hp@pobox.com>
4195
4196         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
4197
4198         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
4199         unknown char, no real reason we were using a variable. 
4200         Remove gtk_text_unknown_char variable. Fix all the text widget
4201         files accordingly.
4202
4203         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
4204         since the Unicode spec seems to prefer that character for our
4205         purposes.
4206
4207 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
4208
4209         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
4210         value of g_getenv() isn't freeable, so g_strdup it.
4211
4212         * modules/input/inuktitut.c: Inuktitut input method.
4213
4214         * modules/input/Makefile.am: Build this.
4215         
4216 2000-11-14  Elliot Lee  <sopwith@redhat.com>
4217
4218         * gtk/Makefile.am: Install gtk.immodules, needed for operation
4219         of gtk programs.
4220
4221 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
4222
4223         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
4224         reversed > that was causing Home to go to end of previous line.
4225
4226         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
4227         modified-keypresses (leave for bindings.)
4228
4229         * modules/input/Makefile.am: Remove useless -export-dynamic
4230         from module LDFLAGS.
4231
4232 2000-11-14  Havoc Pennington  <hp@redhat.com>
4233
4234         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
4235         higher.
4236
4237         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
4238         account. Also, render rise, underline, background, etc. for
4239         pixbufs as well as text. Also, draw underlines one pixel higher.
4240
4241         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
4242         PangoAttribute for the rise, so it gets drawn properly. Also,
4243         add the GtkTextAppearance attribute for pixbuf/widget segments
4244         as well; we should go ahead and have rise, underline, background,
4245         stipple work for those
4246
4247         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
4248         Pango
4249
4250 2000-11-15  Tor Lillqvist  <tml@iki.fi>
4251
4252         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
4253
4254         * gtk/gtk.def: Update.
4255
4256         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
4257         included.
4258         (gtk_rc_get_im_module_file): Use run-time installation directory
4259         on Win32.
4260
4261         * gdk/win32/rc/gdk.rc: Remove.
4262         * gdk/win32/rc/gdk.rc.in: New file.
4263         * gdk/win32/rc/Makefile.am: New file
4264         * gdk/win32/Makefile.am: Corresponding changes.
4265
4266         * gtk/gtk.rc: Remove.
4267         * gtk/gtk-win32.rc.in: New file.
4268         * gtk/Makefile.am: Corresponding changes.
4269
4270         * configure.in: Corresponding changes.
4271
4272         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
4273         has a built gtkcompat.h. Developers using CVS code on Win32 can
4274         hand-edit it from gtkcompat.h.in.
4275
4276         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
4277         gtkcompat.h from gtkcompat.h.win32.
4278
4279 2000-11-14  Havoc Pennington  <hp@redhat.com>
4280
4281         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
4282         to default to GDK_ACTION_MOVE if the drag is within a single
4283         widget. Defaults to GDK_ACTION_COPY between widgets.
4284
4285 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
4286
4287         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
4288
4289         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
4290
4291         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
4292         srcdir != builddir
4293
4294         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
4295
4296         * configure.in (GTK_VERSION): Up to 1.3.2
4297
4298         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
4299         gtkimcontextxim.h
4300
4301         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
4302         missing doc comment.
4303
4304 2000-11-14  Alexander Larsson  <alexl@redhat.com>
4305
4306         * modules/linux-fb/basic.c:
4307         Use the glib iconv wrappers.
4308
4309 2000-11-13  Havoc Pennington  <hp@pobox.com>
4310
4311         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
4312         still more bugs.
4313
4314         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
4315         scroll the GdkWindows before realization.
4316
4317 2000-11-13  Havoc Pennington  <hp@redhat.com>
4318
4319         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
4320         where GC didn't always get updated properly
4321
4322         * demos/gtk-demo/textview.c (create_tags): Use subattributes
4323         of fonts instead of setting the entire font
4324
4325         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
4326         setting entire font
4327
4328         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
4329
4330         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
4331         a bunch of individually-settable font attributes. You can still 
4332         use the "font" and "font_desc" args, they just set all the font
4333         attributes at once.
4334
4335 2000-11-13 Elliot Lee <sopwith@redhat.com>
4336
4337         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
4338
4339 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
4340
4341         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
4342         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
4343
4344         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
4345         work better.
4346
4347 2000-11-13  Havoc Pennington  <hp@redhat.com>
4348
4349         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
4350         the module file.
4351
4352         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
4353         dest->language
4354
4355         * gtk/testtext.c: Test pixels above/below/inside paragraphs
4356         settings
4357
4358         * gtk/gtktextview.c: Implement object args and setters/getters for
4359         all the aspects of the GtkTextAttributes that are not set from
4360         GtkWidget attributes. This is spacing, justification, margins,
4361         etc.
4362
4363         (gtk_text_view_set_arg)
4364         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
4365         args
4366         (gtk_text_view_class_init): Add args for justify, left_margin,
4367         right_margin, indent, and tabs
4368         
4369
4370         * gtk/gtktextlayout.c (set_para_values): fix to display indent
4371         attribute properly
4372
4373         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
4374         replace with indent attribute
4375
4376         * gtk/gtktextlayout.c (set_para_values): multiply indent by
4377         PANGO_SCALE
4378
4379         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
4380         rearranging code to do that
4381         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
4382         i.e. don't subtract the top_margin first, just to keep
4383         all margin-futzing in one place.
4384
4385         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
4386
4387         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
4388         special case of last line, Pango now handles this itself.
4389         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
4390         Y coordinate
4391         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
4392         (find_display_line_above): wasn't moving the byte index as it
4393         iterated over lines, so always returned byte 0. Also, port to use
4394         PangoLayoutIter.
4395         (find_display_line_below): same problem as
4396         find_display_line_above. Also, port to use PangoLayoutIter.
4397
4398 2000-11-13  Alexander Larsson  <alexl@redhat.com>
4399
4400         * gdk/linux-fb/*.[ch]:
4401         Massive reindent to gtk+ standard. My hands hurt.
4402
4403         * gdk/linux-fb/gdkcolor-fb.c:
4404         Move GdkColorPrivateFB from inherited to windowing_data
4405
4406         * gdk/linux-fb/gdkcursor-fb.c:
4407         _gdk_cursor_new_from_pixmap made static
4408
4409         * gdk/linux-fb/gdkdnd-fb.c:
4410         GdkDragContextPrivate moved to windowing_data
4411
4412         * gdk/linux-fb/gdkdrawable-fb2.c:
4413         Removed endian.h, use glib endianness macros instead
4414         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
4415         and GDK_DRAWABLE_IMPL_FBDATA
4416
4417         * gdk/linux-fb/gdkfont-fb.c:
4418         Add empty gdk_font_load(). Needed for linking of Gtk+.
4419
4420         * gdk/linux-fb/gdkimage-fb.c:
4421         Removed endian.h, use glib endianness macros instead
4422         Moved GdkImagePrivateFB to windowing_data
4423         gdk_image_new_bitmap didn't always allocate enough
4424         memory.
4425
4426         * gdk/linux-fb/gdkinput-ps2.c:
4427         Added semi-working support for MS serial mice.
4428
4429         * gdk/linux-fb/gdkprivate-fb.h:
4430         s/GdkWindowPrivate/GdkWindowObject/
4431         Removed GdkWindowPrivate typedef
4432         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
4433         Removed GDK_DRAWABLE_P
4434         Move GdkColorPrivateFB from inherited to windowing_data
4435         Moved GdkImagePrivateFB to windowing_data
4436
4437         * gdk/linux-fb/gdkvisual-fb.c:
4438         Removed some unused debug code.
4439
4440         * gdk/linux-fb/gdkwindow-fb.c:
4441         Use stock cursors instead of including X headers.
4442         s/GdkWindowPrivate/GdkWindowObject/
4443
4444         * gdk/linux-fb/mitypes.h:
4445         Removed unused types.
4446
4447         * modules/linux-fb/basic.c:
4448         Use the pango fribidi wrappers.
4449
4450 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4451
4452         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
4453         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
4454         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
4455         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
4456         GEqualFunc where applicable.
4457         
4458         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
4459         pango_font_description_equal as changed in pango.
4460         
4461         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
4462
4463         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
4464
4465         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
4466
4467         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
4468
4469         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
4470
4471         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
4472
4473         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
4474         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
4475
4476         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
4477         gtk_rc_styles_compare -> gtk_rc_styles_equal.
4478
4479 2000-11-12  Havoc Pennington  <hp@pobox.com>
4480
4481         * demos/gtk-demo/Makefile.am (democodedir): change demo install
4482         dir to datadir/gtk+-2.0/demo
4483
4484         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
4485         sorts of text widget and Pango font bugs. Urgh.
4486
4487         * demos/gtk-demo/Makefile.am (demos): Add textview.c
4488
4489         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
4490         tree that you should double click to see the demo. Fix 
4491         types of variables to reflect changed return values from 
4492         GtkTreeStore and GtkTreeViewColumn constructors.
4493
4494         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
4495         newly-created buffer to prepare for GObject semantics
4496
4497         * gtk/testtext.c: don't leak the buffer with GObject semantics
4498
4499         * gtk/testtextbuffer.c: ditto
4500         
4501 2000-11-12  Havoc Pennington  <hp@pobox.com>
4502
4503         Rename this testgtk to gtk-demo to avoid confusion, and 
4504         install it so people can use it as a supplement to 
4505         the documentation.
4506         
4507         * demos/gtk-demo: Moved from demos/testgtk
4508
4509         * demos/testgtk: Removed
4510
4511         * configure.in: make Makefile in gtk-demo
4512         
4513         * demos/gtk-demo/Makefile.am: Install sample source to 
4514         datadir/gtk-demo (maybe there's a better place?), and 
4515         rename the binary to gtk-demo
4516         
4517         * demos/gtk-demo/main.c (load_file): Load installed sample
4518         source if source isn't found in pwd.
4519
4520 2000-11-09  Havoc Pennington  <hp@pobox.com>
4521
4522         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
4523         argument to set the char displayed when visibility == FALSE
4524         (gtk_entry_create_layout): If !entry->visible, replace 
4525         all chars with the "invisible char"
4526
4527         * gtk/testgtk.c: Test the invisible_char deal
4528         
4529 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
4530
4531         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
4532         can't get a native font in the right encoding.
4533
4534 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
4535
4536         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
4537         respectively.
4538
4539 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
4540
4541         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
4542         Fix warning when moving between paragraphs.
4543
4544         * gtk/gtkentry.[ch]: Change move => move_cursor, 
4545         delete => delete_from_cursor, insert => insert_at_cursor
4546
4547 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
4548
4549         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
4550
4551         * modules/input/imthai-broken.c: A Thai input method for use if
4552         Thai keys are really generating Latin1 keysyms.
4553
4554         * modules/input/Makefile.am: Build these.
4555
4556 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
4557
4558         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
4559         g_filename_{to,from}_utf8 now takes an extra parameter.
4560
4561         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
4562         strftime into UTF-8.
4563
4564         (column_from_x, gtk_calendar_paint_day_names): Support RTL
4565         calendars.
4566
4567         (gtk_calendar_paint_day_names): Draw day names in the right 
4568         place.
4569         
4570 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
4571
4572         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
4573         problem with using result of g_get_charset() backwards -
4574         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
4575
4576         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
4577         negative min_width/height and max_width/height to
4578         mean "requisition"; this allows setting a window
4579         to be user-resizable in only one direction easily.
4580
4581         * gtk/testgtk.c (create_main_window): Remove hard-coded
4582         usize - set a default size in the vertical direction.
4583
4584 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
4585
4586         * gtk/gtkrange.c: Add some missing casts. Support 
4587         2 and 3 button clicks on the arrows to mean 
4588         "move by pages" and "jump to end". (Like gtkspinbutton)
4589
4590 2000-11-12 Hans Breuer <Hans@Breuer.Org>
4591
4592         * gdk/win32/makefile.msc : reflect build module changes
4593
4594         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
4595         from GdkPixmap*, cast implementation member instead.
4596
4597         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
4598         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
4599         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
4600         more Gdi functions return value checking. 
4601         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
4602         GdkImagePrivateWin32 *.
4603
4604         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
4605         menus useable again. Add #pragma message to keep reminded on this issue.
4606         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
4607         windows. This allows to enable backing store on Win32!
4608
4609         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
4610         in drawable is of impl type. Correct specific type checks appropriate.
4611  
4612         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
4613         GDK_WINDOW_DESTROYED before allocating new resources.
4614
4615         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4616
4617         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4618         (gdk_window_foreign_new) initialize parent handle.
4619         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4620
4621         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4622         Let the GDI invalidate the window on MoveWindow call to fix scrolling
4623         problems (e.g. main buttons in testgtk). 
4624
4625 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
4626
4627         * gtk/gtkentry.c (gtk_entry_key_press): Call 
4628         gtk_widget_activate for GDK_Return.
4629
4630         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4631         of preedit cursor position.
4632
4633 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
4634
4635         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4636         static.
4637
4638 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
4639
4640         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4641         out support for multiple locales; that simple doesn't
4642         work reliably with current Xlib
4643
4644         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
4645         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
4646         Add support for positioning the cursor within the preedit string.
4647
4648 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
4649
4650         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
4651         at XIM input method module.
4652
4653         * gtk/gtktextview.c: Check for bindings after passing
4654         events to im context filter.
4655
4656 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
4657
4658         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
4659         empty attribute lists properly.
4660
4661 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
4662
4663         * gtk/queryimmodules.c (main): Return non-zero exit
4664         status if errors were encountered querying any
4665         modules.
4666
4667         * modules/input/Makefile.am (moduledir): remove
4668         leftover bin program target.
4669
4670         * docs/make-todo: Fix typo in error message.
4671
4672 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
4673
4674         * configure.in: Add modules/input/Makefile
4675
4676 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
4677
4678         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
4679         don't include gtkthemes.h.
4680
4681         * gtk/testgtk.c gtk/testtext.c: Set environment variables
4682         to point
4683
4684         * gtk/Makefile.am: Add new .c and .h files, build 
4685         gtk-query-immodules and use it to create a gtk.immodules
4686         file for use of test programs.
4687
4688         * gtk/gtkpreview.c: remove extra blank line.
4689
4690 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
4691
4692         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
4693         Add the ability to add extra tables beyond the default
4694         one, and also the ability to have compose sequences 
4695         that are prefixes of other compose sequences. 
4696
4697         * gtk/gtkimcontextsimple.c: Export a preedit string which
4698         consists of possible candidates for keystrokes that have
4699         been entered but not yet committed.
4700
4701         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
4702         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
4703
4704         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
4705         Add a function to add input-method switching menu items
4706         to a menu.
4707
4708         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
4709         when switching input methods.
4710
4711         * gtk/gtkimcontextsimple.[ch]: Change the format of
4712         the compose table to allow compose tables of different
4713         lengths / sequence.
4714
4715 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
4716
4717         * gtk/gtkimmodule.[ch]: Support routines for loading
4718         GtkIMContext implementations dynamically at runtime.
4719
4720         * modules/input/imcyrillic-translit.c: A sample input
4721         method (based on GtkIMContextSimple with an extra table),
4722         which demonstrates preedit strings and the module
4723         system for input modules
4724
4725         * gtk/queryimmodules.c: Program to query the available
4726         input modules and write the results into a file.
4727          
4728         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
4729         extra config options "im_module_file" (cache file for
4730         input method modules), and "im_module_path" - path
4731         to look for modules when generating cache file.
4732
4733         This doesn't scale.
4734
4735 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
4736
4737         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
4738         generic code from gtkthemes into a new abstraction
4739         GtkModule which has the logic for implementing
4740         a loadable module which implements a number of 
4741         GObject types.
4742
4743 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
4744
4745         * gtk/gtkeditable.[ch]: Convert GtkEditable from
4746         a class into an interface  
4747         
4748         * gtk/gtkoldeditable.[ch]: Move the old editable
4749         implementation into here, so legacy widgets can
4750         still rely on the implemenation. GtkOldEditable
4751         exports GtkEditable. Make selection handling
4752         code use new text conversion functions (and
4753         handle UTF-8 as a side-effect). Use GtkClipboard
4754         for CLIPBOARD.
4755
4756         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
4757         Adopt to match above changes.
4758
4759         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
4760         avoid GtkOldEditable implementation. Restructure
4761         to reduce number of places that modify state directly.
4762         Move to GtkBindingSet. Display the preedit string.
4763         Queue recomputation of PangoLayout and scroll position
4764         to improve effiency of doing complex changes naively.
4765         Add a menu with cut/copy/paste and input method selection.
4766
4767 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
4768
4769         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
4770         to set preedit string and attributes; display preedit string by
4771         inserting string and attributes at cursor when creating the
4772         GtkTextLineDisplay.
4773
4774         * gtk/gtktextlayout.c: Move all conversions between byte
4775         positions in PangoLayout and GtkTextIter into new functions
4776         line_display_iter_to_index/index_to_iter that properly
4777         handle the preedit string.
4778
4779         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
4780         it to return const char * (eventually will end up
4781         as GCONST char *, most likely.)
4782
4783         * gtk/gtktextview.[ch]: Handle the preedit string, call
4784         gtk_im_context_reset() as necessary, add a menu to switch
4785         input methods.
4786         
4787         * gtk/gtktextlayout.[ch]: Remove useless
4788         gtk_text_layout_get_log_attrs() function.
4789
4790 2000-11-11  Tor Lillqvist  <tml@iki.fi>
4791
4792         * gdk/gdk.def
4793         * gtk/gtk.def: Update.
4794
4795         * gdk/win32/*.c: Add last argument to g_type_register_static()
4796         calls.
4797
4798         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
4799
4800         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
4801         generated by older wheel mouse drivers. Get the correct y
4802         coordinate from WM_MOUSEWHEEL messages.
4803
4804         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
4805         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
4806         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
4807         Debugging functions.
4808
4809         * gdk/win32/gdkprivate-win32.h: Declare them.
4810
4811         * gdk/win32/gdkinput-win32.h: Add declaration for
4812         gdk_input_window_destroy().
4813
4814         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
4815
4816 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
4817
4818         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
4819         function to help handle keeping things in sync.
4820
4821 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
4822
4823         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
4824         BOXED marshallers.
4825
4826         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
4827         (gtk_list_store_class_init): use the new BOXED marshallers.
4828
4829         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
4830         new_with_values to new_with_types.
4831         (gtk_tree_store_get_column_type): add this.
4832         (gtk_tree_store_class_init): use the new BOXED marshallers.
4833
4834         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
4835         mirror some POINTER marshallers.
4836
4837 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
4838
4839         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
4840         allow more interesting iterators.  Also, made the lifecycle of
4841         iterators more explicit.
4842
4843         * gtk/gtktreemodelsort.[ch]: New model for sorting.
4844
4845         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
4846         types.
4847
4848 2000-11-09  Alexander Larsson  <alexl@redhat.com>
4849
4850         * demos/testgtk/menus.c:
4851         Changes to make the new testgtk compile after
4852         gtk_menu_append was removed.
4853
4854         * gdk/linux-fb/gdkdrawable-fb2.c
4855         (gdk_fb_get_depth, gdk_fb_get_visual,
4856         gdk_drawable_impl_fb_class_init): Implement
4857         these drawable functions. Now GtkImages work again.
4858
4859         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
4860
4861         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4862         
4863         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4864         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4865         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4866         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4867
4868 2000-11-08  Havoc Pennington  <hp@pobox.com>
4869
4870         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4871         visible_set args, don't know where these had gone, I thought they
4872         used to be there
4873
4874         * gtk/testtext.c: Add a menu item to apply invisibility tag;
4875         now we can test the feature and see that it's totally broken.
4876
4877 2000-11-08  Havoc Pennington  <hp@pobox.com>
4878
4879         Make DND copy pixbufs and tags when source and target share a 
4880         tag table.
4881         
4882         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4883         in-process GTK_TEXT_BUFFER_CONTENTS target
4884         (gtk_text_view_drag_data_received): Paste from
4885         GTK_TEXT_BUFFER_CONTENTS if we receive it.
4886
4887 2000-11-08  Alexander Larsson  <alexl@redhat.com>
4888
4889         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4890         API changes.
4891
4892         * gtk/gtkmenu.c: Add support for scrolling menus.
4893         Remove gtk_menu_append/prepend/insert, these have been moved to
4894         gtkcompat.h as #defines.
4895
4896         * gtk/gtkcompat.h.in:
4897         Add compatibility #defines for gtk_menu_append/prepend/insert
4898
4899         * gtk/gtkmenu.h: Add data needed for scrolling menus.
4900         GtkMenuPositionFunc gets an extra argument push_in.
4901         gtk_menu_append/prepend/insert removed.
4902         
4903         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4904         positioning behaviour to fit to scrolling menus.
4905
4906         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4907         into menuitem->submeny. That is wrong, and broke torn
4908         off submenus of torn off menus, since they were unrealized
4909         when the first menu was unrealized.
4910
4911         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4912         gtk_menu_shell_select_item() since these need to be overridden in
4913         GtkMenu.
4914
4915         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4916         positioning behaviour to fit to scrolling menus.
4917         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4918         the current item so that it is prelighted when the menu pops up.
4919         This is a workaround to the fact that the menu doesn't get the
4920         initial enter event (due to grabs).
4921
4922         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4923         s/gtk_menu_append/gtk_menu_shell_append/
4924
4925         * gtk/gtknotebook.c:
4926         s/gtk_menu_insert/gtk_menu_shell_insert/
4927
4928         * gtk/testgtk.c (create_menu, create_menus):
4929         Create the first menu with 50 items so that menu scrolling
4930         can be tested.
4931         
4932         
4933         Patch from Jonathan Blandford  <jrb@redhat.com>
4934
4935         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4936         system to handle size requests.  First, we ask what the size of
4937         the toggle is.  Then, when allocating the size, we allocate the
4938         toggle_size first.  This way we can have multiple menu-item
4939         classes w/o needing a seperate class for each.
4940
4941         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4942         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4943
4944         * gtk/gtkcheckmenuitem.c
4945         (gtk_check_menu_item_toggle_size_request): New function to handle
4946         the toggle size-request.
4947
4948 2000-11-07  Havoc Pennington  <hp@redhat.com>
4949
4950         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4951         Half-ass somewhat fix this function, so that scrolling to the
4952         insertion point works. Pango hacking is in the future to really
4953         fix it.
4954
4955         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4956         length of data, no longer used.
4957
4958         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4959         method contents in here, get rid of destroy method
4960         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4961         that were backward. Remove debug spew.
4962         (cut_or_copy): Make the clipboard work with insert_range to
4963         preserve tags and pixbufs, not just the primary selection.
4964
4965 2000-11-07  Havoc Pennington  <hp@redhat.com>
4966
4967         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
4968         to gtk_text_mark_get_visible
4969
4970         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4971         bug that was generating an invalid iterator
4972
4973         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4974         ensure_char_offsets() in front of code placing the iter in an
4975         invalid state.
4976
4977         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4978         make override_location arg const
4979         (paste): Replace the selection if we paste into the 
4980         current selection
4981
4982         * gtk/gtkselection.h: Remove "GtkSelectioData"
4983         (struct _GtkSelectionData): move the definition here.
4984
4985         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4986         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4987
4988         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4989
4990         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4991         (gtk_text_buffer_insert_range_interactive): implement
4992         (gtk_text_buffer_get_tags): Remove, replaced by
4993         gtk_text_iter_get_tags()
4994
4995         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4996         limit parameter, to avoid infinite linear scan.
4997         (gtk_text_iter_backward_search): Add search limit
4998         (gtk_text_iter_forward_find_char): Add search limit
4999         (gtk_text_iter_backward_find_char): Add search limit
5000
5001 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
5002
5003         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5004         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
5005         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
5006         gdk/linux-fb/gdkwindow-fb.c:
5007         use g_object_new() instead of g_type_create_instance() which
5008         is a private function for fundamental type implementations.
5009
5010         * gdk/linux-fb/gdkinput-ps2.c:
5011         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
5012         instead just store the current modifier state. Add a (somewhat broken)
5013         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
5014         Rename exported function gdk_input_ps2_get_mouseinfo to
5015         gdk_input_get_mouseinfo.
5016
5017         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5018         gdk/linux-fb/gdkwindow-fb.c:
5019         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5020         
5021
5022 2000-11-02  Havoc Pennington  <hp@redhat.com>
5023
5024         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5025         use stock buttons. Should be 100% source compatible, appropriate
5026         filesel fields now point to dialog->vbox and dialog->action_area.
5027         On the bizarre side, dialog->action_area and filesel->action_area
5028         are not the same widget.
5029         (gtk_file_selection_init): Put some padding around the selection
5030         entry, so it isn't touching the GtkDialog separator.    
5031
5032         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
5033         use stock buttons, etc. Should also be source compatible.
5034         Set the dialog default title in _init not _new().
5035         
5036         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
5037         Use stock buttons; don't put a button box inside the existing
5038         dialog button box. Don't bother with push/pop colormap anymore.
5039
5040         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
5041         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
5042         for message dialog, and necessary for the font selection and color
5043         selection with help and apply buttons.
5044         
5045         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
5046         to the created button widget. Set GTK_CAN_DEFAULT on the button.
5047         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
5048         between buttons, put less padding around the action area.
5049         (gtk_dialog_run): Exit on unmap rather than on destroy. 
5050         This will also exit the loop if the widget is hidden.
5051         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
5052         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
5053         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
5054         special-case delete event.
5055
5056         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
5057         formatting
5058         
5059 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
5060
5061         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
5062         button to temporarily disable position recording in the
5063         "saved position" test.
5064
5065 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
5066
5067         * gtk/gtkthemes.c: added compat code that temporarily implements
5068         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
5069         going to be revamped by owen's upcoming GtkModule patches, but
5070         untill then people want gtk to build, right? ;)
5071
5072 2000-11-04  Havoc Pennington  <hp@pobox.com>
5073
5074         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
5075         list
5076
5077         * docs/Changes-2.0.txt: Add note about
5078         gtk_container_get_toplevels()
5079
5080         * gtk/gtktextview.h: formatting
5081         
5082         * gtk/gtktextview.c: don't start descriptions with "Returns",
5083         confuses gtk-doc
5084
5085 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
5086
5087         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
5088         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
5089
5090 2000-11-03  Havoc Pennington  <hp@redhat.com>
5091
5092         * gtk/gtktexttagtable.c: Docs
5093         (gtk_text_tag_table_size): return a signed int
5094
5095         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
5096         (gtk_text_tag_event): make the event_object a GObject
5097
5098         * gtk/gtktextview.c: Write API docs for all functions.
5099
5100         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
5101         for gtk_text_view_get_window_type() called on one of the private
5102         windows.
5103
5104         * gtk/gtktextview.c: Instead of accessing text_view->buffer
5105         directly, call get_buffer() which demand-creates a default
5106         buffer. So gtk_text_view_new() can be used to create a view with a
5107         default buffer in it, if you just want an empty text box users can
5108         put data in. Useful for GUI builders also.
5109
5110 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
5111
5112         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
5113         the charset encodign portion MUST be in lowercase.
5114         * gtk/gtkrc.az: added file for Azeri language
5115
5116 2000-11-03  Havoc Pennington  <hp@redhat.com>
5117
5118         Get widgets working on the btree/buffer side. Display of them 
5119         still doesn't work.
5120         
5121         * gtk/gtktextview.c: start implementing child widget stuff
5122
5123         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
5124
5125         * gtk/gtktextlayout.c: handle embedded widgets
5126
5127         * gtk/gtktextdisplay.c: handle embedded widgets
5128
5129         * gtk/gtktextchild.c: Implement all the child anchor goo
5130
5131         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
5132         function
5133
5134         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
5135         (insert_pixbuf_or_widget_segment): abstract out common portions of 
5136         creating a child anchor or a pixbuf segment.
5137         (gtk_text_btree_create_child_anchor): new function
5138         (gtk_text_btree_unregister_child_anchor): new function
5139
5140         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
5141         allocate_child signal on GtkTextLayout
5142
5143         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
5144         values
5145         (gtk_text_iter_get_child_anchor): new function
5146
5147         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
5148         default handler for the changed signal, which calls
5149         gtk_text_buffer_set_modified(), instead of just always emitting
5150         changed then calling set_modified() manually. I guess this is
5151         maybe more flexible. It seems logical.
5152
5153 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
5154
5155         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
5156         now.
5157
5158         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
5159
5160 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
5161
5162         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
5163         been marked static.
5164
5165 2000-11-02  Havoc Pennington  <hp@redhat.com>
5166
5167         * gtk/testgtk.c (create_labels): had a test backward
5168
5169         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
5170         fields, so the dest GC ends up with the correct clip origin, 
5171         etc. Fixes a bug where colored labels didn't redraw 
5172         properly.
5173
5174 2000-11-02  Alexander Larsson  <alexl@redhat.com>
5175
5176         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5177         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
5178         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
5179         Add last argument to t_type_register_static call.
5180         
5181         * gdk/linux-fb/gdkdrawable-fb2.c:
5182         Add last argument to t_type_register_static call.
5183         export the get_image drawable virtual function.
5184
5185         * gdk/linux-fb/gdkimage-fb.c:
5186         Add last argument to t_type_register_static call.
5187         rename gtk_image_get to _gdk_fb_get_image and
5188         export it for use by gdkdrawable-fb2.
5189
5190         * gdk/linux-fb/gdkprivate-fb.h:
5191         export _gdk_fb_get_image.
5192
5193         * gdk/linux-fb/gdkselection-fb.c:
5194         Add new api call stubs.
5195
5196         * gtk/Makefile.am:
5197         Missing ( in linux-fb part.
5198
5199         * modules/linux-fb/Makefile.am:
5200         Must link with gdk_pixbuf or get unresolved symbol.
5201
5202 2000-11-01  Havoc Pennington  <hp@pobox.com>
5203
5204         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
5205         GTK_TYPE_TEXT_ITER and BOXED marshallers
5206
5207         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
5208
5209         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
5210         
5211         * gtk/gtk-boxed.defs: add GtkTextIter
5212
5213         * gtk/gtkmarshal.list: Add marshallers for text widget that 
5214         properly use OBJECT and BOXED
5215
5216 2000-11-01  Havoc Pennington  <hp@redhat.com>
5217
5218         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
5219
5220         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
5221         before returning it. 
5222         
5223 2000-11-01  Havoc Pennington  <hp@redhat.com>
5224
5225         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5226         Clip the rectangle to be rendered to the drawable, since
5227         get_from_drawable() requires a region within the drawable
5228
5229 2000-11-01  Havoc Pennington  <hp@redhat.com>
5230
5231         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
5232         from coordinates.
5233
5234 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
5235
5236         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
5237         it isn't NULL.
5238
5239 2000-11-01  Havoc Pennington  <hp@pobox.com>
5240
5241         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
5242         on a label
5243         (gtk_label_finalize): unref the attr list if any.
5244
5245         * gtk/testgtk.c (create_get_image): close test on second click
5246         (make_message_dialog): close dialog if it exists
5247
5248         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
5249
5250         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
5251         gdk-pixbuf
5252
5253         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
5254         from Pango markup format
5255         (gtk_label_set_markup_with_accel): ditto but with accelerator
5256         parsing
5257
5258         * gtk/gtkimage.c (gtk_image_expose): reformatting.
5259
5260         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
5261         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
5262         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
5263         call gdk_window_get_origin().
5264
5265         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5266         implement GDK_PIXBUF_ALPHA_FULL
5267         
5268 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
5269
5270         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
5271         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
5272         g_signal_handlers_disconnect_matched to block/unblock and disconnect
5273         multiple handlers respectively, instead of only treating the
5274         first handler found (bug reported by owen).
5275
5276 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
5277
5278         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
5279
5280         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
5281
5282         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
5283         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
5284         gtk/gtktreeviewcolumn.h: Fixed inline docs.
5285
5286         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
5287         widget.  Needs writing someday.
5288
5289         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
5290         the docs.
5291
5292 2000-10-30  Havoc Pennington  <hp@redhat.com>
5293
5294         * gtk/gtktextview.h, gtk/gtktextview.c:
5295         Rename delete_at_cursor delete_from_cursor, and 
5296         move to move_cursor.
5297
5298 2000-10-30  Havoc Pennington  <hp@redhat.com>
5299
5300         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
5301         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
5302         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
5303         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
5304         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
5305         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
5306         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
5307         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
5308         gtktexttypes.h, gtktextview.c, gtktextview.h:
5309
5310         Massive reindentation and reformatting. Arg alignment and comments
5311         still need fixing in various places.
5312
5313 2000-10-30  Havoc Pennington  <hp@redhat.com>
5314
5315         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
5316         to be named insert_at_cursor and delete_at_cursor so C++ can
5317         handle them.
5318
5319 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5320
5321         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
5322         to get a double directory separator in case the home directory
5323         ends with one. This would cause trouble especially on Windows,
5324         where the path will be confused with the syntax for an an UNC
5325         (network share) path \\server\share\path.
5326         (gtk_rc_add_initial_default_files): Ditto.
5327
5328 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
5329
5330         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
5331
5332         * gtk/gtktextview.c: Use correct marshallers.
5333
5334 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
5335
5336         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
5337         use new iter stuff, and added all the appropriate signals et al.
5338
5339         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
5340         code is internal to gtk only.
5341
5342 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5343
5344         * gtk/gtk.def
5345         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
5346         glib-genmarshal etc.
5347
5348 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
5349
5350         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
5351         parallel builds.
5352
5353 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
5354
5355         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
5356
5357 2000-10-27  Robert Brady  <robert@suse.co.uk>
5358
5359         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
5360         en_GB (British), ia (Interlingua).
5361
5362 2000-10-26  Havoc Pennington  <hp@redhat.com>
5363
5364         * gtk/gtktextiter.c (my_strrstr): fix constness warning
5365
5366         Fixed output of:
5367         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
5368         
5369         * gtk/gtktextsegment.c (char_segment_new): rename
5370         (_char_segment_new_from_two_strings): rename
5371         (_toggle_segment_new): rename
5372         
5373         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
5374         (make_clipboard_widget): make it static
5375         (text_get_func): static
5376         (text_clear_func): static
5377
5378         * gtk/gtkcolorsel.c (adjustment_changed): make this function
5379         static
5380         (hex_changed): make it static
5381         (hsv_changed): make it static
5382         (opacity_entry_changed): make it static
5383
5384         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
5385         (toggle_segment_check_func): rename with _gtk
5386
5387         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
5388         (_widget_segment_new): rename
5389         (_widget_segment_add): rename
5390         (_widget_segment_remove): rename
5391         (_widget_segment_ref): rename
5392         (_widget_segment_unref): rename
5393
5394         * gtk/gtktextmark.c (_mark_segment_new): Rename
5395         _gtk_mark_segment_new   
5396
5397 2000-10-26  Havoc Pennington  <hp@redhat.com>
5398
5399         * gtk/gtkmarshal.list: add new marshallers used by the text widget
5400         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5401         types
5402
5403         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
5404         marshaller types
5405
5406         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
5407         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
5408         license on these files.
5409
5410         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
5411         work.
5412
5413         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
5414         runtime random number different for each tree, instead of 
5415         a constant I made up.
5416
5417 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
5418
5419         * gtk/Makefile.am: buncha cleanups, kludged build sources
5420         dependencies with a Makefile: oldest-source-stamp dependancy
5421         for the moment. automake is really fighting us here, with
5422         intentionally not allowing user-defined rules or dependancies
5423         prior to it's -include $(DEP_FILES) statement. sucks rocks!
5424
5425         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
5426         to public headers. tehy have a comment stating that they are
5427         "semi-public" aren't included by gtk.h and if enums popup there,
5428         they can be /*< skip >*/-ed.
5429
5430         * gtk/gtktextlayout.h: 
5431         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
5432         added LGPL... <SIGH>
5433
5434 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
5435
5436         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
5437         GtkTreeIter.  Added iterators everywhere.
5438
5439         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
5440
5441         * gtk/gtktreeviewselection.c: Changed to use the iterators.
5442
5443         * gtk/gtktreestore.c: Changed to use the iterators.
5444
5445         * gtk/gtkliststore.c: Commented out the code.  Will convert to
5446         iterators tomorrow.
5447
5448         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
5449         iterators tomorrow.
5450
5451         * gtk/treestoretest.c: Changed to use iterators.
5452
5453         * demos/testgtk/main.c: Moved to use the new iterator system.
5454
5455 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
5456
5457         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
5458         localization misbehaviour.
5459
5460         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
5461         a useless type without copy/free.
5462
5463         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
5464         of GTK_TYPE_CTREE_NODE.
5465
5466 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
5467
5468         * gtk/gtksignal.c:
5469         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
5470         applicable.
5471
5472         * gtk/gtk-boxed.defs (GtkSelectionData): specify
5473         gtk_selection_data_copy and gtk_selection_data_free
5474         do GtkSelectionData work as params in signals.
5475
5476 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
5477
5478         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
5479         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
5480         couldn't they at least give it a non-standard name?
5481         
5482         * gtk/gtktextlayout.c: arg! yet another implementation of
5483         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
5484
5485         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
5486         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
5487         home. now i know this _is_ a conspiracy.
5488
5489         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
5490         ::state-changed.
5491
5492         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
5493         (gtk_accel_group_create_add): marshaller signature fixups.
5494
5495         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
5496         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
5497
5498         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
5499         anymore.
5500
5501 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
5502
5503         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
5504         due to the signal system changes, it wouldn't build currently. to
5505         be fixed soon.
5506
5507         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
5508
5509         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
5510         so it needs gtk_marshal_VOID__ENUM() instead of
5511         gtk_marshal_NONE__UINT().
5512
5513         * gdk/gdk*.c: adapted type registration functions.
5514
5515         * gtk/gtkbindings.c:
5516         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
5517         gone.
5518
5519         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
5520
5521         * gtk/gtkobject.c:
5522         (gtk_object_destroy):
5523         (gtk_object_shutdown): fixed recursion guards. basically we have to
5524         catch the case where any of GObject.shutdown() or gtk_object_destroy()
5525         is called during ::destroy, and avoid recursion there.
5526
5527         * gtk/gtktypeutils.c:
5528         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
5529         boxed_copy/boxed_free. this needs a more general solution based on a
5530         publically installed code-generator utility.
5531
5532         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
5533         glib's gobject has support for that now.
5534         define GtkSignalMarshaller in terms of GSignalCMarshaller.
5535
5536 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
5537
5538         * gtk/gtksignal.[hc]:
5539         * gtk/gtkmarshal.[hc]:
5540         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
5541         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
5542         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
5543         care of that.
5544
5545         * *.c: marshaller name fixups.
5546
5547         * gtk/gtkmarshal.list: added a comment briefing the format.
5548
5549 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
5550
5551         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
5552         compatibility macros here now. more specifically, most of
5553         the API is preserved (yes, _most_, nonwithstanding the
5554         following exceptions listed, the API is stil lHUGE ;)
5555         things that got removed completely:
5556         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
5557         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
5558         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
5559         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
5560         gtk_signal_remove_emission_hook().
5561         non-functional functions variants:
5562         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
5563         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
5564         not supported anymore.
5565         (gtk_signal_compat_matched): new internal function to aid
5566         implementation of the compatibility macros, it  provides
5567         functionality to block/unblock/disconnect handlers based
5568         on func/data.
5569
5570         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
5571
5572         * *.c: adaptions to new type registration API signatures.
5573
5574 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
5575
5576         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
5577
5578 2000-10-25  Robert Brady  <robert@suse.co.uk>
5579
5580         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
5581         gdk_property_delete): If window == NULL, assume the root window.
5582         (restoring the behaviour that was in 1.2).
5583         
5584         * gtk/testtext.c (save_buffer): Allow creation of new files when
5585         saving.
5586
5587         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
5588         calls to read().
5589
5590 2000-10-25  Tor Lillqvist  <tml@iki.fi>
5591
5592         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
5593
5594         * gdk/win32/gdkdrawable-win32.c
5595         * gdk/win32/gdkimage-win32.c
5596         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
5597         X11 backend.
5598
5599         * gdk/win32/gdkcc-win32.c
5600         * gdk/win32/gdkcolor-win32.c
5601         * gdk/win32/gdkfont-win32.c
5602         * gdk/win32/gdkinput-win32.c
5603         * gdk/win32/gdkmain-win32.c
5604         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
5605
5606 2000-10-24  Havoc Pennington  <hp@redhat.com>
5607
5608         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
5609         it a static function
5610
5611         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5612         redraw text when a tag is applied to it.
5613
5614         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5615         (gtk_text_tag_affects_nonsize_appearance): private functions to
5616         see if a tag requires various kinds of redraw/layout to be queued
5617         up.
5618
5619         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5620
5621         * gtk/testtext.c (fill_example_buffer): Put the cursor 
5622         at the start of the buffer, so search works by default
5623
5624         * gtk/gtktextiter.c (lines_match): init match_start always
5625
5626         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5627         function, get iter at a line + a byte index
5628
5629         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5630         to set byte position within a line
5631         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5632
5633 2000-10-23  Havoc Pennington  <hp@redhat.com>
5634
5635         * gtk/testtext.c: Re-enable the "find" dialog
5636
5637         * gtk/testgtk.c: Add test for gdk_drawable_get_image
5638         
5639         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5640         the arguments to gdk_draw_drawable were in the wrong order
5641         (gdk_window_paint_init_bg): This function was ignoring the
5642         init_region, instead of clipping to it, so the entire backing
5643         pixmap was cleared on every begin_paint()
5644         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
5645         was in here again, the loop kept using the same GtkWindowPaint
5646         over and over.
5647         (gdk_window_begin_paint_region): Fix a bug where we had two
5648         x_offset instead of x_offset and y_offset
5649
5650         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
5651         before we get the image.
5652         (gdk_draw_drawable): get the composite before we draw the drawable.
5653         (gdk_drawable_real_get_composite_drawable): default
5654         get_composite_drawable implementation that returns the drawable 
5655         itself
5656
5657         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
5658         get_composite_drawable virtual function
5659
5660         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
5661         list-walking bug
5662
5663         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
5664         make this work if the source drawable is a GdkDrawableImplX11
5665         instead of a public drawable type. This is really broken; the
5666         problem is that GdkDrawable needs a virtual method get_xid(), but
5667         of course that doesn't work in practice. Enter RTTI.
5668
5669         Also, improve mismatched depth message.
5670
5671         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
5672         GdkPixmap
5673
5674         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
5675         install _gdk_x11_get_image as our implementation of get_image
5676         
5677         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
5678         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
5679
5680         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
5681         gdk_drawable_get_image
5682
5683         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
5684
5685         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
5686         get_image
5687
5688         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
5689         trailing semicolon after for loop
5690
5691 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
5692
5693         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
5694         where font_desc for widget's context lagged widget's font_desc by
5695         one step.
5696
5697 2000-10-22  Tor Lillqvist  <tml@iki.fi>
5698
5699         * gdk/win32/gdkgc-win32.c
5700         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
5701
5702         * gtk/makefile.mingw.in
5703         * gtk/gtk.def: Updates.
5704
5705         * gtk/testgtk.c: sleep() is called _sleep in MS's C
5706         library.
5707
5708         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
5709
5710         * gtk/makefile.msc: Remove
5711
5712         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
5713
5714         * gtk/Makefile.am: Add it.
5715
5716         * configure.in: Generate it.
5717
5718         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
5719         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
5720         something even if not implemented, to satisfy picky MSVC.
5721
5722         Patches by Hans Breuer:
5723         
5724         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
5725         SetBkMode() and SetTextAlign() before calling
5726         pango_win32_render().
5727
5728         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
5729         Set hcliprgn to NULL after destroying it.
5730         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
5731
5732         * gdk/win32/gdkgeometry-win32.c
5733         (_gdk_windowing_window_queue_antiexpose): More effective
5734         implementation.
5735
5736         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
5737         depth as default, not the visual's.
5738
5739         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
5740         against empty title.
5741
5742         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
5743         IMAGE_PRIVATE_DATA.
5744
5745         * gdk/win32/gdkimage-win32.c: Use it.
5746
5747 2000-10-22  Robert Brady  <robert@suse.co.uk>
5748
5749         * configure.in: Check for bind_textdomain_codeset
5750
5751         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
5752         present, make use of it.
5753
5754         Add a translatable string "default:LTR" which, if translated
5755         to "default:RTL", will cause the default direction to be
5756         Right-to-Left.
5757
5758         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
5759         direction if marked as flippable.
5760
5761         * gtk/gtkhscale.c: Mark widget as flippable.
5762         
5763 2000-10-04  Havoc Pennington  <hp@redhat.com>
5764
5765         * gtk/testgtk.c (create_buttons): create some stock buttons
5766         with the default accel group
5767         (create_image): test some new GtkImage features
5768         (make_message_dialog): test GtkMessageDialog
5769         (create_modal_window): fix someone's bizzarro indentation
5770
5771         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
5772         GTK_WIN_POS_CENTER_ON_PARENT. 
5773         Add "destroy with parent" setting, which means the window goes
5774         away with its transient parent.
5775         (gtk_window_get_default_accel_group): get the default accel group
5776         for the window.
5777         (gtk_window_set_destroy_with_parent): set/unset destroy with
5778         parent flag
5779         (gtk_window_read_rcfiles): invalidate icon set caches
5780         after reloading rcfiles 
5781
5782         * gtk/gtkenums.h (GtkWindowPosition): add
5783         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
5784         on its parent window when the dialog is mapped for the first time.
5785
5786         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
5787         a simple message dialog class
5788         
5789         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
5790         handler to emit response signal, and maybe later it would
5791         honor a hide_on_delete flag - though that isn't there yet.
5792         Set border width on the vbox to 2, so we get some padding.      
5793         Use a button box for the action area.
5794         (gtk_dialog_key_press): synthesize a delete event if Esc
5795         is pressed and the GtkWidget key press handler didn't 
5796         handle the escape key.
5797         (gtk_dialog_new_with_buttons): new function creates a dialog
5798         with some default buttons in it.
5799         (gtk_dialog_add_action_widget): add an activatable widget
5800         as a button in the dialog - you can also add a non-activatable
5801         widget by accessing the action area directly.
5802         (gtk_dialog_add_button): add a simple button - stock ID or 
5803         label - to the action area
5804         (gtk_dialog_response): emit response signal
5805         (gtk_dialog_run): block waiting for the dialog, return 
5806         the response. Override normal delete_event behavior, so that 
5807         delete_event does nothing inside gtk_dialog_run().
5808
5809         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
5810         emitted when an action widget is clicked or the dialog gets
5811         delete_event
5812
5813         * gtk/gtk.h: add gtkmessagedialog.h
5814
5815         * gtk/Makefile.am: add gtkmessagedialog.[hc]
5816
5817 2000-10-18  Havoc Pennington  <hp@redhat.com>
5818
5819         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
5820         where any number of empty lines would get skipped
5821
5822         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
5823         edge.
5824
5825         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
5826         warning about invalid iterators (explain more thoroughly)
5827         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
5828
5829         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
5830         big
5831
5832         * demos/*.c: Add error handling
5833
5834         * gtk/gtktextbuffer.c: don't modify const iterators
5835
5836         * gtk/gdk-pixbuf-loader.c: Add full error handling here
5837
5838         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
5839         on file load
5840
5841         * gtk/gtkiconfactory.c: Update to reflect addition of error
5842         handling to gdk-pixbuf loaders
5843
5844 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
5845
5846         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
5847         move to new modularized testgtk.
5848
5849 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
5850
5851         * gtk/gtktreeview.c: Draw the arrows correctly.
5852
5853         * gtk/gtktreemodel.c: Added user docs.
5854
5855         * gtk/gtk.h: remove gtktreedatalist.h.
5856
5857         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
5858         parent when generating my type.
5859
5860         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5861         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5862
5863 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5864
5865         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5866         GtkTreeModel from object to interface.
5867
5868 2000-10-16  Havoc Pennington  <hp@redhat.com>
5869
5870         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
5871         compilation
5872
5873 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5874
5875         * gtk/gtktreeselection.c: Add API documentation to all public
5876         functions.
5877
5878         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5879         functions.
5880
5881 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
5882
5883         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5884         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
5885         docs to all public functions.
5886
5887         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5888         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5889         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5890         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5891         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5892         issue.
5893
5894 2000-10-14  Robert Brady  <robert@suse.co.uk>
5895
5896         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5897
5898 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
5899
5900         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5901         values other then G_TYPE_STRING.
5902         * gtk/gtktreeselection.c: Minor commenting updates.
5903         * gtk/gtktreeview.c: Format updates.
5904
5905 2000-10-09  Tor Lillqvist  <tml@iki.fi>
5906
5907         * README.win32: Update.
5908
5909         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5910         lines that had been deleted by mistake (?).
5911
5912         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5913         also the case fg==white and bg==black (but still not randomly
5914         coloured cursors). Thanks to Wolfgang Sourdeau.
5915
5916         * gdk/win32/*.c: Silence gcc -Wall.
5917
5918         * gtk/gtk.def: Add missing entry points.
5919
5920         Fixes by Hans Breuer:
5921
5922         * gdk/makefile.msc
5923         * gdk/win32/makefile.msc: Update.
5924
5925         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5926         some MSVC thing, presumably), cause breakpoint on failures. Add
5927         GDK_NOR case. Call g_log_set_always_fatal.
5928
5929         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5930         should be pased by reference.
5931         
5932         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5933         
5934         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5935
5936         * gdk/win32/gdkevents-win32.c
5937         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5938
5939         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5940         implementation object.
5941
5942         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5943         not just windows.
5944         
5945         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5946         Use the wrapper object.
5947         
5948 2000-10-06  Havoc Pennington  <hp@redhat.com>
5949
5950         * Makefile.am (SRC_SUBDIRS): contrib subdir
5951
5952         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5953         so it can be used in Xlib version
5954
5955         * demos/testpixbuf.c (update_timeout): error checking from 1.0
5956         tree
5957
5958         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5959         change from 1.0 tree that returns first frame of animation
5960         if the loaded file is an animation.
5961
5962         * contrib: add new directory to hold stuff that comes with GTK+
5963         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5964         
5965         * configure.in: add contrib/*
5966
5967 2000-10-05  Havoc Pennington  <hp@redhat.com>
5968
5969         * demos/testpixbuf-save.c: add pixbuf save test
5970
5971         * demos/Makefile.am: add testpixbuf-save.c
5972
5973 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
5974
5975         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5976         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5977         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5978         * gtk/gtktreeselection.[ch]: Replaced
5979         "node_selected"/"node_unselected" signal with "selection_changed"
5980         signal.
5981
5982 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5983
5984         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5985         tree widget.
5986
5987 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5988
5989         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5990         drawing.
5991
5992 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
5993
5994         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5995         Move list pointer forwards before removing item from
5996         list. (Crash reported by Salmaso Raffaele)
5997
5998         * gdk/gdkwindow.h: Remove spurious trailing ,
5999
6000         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
6001         dependencies on uninstalled libraries, sorry folks.
6002
6003 2000-10-04  Havoc Pennington  <hp@redhat.com>
6004
6005         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6006         gtk/gtkiconfactory.c: Fix copyrights    
6007
6008         * demos/testpixbuf.c: add inline pixbuf test
6009         
6010 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
6011
6012         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
6013         Add gdk_window_iconify.
6014
6015         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6016         (gdk_window_set_geometry_hints): Add win_gravity
6017         to geometry structure.
6018
6019         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6020         Implement _NET_WM_PING.
6021
6022         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6023         Set _NET_WM_PID on the client leader.
6024
6025         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6026         Handle UTF-8 better.
6027
6028         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6029         UTF-8 better, set _NET_WM_NAME as well. Only set
6030         icon name if it hasn't previously been explicitely 
6031         set.
6032
6033 2000-10-03  Havoc Pennington  <hp@redhat.com>
6034
6035         * gtk/testtextbuffer.c: clean up trailing whitespace,
6036         add extensive tests for tag toggle iteration.
6037         
6038         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
6039         distance
6040
6041         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6042         optimize case where the tag root is on level 1
6043         (gtk_text_line_previous_could_contain_tag): attempt to implement
6044         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
6045         functionality
6046
6047         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
6048         Implement this, though not very efficiently.
6049
6050         * gtk/gtktextiterprivate.h: reformat
6051
6052         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
6053         iterator
6054
6055         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
6056         this to properly revalidate the iterators.
6057
6058         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
6059         properly at the end of the line (and therefore on empty lines)
6060
6061         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
6062         maybe we should return a value...
6063
6064 2000-10-03  Tor Lillqvist  <tml@iki.fi>
6065
6066         * config.h.win32: Guard definition of alloca(). glib.h now handles
6067         that.
6068
6069         * gdk/gdk.def
6070         * gtk/gtk.def: Add new entry points.
6071
6072         Changes just to make GTK+ build without errors on Win32. No hope
6073         of it working in its current state, though...:
6074         
6075         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
6076         some functions from the X11 backend, just to make GTK+ build.
6077
6078         * gdk/makefile.mingw.in
6079         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
6080         number. Add new object files.
6081
6082         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
6083         GetMessageTime to get timestamp (where on X11 uses
6084         gdk_x11_get_server_time()).
6085
6086 2000-10-02  Havoc Pennington  <hp@pobox.com>
6087
6088         * gtk/gtktextview.c: text_window_* weren't static and should have
6089         been.
6090         Start work on child widgets; not yet complete, syncing to 
6091         office computer.
6092
6093         * gtk/gtktextchild.h: change this to contain a public interface,
6094         starting work on child interfaces.
6095         * gtk/gtktextchildprivate.h: move private interfaces here
6096
6097         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
6098
6099         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
6100         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
6101         gtk/gtktextmark.c: copyright notices
6102
6103         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
6104         internal functions      
6105
6106         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
6107         internal function
6108
6109         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6110         Reformatting    
6111
6112 2000-09-30  Havoc Pennington  <hp@pobox.com>
6113
6114         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
6115         NULL start/end pointers
6116
6117         * gtk/gtktextbuffer.c: Write some docs
6118         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
6119         NULL, so you can just check whether there's a selection.        
6120
6121         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
6122         cleanup_line or segments_changed ourselves, it gets done 
6123         in unlink_segment
6124
6125         * gtk/gtktextmark.h:
6126         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
6127         
6128         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
6129
6130         * gtk/gtktextmark.c: delete some more old Tk cruft
6131
6132         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
6133         mark before removing it, so we can emit MARK_DELETED with a valid
6134         pointer.
6135         (gtk_text_buffer_mark_set): hold ref across signal emission
6136
6137         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
6138         whining about attempts to delete special marks
6139
6140         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
6141         underscore, since it's internal.
6142
6143         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
6144         now implemented in terms of iterators in gtktextiter.h
6145
6146         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
6147         New function, destructively sets contents of buffer. Also 
6148         a convenient way to clear the buffer by setting text to ""
6149
6150         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
6151         multiline string literal
6152
6153         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
6154         text changes.
6155
6156         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
6157         is not dereferenceable
6158         (gtk_text_iter_forward_lines): fix return value
6159
6160 2000-09-29  Havoc Pennington  <hp@redhat.com>
6161
6162         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
6163
6164         * gtk/gtktextview.c: Implement drag thresholding; change functions 
6165         that set border window size to have nicer name
6166         (gtk_text_view_mark_set_handler):  Fix this to have the 
6167         right signature.
6168
6169         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
6170
6171         * gtk/testtext.c: Update with API changes, put line numbers on 
6172         both sides.
6173         
6174         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
6175         with this
6176
6177         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
6178         pixbuf; delete a big block of #if 0 Tk code
6179
6180         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
6181         insert_pixmap with insert_pixbuf
6182
6183 2000-09-29  Martin Baulig  <baulig@suse.de>
6184
6185         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
6186         confusion with the GdkPixbuf of the GNOME 1.x platform.
6187
6188 2000-09-29  Havoc Pennington  <hp@pobox.com>
6189
6190         * gtk/gtktextview.c: Implement the side windows.
6191
6192         * gtk/testtext.c: Implement simple line numbering in the 
6193         left side window; seems to make scrolling sloooow. Oops.
6194         Also, cursor blink is for some reason causing redraws
6195         of the line numbers. Should investigate...
6196
6197 2000-09-28  Havoc Pennington  <hp@redhat.com>
6198
6199         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
6200         scrolling child windows, and draw focus rectangle properly.
6201         
6202         (gtk_text_view_buffer_to_window_coords):
6203         Coordinate transformation to deal with all these freaking windows
6204         and offsets
6205         (gtk_text_view_window_to_buffer_coords): transform the other way
6206
6207         * gtk/testtext.c (create_buffer): Update to match Pango API change
6208
6209         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
6210         anonymous tags
6211         (foreach_unref): don't emit remove signal from finalize, just
6212         set tag's parent to NULL
6213
6214 2000-09-26  Havoc Pennington  <hp@redhat.com>
6215
6216         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
6217         Fix some warnings       
6218
6219 2000-09-26  Havoc Pennington  <hp@redhat.com>
6220
6221         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
6222         headers into the private header list
6223
6224         * Makefile.am (pkgconfig_DATA): install pkg-config files
6225
6226         * configure.in: add pkg-config files
6227
6228         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
6229
6230         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
6231         outstanding icon caches on theme change.
6232
6233         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
6234         important types:
6235
6236         (GtkIconSource): Specification for creating a pixbuf 
6237         appropriate for a direction/state/size triplet from 
6238         a source pixbuf or filename
6239
6240         (GtkIconSet): List of GtkIconSource objects that are used to
6241         create the "same" icon (e.g. an OK button icon), and cache for
6242         rendered icons
6243
6244         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
6245         up the icon set for a given stock ID.  GTK maintains a stack of
6246         GtkIconFactory to search, and applications or libraries can add
6247         additional icon factories on top of the stack
6248         
6249         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
6250         the set of GtkIconSource specified for a given stock ID into 
6251         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
6252         RcStyle, under the specified stock ID.
6253
6254         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
6255         render_icon used to derive a GdkPixbuf from a GtkIconSource.
6256         This allows people to theme how prelight, insensitive, etc. are
6257         done.
6258
6259         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
6260         icon factories for a style, and return the resulting 
6261         icon set if any.
6262
6263         (gtk_style_render_icon): Render an icon using the render_icon 
6264         method in the GtkStyleClass.
6265
6266         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
6267         Use the style for a given widget to look up a stock ID, get the
6268         icon set, and render an icon using the render_icon method 
6269         of the style
6270
6271         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
6272         (contains information about a stock item), the built-in stock item
6273         IDs, and functions to add/lookup stock items.
6274
6275         * gtk/stock-icons/*: Stock icons that come with GTK
6276
6277         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
6278         a button based on a GtkStockItem
6279         (gtk_button_new_accel): Takes a uline string and accel group, and
6280         installs the accelerator.
6281
6282         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
6283         image-display widget.
6284
6285 2000-09-25  Havoc Pennington  <hp@redhat.com>
6286
6287         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
6288
6289         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
6290         Fix a bug when removing node data, we didn't properly 
6291         re-splice the linked list after removing the data.
6292
6293         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
6294         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
6295
6296         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
6297
6298         * gtk/gtktextlayout.c (set_para_values): Set tab array 
6299         for the layout from the GtkTextTag.
6300
6301         * gtk/gtktexttypes.h: delete tab and search cruft, 
6302         remove g_convert() in favor of GLib version
6303
6304         * gtk/gtktexttypes.c: remove tab implementation from here,
6305         move to Pango
6306
6307         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
6308         tab stuff using new PangoTabArray from Pango
6309
6310         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
6311         unused border_width stuff
6312
6313 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
6314
6315         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
6316         glib) and now useless utf_to_latin1() latin1_to_utf()
6317
6318         * gtk/gtktextview.[ch]: Change ::move_insert and
6319         ::delete_text action signals to ::move and ::delete;
6320         create the signals with the right enumeration type,
6321         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
6322         C-v bindings, change Home, End to move to beginning/end
6323         of line, Add C-Home C-End to move to beginning/end
6324         of buffer. Change ::cut_text to ::cut_clipboard, etc;
6325         combine ::scroll_text into ::move; use new GtkSelectionData
6326         functions to simplify DND text handling.
6327         
6328         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
6329         deletion enumerations here, rename enumeration values to 
6330         be consistently plural.
6331
6332         * gtk/gtktextbuffer.c: Use new clipboard interfaces
6333         for cut/copy/paste and primary selection.
6334
6335         * gtk/gtktextbuffer.[ch]: Remove excess time and
6336         'interactive' arguments from cut/copy/paste;
6337         rename cut to cut_clipboard, etc; remove
6338         gtk_text_buffer_get_clipboard_contents().
6339
6340         * gtk/gtktextlayout.[ch]: Add 
6341         gtk_text_layout_move_iter_to_line_end() to move the iter to 
6342         line ends.
6343
6344         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
6345         Functions to set or get a UTF-8 string on the selection
6346         data.
6347
6348         * gtk/gtkclipboard.[ch]: New, simplified selection handling
6349         interfaces.
6350
6351         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
6352         created widgets - one of these is useless if we don't.
6353
6354         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
6355         a public function clear all targets registered for the
6356         widget.
6357
6358         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
6359         Never call gtk_widget_realize() - that was just asking
6360         for bizarre side-effects.
6361
6362         * gtk/gtkselection.c (gtk_selection_owner_set): Call
6363         gdk_selection_owner_set even if the widget is the
6364         same so that we reliably update the timestamp on
6365         the server.
6366
6367         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
6368         gdk_x11_get_server_time() function.
6369         
6370         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
6371         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
6372         Add some tricky filtering on serial numbers for
6373         selection clear events to fix up long-standard
6374         race condition FIXME's in gtkselection.c.
6375
6376         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
6377         routines to convert from utf8 to compound text or
6378         STRING and from a text property to UTF-8.
6379
6380         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
6381         a convenience function gdk_get_current_event_time().
6382
6383         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
6384         and free selection_data->data properly
6385
6386 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
6387
6388         * gtk/gtkthemes.c: Remove some unecessary includes.
6389
6390 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
6391
6392         * gtk/gtktextdisplay.c
6393         * gtk/gtktextlayout.c
6394         * gtk/gtktexttag.c
6395         * gtk/gtktexttag.h
6396         * gtk/testtext.c: Change the overstrike property to strikethrough,
6397         to closer match pango.
6398
6399 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
6400
6401         * gtk/gtktextview.c: Fix up visibility so that focus,
6402         cursor_visible and blink interact properly.  Reenable cursor blink
6403         which had been roughly disabled. Make blink and focus
6404         properly per-view.
6405
6406         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
6407         Add a flag for whether to display insertion cursor and
6408         a function to set the flag.
6409
6410         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
6411         get_line_y() to get_line_yrange(), to be a bit more generally
6412         useful.
6413
6414 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
6415
6416         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
6417           do stop_navigating_submenu, to clear last timeout properly.
6418           Also in gtk_menu_motion_notify move ignore_enter above
6419           the conditional to make it always happen as suggested by Owen
6420
6421 2000-09-07  Tor Lillqvist  <tml@iki.fi>
6422
6423         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
6424
6425         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
6426         w32api headers.
6427
6428         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
6429         declarations.
6430
6431         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
6432         (gdk_win32_get_colormap): A line had been deleted by mistake.
6433
6434         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
6435         (gdk_event_translate): Handle more virtual keycodes to be able to
6436         generate GDK events for Control-comma, Control-period, etc.
6437
6438         * gtk/gtk.def: Add some missing entry points.
6439
6440 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
6441
6442         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
6443         Doc comment fixing. (Mostly non-matching parameter names.)
6444
6445         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
6446         comments a little to avoid looking like a doc comment.
6447
6448         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
6449         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
6450         conversions be changed to GError?)
6451
6452         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
6453         Move private #defines into .c file.
6454
6455         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
6456         order of argument addition, remove duplicates.
6457
6458         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
6459         parent class is FrameClass, not BinClass.
6460
6461         * gtk/gtk.h: Add gtkinvisible, which was missing.
6462         (It's occasionalyl useful for client apps, if seldom.)
6463
6464         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
6465         #define.
6466
6467 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
6468
6469         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
6470         coordinates when creating window, instead of GDK-space
6471         coordinates. (Avoid BadValue on too large windows.)
6472
6473 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6474
6475         * configure.in (use_mmx_asm): Remove conftest* after use along the
6476         lines of AC_TRY_COMPILE.        
6477         
6478         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
6479         of g_dirname, which is deprecated.
6480         (gtk_rc_parse_any): Removed calls to
6481         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
6482
6483         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
6484         Removed calls to g_hash_table_{freeze,thaw}, as they are
6485         deprecated now.
6486
6487         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
6488         instead of g_basename.
6489         
6490 2000-09-04 Elliot Lee <sopwith@redhat.com>
6491         
6492         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
6493         ANSI warning.
6494
6495 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
6496
6497         * gtk/gtkwidget.h:  Add some documenting comments about 
6498           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
6499           just as owen said on irc.
6500
6501         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
6502           set HAS_DEFAULT.  Only set it if there isn't another window
6503           holding it (a focus window which RECEIVES_DEFAULT) and only unset
6504           it if the widget is not the focused window with RECEIVES_DEFAULT.
6505           This fixes weird double default bugs in dialogs which has things
6506           call gtk_window_set_default at times.
6507
6508 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
6509
6510         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
6511         Nils Barth and David Santiago to improve submenu
6512         navigation. The patch does this by creating a triangular
6513         region from the point where the pointer leaves the
6514         menu to the submenu.  While the pointer is in
6515         that region and a timeout has not expired, events 
6516         that would cause the active submenu to change are
6517         ignored.
6518
6519 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
6520
6521         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
6522         moving a toplevel window immediately after sizing it would
6523         result in it being sized back to the old size since 
6524         impl->width, impl->height aren't updated until we hear
6525         back from the server. There is still a (longstanding) bug
6526         here that gdk_window_get_size() will give the wrong size
6527         until we do hear back.
6528
6529 2000-08-31  Havoc Pennington  <hp@redhat.com>
6530
6531         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
6532         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
6533         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
6534         Rename GtkTextStyleValues to GtkTextAttributes
6535
6536 2000-08-31  Havoc Pennington  <hp@pobox.com>
6537
6538         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
6539         for rapid testing whether an iterator is the end iterator
6540         (gtk_text_btree_new): init end line cache
6541         (gtk_text_line_is_last): use fast cached line to 
6542         see if we're the last line.
6543         (get_last_line): use cached line here too, should 
6544         speed up some random unrelated code.
6545         
6546 2000-08-30  Havoc Pennington  <hp@pobox.com>
6547
6548         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
6549         signals.
6550
6551         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
6552         delete_text signals. This allows the signals to be used for
6553         implementing undo.
6554
6555         * gtk/gtktextbuffer.c: Change signal handler signatures; 
6556         provide "interactive" argument when emitting insert_text or
6557         delete_text signal.
6558         
6559 2000-08-30  Havoc Pennington  <hp@pobox.com>
6560
6561         * gtk/gtktextbuffer.c: Docs
6562
6563 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
6564
6565         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
6566         from switch statements, since Tor removed the enumeration
6567         value.
6568         
6569         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6570         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
6571
6572 2000-08-29 Elliot Lee <sopwith@redhat.com>
6573         * */*.h: Use G_GNUC_CONST.
6574
6575 2000-08-27  Havoc Pennington  <hp@pobox.com>
6576
6577         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
6578         minor indentation fixes, inserted some FIXME about stuff I
6579         realized was broken while documenting it.
6580         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
6581         GTK convention  
6582
6583 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
6584
6585         * gtk/testgtk.c (create_styles): Fix double free of
6586         font desc.
6587
6588 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6589
6590         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
6591         
6592         * gtk/testgtk.c (create_styles): Add a test for modifying
6593         the style through gtk_widget_modify_*.
6594
6595         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
6596         a function to get the current modifier style.
6597
6598         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
6599         of the passed in GtkRcStyle instead of ref'ing it.
6600
6601         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
6602
6603 2000-08-20  Tor Lillqvist  <tml@iki.fi>
6604
6605         * gdk/gdkimage.h
6606         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
6607         shared memory image+pixmap GdkImage type, or
6608         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
6609         I am dropping that.
6610
6611         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6612         actually call gtk_init_abi_check(), passing also
6613         sizeof(GtkWindow). Ditto for gtk_init_check(). 
6614
6615         * gtk/gtk.def
6616         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6617         New functions, used to check that the GTK+-using code has been
6618         compiled using the correct compiler and switches. In particular,
6619         with gcc one has to use the -fnative-struct switch as GTK+ is
6620         compiled with that.
6621
6622 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
6623
6624         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6625         ->prev fields when merging lists. (Found simultaneously
6626         by Pawel Salek and Jakub Jelinek)
6627
6628 2000-08-12  Tor Lillqvist  <tml@iki.fi>
6629
6630         * gdk/gdk.def
6631         * gtk/gtk.def: Add missing entries.
6632
6633         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6634         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6635
6636         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6637         function. Dummy implementation at this point.
6638
6639         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6640         rules. Undefine GTK_COMPILATION when compiling the test programs.
6641         
6642         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
6643
6644 2000-08-11  Tor Lillqvist  <tml@iki.fi>
6645
6646         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
6647         to convert back and forth from UTF-8 and the "system" (or "current
6648         locale") charset when necessary. Indentation/spacing cleanup.
6649
6650 2000-08-10  Havoc Pennington  <hp@redhat.com>
6651
6652         * Makefile.am (snapshot): Change the format of the snapshot
6653         version to match glib
6654
6655         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
6656         from EXTRA_DIST since it doesn't seem to exist
6657
6658 2000-08-10  Tor Lillqvist  <tml@iki.fi>
6659
6660         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
6661         version of the directory name (not the UTF-8 one) when building
6662         the path name to stat().
6663
6664 2000-08-03  Elliot Lee  <sopwith@redhat.com>
6665
6666         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
6667         PANGO_ATTR_SHAPE set.
6668
6669 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
6670
6671         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
6672         Peter Osterlund to simplify the code while keeping the
6673         functionality the same.
6674
6675 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
6676
6677         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
6678         is_viewable() test further inside the function, since removing the 
6679         window from the redraw list without clearing ->update_area
6680         was also very broken.
6681
6682 2000-08-02  Tor Lillqvist  <tml@iki.fi>
6683
6684         * configure.in: Check for <unistd.h>.
6685
6686 2000-08-01  Martin Baulig  <baulig@suse.de>
6687
6688         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
6689         to display the message that this is a development version of GTK+.
6690
6691 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
6692
6693         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
6694         was depending on widget->allocation instead of the width of text_area,
6695         which was incorrect for subclasses like GtkSpinButton.
6696
6697         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
6698         with width == 1 tests that should be width == -1.
6699
6700 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
6701
6702         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
6703         (broken, Elliot, every single window blank on X) custom code with call
6704         to gdk_window_is_viewable() which a) prevents code duplicate and
6705         b) works. 
6706
6707 2000-07-31  Elliot Lee  <sopwith@redhat.com>
6708
6709         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
6710         to get the GDK_PARENT_ROOT() macro to work.
6711         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
6712         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
6713         of, windows that aren't shown.
6714         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
6715         pointer grab stuff.
6716
6717 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
6718
6719         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
6720           s/gtk_main_iteration/g_main_iteration/
6721
6722           Did this already in change:
6723                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
6724           don't know how it got reverted.
6725
6726 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
6727
6728         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
6729         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
6730
6731         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
6732         not gdk_pixbuf.
6733
6734 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
6735
6736         * configure.in,po/{sp,sr}.po: Added Serbian files
6737
6738 2000-07-30  Tor Lillqvist  <tml@iki.fi>
6739
6740         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
6741
6742         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
6743         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
6744         GIOChannel implementation.
6745
6746         * gdk/win32/gdkinput.c
6747         * gdk/win32/gdkpango-win32.c: Update license name here, too.
6748
6749         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
6750         definition to match prototype.
6751
6752         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
6753
6754 2000-07-27  Elliot Lee  <sopwith@redhat.com>
6755
6756         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
6757         function, to allow handling image formats that cannot be detected
6758         by looking at content alone.
6759
6760 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
6761
6762         * docs/tutorial/*.gif *.jpg *.eps
6763           Update these to the same look-n-feel.
6764           Why does including images in DocBook suck so badly?
6765
6766 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
6767
6768         * gtk/gtktable.c: applied patch from Phil Thompson
6769         <phil@river-bank.demon.co.uk> that enables space settings for
6770         the last row/columns as well.
6771
6772 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
6773
6774         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
6775         updates the license headers to the GNU Lesser General Public License,
6776         as well as updating the copyright year to 2000.
6777
6778 2000-07-26  Robert Brady  <rwb197@zepler.org>
6779
6780         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
6781           and po/Makefile, was installing and looking for them under gtk20
6782           and gtk2 respectively.
6783
6784 2000-07-25  Havoc Pennington  <hp@redhat.com>
6785
6786         * gtk/testtext.c: Comment out some stuff that depends on the rest
6787         of my patches.
6788
6789 2000-07-25  Havoc Pennington  <hp@redhat.com>
6790
6791         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
6792         buffer
6793
6794 2000-07-25  Havoc Pennington  <hp@redhat.com>
6795
6796         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
6797         widget changes.
6798
6799         * gtk/gtktextview.h: To be consistent with usage of "line"
6800         throughout the API to mean "newline-terminated thingy", change
6801         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
6802         to MOVEMENT_LINE.
6803
6804         (GtkTextView): Add flags for default editability, and whether to
6805         show the cursor. Add functions to get/set that. Add 
6806
6807         (gtk_text_view_get_iter_location): new function
6808
6809         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
6810         gtktextlayout.h
6811         (g_convert): Add g_convert temporarily, will go in glib in a bit
6812         
6813         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
6814         GtkTextTagTableForeach instead of brokenly using GHFunc.
6815         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
6816
6817         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
6818         moved to public header.
6819
6820         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
6821         "invisible", since "elide" was a bad name.
6822         (gtk_text_tag_get_priority): Added
6823
6824         (GtkTextStyleValues): put this in public header, along with
6825         functions to use it.
6826
6827         * gtk/gtktextmarkprivate.h: Include more headers, since we no
6828         longer include gtktextbtree.h.
6829
6830         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
6831         gtk_text_mark_deleted
6832
6833         * gtk/gtktextlayout.h: Don't include the "really private" headers,
6834         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
6835         to make this possible. Now we only need to install
6836         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
6837         (However the Makefile.am isn't changed yet because of the
6838         logistics of merging gtk-hp-patches piecemeal)
6839
6840         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
6841         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6842         gtk_text_iter_get_line is now used in the public API for a
6843         different purpose.
6844
6845         * gtk/gtktextiter.h: Clean up function names to be more
6846         consistent. Always call char offset "offset" and byte index
6847         "index". A "line" is always a line number. 
6848
6849         (gtk_text_iter_is_last): new function, more efficient than 
6850         the existing way to check
6851         (gtk_text_iter_is_first): new function, also more efficient
6852
6853         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
6854
6855         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
6856         gtk_text_iter_forward_char, etc.
6857
6858         (gtk_text_iter_forward_to_tag_toggle): Renamed from
6859         forward_find_tag_toggle, since this isn't a linear search
6860
6861         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6862
6863         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
6864         New functions, search for a buffer substring.
6865
6866         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6867         interactive and default editable (since we need to store that info
6868         until we receive the selection data).
6869
6870         Remove all the _at_char and at_line etc. versions of functions;
6871         only have iterator versions.
6872
6873         Add _interactive() versions of functions, that consider the
6874         editability of text. (FIXME add interactive flag to the 
6875         insert/delete signals per Darin's suggestion)
6876
6877         (gtk_text_buffer_get_tag_table): new function, demand-creates the
6878         tag table if necessary
6879
6880         Remove declaration of gtk_text_buffer_get_iter_from_string
6881
6882         (_gtk_text_buffer_get_btree): private/internal function, added.
6883         
6884
6885         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6886         (gtk_text_line_is_last): new function
6887
6888 2000-07-25  Havoc Pennington  <hp@redhat.com>
6889
6890         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6891         using GtkProgressBar. See Changes-2.0.txt for details.
6892
6893         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6894         "pulse_step" which are the equivalent of
6895         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6896         Implement new API.
6897         
6898         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6899         (use_text_format) to mark whether text set on the progress bar is
6900         a format string. Deprecate entire GtkProgress interface.
6901
6902         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6903         (gtk_progress_build_string): make this a no-op if use_text_format
6904         is FALSE
6905
6906         * docs/Changes-2.0.txt: Describe progress bar changes.
6907
6908 2000-07-25  Tor Lillqvist  <tml@iki.fi>
6909
6910         * Makefile.am: Include the build directory.
6911
6912         * configure.in: Generate build/Makefile, build/win32/Makefile,
6913         gdk/, gdk/win32/, and gtk/makefile.mingw.
6914
6915         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6916         Add GETTEXT_PACKAGE.
6917         
6918         * gdk/gdk.def
6919         * gtk/gtk.def: Updates.
6920
6921         * gdk/gdkfont.h
6922         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6923         need them any longer.
6924
6925         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6926
6927         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6928         PANGOWIN32_LIBS and gdk_pixbuf.
6929
6930         * gdk/win32: Compiles, but no doubt doesn't work at all.
6931
6932         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
6933
6934         * gdk/win32/gdkinput.c: New file, temporarily.
6935         
6936         * gdk/win32/gdkinput-win32.h: New file
6937
6938         * gdk/win32/gdkinputprivate.h: Remove.
6939
6940         * gdk/win32/gdkpango-win32.c: New file.
6941
6942         * gtk/makefile.mingw.in: New file
6943
6944         * gtk/makefile.cygwin: Removed
6945         
6946         * gtk/Makefile.am: Update accordingly.
6947
6948         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6949         made externally visible.
6950
6951         * gtk/gtkmain.c: Use it.
6952         
6953         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6954         is enough.
6955
6956         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6957
6958 2000-07-24 Elliot Lee <sopwith@redhat.com>
6959         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6960         individual backends already.
6961         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6962         again. Yes, there really is a good reason for this, if you are using the gdkregion
6963         internals, and if you're not, why do you care?
6964         * gdk/gdkwindow.c: Fix inverted condition
6965         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6966         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6967         * gtk/gtkrange.c: Redraw trough when moving.
6968         * gtk/gtktypeutils.c: Fix warning by adding const cast.
6969         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6970
6971 2000-07-23  Tor Lillqvist  <tml@iki.fi>
6972
6973         * configure.in: Check for mkstemp and sigsetjmp. Output
6974         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6975
6976         More work on GDK for Win32. Still in an intermediate state.
6977
6978         * gdk/makefile.cygwin
6979         * gdk/win32/makefile.cygwin: Removed.
6980         
6981         * gdk/makefile.mingw.in
6982         * gdk/win32/makefile.mingw.in: New files.
6983
6984         * gdk/Makefile.am
6985         * gdk/win32/Makefile.am: Generate and distribute them.
6986
6987         * gdk/win32/gdkwindow-win32.h
6988         * gdk/win32/gdkdrawable-win32.h
6989         * gdk/win32/gdkpixmap-win32.h: New files.
6990
6991         * gdk/win32/gdkcolor-win32.c
6992         * gdk/win32/gdkcursor-win32.c
6993         * gdk/win32/gdkdrawable-win32.c
6994         * gdk/win32/gdkgc-win32.c
6995         * gdk/win32/gdkimage-win32.c
6996         * gdk/win32/gdkprivate-win32.h
6997         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6998         Rename fields and variables called xcursor, xid, etc (these names
6999         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
7000
7001 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
7002
7003         * gtk/gtkentry.[ch]: Fix some problems with vertical
7004         alignment.
7005
7006         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
7007         char/byte confusion.
7008
7009 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
7010
7011         * gtk/gtktextview.c (changed_handler): Fix bug where
7012         redraw wasn't being done properly when height of
7013         dirty region changed.
7014
7015         * demos/Makefile.am: Remove various references to
7016         -lgmodule
7017
7018 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
7019
7020         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7021         PangoAttrShape to reserve space for pixmaps, add 
7022         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7023         in the display functions.
7024         
7025         * gtk/testgtk.c (create_layout): Set some more exotic
7026         scrolled window options
7027
7028         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7029         Add function to set the shadow type of a window, to allow
7030         putting a shadow around widgets such as GtkLayout or GnomeCanvas
7031         which don't draw their own frame.
7032
7033 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
7034
7035         * docs/tutorial/package-db-tutorial.sh: New file for
7036           packaging DocBook format tutorial
7037
7038 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
7039
7040         * docs/tutorial/gtk-tut.sgml: Minor updates
7041
7042         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
7043
7044 2000-07-19  Tor Lillqvist  <tml@iki.fi>
7045
7046         * gtk/gtksignal.c: Fix C++ comment.
7047
7048         * gtk/gtkimmulticontext.c
7049         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
7050         don't return value from void functions.
7051
7052         * gtk/gtk.def: Add gtk_rc_style_unref.
7053
7054 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7055
7056         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
7057         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
7058         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
7059         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
7060         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
7061         gtk/gtktypeutils.h: Include files outside of the extern "C"
7062         block. Makes some C++ compiler happy. Reported by Denis Vakatov
7063         <vakatov@peony.nlm.nih.gov>.
7064
7065 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
7066
7067         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
7068           Completes first pass. Hurrah!
7069
7070 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
7071
7072         * docs/tutorial/gtk-tut.sgml: More clean ups.
7073
7074 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
7075
7076         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
7077         paint the background of the text area which was accidentally
7078         removed at some point.
7079
7080         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
7081           
7082          - Move most of the functionality from the theme vtable
7083            into GtkRcStyleClass and GtkStyleClass. The moved
7084            vtable functions were changed a bit in the move to
7085            work better in their new home.
7086
7087          - Get rid of the engine and engine_data fields from
7088            GtkRcStyle and GtkStyle; instead the theme
7089            engine derives theme-specific subclasses of GtkRcStyle
7090            and GtkStyle
7091
7092          - Add extra dlsym() found entry point to themes,
7093            theme_create_rc_style().
7094
7095         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
7096         in gtk_style_real_copy.
7097
7098         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
7099         to register a type associated with an engine. (The engine
7100         won't be unloaded as there is an instance of the type.)
7101
7102
7103 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
7104
7105         * docs/tutorial/gtk-tut.sgml: Clean ups.
7106
7107 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
7108
7109         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
7110           of cleaning up to do.
7111
7112 2000-07-15  Tor Lillqvist  <tml@iki.fi>
7113
7114         * gdk/testgdk.c: New file, quick hack to test backends for
7115         pixel-by-pixel correctness of the most simple graphic operations.
7116
7117 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
7118
7119         * Really release 1.3.1
7120         
7121         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
7122         include structure.
7123
7124 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
7125
7126         * Released 1.3.1
7127
7128 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
7129
7130         * gtk/gtktextlayout.c: use FALSE for size_only most
7131         of the time when calling gtk_text_layout_get_line_display()
7132         to avoid causing double reshapes when a redraw follows
7133         immediately after.
7134
7135 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
7136
7137         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
7138         appropriate region and gdk_window_process_updates() so trough
7139         updating doesn't lag behind the window being scrolled.
7140
7141         * gdk/gdkgc.c: Make parent_class pointer static.
7142          
7143 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
7144
7145         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
7146         include <string.h>.
7147          
7148         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
7149         cut-and-paste error in computing memory offset for 4 channels.
7150
7151 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
7152
7153         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
7154         gtk_rc_append_default_pixmap_path(), since it wasn't
7155         adding an interesting path and we don't have a meaningful
7156         default for this value.
7157
7158 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
7159
7160         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
7161         gtk-config to gtk-config-2.0 move gtk_.m4 to
7162         gtk-2.0.m4
7163
7164         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7165         gdk/Makefile.am demos/Makefile.am: Change 
7166         library names to libgtk-1.3.la, etc, so that we
7167         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
7168
7169         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7170         gdk/Makefile.am gdk/x11/Makfile.am
7171         Move include files into /usr/include/gtk-2.0, 
7172         /usr/lib/gtk-2.0/include/
7173          
7174         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
7175         gtk/gtkintl.h: Change package for gettext from 
7176         gtk+ to gtk20. Put hack in autogen.sh to modify
7177         po/Makefile.in.in after gettextize to make this
7178         possible.
7179
7180         * gtk+.spec: Some updates, not tested.
7181
7182         * gdk-pixbuf/Makefile.am: Move loaders into
7183         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
7184
7185         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
7186         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
7187         to THEMENAME/gtk-2.0/. Move engine directory  to
7188         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
7189         
7190 2000-07-12  Tor Lillqvist  <tml@iki.fi>
7191
7192         Win32 changes, still doesn't build though.
7193
7194         * gdk/makefile.cygwin
7195         * gdk/win32/makefile.cygwin
7196         * gtk/makefile.cygwin: Updates.
7197
7198         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
7199         default values for fg and bg pixel as X11 does (0 and 1), not
7200         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
7201         Use 0 for pen width by default (treated as 1 anyway later, but for
7202         apps that might check the value in the GdkGC).
7203         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
7204         interface to gdk_gc_predraw and _postdraw.
7205
7206         * gdk/win32/gdkwin32.h
7207         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
7208
7209         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
7210         extraneous semicolon.
7211
7212         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
7213
7214         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
7215         not the Win32 bitspixel value.
7216
7217         * gdk/win32/gdkcc-win32.c:
7218         * gdk/win32/gdkcolor-win32.c 
7219         * gdk/win32/gdkprivate-win32.h
7220         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
7221         GDK object structure.
7222
7223 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
7224
7225         * docs/tutorial/gtk_tut_12.es.sgml (name): 
7226         * docs/tutorial/gtk_tut_it.sgml (name): 
7227         * docs/tutorial/gtk_tut_fr.sgml (name): 
7228         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
7229         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
7230
7231 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
7232
7233         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
7234           small changes.
7235
7236 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
7237
7238         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
7239         a bug here, never been here and never fixed anything ;(
7240         (don't segfault if tree->root_tree is NULL, which happens prior
7241         to widget realization, but puke instead).
7242
7243 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
7244
7245         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
7246         add the necessary tokens.
7247
7248         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
7249         (gtk_rc_style_to_style): copy thicknesses.
7250         (gtk_rc_init_style): apply thicknesses.
7251         (gtk_rc_parse_style): parse xthickness and ythickness.
7252
7253         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
7254
7255         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
7256         (gdk_window_new): 
7257         (_gdk_windowing_window_init): 
7258         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
7259         (gdk_pixmap_create_from_data): 
7260         (gdk_bitmap_create_from_data): 
7261         (gdk_pixmap_new): 
7262         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7263         (gdk_image_new): 
7264         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
7265         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
7266         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
7267         (gdk_colormap_get_system): 
7268         (gdk_colormap_new): 
7269         * gdk/gdkwindow.c (gdk_window_init): 
7270         * gtk/gtkstyle.c (gtk_style_new):
7271         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
7272         * gdk/gdkpixmap.c (gdk_pixmap_init): 
7273         * gtk/gtkrc.c (gtk_rc_style_new):
7274         use g_object_new() instead of g_type_create_instance() which
7275         is a private function for fundamental type implementations.
7276
7277 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
7278
7279         * configure.in: Add check for db2html
7280
7281 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
7282
7283         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
7284         hack to set glib_debug_objects based on gtk_debug_flags.
7285
7286 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
7287
7288         * INSTALL.in: Update the Prerequisites section.
7289
7290         * Makefile.am demos/Makefile.am docs/Makefile.am
7291         docs/tutorial/Makefile.am gdk/x11/Makefile.am
7292         gdk/linux-fb/Makefile.am: Dist fixes
7293
7294 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
7295
7296         * NEWS: 10,000 foot view of 1.3.1 changes.
7297
7298 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
7299
7300         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
7301         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
7302         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
7303         gdk/x11/gdkmain-x11.c: 
7304
7305         Patch from George Lebl to add a GdkGrabStatus enumeration to use
7306         as a return value of gdk_*_grab(). Previously, we just
7307         returned the X11 values directly.
7308
7309 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
7310
7311         * gdk/x11/Makefile.am: Patch from George Lebl to 
7312         install all the headers in the right place.
7313
7314 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
7315
7316         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
7317           initial conversion to DocBook.
7318
7319 2000-07-04  Tor Lillqvist  <tml@iki.fi>
7320
7321         * README.win32: Improve a bit.
7322
7323         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
7324         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
7325         Alt+0nnn on the numpad (used to enter characters by numeric code
7326         from current DOS or ANSI codepage) working correctly, as in other
7327         Windows apps.
7328
7329         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
7330         same argument validity tests as in X11 version.
7331         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
7332
7333         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
7334         definitions in case missing from headers.
7335
7336         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
7337         destroy the window-specific cursor.
7338         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
7339         calling GetModuleHandle(NULL).
7340         (gdk_window_set_cursor): Reworked to always copy the passed cursor
7341         with CopyCursor before setting it as the window-specific
7342         cursor. It is OK for the caller to destroy the GdkCursor (and thus
7343         also its Windows cursor) after calling this function. Destroy any
7344         previous window-specific cursor.
7345
7346 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
7347
7348         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
7349         font charset is iso8859-1, not iso-8859-1.
7350
7351 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
7352
7353         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7354         Use g_get_charset() instead of g_get_codeset().
7355
7356         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
7357         Comment out some strdup'ing functions to keep timj
7358         happy until we finish fighting this out.
7359
7360 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
7361
7362         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
7363         <= width or height.
7364
7365         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
7366         from 1.2 for parent/child states.
7367
7368         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
7369         of typos.
7370
7371         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
7372         event structures, replace with a generic axes field. Replace 
7373         deviceid/sourec with GdkDevice *device.
7374
7375         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
7376         to extract particular axis use value from event. (Also
7377         can be used for normal X/Y.)
7378
7379         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
7380         allow for arbitrary number of axes, namespace everything
7381         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
7382         everywhere.
7383
7384         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
7385         Get rid of the gdk_input_vtable setup if favor of simply
7386         defining the functions in gdkinput-none/gxi/xfree.c in
7387         a similar fashion to the way that the port structure is 
7388         done.
7389
7390         * gtk/gtkdnd.c: Fix fields of synthesized button press event
7391         for new event structures. 
7392
7393         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
7394         new device interfaces.
7395
7396 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
7397
7398         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
7399         set the initial text.
7400
7401         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
7402         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
7403         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
7404         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
7405
7406         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7407         pango_layout_set_font_description to simplify.
7408
7409 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
7410
7411         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7412         pango_layout_set_font_description to simplify.
7413
7414 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
7415
7416         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
7417         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
7418         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
7419
7420         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
7421         PANGO_PIXELS() macro.
7422
7423 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
7424
7425         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
7426         that returns a PangoContext owned by the widget and updated to
7427         match future changes in the widget. Also, make 
7428         gtk_widget_create_pango_layout() use this context. If we ever
7429         add a ::changed signal to PangoContext, this will make things
7430         much more convenient. 
7431
7432         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
7433         in the appropriate places instead of destroying the layouts and
7434         creating new ones.
7435
7436         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
7437         in a few strategic places.
7438
7439 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
7440
7441         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
7442         gtk_widget_size_request() on reparented child, if one. Otherwise,
7443         queue_resize() on the child never results in it getting size-requested
7444         at all.
7445
7446         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
7447         in option menus, so that (with luck) people won't copy it into
7448         their apps in the future.
7449
7450         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
7451         to gtk_option_menu_calc_size. This isn't perfect, but should fix
7452         a lot of problems with changing the size of the menu's menu
7453         items after adding it to the option menu.
7454
7455         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
7456
7457         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
7458         the text direction for a widget changes.
7459
7460         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
7461         ::direction_changed to get rid of various hacks.
7462
7463 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
7464
7465         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
7466         name.
7467
7468 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
7469
7470         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
7471         flag to the structure. Do not call XFreePixmap on pixmaps created
7472         by gdk_pixmap_foreign_new().
7473
7474 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
7475
7476         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
7477         value using GdkRGB functionality given GdkColormap and GdkColor.
7478         (name not final, waiting for inspiration.)
7479         
7480         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
7481         set the foreground/background of a GC using the GC's colormap
7482         and GdkRGB. (name not final, waiting for inspiration.)
7483
7484         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
7485         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
7486
7487         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
7488         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
7489         purely a function of the corresponding colormap. Make
7490         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
7491
7492         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
7493         gdk_pixbuf_*create_from_xpm_* in terms of
7494         gdk_pixbuf_new_from_xpm_data(), move into platform independent
7495         code.
7496
7497         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
7498         advantage of the new draw_rgb_32_image_dithalign.
7499
7500         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
7501
7502         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
7503         on each created GC.
7504
7505         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
7506
7507         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
7508         which we initialize from the drawable when the GC is created,
7509         if the drawable has a colormap.
7510
7511         * gdk/x11/gdkgc-x11.c: include string.h for memset.
7512
7513         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
7514
7515         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
7516
7517 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
7518
7519         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
7520         actually returning expose events, make sure to set
7521         the count field properly.
7522
7523         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
7524         accidentally reintroced bug which always cleared
7525         the graphics_exposures value. 
7526
7527 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
7528
7529         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
7530
7531 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
7532
7533         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
7534
7535 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
7536
7537         * docs/faq/gtk-faq.sgml: Start of Section 6.
7538
7539 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
7540
7541         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
7542         
7543         (Fixes problem with drawing childless frames. Pointed out
7544         by and a first patch from Anders)
7545         
7546         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
7547         compute a child_allocation, even if we don't have a child.
7548
7549         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
7550         Always chain to the parent's impl, even if we don't have a child.
7551
7552 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7553
7554         * gdk/gdkrgb.c: If possible, create only a single shm segment and
7555         use multiple parts of it instead of creating a bunch of separate
7556         segments, since the maximum number of segments per system is not
7557         large. (This might be worth backporting to GTK+-1.2.x if we make a
7558         new release )
7559
7560         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
7561         structure in preparation for per-colormap GdkRGB.
7562
7563         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
7564         to False when we get EINVAL from shmget so that the caller of
7565         gdk_image_new can retry with a smaller segment size.
7566
7567 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
7568
7569         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
7570
7571 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
7572
7573         * configure.in: make the current version number 1.3.1 (binary age 0,
7574         interface age 0).
7575         
7576         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
7577         gtkcompat.h is all we want.
7578
7579         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
7580         GLib primitive types. fixed g_type_register_fundamental() argument
7581         ordering.
7582
7583         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
7584         compiles.
7585
7586         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
7587         object code cleanup, comment trigraph fixes, etc...
7588
7589 2000-06-23  Havoc Pennington  <hp@redhat.com>
7590
7591         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
7592         instead of making up a bogus name for first_para_mark
7593
7594         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
7595         0 as a context ID
7596
7597 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
7598
7599         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
7600
7601 2000-06-21  Havoc Pennington  <hp@pobox.com>
7602
7603         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
7604         we didn't check window->bg_pixmap != GDK_NO_BG.
7605
7606         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
7607         gdk-pixbuf
7608
7609 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
7610
7611         * docs/faq/gtk-faq.sgm: Move file to here.
7612           TODO: Update Makfile.am 
7613
7614 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
7615
7616         * docs/gtk-faq.sgm: Add Section 2
7617
7618 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
7619
7620         * docs/gtk-faq.sgm: New file. Start of DocBook
7621           version of the FAQ.
7622
7623 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
7624
7625         * configure.in (GDK_PIXBUF_MAJOR): Define version
7626         numbers for GDK_PIXBUF_*, as they get substituted
7627         into a header file. Need to consider versioning
7628         for gdk-pixbuf more carefully later.
7629
7630 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
7631
7632         Work with srcdir != builddir.   
7633         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
7634         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7635         * demos/testpixbuf.c: Likewise.
7636         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7637         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
7638         <gdk/x11/gdkx.h>.
7639         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
7640         "gdk-pixbuf.h".
7641         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7642
7643 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
7644
7645         * TODO.xml: Change 1.4 version numbers to 2.0.
7646
7647 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
7648
7649         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
7650         fixups to GTK+ standard.
7651
7652 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
7653
7654         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
7655         gdk-pixbuf.
7656
7657         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
7658         fixups for GObject.
7659
7660         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
7661         gdk-pixbuf with GDK dependencies moved into GDK.
7662         
7663         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
7664         move gdk-pixbuf-loader here until GObject has signals.
7665
7666         * demos/: New directory of demos. Move demos from
7667         gdk-pixbuf here.
7668
7669         * demos/pixbuf-init.c: Small bit of code to check for
7670         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
7671         set GDK_PIXBUF_MODULEDIR appropriately.
7672
7673         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
7674         define which no longer makes sense.
7675
7676 2000-06-21  Havoc Pennington  <hp@redhat.com>
7677
7678         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
7679         gtk_get_default_language
7680
7681         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
7682         new function to get the default language
7683
7684         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
7685         s/gtk_text_view_style_values/gtk_text_style_values/
7686
7687         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
7688         Add a "language" field to tags.
7689
7690         (gtk_text_tag_set_arg): Fix bug in setting
7691         "bg_full_height_set" tag.
7692
7693 2000-06-21  Havoc Pennington  <hp@redhat.com>
7694
7695         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
7696         in the interfaces
7697
7698         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
7699         stuff instead when possible.
7700
7701         * gtk/gtktexttypes.h: Delete some unused constants
7702
7703         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
7704         testtextbuffer.c: use glib instead of custom unicode routines
7705
7706 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
7707
7708         * docs/es/: Removed mistakenly added generated sgml
7709
7710         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
7711         Remove outdated info files.
7712
7713         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
7714         Moved tutorial files into subdir
7715
7716         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
7717         subdir.
7718
7719         * docs/man/gtk_button.pod: Remove. (contents will be
7720         integrated into gtk-reference button page.)
7721
7722         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
7723         docs/faq/Makefile.am: Adjust for new organization
7724
7725 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
7726
7727         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
7728         not $(MKINSTALLDIRS)
7729
7730 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
7731
7732         * gtk/testgtk.c (create_text): Finish the job Elliot started
7733         of removing font setting test for text widget. (Since text widget
7734         and GdkFont are not deprecated, and cause portability problems.)
7735
7736 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
7737
7738         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
7739         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
7740         Remove use of libunicode in favor of new GLib functions.
7741
7742         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
7743         nano-x, framebuffer. The X11 include is just a hack until we get
7744         the necessary functions in gdkcolor.h, so there is no reason to
7745         add other includes of platforms.
7746
7747         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
7748         window bigger than the screen change.
7749
7750         * gtk/testgtk.c: Revert some random changes from Elliot
7751         that had no particular point and were causing testgtkrc
7752         not to function correctly.
7753         
7754         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
7755         because GdkSegment and GdkRegionBox have the same fields,
7756         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
7757         results in clearer code.
7758
7759         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
7760         gdk_input_translate_coordinates): Fix missed GdkObjectification
7761
7762 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7763
7764         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
7765         * gtk/gtk{plug,socket}.h: Missed commits from previous.
7766
7767 2000-06-20  Havoc Pennington  <hp@redhat.com>
7768
7769         * modules/linux-fb/Makefile.am: Make this compile
7770         without framebuffer enabled
7771
7772         * gdk/linux-fb/Makefile.am: Add conditional to not build
7773         framebuffer unless specified in configure
7774
7775         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
7776         the size of the target instead of source if -1 was passed for
7777         width/height
7778
7779         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
7780         width/height confusion.
7781
7782 2000-06-19  Havoc Pennington  <hp@redhat.com>
7783
7784         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
7785         GDK_DRAWABLE_XID. In the future, we probably want to make it
7786         faster with G_DISABLE_CHECKS turned on.
7787
7788 2000-06-14  Havoc Pennington  <hp@redhat.com>
7789
7790         * gdk/Makefile.am: add gdkpixmap.c
7791
7792         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
7793         s/gdk_image_init/_gdk_windowing_image_init
7794
7795         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
7796         ref/unref
7797
7798         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
7799
7800         * gdk/gdkcompat.h: remove GdkWindowType compat, since
7801         GdkWindowType is now non-deprecated; 
7802         change gdk_window_get_type() compat to be
7803         gdk_window_get_window_type().
7804
7805         * gdk/gdkdnd.h: make GdkDragContext a GObject.
7806
7807         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
7808         virtual GObject. Make all functions call into the vtable.
7809         Move gdk_image_put() guts in here. Remove GdkDrawableType
7810         and gdk_drawable_get_type(), these are now GdkWindow-specific.
7811         draw_image, get_depth, get_size, set_colormap, get_colormap,
7812         get_visual added to the vtable.
7813         
7814         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
7815         GObject. Virtualize everything. 
7816         (gdk_gc_new_with_values): remove check for destroyed window,
7817         because now GdkWindow::create_gc will check this.
7818         (gdk_gc_set_values): New function to set GC values, this 
7819         was already implemented but wasn't in the header
7820
7821         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
7822
7823         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
7824         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
7825         remove _gdk_window_class; add _gdk_window_impl_get_type() and
7826         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
7827         _gdk_windowing_window_init, rename gdk_image_init to
7828         _gdk_windowing_image_init.
7829         
7830         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
7831         (gdk_draw_layout): Remove check for destroyed window, 
7832         because all the drawable methods already check it.
7833         
7834         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
7835         Add gdkpixmap.c which contains implementation of GdkDrawable
7836         virtual table (by chaining to a platform-specific implementation
7837         object).
7838         
7839         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
7840         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
7841         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7842         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7843         GdkColormapPrivate. 
7844
7845         * gdk/gdktypes.h: #include <glib-object.h>
7846
7847         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
7848         Move most functionality to platform-specific implementation
7849         object. GdkWindow itself now handles the backing store, then
7850         chains to the platform-specific implementation.
7851         (gdk_window_get_window_type): return GdkWindowType of the window.
7852         (gdk_window_peek_children): New routine, returns the children of 
7853         a GdkWindow
7854         (gdk_window_get_children): Was in X11-specific code and did 
7855         XQueryTree. Changed to simply return a copy of window->children; 
7856         so it can go in cross-platform code.
7857         
7858         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
7859
7860         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
7861         GdkColormap; just changed to use the new private data instead
7862         of casting to GdkColormapPrivate.
7863
7864         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
7865         gdk_cursor_new().
7866
7867         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
7868         (private data member in the GObject). 
7869         (xdnd_manager_source_filter): Function had broken 
7870         error handling, fix it (use gdk_error_trap_push).
7871
7872         * gdk/x11/gdkdrawable-x11.c: This file now implements
7873         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
7874         base class is purely for the convenience of the X port,
7875         and not part of the interface to cross-platform GDK.
7876
7877         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7878         
7879         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7880         specific to X, and returned by the create_gc virtual method
7881         of GdkDrawableImplX11. 
7882         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7883         rather than gchar, this was also changed in the GdkGC vtable.
7884         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7885         mask is 0, return immediately, instead of checking every flag.
7886         This is faster, and keeps us from segfaulting if values is NULL
7887         and the mask contains some nonzero flags.
7888
7889         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7890         GdkWindow.
7891
7892         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
7893         GdkWindowPrivate is gone.
7894
7895         * gdk/x11/gdkim-x11.c: rename things that got renamed.
7896
7897         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
7898         remove the image_put stuff that got transferred to GdkDrawable.
7899         
7900         * gdk/x11/gdkinput.c: renamings
7901
7902         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7903
7904         * gdk/x11/gdkpixmap-x11.c: GObject conversion
7905
7906         * gdk/x11/gdkprivate-x11.h: indentation fixes
7907
7908         * gdk/x11/gdkproperty-x11.c: renamings
7909
7910         * gdk/x11/gdkselection-x11.c: renamings
7911
7912         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
7913         implements the platform-specific "impl" object.
7914         Moved gdk_window_get_children to gdk/gdkwindow.c
7915
7916         * gdk/x11/gdkx.h: Remove all the private structs and private datas
7917         that no longer exist. Add declaration of GdkGCX11 object here.
7918         Fix all the macros to still work. 
7919
7920         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7921         GdkDragContext from the boxed types since they are now GObjects.
7922
7923         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7924         moved xthickness/ythickness into the instance. GtkStyleClass
7925         functions are now in the standard vtable for GtkStyle, so you have
7926         to create a GObject subclass to write a theme engine.
7927         (gtk_style_copy): fixed a leaked PangoFontDescription
7928         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7929         can be the standard GObject function.
7930         
7931         * Throughout GTK:
7932         s/style->klass->[xy]thickness/style->[xy]thickness
7933         s/pango_layout_unref/g_object_unref/
7934
7935         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7936         
7937         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
7938         accessing GDK internals.
7939
7940         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
7941         accessing GDK internals.
7942
7943 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7944
7945         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7946
7947         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7948         problem by calculating event position relative to the trough
7949         rather than the slider.
7950         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7951
7952         * gdk/gdkgc.h: Add GDK_NOR.
7953
7954         * configure.in, Makefile.am: Add modules top level dir
7955         * configure.in: Only use pangox library if building x11 target.
7956         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7957
7958 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7959
7960         * gtk/gtkcolorsel.c: Change private class member to be named
7961         private_data throughout the file.
7962
7963         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7964         private_data to avoid clashing with keyword.
7965
7966 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7967
7968         * gdk/gdkdnd.h: Add comment to remove warning.
7969
7970 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
7971
7972         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7973         Byelorussian language; changed the Makefile and file names 
7974         to reflect that.
7975
7976 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
7977
7978         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7979         rather than gdk_window_hide; this makes things work
7980         correctly if the window is programmatically hidden while
7981         iconified.
7982
7983 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
7984
7985         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7986         cut and paste typo where wrong pixmap was being
7987         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7988
7989 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
7990
7991         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7992         Add helper function to compute format / bytes 
7993         relationship. Use in a couple places to fix up
7994         errors which assume 8 * format.
7995
7996         * gtk/gtkselection.c (gtk_selection_request): Use 32
7997         rather than 8 * sizeof (GdkAtom), to work correctly
7998         on Alpha.
7999
8000 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
8001
8002         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
8003         libgtk.la
8004         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
8005         versions
8006
8007         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
8008         checking macros return NULL since the function has a return value.
8009
8010 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
8011
8012         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
8013         GTK+ from building at all.
8014
8015         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8016
8017 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8018
8019         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8020         gtk/Makefile.am: make it possible to configure gtk for different
8021         targets on the same platform. The library name is now 
8022         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8023         flag. Only the x11 target compiles right now.
8024         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8025         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8026         * gdk/nanox/gdk*generic*: delete generic region code.
8027         * gdk/linux-fb/gdk*generic*: delete generic region code.
8028         * README.nanox: update information.
8029         
8030 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
8031
8032         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
8033         prepend not append. (Pointed out by Brett Hall.)
8034
8035 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
8036
8037         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
8038
8039 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
8040
8041         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
8042         need this later, and this makes sure that the atexit for
8043         glib gets called after that for GDK, so atexits are
8044         properly ordered for object leak checking.
8045
8046         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
8047
8048         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
8049         pango_x_shutdown_display()
8050
8051         * gtk/simple.c (main): Close window on destroy.
8052
8053 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
8054
8055         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
8056         to treat initial creation different from setting with 
8057         regards to the graphics-exposures parameter, so add a parameter
8058         indicating whether this is initial or not.
8059
8060 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
8061
8062         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
8063         to sort of work by adding an extra return_exposes arg
8064         to gdk_event_translate() - it might be better to simply
8065         deprecate the function altogether and force people to rewrite
8066         without it. gdk_window_scroll() handles most of it, and where
8067         gdk_window_scroll() doesn't work, simply redrawing more does.
8068
8069         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
8070         assertion.
8071
8072         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
8073
8074         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
8075         bunch of pretty much useless /* Print debugging info */ comments 
8076         which had drifted away from the code they were commenting.
8077
8078 2000-06-02  Havoc Pennington  <hp@pobox.com>
8079
8080         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
8081         is in working order.
8082         
8083         * gtk/testtext.c: Change to reflect anonymous mark API
8084
8085         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
8086
8087         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
8088         field, which was unused.
8089
8090         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
8091         saves some typing.
8092
8093         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
8094
8095         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
8096         flag on the insertion point and selection bound
8097
8098         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
8099         make mark-manipulation functions take a GtkTextMark* instead of a
8100         mark name.
8101         
8102         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
8103         GtkTextMarkBody; will be used to detect attempts to delete
8104         the permanent marks (insert and selection bound)
8105
8106         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
8107
8108 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
8109
8110         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
8111         flag to on.
8112
8113         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
8114         Honor DOUBLE_BUFFRED_FLAG
8115
8116         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
8117         function to set the DOUBLE_BUFFERED flag.
8118
8119         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
8120         or not exposes done on the widget should be double-buffered.
8121
8122         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
8123         to be what would be expected. (Fixes problem with a
8124         g_return_if_fail() validating a TextDirection enumeration)
8125
8126 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
8127
8128         * gtk/gtkwidget.c: Remove all references to 
8129         offscreen flag which was no longer used.
8130
8131         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
8132
8133         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
8134         for non-null label_widget->parent.
8135
8136         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
8137         which no longer was used.
8138
8139         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
8140
8141         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
8142         for null arguments.
8143
8144         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
8145         check for destroyed windows.
8146
8147 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
8148
8149         * gtk/gtkimmulticontext.c: Add a finalize method and unref
8150         the slave context there.
8151
8152         * gtk/gtkinvisible.[ch]: Make reference counting behavior
8153         identical to GtkWindow.
8154
8155 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
8156
8157         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
8158         pangox to here, so we can write them independent of rendering
8159         system, using GDK primitives.
8160
8161         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
8162         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
8163         since we have a rendering-system independent implementation in
8164         terms of draw_glyphs().
8165         
8166         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
8167         function to render a single line.
8168
8169         * gdk/x11/gdkpango.c: Move the guts of this file mostly
8170         into ../gdkpango.c, which simplifies things, since we
8171         don't have to deal with raw X gc's.
8172
8173 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
8174
8175         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
8176         get the logical attributes for a given GtkTextLine.
8177
8178 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
8179
8180         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
8181         g_locale_get_codeset() to g_get_codeset() change.
8182
8183 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
8184
8185         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
8186         descriptions.
8187
8188         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
8189         the entry.
8190
8191         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
8192         redoing (vastly simplifying) for Pango. Still needs quite
8193         a bit of work. (Size selection is currently poor. List of 
8194         predefined sizes is not a good idea, since all of these
8195         sizes won't necessarily be distinct.)
8196
8197 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
8198
8199         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
8200         CODESET results for LANG=C.
8201
8202 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
8203
8204         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
8205         which takes a stringized pango font description;
8206         ignore the older 'font' and 'fontset' declarations.
8207
8208         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
8209         field with a GdkFont derived via gdk_font_from_description(),
8210         for compatibility. (Should we just remove it entirely?
8211         Probably too much compatibility breakage, but people
8212         should be migrating to the new Pango stuff as quickly
8213         as possible.)
8214
8215 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
8216
8217         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
8218
8219 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
8220
8221         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
8222         redoing; there are some bugs in size allocation right
8223         now, the semi-existant distinction between header / day
8224         fonts was removed, but, with Pango, could actually
8225         be made functional in a nice way.
8226         
8227         * gtk/testcalender: Move calender from examples into this
8228         directory as a test program. (We really need to restrcture
8229         testgtk into a whole directory full of tests for every
8230         widget or functionality group, separated into multiple .c
8231         files.)
8232
8233 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
8234
8235         * gtk/testgtk.c (file_exists): Fix stupid typo that
8236         was keeping RC file from being loaded.
8237
8238         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
8239         RC file font code.
8240
8241 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
8242
8243         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
8244         Add function to load a GdkFont from a PangoFontDescription.
8245
8246 2000-05-29  Tor Lillqvist  <tml@iki.fi>
8247
8248         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
8249         variable should be of type GdkEventPrivate.
8250
8251 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
8252
8253         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
8254         to have any widget for the label, use a GtkLabel widget
8255         to display the text. (Based partially on a patch from
8256         Anders Carlson.)
8257
8258         (Quite a bit of code reorganization - strip 90% of the
8259         guts out of gtkaspectframe and add a single virtual
8260         func to GtkFrameClass - compute_child_allocation.)
8261
8262 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
8263
8264         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
8265         (Removed clist->row_center_offset field because caching
8266         it wasn't saving time or code, added private function
8267         _gtk_clist_create_cell_layout()).
8268
8269 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
8270
8271         * gtk/gtkaccellabel.c: Pangoized.
8272
8273         * gtk/[hv]ruler.c: Pangoized
8274
8275 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
8276
8277         * gtk/gtkfilesel.c (gtk_file_selection_init):
8278         Use gtk_clist_set_column_auto_resize() to remove need
8279         need for manual column width computations.
8280
8281 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
8282
8283         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
8284         ensuring Pango correctness, and considerably simplifying the
8285         code.
8286         
8287         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
8288
8289         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
8290         getting of numbers of lines.
8291
8292         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
8293         to the actual requested width of the lable, not to the wrap
8294         width we set.
8295
8296         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
8297
8298         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
8299           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
8300
8301         * gtk/gtktextview.c: Fix structure inheritance.
8302
8303         * gtk/gtkprogressbar.c: Pangoize.
8304
8305 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
8306
8307         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
8308         in a function.
8309
8310         * gtk/gtktextlayout.c (find_display_line_above): Fixed
8311         bug with computing line tops.
8312
8313         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
8314
8315 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8316
8317         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
8318         and y_offset coordinates to do what we need now. (The offset between
8319         buffer and layout coordinates has been reintroduced, but is a 
8320         bit different than before.)
8321
8322         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
8323         handle the adjustments ourselves, and scroll as necessary using
8324         the new gdk_window_scroll().
8325         
8326         The advantage of this is that when we are incrementally revalidating,
8327         we are essentially rearranging things around the visible portion
8328         of the screen. With the old setup, the visible portion of the
8329         screen was moved around in the layout, so scrolling and redrawing
8330         to track that caused jumping of the display. Since we now
8331         control the scrolling ourselves, we can suppress this and
8332         only redraw when things actually change.
8333
8334 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
8335
8336         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
8337         the region not just redisplay it after-all, since we store the
8338         cursors in the LineDisplay. (Ugly interactions here between
8339         GtkLayout and GtkTextBTree here.)
8340         
8341         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
8342
8343 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
8344
8345         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
8346         Added function to scroll contents of a window while keeping the
8347         window constant. Works by XCopyArea or guffaw-scrolling depending
8348         on the details of how the window is set up. (guffaw-scrolling
8349         still needs to be filled in.)
8350
8351 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
8352
8353         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
8354         move the debugging that was tied to a global variable
8355         to that.
8356
8357         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
8358
8359         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
8360         validated flag, in line data instead of setting height/width to
8361         -1. This allows us to perform operations with partially invalid
8362         buffer (using the old size for invalid lines) and thus to do
8363         incremental vaidation. Keep height/width aggregates up to date
8364         when deleting text and rebalancing the tree.
8365
8366         * gtk/gtktextbtree.[ch]: Add functions validate a line
8367         (gtk_text_btree_validate_line), and to validate up
8368         to a number of pixels (gtk_text_btree_validate).
8369
8370         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
8371         that indicates that something is changed and a revalidation
8372         pass is needed. Change ::need_repaint to ::changed, and
8373         make it take old and new yranges instead of a rectangle.
8374
8375         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
8376         the line_data_destroy() function from 
8377         gtk_text_btree_add_view() to a virtual function in 
8378         GtkTextLayout
8379
8380         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
8381         since we are handling partial repaints in a different fashion
8382         now.
8383
8384         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
8385         of the selection instead of queueing a repaint on the
8386         entire widget.
8387
8388         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
8389         get_selection_bounds() down to btree, make the function
8390         in buffer a wrapper around the btree function.
8391
8392         * gtk/gtktextlayout.[ch]: Add functions to check if the
8393         layout is valid and to recompute either a range of pixels
8394         aroudn a line or a certain total number of pixels.
8395
8396         * gtk/gtktextlayout.[ch]: Cache a single line display;
8397         now that we only redraw the needed portions, the hit rate
8398         for this cache is quite high.
8399         
8400         * gtk/gtktextview.[ch]: Keep track of the first paragraph
8401         on the screen so that when re-laying-out the buffer, we can
8402         keep the same place. This requires connecting to ::value_changed
8403         on the adjustments
8404
8405         * gtk/gtktextview.[ch]: Add idle functions to revalidate
8406         the buffer after we receive an ::invalidated signal.
8407         
8408 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
8409
8410         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
8411         to max of allocation and layout size, not just to the
8412         layout size.
8413
8414         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
8415         Invalidate window so it gets redrawn properly.
8416
8417         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
8418         to mean the entire window.
8419
8420         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
8421         into public header.
8422
8423 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8424
8425         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
8426         to get the name of a mark.
8427
8428         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
8429         to find the paragraph from a y position.
8430
8431 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
8432
8433         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
8434         nodes have width/height >= 0, not > 0.
8435
8436 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
8437
8438         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
8439         Add a size_only flag, so when we only need the size, we don't create
8440         useless appearance attributes.
8441
8442         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
8443         duplicate setting of font description.
8444
8445         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
8446
8447 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
8448
8449         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
8450         EXTRA_DIST. It does not work well when the file that
8451         everything depends on is not in the tarball.
8452
8453 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8454
8455         * gtk/testgtk.c: Some hacks and fixes so that it basically
8456         works when not sitting in the GTK+ build tree.
8457
8458 2000-05-03  Havoc Pennington  <hp@redhat.com>
8459
8460         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8461         Properly determine the ordering of the tag root and the current
8462         line within the tree. Previous algorithm only worked if the tag
8463         root's immediate parent was the common root of both the current
8464         line and the tag root.
8465
8466 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
8467
8468         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
8469         alignment.
8470
8471         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
8472         the widget text directional dynamically.
8473
8474         * gtk/gtktextview.[ch]: Added functions to get and set default
8475         wrap mode.
8476
8477 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
8478
8479         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
8480         in cursor location computation.
8481
8482 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
8483
8484         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
8485         vadjusment values properly when layout gets smaller.
8486
8487         * gtk/gtktextview.c (need_repaint_handler): Areas being
8488         passed in are far completely inaccurate, and sometimes
8489         too small, so, for now, just queue a redraw on the
8490         whole visible region.
8491
8492 2000-04-25  Havoc Pennington  <hp@redhat.com>
8493
8494         * gtk/gtktextbtree.c (summary_destroy): new function to 
8495         destroy tag summary nodes
8496         (gtk_text_line_next_could_contain_tag): this function was 
8497         totally broken if the line passed in wasn't below the tag
8498         root. Fix it.
8499         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
8500         "wildcard" case, we have to do a linear scan. Blah.
8501         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
8502         we have to do the linear scan
8503         (tag_removed_cb): When a tag is removed from the tag table, 
8504         remove the GtkTextTagInfo node from the btree.
8505         (gtk_text_btree_spew): Implement the spew function, for 
8506         our debugging pleasure.
8507
8508 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
8509
8510         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
8511         a problem with referring to the wrong buffer.
8512
8513         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
8514
8515         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
8516         font description to gtk_style_new() - otherwise things
8517         don't work without a .gtkrc file.
8518
8519         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
8520         tags table if we create it ourself, too.
8521
8522         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
8523         it was conflicting with XKB modifiers.
8524
8525         * gtk/gtktextview.[ch]: Add simple support for 
8526         GtkIMContext.
8527
8528 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
8529
8530         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
8531         with deletion from last commit.
8532
8533 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
8534
8535         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
8536         in the context from the current locale.
8537         
8538         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
8539         context, not hardcoded value.
8540
8541         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
8542         not logical.
8543
8544 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8545
8546         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
8547         attributes - that doesn't handle partial-glyph selection
8548         properly. Instead use new pango_layout_line_get_x_ranges()
8549         functionality to draw the selection.
8550
8551         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
8552         now properly handles out-of-range coordinates.
8553
8554         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
8555
8556         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
8557         public.
8558
8559         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
8560         for paragraphs opposite to the base direction of the widget.
8561
8562         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
8563
8564         * gtk/gtktextlayout.c: Don't split segments on marks, since that
8565         causes Arabic words to reshape as you cursor through.
8566
8567         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
8568         cursor position when moving vertically with the arrow keys and
8569         scrolling with page-up/page-down. (Arrow keys save only the X,
8570         scrolling saves both X and Y.)
8571
8572         This means you can line-up / line-down or page-up / page-down
8573         without losing your place, and also that moving vertically
8574         with the cursor keys keeps the same X position, not the same
8575         character count:
8576
8577         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
8578         arrow keys move by display lines, not paragraphs.
8579
8580 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8581
8582         * gtk/gtklayout.c: Make sure that the bin window is at least
8583         as big as the allocation. (Should we also make sure that the
8584         bin window is big enough to completely cover widget->window?)
8585
8586         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
8587         function to get the onscreen rectangle.
8588
8589         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
8590         for offsets in window coordinates.
8591
8592 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
8593
8594         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
8595         confusion.
8596
8597         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
8598         from the widget direction.
8599
8600         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
8601         Add a "direction" attribute.
8602
8603         * gtk/gtktextview.c: global s/tkxt/text_view/.
8604
8605         * gtk/testtext.c: Added long block of text in Arabic, to test out
8606         the direction attributes. (Some problems with the shaping system
8607         for arabic become obvious - like the fact the cursor splits words
8608         into unjoined pieces.)
8609
8610 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
8611
8612         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8613
8614         * gtk/gtktextlayout.c: Fix up alignment.
8615
8616         * gtk/testtext.c: Add some tests for centering, wrapping.
8617
8618 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
8619
8620         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8621         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8622         If we wrote GTK+-specific layout-render function this could just replace
8623         the draw_layout() operation in the vtable.
8624
8625         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
8626         pango_layout_get_cursor_pos() and use that function.
8627
8628         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8629         is a non-static symbol.
8630
8631         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8632         with gtk_text_btree_find_line_by_y()
8633
8634         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8635         renderer that handles GtkTextAppearance attributes.
8636
8637         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
8638
8639           - Move the values in the style that don't affect geometry into a
8640             GtkTextAppearance structure.
8641           - Change underline to take a PangoUnderline and "font" a string
8642             representation of a font description
8643           - Add a "font_desc" attribute which takes a FontDescription structure.
8644
8645         * gtk/gtktextlayout.[ch]:
8646
8647           - Get rid of the display-line list per each line. Instead, we
8648             generate, on demand, a GtkTextLineDisplay structure which]
8649             contains a PangoLayout * and other necesary information
8650             (offsets, cursor locations) for displaying a paragraph.
8651           - Get rid of the code to wrap lines, create display chunks,
8652             etc. Instead, we just go through a paragraph and convert
8653             it into the necessary inputs to a PangoLayout.
8654           - Implement a new attribute type, GtkTextAttrAppearance. This
8655             holds a GtkTextAppearance, and is used to pass colors, 
8656             stipple, etc, through from the layout to the display without
8657             having to use lots and lots of individual attributes.
8658           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
8659             in terms of PangoLayout functions.
8660         
8661         * gtk/gtktextview.c: 
8662          
8663           - Handle passing the necessary PangoContext to the layout
8664           - Some fixups in painting to deal with the automatic backing store
8665             and offsetting of GTK+-1.4
8666           - Add a style_set handler so that the default style reacts
8667             properly to theme changes.
8668         
8669         * gtk/gtktext?*.[ch]: Random code-style fixes.
8670
8671         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
8672
8673 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
8674
8675         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
8676         in original form preparatory to Pango-ization and gdkimcontext-ization.
8677
8678 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
8679
8680         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
8681         so that we can derive from gtkimcontext in language bindings properly.
8682
8683 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
8684
8685         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
8686         Add a compose table including (almost) all the compose combinations
8687         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
8688         data in the XIM implementation.
8689
8690         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
8691         Moved functions to convert keyvalues from and to unicode here from
8692         the win32 port and made them public.
8693
8694 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
8695
8696         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
8697
8698 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
8699
8700         * gtk/gtkimcontext.[ch]: Base class for new input context system
8701
8702         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
8703         the real input context implementation to be loaded from modules
8704         and switched on the fly.
8705
8706         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
8707         context that just does direct keysymbol => unicode translation.
8708
8709         * gtk/gtkentry.[ch]: Start switching editing over to using
8710         GtkInputContext. (No handling of preedit yet.)
8711
8712 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
8713
8714         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
8715         many substitutions. (klass should not be subsituted.)
8716
8717 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
8718
8719         * configure.in: Add checks for Pango
8720
8721         * configure.in docs/Makefile.am: Add test for sgml2html
8722         and allow 'make dist' without building html, but print out
8723         warnings in that case. (For making snapshots)
8724
8725         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
8726         Add Pango libraries and C flags
8727
8728         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8729         Add function (gdk_draw_layout) to draw a pango layout.
8730
8731         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
8732         for getting Pango contexts for GDK.
8733
8734         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
8735
8736         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
8737         editing.
8738
8739         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
8740         keysym => unicode translations. More languages can be added
8741         here, but real input-method support is needed.
8742
8743         * docs/Changes-1.4.txt: Added note about entry behavior.
8744         
8745         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
8746         to set the reading direction for a widget and the global direction.
8747         Add test which allows toggling the global direction. Two private
8748         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
8749
8750         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
8751           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
8752
8753         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
8754
8755         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
8756         underlining now handled by Pango.
8757
8758         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
8759         to RCStyle and Style. (Having both this and the old font name and GdkFont 
8760         is temporary.)
8761
8762         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
8763         convenience functions for creating contexts and layouts for widgets.
8764
8765         * gtk/testgtk.c: Enhance label tests with multilingual labels.
8766
8767 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
8768
8769         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
8770         titles to be active, even if they aren't visible.
8771         (gtk_clist_column_titles_passive):  Ditto.
8772
8773 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
8774
8775         * gtkmenu.c:
8776         * gtkmenu.h:
8777         * gtktypeutils.h: Spelling/grammar fixes in comments.
8778
8779 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
8780
8781         * gdk/nanox/*.h: add missing header files.
8782
8783 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
8784
8785         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
8786         send_event to TRUE.
8787         (gtk_drawing_area_size): queue a resize.
8788
8789 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
8790
8791         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
8792         the handlers, also invalidate them. bug nailed down by Karl Nelson
8793         <kenelson@ece.ucdavis.edu>.
8794
8795 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
8796
8797         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
8798         "(nil)" foundries, patch from Grigorios Magklis.
8799
8800         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
8801         on non-available fonts, based on a patch by Grigorios Magklis
8802         <maglis@cs.rochester.edu>.
8803
8804 2000-05-18  Elliot Lee  <sopwith@redhat.com>
8805
8806         * gdk/x11/gdkregion-generic.c: If a region does not have any
8807         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
8808         instead of GDK_OVERLAP_RECTANGLE_IN.
8809
8810 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
8811
8812         * gtk/gtklayout.c (gtk_layout_map): Remove references to
8813         OFFSCREEN, as it is no longer necessary.
8814
8815 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
8816
8817         * gtk/gtkcolorsel.c: Patch from David Santiago
8818         <mrcooger@cyberverse.com> to change things so that the 
8819         indicator of the active palette entry is done independently,
8820         not via the focus, since it should always be visible.
8821
8822 2000-05-17  Tor Lillqvist  <tml@iki.fi>
8823
8824         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
8825         refcount leaks as in the X11 backend.
8826
8827         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
8828         cosmetics.
8829
8830         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
8831         backend. Add _gdk_windowing_window_destroy().
8832
8833         * gtk/gtkcolorsel.c: Include correct backend-specific header.
8834         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
8835         either, but these probably do exist on nanox?)
8836         
8837         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
8838         which isn't necessarily defined by <math.h>.
8839
8840         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
8841         ancestry past GtkObject.
8842
8843         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8844         from DLL on Win32.
8845
8846         * gtk/gtk.def: Update corresponding to recent changes.
8847
8848         * gtk/makefile.{cygwin,msc}: Updates.
8849
8850 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
8851
8852         * docs/Changes-1.4.txt: A bit of editing.
8853
8854         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
8855         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
8856         to clear the update area for the window, and clear it
8857         when hiding a window.
8858
8859         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
8860         if window destroyed.
8861
8862         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8863
8864         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
8865         gdk_window_destroy() to the generic code, since there was a lot of 
8866         window-system-independent logic it in. Add a function:
8867         
8868          _gdk_window_destroy() 
8869
8870         to the internal API to destroy a window without unreferencing it.
8871         Add a function:
8872
8873          _gdk_windowing_window_destroy()
8874
8875         That does the windowing-system-dependent part of destroying 
8876         the window.
8877
8878 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
8879
8880         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8881
8882 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
8883
8884         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
8885         Make gtk_widget_shape_combine_mask() keep a reference count on
8886         the pixmap since it keeps it around.
8887
8888 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
8889
8890         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8891         leak.
8892
8893         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8894         leak with event filters.
8895
8896 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
8897
8898         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8899         signal handlers with the right data arguments. (Fixes
8900         some warnings when a widget was repeatedly set as a drag
8901         destination.)
8902
8903         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8904         window so we can avoid avoid setting the DND properties on the
8905         toplevel window repeatedly.
8906
8907 2000-05-13  Tor Lillqvist  <tml@iki.fi>
8908
8909         * gdk/win32/gdkwin32.h: Define more message types missing from
8910         mingw headers.
8911
8912         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8913         call gdk_window_destroy_notify(). It was never called. This
8914         probably meant that the GdkWindow was never freed. Thanks Owen for
8915         noticing (!).
8916
8917         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8918         window as destroyed before calling DestroyWindow(). DestroyWindow()
8919         causes a call to the window procedure (gdk_WindowProc), which
8920         calls gdk_event_translate(), which calls
8921         gdk_window_destroy_notify(), which gets confused unless the window
8922         is set as destroyed.
8923
8924         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8925         this function to indicate it's win32 only. Put inside #ifdef
8926         G_ENABLE_DEBUG.
8927
8928         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8929         debugging function. (gdk_event_translate:) Add a default branch
8930         that uses the above function to print debug messages with all
8931         Windows messages symbolically.
8932
8933         * gdk/win32/gdkprivate-win32.h: Declare it, and
8934         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8935
8936 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
8937
8938         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8939         public header file.
8940
8941 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
8942
8943         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8944
8945         * gtk/gtktext.c: made the adjustments no-construct args, simply
8946         provide default adjustments.
8947         (gtk_text_destroy): release adjustments.
8948
8949         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8950         adjustment argument non-construct.
8951
8952         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8953         instead of in finalize.
8954         (gtk_progress_get_text_from_value): 
8955         (gtk_progress_get_current_text): 
8956         (gtk_progress_set_value): 
8957         (gtk_progress_get_percentage_from_value): 
8958         (gtk_progress_get_current_percentage): 
8959         (gtk_progress_set_percentage): 
8960         (gtk_progress_configure): ensure an adjustment is present.
8961
8962 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
8963
8964         * gtk/gtkcolorsel.[hc]:
8965         * gtk/gtkcolorseldialog.[hc]:
8966         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8967         their parent implementation, use bit fields for boolean values, don't
8968         create unused widgets, usage of glib types, braces go on their own
8969         lines, function argument alignment, #include directives etc. etc. etc..
8970
8971         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8972
8973 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
8974
8975         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8976
8977         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8978         of NULL.
8979
8980         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8981         to freed data.
8982         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8983
8984         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8985         to NULL when the toplevel is getting destroyed.
8986         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8987         (gtk_menu_destroy): 
8988         (gtk_menu_init): store the information of whether we have to
8989         readd the initial child ref_count during destruction in a new
8990         GtkMenu field needs_destruction_ref_count.
8991
8992         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8993         here, those reading: learn from my mistake! ;)
8994         in order for set_?adjustment to support a default adjustemnt if
8995         invoked with an adjustment pointer of NULL, the code read (pseudo):
8996         if (v->adjustment) unref (v->adjustment);
8997         if (!adjustment) adjustment = adjustment_new ();
8998         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8999         now imagine the first unref to actually free the old adjustment and
9000         adjustment_new() creating a new adjustment from the very same memory
9001         portion. here, the latter comparision will unintendedly fail, and
9002         all hell breaks loose.
9003         (gtk_viewport_set_hadjustment):
9004         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
9005         after unreferencing it.
9006
9007         * gtk/gtkcontainer.[hc]: removed toplevel registration
9008         functions: gtk_container_register_toplevel(),
9009         gtk_container_unregister_toplevel() and
9010         gtk_container_get_toplevels() which had wrong semantics
9011         anyways: it didn't reference and copy the list.
9012
9013         * gtk/gtkwindow.c: we take over the container toplevel registration
9014         bussiness now. windows are registered across multiple destructions,
9015         untill they are finalized. the initial implicit reference count
9016         users are holding on windows is removed with the first destruction
9017         though.
9018         (gtk_window_init): ref & sink and set has_user_ref_count, got
9019         rid of gtk_container_register_toplevel() call. add window to
9020         toplevel_list.
9021         (gtk_window_destroy): unref the window if has_user_ref_count
9022         is still set, got rid of call to
9023         gtk_container_unregister_toplevel().
9024         (gtk_window_finalize): remove window from toplevel list.
9025         (gtk_window_list_toplevels): new function to return a newly
9026         created list with referenced toplevels.
9027         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9028
9029         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
9030         adjustment a non-construct arg.
9031         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
9032         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
9033         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
9034
9035         * gtk/gtkrange.c: added some realized checks.
9036         (gtk_range_destroy): get rid of the h/v adjustments in the
9037         destroy handler instead of finalize. remove timer.
9038         (gtk_range_get_adjustment): demand create adjustment.
9039
9040         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
9041         we simply create them on demand now and get rid of them in
9042         the destroy handler.
9043         (gtk_viewport_destroy): get rid of the h/v adjustments in the
9044         destroy handler instead of finalize.
9045         (gtk_viewport_get_hadjustment): 
9046         (gtk_viewport_get_vadjustment): 
9047         (gtk_viewport_size_allocate): demand create h/v adjustment
9048         if required.
9049
9050         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
9051         gtk_widget_real_destroy () functionality.
9052         (gtk_widget_real_destroy): reinitialize with a new style, instead
9053         of setting widget->style to NULL.
9054
9055 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
9056
9057         * gtk/gtkcalendar.c:
9058         * gtk/gtkbutton.c: ported _get_type() implementation over to
9059         GType, either to preserve memchunks allocation facilities,
9060         or because Gtk+ 1.0 GtkTypeInfo was still being used.
9061
9062         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
9063         over. prepare for ::destroy to be emitted multiple times.
9064         removed reference tracer magic. chain into GObjectClass.shutdown()
9065         to emit ::destroy signal.
9066
9067         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
9068         fundamental.
9069
9070         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
9071         cludge.
9072
9073         * gtk/gtksocket.c:
9074         * gtk/gtkplug.c:
9075         * gtk/gtklayout.c:
9076         * gtk/gtklabel.c:
9077         * gtk/gtkargcollector.c:
9078         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
9079         not being a fundamental anymore, and to work with the new
9080         type system (nuked fundamental type varargs clutter).
9081
9082         * gtk/*.c: install finalize handlers in the GObjectClass
9083         part of the class structure.
9084         changed direct GTK_OBJECT()->klass accesses to
9085         GTK_*_GET_CLASS().
9086         changed direct object_class->type accesses to GTK_CLASS_TYPE().
9087
9088         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
9089         GType. made most of the GTK_*() type macros and Gtk* typedefs
9090         simple wrappers around macros and types provided by GType.
9091         most notably, a significant portion of the old API vanished:
9092         GTK_TYPE_MAKE(),
9093         GTK_TYPE_SEQNO(),
9094         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
9095         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
9096         GTK_TYPE_ARGS,
9097         GTK_TYPE_CALLBACK,
9098         GTK_TYPE_C_CALLBACK,
9099         GTK_TYPE_FOREIGN,
9100         GtkTypeQuery,
9101         gtk_type_query(),
9102         gtk_type_set_varargs_type(),
9103         gtk_type_get_varargs_type(),
9104         gtk_type_check_object_cast(),
9105         gtk_type_check_class_cast(),
9106         gtk_type_describe_tree(),
9107         gtk_type_describe_heritage(),
9108         gtk_type_free(),
9109         gtk_type_children_types(),
9110         gtk_type_set_chunk_alloc(),
9111         gtk_type_register_enum(),
9112         gtk_type_register_flags(),
9113         gtk_type_parent_class().
9114         replacements, where available are described in ../docs/Changes-1.4.txt.
9115         implemented compatibility functions for the remaining API.
9116
9117         * configure.in: depend on glib 1.3.1, use gobject module.
9118
9119 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
9120
9121         * TODO.xml: Various updates to current status.
9122
9123 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
9124
9125         * gtk.m4: Print out version when test succeeds.
9126
9127 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
9128
9129         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
9130         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
9131         
9132         (Original triangle color selector from Simon Budig
9133         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
9134         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
9135         Santiago <mrcooger@cyberverse.com>)
9136
9137         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
9138         out into a separate widget.
9139
9140         * gtk/testgtk.c: Add some checkbuttons for toggling palette
9141         and opacity controls.
9142
9143 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
9144
9145         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
9146         snuck in prematurely.
9147
9148 2000-05-07  Tor Lillqvist  <tml@iki.fi>
9149
9150         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
9151         had deleted a ! operator by mistake, which caused
9152         GDK_SELECTION_CLEAR events never to be generated, which caused
9153         only the first copy to the clipboard from an gtkeditable to
9154         actually cause a copy to the Windows clipboard.
9155
9156 2000-05-06  Tor Lillqvist  <tml@iki.fi>
9157
9158         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
9159         compilation, too. Current mingw gcc distributions include the
9160         necessary headers. Also the necessary IIDs are now in mingw
9161         headers/libraries, and own definitions unnecessary.
9162
9163         More hacking on OLE2 DND, still doesn't work though, and thus
9164         ifdeffed out.
9165
9166         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
9167         here, too.
9168
9169 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
9170
9171         * gdk/nanox/*: nano-X port work in progress.
9172         * gdk/simple.c: simple test for Gdk.
9173         * README.nanox: notes about the port: read this first!
9174         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
9175         with nano-X.
9176
9177 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
9178
9179         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
9180         gdk_window_clear() into common code, implement in terms of
9181         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
9182         not redirected to the backing rectangle.
9183
9184 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9185
9186         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9187         EXTRA_DIST. It does not work well when the file that
9188         everything depends on is not in the tarball.
9189
9190 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
9191
9192         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
9193         with recursion where process_updates() is called from
9194         an expose handler. (GtkTextView is highly broken in
9195         doing this, but it should work, so it is a nice test
9196         case.)
9197
9198 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9199
9200         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
9201         handle the case where updates are queued during processing of
9202         updates.
9203
9204 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9205
9206         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
9207         window is on gdk_display - use that instead of segfaulting.
9208
9209 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
9210
9211         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
9212         broken and require an empty arg, give it to them.
9213
9214 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
9215
9216         * gtk/gtklabel.h: indentation fixes.
9217
9218 2000-05-02  Tor Lillqvist  <tml@iki.fi>
9219
9220         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
9221         draw too narrow or too low arcs, they seem to fail, at least with
9222         some display drivers.
9223
9224         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
9225
9226         Large changes to the Win32 backend, partially made necessary by
9227         the changes to the backend-independent internal
9228         structures. Attempts to implement similar backing store stuff as
9229         on X11. The current (CVS) version of the Win32 backend is *not* as
9230         stable as it was before the no-flicker branch was merged. A
9231         zipfile with that version is available from
9232         http://www.gimp.org/win32/. That should be use by "production"
9233         code until this CVS version is usable. (But note, the Win32
9234         backend has never been claimed to be "production quality".)
9235
9236         * README.win32: Add the above comment about versions.
9237
9238         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
9239
9240         * gdk/gdk.def: Update.
9241
9242         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
9243         presumably be replaced by some more better mechanism as 1.4 gets
9244         closer to release shape.
9245
9246         * gdk/makefile.{cygwin,msc}: Update.
9247
9248         * gdk/win32/*.c: Correct inclusions of the backend-specific and
9249         internal headers. Change code according to changes in these. Use
9250         gdk_drawable_*, not gdk_window_* where necessary.
9251
9252         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
9253         our old DND.
9254
9255         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
9256         to interpret single characters as UTF-8. Thanks to Hans Breuer.
9257         Use correct function name in warning messages.
9258
9259         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
9260         GSourceFuncs gdk_event_prepare and gdk_event_check.
9261         (gdk_event_get_graphics_expose): Do implement, use
9262         PeekMessage. Thanks to Hans Breuer.
9263         (event_mask_string): Debugging function to print an GdkEventMask.
9264         (gdk_pointer_grab): Use it.
9265
9266         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
9267         (old) book I used claimed was Hangul actually is CJK Unified
9268         Ideographs Extension A. Also, Hangul Syllables were missing.
9269         Improve logging.
9270
9271         * gdk/win32/gdkgc-win32.c: Largish changes.
9272
9273         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
9274         g_win32_getlocale() from GLib, and not setlocale() to get current
9275         locale name.
9276
9277         * gdk/win32/gdkprivate-win32.h
9278         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
9279         gdkwin32.h, similarily as in the X11 backend.
9280
9281         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
9282         assignment was used instead of equals in if test. Thanks to Hans
9283         Breuer.
9284
9285         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
9286         the X11 version.
9287
9288         * gdk/win32/makefile.{cygwin,msc}
9289         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
9290         path to the Win32 headers that works also with the mingw compiler.
9291
9292         * gtk/gtkstyle.c: Include <string.h>.
9293
9294 2000-04-26  Havoc Pennington  <hp@redhat.com>
9295
9296         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
9297         replacing the broken gtk_label_get ()
9298
9299 2000-04-15  Havoc Pennington  <hp@pobox.com>
9300
9301         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
9302         this keeps scanner scripts from getting confused.
9303
9304         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
9305         data, rather than void
9306
9307 2000-04-15  Tor Lillqvist  <tml@iki.fi>
9308
9309         * gtk/gtkclist.c (gtk_clist_motion)
9310         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
9311         with is_hint FALSE, get x and y from the event. They used to be
9312         used uninitialised. The Win32 backend never sends motion events
9313         marked as hints. This for instance fixes the annoying file and
9314         font selector behaviour in the Win32 version.
9315
9316 2000-04-14  Tor Lillqvist  <tml@iki.fi>
9317
9318         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
9319         gtk_private_n_signals variables, they are used by some software,
9320         sigh.
9321
9322         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
9323         installation directory from the Registry, where the installer
9324         should have put it.
9325
9326 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
9327
9328         * gdk/x11/Makefile.am: Fix problem with installation directory for
9329         gdkx.h
9330
9331         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
9332         <mrcooger@cyberverse.com> so that when selecting menus with the
9333         mouse, the first item will not be selected, but when selecting
9334         with an accelerator, or navigating left-right on a menubar with
9335         the menus popped up, the first item will be selected.
9336
9337 2000-04-05  Dan Damian  <dand@dnttm.ro>
9338
9339         * configure.in: Added "ro" to ALL_LINGUAS.
9340
9341 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
9342
9343         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
9344         indentation.
9345
9346         * Makefile.am (EXTRA_DIST): Fix typo.
9347
9348         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
9349         to catch gdkconfig.h
9350
9351         * gtk/gtkitemfactory.c: Added FIXME.
9352
9353 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
9354
9355         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
9356         s/return_if_fail/return_val_if_fail/g and add a return value.
9357
9358 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9359
9360         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
9361         merge slipup.
9362
9363         * gdk/gdkinput.h: Fix missing line from merge.
9364
9365 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
9366
9367         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
9368         instead of gdkprivate.h.
9369
9370 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
9371
9372         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
9373         parent class to correctly be GtkDialogClass.
9374
9375 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
9376
9377         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
9378         toplevel windows and their immediate children by their parents,
9379         since the size of toplevel windows is out of our immediate
9380         control and we don't get any real benefit from trying to track
9381         this size for clipping.
9382
9383         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
9384         for input_only windows.
9385
9386         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
9387         to fix some hacks and make sure that we don't try to set the
9388         background of input only windows.
9389
9390 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
9391
9392         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
9393         the _really_ internal stuff, and leave gdkprivate.h for the fake private
9394         stuff that we've traditionally exposed.
9395
9396         * gdk/**.c: Use gdkinternals.h where appropriate.
9397
9398         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
9399         not include gdkprivate-x11.h, move all stuff of conceivable public
9400         interest into gdkx.h; keep all really private stuff in
9401         uninstalled header gdkprivate-x11.h.
9402
9403         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
9404         image->image_put on windows through a new function _gdk_window_draw_image()
9405         to allow us to do backing store for images. (Sort of ugly)
9406
9407         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
9408         contexts locally so that we can offset them properly when drawing 
9409         onto backing pixmaps.
9410
9411         * gdk/gdkinput.h: Reindented
9412
9413         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
9414         pixmap or color for the window, so we can properly initialize
9415         our double-buffer pixmaps, and also so that we temporarily set
9416         a background of None while scrolling.
9417
9418         * gdk/gdkregion.h: Revise region boolean operators to have an
9419         interface that is actually convenient - switch from creating new
9420         regions on every op, to "methods" that modify existing regions
9421         (A = A OP B). 3 argument forms which allow dest == src, would also
9422         be possible, but the current interfaces seem to map nicely
9423         onto what needs to be done. (There is quite a lot of region
9424         code in GDK now.)
9425
9426         * gdk/gdkregion.h: Add constructor from rectangle and a copy
9427         operator.
9428
9429         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
9430         gdkpoly-generic.h: Copy region code from Xlib, switch it over
9431         to 32 bit coordinates, modify it to be mostly GTK+ style
9432         and to have interfaces that match gdkregion.h.
9433
9434         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
9435         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
9436         create a backing pixmap and redirect all drawing to
9437         that backing pixmap until a matching gdk_window_end_paint().
9438
9439         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
9440         Create a special drawable class for GtkWindow's that 
9441         redirects the drawing to the backing pixmap as necessary
9442         and then calls the real operations in _gdk_windowing_window_class.
9443
9444         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
9445         Store invalid region for each window. Generate expose events for invalid
9446         region in an idle. This replaces both the expose compression
9447         and the redrawing queuing in GTK+. It is both more efficient and
9448         simpler than either one individually and far more so then the
9449         combination.
9450
9451         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
9452         Emulate 32 bit coordinates for windows with 16 bit coordinates
9453         by offsetting drawing, guffaw scrolling techniques and
9454         mapping/unmapping child windows as necessary.
9455
9456         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
9457         where, when invalid regions are processed, the region is stored,
9458         and if expose events come in that are detectably duplicate
9459         the processed exposes (by comparison of event serial numbers),
9460         the stored region is subtracted out of those exposes.
9461
9462         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
9463         regions newly exposed when scrolling or resizing windows.
9464         This, combined with forcing processesing of queued invalidated
9465         regions, gives nice flicker-free scrolling.
9466
9467         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
9468         invalidated regions after every scroll.
9469
9470         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
9471         emulation in GDK. Its, for all practical purposes just a
9472         GtkViewport/GtkFixed hybrid now.
9473
9474         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
9475         (16-bit) structures as necessary instead of just casting.
9476
9477         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
9478         in terms of the structures from gdkregion-generic.c, using appropriate
9479         offsets from GDK to X11 coordinates. Cache clip mask and
9480         origin and ts origin locally and only flush to the server
9481         when drawing, to avoid constantly setting and resetting these
9482         values when offsetting GC's for scrolling and backing pixmaps.
9483
9484         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
9485
9486         * gtk/gtkcontainer.c: Call process_all_updates at end
9487         of resizing to reduce flicker. (Avoids having redraw
9488         lag arbitrarily behind resize under some circumstances)
9489
9490         * gtk/gtkentry.c: Remove old backing store code, and simply take
9491         advantage of the new backing store capabilities of GDK.
9492
9493         * gtk/gtkmain.c: Simple implementation of widget backing
9494         store - simply push a paint while handling each expose.
9495         (Should really be configurable widget for widget.)
9496         
9497         * gtk/gtkwidget.c: Remove all the old complicated redraw
9498         code, and simply invalidate the GDK windows from
9499         gdk_window_queue_clear(), etc. (Sigh, so much carefully
9500         debugged complexity ... gone to the winds.)
9501
9502         Remove all the code for suppressing expose events while
9503         resizes are pending; this isn't needed since the invalid
9504         areas won't be processed until after the resizes are
9505         processed, since they are in a lower priority idle.
9506
9507 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
9508
9509         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
9510         and height of dest rectangle for non-intersecting rectangles.
9511
9512 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
9513
9514         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
9515         for GdkRectangle.
9516
9517 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
9518
9519         * gdk/gdk{events,image,private,types,window}.h
9520          gdk/x11/gdkinputprivate.h: Change all coordinates
9521          from int16 to int. Also, Change width and height from
9522          unsigned to signed to avoid all the stupid C 
9523          signedness bugs.
9524
9525 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
9526
9527         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
9528         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
9529         Add some more detailed checking.
9530
9531         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
9532         New function to retrieve the depth of a drawable.
9533
9534         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
9535         field, reorder fields to save memory. 
9536
9537 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
9538
9539         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
9540         of the background image instead of scaling the background down to
9541         a line.
9542
9543         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
9544         which temporarily set slider to wrong size.
9545
9546         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
9547         queue_clear().
9548
9549 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
9550
9551 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
9552
9553         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
9554
9555 2000-03-17  Tor Lillqvist  <tml@iki.fi>
9556
9557         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
9558         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
9559
9560         * gdk/win32/gdkfont-win32.c
9561         * gdk/win32/gdkproperty-win32.c
9562         * gdk/win32/gdkselection-win32.c
9563         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
9564         now declared such.
9565
9566 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
9567
9568         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
9569
9570 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
9571
9572         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
9573         is called without trapping X errors.
9574
9575 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
9576
9577         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
9578         way into the fontset lists.
9579
9580 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
9581
9582         * gtk/gtkthemes.h: add extern "C" scope.
9583
9584 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
9585
9586         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
9587         to make appends to the list constant. (gtk-guy-990901-0.patch)
9588
9589 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
9590
9591         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
9592         for the typename hash table.
9593
9594 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
9595
9596         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
9597         to make sure we never divide by zero. 
9598         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
9599
9600 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
9601
9602         * gtk/gtkfontsel.c: Apply patch from
9603         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
9604         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
9605
9606         Also, some cleanups in atom handling.
9607
9608 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
9609
9610         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9611         not GtkWidget.
9612
9613 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
9614
9615         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
9616         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
9617         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9618         more guint wrap-around bugs before going to bed.
9619
9620 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
9621
9622         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9623         guint wrap arounds in allocation.width.
9624
9625         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9626         process untill we fit the allocation given.
9627
9628 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
9629
9630         * gtk/gtkwidget.c:
9631         (gtk_widget_unrealize): guard widget access with ref/unref
9632         around signal emission.
9633         (gtk_widget_hide): same here, but also check its destroyed
9634         state before queueing a resize.
9635
9636 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
9637
9638         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9639         of gtk_default_insensitive_bg as insensitive base color.
9640
9641         * gtk/gtktext.c (gtk_text_style_set): set the background color according
9642         to the widget's state.
9643         (gtk_text_realize): same here.
9644         (gtk_text_state_changed): same here.
9645         (draw_bg_rect): compare background color against base[] from
9646         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
9647
9648 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
9649
9650         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
9651         grabs are active, unless a delete event is send to the toplevel
9652         of the currently grab holding widget.
9653
9654 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
9655
9656         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
9657         debugging g_print's.
9658
9659 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
9660
9661         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
9662         ever make the scrolled-window requisition ever depend on the 
9663         visibility state of the scrollbars for the AUTOMATIC policy. 
9664         This breaks the GTK+ requisition model, and causes loops.
9665
9666 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
9667
9668         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
9669         the default font to avoid problems with XFree86-4.0 where the
9670         default charset is iso10646-1, not iso8859-1.
9671
9672 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
9673
9674         * acinclude.m4
9675         * config.guess
9676         * config.sub
9677         * ltconfig
9678         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
9679
9680         * gtk/Makefile.am: minor cosmetic consistency tweak
9681
9682 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
9683
9684         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
9685         the activate_time to 0, so that we handle a quick
9686         press/release press/release properly and don't suppress
9687         the second release. (Red Hat bug #7545)
9688
9689 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
9690
9691         * gtk/gtkctree.c (row_delete):
9692         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
9693         bugs with destruction notifier, *always* update internal
9694         structures *before* calling user code.
9695
9696 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
9697
9698         A few more fixes for bug #5487, #2051, #2677.
9699         * gtk/gtkclist.c : 
9700         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
9701         not GDK_BUTTON_PRESS.
9702         (resync_selection): resync only if selection_mode is
9703         GTK_SELECTION_EXTENDED
9704         * gtk/gtkctree.c (resync_selection): same here
9705
9706 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
9707
9708         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
9709         gdk_drag_get_selection() and gtk_menu_detach().
9710
9711         [ From Jeroen Ruigrok/Asmodai ]
9712
9713 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
9714
9715         * gtk/gtknotebook.c (gtk_notebook_size_request): 
9716         page->tab_label can be NULL.
9717
9718 2000-01-25  Havoc Pennington  <hp@pobox.com>
9719         
9720         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
9721         arg is boolean
9722
9723         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
9724
9725         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
9726
9727         * gdk/gdkproperty.c (gdk_property_get): return boolean
9728
9729         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
9730
9731         * gdk/gdkim.c (gdk_im_ready): return boolean
9732
9733         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
9734
9735         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
9736         glib clash, should fix glib)
9737
9738         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
9739         (gdk_get_show_events): return gboolean, and canonicalize 
9740         to TRUE/FALSE
9741
9742         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
9743         colormap is private
9744         (gdk_colors_alloc): gboolean whether to be contiguous
9745         (gdk_color_equal): return gboolean since we are a predicate
9746         and not a qsort() (this looks semi-wrong due to glib breakage,
9747         IMO glib should be fixed)
9748         
9749         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
9750         (gdk_get_use_xshm): return gboolean
9751         (gdk_pointer_is_grabbed): return gboolean
9752
9753         * gdk/gdk.h: Change prototypes to match all the above changes,
9754         and re-run egtk-format-protos as required.
9755
9756 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
9757
9758         * gtk/gtkctree.c (resync_selection): 
9759         * gtk/gtkclist.c (resync_selection):
9760
9761         Return immediately if clist->drag_pos < 0. This is a workaround
9762         for the corrupt state that the clist gets into when a
9763         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
9764
9765         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
9766         
9767         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
9768         variable from recent commit.
9769
9770 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
9771
9772         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
9773
9774 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
9775
9776         * gtk/Makefile.am: prefix all autogenerated source that get build in
9777         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
9778         in builddir. since we subsequently cd into srcdir for autogeneration,
9779         the paths have to be stripped from the target file names, thusly we
9780         use $(@F) as target names now.
9781         put a comment about configure.in's --disable-rebuilds option,
9782         which can be used for non-writable source directories, for development
9783         setups though, srcdir has to be *writable*.
9784
9785 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
9786
9787         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
9788           Finish the job of allowing event to be NULL.
9789           (Fixes bug #4283, reported by Chris Blizzard)
9790
9791         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
9792           things so that the cursor appears on screen, properly
9793           take into account INNER_BORDER.
9794           (Fixes bug #4754, reported by Antonio Campos)
9795
9796 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
9797
9798         * gtk/gtknotebook.c (gtk_notebook_map): Don't
9799           show the tab_label unless it itself is visible.
9800
9801           gtk/gtknotebook.c (gtk_notebook_size_request):
9802           Do a better job of making sure that the visibility
9803           of the tab label corresponds to whether it should
9804           be mapped or not.
9805
9806 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
9807
9808         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
9809           Use the requisition, not the allocation, since the
9810           allocation has not necessarily been computed yet.
9811           (Pointed out by Eugene Osintsev)
9812
9813 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
9814
9815         * gtk/gtkstyle.c (gtk_style_new): Dont' set
9816           style/base[GTK_STATE_INSENSITIVE] both to
9817           gtk_default_insensitive_bg!
9818           (Bug #2187, reported by Jonathan Blandford)
9819
9820         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
9821           Add Alt_L, Alt_R to list of invalid accelerators.
9822           (Bug #3736, reported by Vlad Harchev)
9823
9824 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
9825
9826         * gtk/gtkfilesel.c (open_ref_dir): Fix several
9827         bugs which occured after an attempt to open 
9828         invalid home directory left cmpl_state->reference_dir == NULL.
9829
9830          - completion on files in home directory didn't work
9831          - completion on an empty string caused  segfault
9832
9833          (Bug #3678, reported by Steve Ratcliffe)
9834
9835         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
9836         cut and paste error that was causing scales to
9837         be incorrectly positioned.
9838         (Bug #2956,
9839          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
9840
9841 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
9842
9843         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9844         when checking for dcgettext, if we've found we needed
9845         it for dgettext.
9846 +
9847 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
9848
9849         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9850         queue_clear on NO_WINDOW widgets during a reparent,
9851         since at that point the window and widget heirarchies
9852         are out of sync. This stops crashing in some cases
9853         (the scrolled window reparent test, for instance), and
9854         _probably_ won't cause drawing errors.
9855
9856         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
9857         test do what it was supposed to do and be robust against
9858         window closings, etc. (Bug #2443)
9859
9860 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
9861
9862         * gtk/gtkentry.c: Fix return values on mouse events.
9863         (Bug #2686, Sky <seb_sky@yahoo.com>)
9864
9865         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9866         (pointed out by George Lebl)
9867
9868         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9869         (From Ettore Perazzoli  <ettore@helixcode.com>)
9870  
9871 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
9872
9873         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9874         clicks between rows or outside calender area correctly.
9875         (Patch from Damon Chaplin)
9876
9877         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
9878         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
9879           Call destroy function when overwriting existing data. 
9880           (Pointed out by Damon Chaplin)
9881
9882 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
9883
9884         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9885           which was causing problems on various systems with Xmu.
9886           This hasn't been needed for a very long time.
9887           (Fixes #1185 3167)
9888
9889 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
9890
9891         * gdk/gdki18n.h: Include <ctype.h> when defining
9892           gdk_isw* in terms of is* as a fallback.
9893           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9894
9895 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
9896
9897         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9898           realize the widget when it is size allocated!
9899           (old, old bug)
9900
9901         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9902           Removed unused call to gdk_window_get_size() that
9903           showed up when the above was fixed.
9904
9905 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
9906
9907         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9908           fix up widget->window when the widget is a
9909           NO_WINDOW container widget.
9910
9911 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
9912
9913         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9914           to account for the fact that feof() does _not_ 
9915           return TRUE on errors, and thus avoid infinite loops
9916           when trying to use gdk_pixmap_create_from_xpm()
9917           on unreadable values.
9918
9919 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
9920
9921         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9922
9923 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
9924
9925         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9926           gdk_gc_set_dashes to take gint8 instead of gchar to
9927           make it clearer that it is _not_ a NULL terminated string.
9928
9929         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9930           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9931           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9932           arguments.
9933
9934 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
9935
9936         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
9937         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9938         background size relative to our allocation, guard against small
9939         allocations, we may have not yet been size allocated.
9940
9941 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
9942
9943         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9944         not just version == 3. We implement all 3 + most of 4 - 
9945         (we don't support matching text/plain;charset=iso-8859-1
9946         to a dest that expects text/plain). We'll still advertise
9947         3 to be safe, but any client implementing version >= 3
9948         must interoperate with 3.
9949         
9950 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9951
9952         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9953         background and gc members, add a warning in gtk_tooltips_set_color()
9954         indicating that this function is deprecated.
9955
9956 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
9957
9958         * docs/gtkfaq.sgml: FAQ Update:
9959           - Minor cleanups (Emmanuel, me)
9960           - New questions:
9961                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9962                 How can I retrieve the text from a GtkMenuItem? (timj)
9963                 How do I validate/limit/filter the input to a GtkEntry? (me)
9964                 Memory does not seem to be released when I free the list
9965                         nodes I've allocated (timj)
9966
9967 2000-03-07  Tor Lillqvist  <tml@iki.fi>
9968
9969         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9970         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9971         for which it is no use to call GetLastError onWin9x.
9972         (gdk_other_api_failed) New function, for general error
9973         reporting without calling GetLastError.
9974         (gdk_win32_api_failed) OTOH, this function always calls
9975         GetLastError. (gdk_win32_last_error_string) Remove this function,
9976         GLib has the equivalent now.
9977
9978         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9979         call them with function name, file name and line number in the
9980         arguments.
9981
9982         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9983         functions.
9984         
9985         * gtk/gtk.def: Add some missing entry points.
9986
9987         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9988         gtk_paned_set_gutter_size, which don't exist any longer, as void.
9989         
9990         Fixes by Hans Breuer:
9991
9992         * gdk/makefile.msc: Update for debugging.
9993
9994         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9995         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9996         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9997         in the dash_list.
9998
9999         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
10000         the x11 backend.
10001
10002         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
10003
10004         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
10005
10006 2000-03-04  Tor Lillqvist  <tml@iki.fi>
10007
10008         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
10009         just pixel value of background colour.
10010
10011         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
10012         containing code snippet previously duplicated in a couple of
10013         places.
10014         
10015         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10016         gdk_colormap_color.
10017
10018         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10019         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10020         events for autorepeated Shift, Control and Alt keys. Use
10021         gdk_colormap_color.
10022
10023         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10024         pointer is inside the window the cursor of which we are setting,
10025         call SetCursor immediately.
10026
10027         * gdk/win32/makefile.cygwin
10028         * gtk/makefile.cygwin: If we don't have the build number stamp
10029         file, use zero.
10030
10031         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10032         gtk_paned_set_gutter_size as empty.
10033
10034         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
10035         
10036 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
10037
10038         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
10039           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
10040           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
10041           docs/gtk_tut.sgml docs/gtk.texi TODO:
10042
10043           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
10044
10045 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
10046
10047         * gtk/gtkcalendar.c: Implement num_marked_dates,
10048           and don't emit mutiple day_selected signals on
10049           month_prev.
10050
10051 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
10052
10053         * docs/make-todo (lineno): let title and logo be configurable so
10054         that GNOME can use this script too.
10055
10056         * TODO.xml: added logourl and a title
10057
10058 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
10059
10060         * TODO.xml: Added some UI items, and an explanatory
10061         comment at the top of the file.
10062
10063 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
10064
10065         * TODO.xml: some updates, added abunch of new entries.
10066         a note for those fiddeling with this file, when done
10067         with it, invoke:
10068         $ ./docs/make-todo TODO.xml >/dev/null
10069         and correct output errors before comitting changes.
10070
10071 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
10072
10073         * TODO.xml: Added XML-structured TODO file.
10074         * docs/make-todo: python script to turn TODO.xml into
10075           pretty XML output. 
10076
10077 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
10078
10079         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
10080         the function to let it draw the seven dots, instead of the old,
10081         much maligned, method.
10082         (draw_dot): New function to draw a dot.
10083
10084         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
10085         to draw the handle inside the border width as opposed to outside.
10086         Use paint function instead of gdk_draw_point.
10087
10088         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
10089         to draw the handle inside the border width as opposed to outside.
10090         Use paint function instead of gdk_draw_point.
10091
10092         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
10093         Change indenting to be more GTK like.
10094
10095 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
10096
10097         * docs/gtk_tut.sgml: New section on GtkCalendar
10098         * examples/calendar: Update example code
10099
10100 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
10101
10102         * docs/gtkfaq.sgml: FAQ Update
10103
10104 2000-02-19  Anders Carlsson  <andersca@gnu.org>
10105
10106         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
10107         to prevent the scroll event to be propagated upwards.
10108
10109 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10110
10111         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
10112         OwnerGrabButtonMask from button entries for
10113         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
10114
10115         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
10116         to the event mask (which will result in button/press release
10117         being added to the event mask on Unix) so scrolling works
10118         for layouts in scroll windows.
10119
10120         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
10121
10122         Patch from Anders Carlsson  <andersca@gnu.org> to add
10123         a scroll event.
10124
10125         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
10126         scrolling to the "Test Scrolling" part of testgtk.
10127  
10128         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
10129  
10130         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
10131         it against GDK_SCROLL.
10132  
10133         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
10134         way of mouse wheel scrolling.
10135  
10136         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
10137  
10138         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
10139  
10140         * gtk/gtkmain.c: Removed previous mouse wheel hack.
10141  
10142         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
10143         gdk_event_mask_table.
10144  
10145         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
10146         GdkEventScroll handler.
10147  
10148         * gdk/gdkevents.h: Added GdkEventScroll structure.
10149  
10150 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
10151
10152         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
10153         and Anders Carlsson to change the Paned widgets so that they
10154         can be dragged from anywhere along the length. Also change
10155         the way that this is drawn to make this apparent.
10156
10157         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
10158         from George Lebl to check that option_menu->menu is present
10159         before getting history.
10160
10161 2000-02-14  Tor Lillqvist  <tml@iki.fi>
10162
10163         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
10164         before the assertion for non-NULL segment list.
10165
10166         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
10167         Seems that pattern brushes *must* be 8x8 pixels! At least on my
10168         machine, but it might be display driver dependent. Sigh, so make
10169         sure the stipple is that size. Does Windows suck or what?
10170
10171         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
10172         places.
10173
10174 2000-02-13  Havoc Pennington  <hp@pobox.com>
10175
10176         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
10177         refcount to 1
10178         (gdk_cursor_new): init refcount to 1
10179
10180         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
10181
10182 2000-02-13  Tor Lillqvist  <tml@iki.fi>
10183
10184         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
10185         so that we don't have to do unnecessary settings to the HDC.
10186
10187         * gdk/win32/gdkdrawable-win32.c
10188         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
10189         gdk_gc_predraw.
10190
10191         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
10192         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
10193         GDI paths, call WidenPath to get the outline of the stroken path,
10194         and then fill the outline (with the brush that was built from the
10195         stipple).
10196
10197         * gdk/win32/gdkgc-win32.c: Factor out common code from
10198         _gdk_win32_gc_new and gdk_win32_gc_set_values into
10199         gdk_win32_gc_values_to_win32values. Use correct colour for
10200         SetBkColor() (Until now the code actually used a random colour in
10201         the call to SetBkColor()... but that didn't show up as not many
10202         GDI APIs use the background colour. Pattern (opaque stippled)
10203         brushes do.)
10204
10205         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
10206         gdk_win32_api_failed): New functions for error logging.
10207
10208         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
10209         WIN32_API_FAILED to call them, passing function or file name and
10210         line number.
10211
10212         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
10213
10214         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
10215         GdkColor for foreground and background in GdkGCWin32Data.
10216
10217         * gdk/makefile.cygwin: Link in the resource object separately.
10218
10219         * gdk/win32/rc/gdk.rc
10220         * gtk/gtk.rc (New file)
10221         * gdk/win32/makefile.cygwin
10222         * gtk/makefile.cygwin: Update build number in DLLs automatically,
10223         as in GLib.
10224
10225 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
10226
10227         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
10228         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
10229         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
10230         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
10231         parameters given and cursor->ref_count. coding style fixups.
10232
10233         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10234         not GtkWidget.
10235         
10236         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
10237         fix up widget macros and add _GET_CLASS() variant.
10238         
10239         * gtk/*.c: some GtkType fixups.
10240
10241 2000-02-09  Tor Lillqvist  <tml@iki.fi>
10242
10243         * gdk/win32/gdkproperty-win32.c
10244         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
10245         were reversed.
10246
10247 2000-02-04  Tor Lillqvist  <tml@iki.fi>
10248
10249         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
10250         g_filename_to_utf8 to convert the font names Windows gives us from
10251         whatever is the default codepage to UTF-8.
10252         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
10253         in the other direction.
10254
10255         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
10256         error in debugging output.
10257
10258 2000-02-02  Tor Lillqvist  <tml@iki.fi>
10259
10260         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
10261         and height parameters to gdk_window_clear_area(). Not minus one.
10262
10263 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
10264
10265         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
10266         checks if the widget passed to gtk_drag_get_data() was not the
10267         dest widget.
10268
10269 2000-02-01  Tor Lillqvist  <tml@iki.fi>
10270
10271         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
10272         g_filename_from_utf8 functions (which were added a moment ago to
10273         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
10274         size buffers.
10275
10276         gtk_file_selection_get_filename returns the filename in the C
10277         runtime encoding. It calls g_filename_from_utf8, but copies the
10278         returned string to a static buffer, which is returned. I think
10279         this is better than returning the result from g_filename_from_utf8
10280         directly, which would mean all apps that use it would have to free
10281         the return value. Or should this function care about this issue at
10282         all? Maybe a new function with clearly defined semantics.
10283
10284         * gtk/gtkfilesel.h: Add comment about
10285         gtk_file_selection_get_filename returning the filename in the C
10286         runtime's encoding.
10287
10288         * README.win32
10289         * gdk/gdk.def
10290         * gdk/makefile.{cygwin,msc}
10291         * gtk/gtk.def: Updates.
10292
10293         * gdk/gdkcursor-win32.c: Initialise refcount.
10294
10295 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
10296
10297         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
10298
10299 2000-01-30  Havoc Pennington  <hp@pobox.com>
10300
10301         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
10302         destroy
10303
10304         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
10305
10306         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
10307         implemented in platform-specific code
10308
10309         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
10310
10311         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
10312         underscore in front
10313
10314         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
10315         put an underscore in front
10316
10317         * gdk/gdkcursor.c: new file, implements
10318         gdk_cursor_ref/gdk_cursor_unref
10319
10320         * gdk/gdkcursor.h: Refcount GdkCursor
10321
10322         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
10323
10324 2000-01-29  Tor Lillqvist  <tml@iki.fi>
10325
10326         * gdk/gdkwindow.h
10327         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
10328
10329 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10330
10331         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
10332         structures to properly inherit from GtkWidget not GtkBin.
10333
10334 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
10335
10336         * gtk+.spec.in: Added lib/gtk+/include/* to %files
10337         (bug #5178 - Peter Wainright)
10338         
10339         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
10340         so that it will be installed.
10341         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
10342
10343 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
10344
10345         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
10346         for the GtkStyleClass vtable const.
10347
10348         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
10349         take a const string argument like GtkTranslateFunc. This will
10350         require changes in use code.
10351
10352 2000-01-19  Tor Lillqvist  <tml@iki.fi>
10353
10354         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10355         semantics (to mimic the X11 backend, which just calls XClearArea)
10356         is to check for zero width (and height), and in that case use the
10357         window's width minus x (height minus y). This fixes for instance
10358         some redraw problems with gtkclist, which were easily noticeable
10359         in the gtk file selection widget.
10360
10361         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
10362         windows.
10363
10364 2000-01-13  Tor Lillqvist  <tml@iki.fi>
10365
10366         * configure.in
10367         * gdk/Makefile.am
10368         * gdk/x11/Makefile.am
10369         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
10370         (bug #5177).
10371         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
10372         out later.
10373
10374 2000-01-09  Tor Lillqvist  <tml@iki.fi>
10375
10376         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
10377         WM_MOVE for iconified or invisible windows. This fixes various
10378         problems when minimising windows. Thanks to Bernd Herd.
10379
10380 2000-01-05  Tor Lillqvist  <tml@iki.fi>
10381
10382         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
10383         backend's draw_lines method, not draw_points.
10384
10385 2000-01-02  Tor Lillqvist  <tml@iki.fi>
10386
10387         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
10388         before Owen's reorganisation: Don't have queued_events and
10389         queued_tail statics in this file, but use gdk_queued_events and
10390         gdk_queued_tail. This makes exposure event compression work again.
10391
10392         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
10393         seem to be needed?
10394
10395 1999-12-30  Tor Lillqvist  <tml@iki.fi>
10396
10397         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
10398         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
10399         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
10400         doesn't do anything.
10401
10402         * gdk/gdk.def: Add gdk_xid_table_insert.
10403
10404         * gdk/win32/gdkprivate-win32.h
10405         * gdk/win32/gdkevents-win32.c
10406         * gdk/win32/gdkinput-win32.c
10407         
10408         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
10409         extension_events field in the GdkWindowWin32Data struct. Use only
10410         the extension_events field in GdkWindowPrivate. Previously one was
10411         set, and the other one tested, which broke tablet
10412         functionality. Thanks to Keishi Suenaga for pointing this out.
10413
10414 1999-12-18  Tor Lillqvist  <tml@iki.fi>
10415
10416         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
10417         When handling a single character (text length == 1), don't handle
10418         it as if it was UTF-8.
10419
10420 1999-12-11  Tor Lillqvist  <tml@iki.fi>
10421
10422         * Makefile.am: Distribute README.win32.
10423         
10424         * gdk/Makefile.am
10425         * gdk/win32/Makefile.am: Distribute Win32 files.
10426
10427         * gdk/makefile.msc: New file.
10428
10429         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
10430         after label).
10431
10432         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
10433         gdk_error_code as GDKVAR, as they are referred outside GDK.
10434
10435         * gdk/win32/makefile.msc: Update.
10436
10437         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
10438         tweaks. Check only if at least one of those Unicode subrange bits
10439         we care for is set. If no code page bits are set, guess (wildly)
10440         based on the charset.
10441
10442         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
10443
10444         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
10445         non-NULL.
10446
10447         * gtk/gtkdnd.c
10448         * gtk/gtklayout.c
10449         * gtk/gtkplug.c
10450         * gtk/gtkselection.c
10451         * gtk/gtksocket.c
10452         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
10453         appropriate. There must be a cleaner way to handle this?
10454
10455         * gtk/gtkrc.c: Must include windows.h on Win32.
10456
10457         * gtk/testgtk.c: No need to include gdkx.h.
10458
10459         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
10460
10461 1999-12-07  Tor Lillqvist  <tml@iki.fi>
10462
10463         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
10464         the rbearing is set to the same as the width, but this should be
10465         fixed.
10466
10467 1999-12-06  Tor Lillqvist  <tml@iki.fi>
10468
10469         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
10470         function. If Windows doesn't tell us what Unicode subranges a font
10471         covers, guesstimate based on the codepages it covers. This will
10472         hopefully help those Windows versions or fonts that don't give us
10473         any useful Unicode subrange information with GetTextCharsetInfo.
10474         Call this function in gdk_font_load_internal.
10475
10476         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
10477         minor changes.
10478
10479 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
10480
10481         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
10482         New function, long needed.
10483
10484 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
10485
10486         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
10487         only_if_exists argument of gdk_atom_intern to
10488         bool.
10489
10490 1999-11-25  Tor Lillqvist  <tml@iki.fi>
10491
10492         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
10493         Fix two copy&paste errors.
10494
10495         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
10496         win32 has changed.
10497
10498         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
10499         GdkWin32SingleFont struct.
10500
10501         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
10502         subranges of loaded fonts. Clear font signature first, in case
10503         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
10504         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
10505
10506         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
10507         Unoffset clip region.
10508
10509 1999-11-23  Tor Lillqvist  <tml@iki.fi>
10510
10511         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
10512         event->any.window before calling filter functions.
10513
10514 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
10515
10516         * gtk/gtkgamma.h: Adapt cast macros to standard.
10517
10518 [ Merges from 1.2 ]
10519
10520 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
10523         If translation does not include a '/', use entire
10524         translation instead of crashing.
10525
10526 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
10527
10528         * docs/gtk_tut.sgml:
10529         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
10530
10531 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
10532
10533         * gtk/gtkselection.c (gtk_target_list_remove): Use
10534         g_list_remove_link, not g_list_remove.
10535
10536         [ From Geert Bevin <gbevin@thunderstorms.org> ]
10537         
10538 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
10539
10540         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
10541         statement upon unselection (how the heck did that slip in?).
10542
10543 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
10544
10545         * gtk/gtktext.c (gtk_text_freeze): 
10546         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
10547         in frozen state (and aparently crashes). patch provided by Anders
10548         Melchiorsen <and@kampsax.dtu.dk>.
10549
10550 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
10551
10552         * fix insensitive default/focus widget activation,
10553         reported by Matt Goodall <mgg@isotek.co.uk>.
10554
10555         * gtk/gtkwindow.c (gtk_window_key_press_event): 
10556         (gtk_window_activate_default):
10557         (gtk_window_activate_focus):
10558         return handled=FALSE for actiavtion of insensitive default
10559         widgets. return handled=TRUE for activation of insensitive
10560         focus widgets. don't activate in either case.
10561
10562 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
10563
10564         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
10565         and $glib_cflags to match library order and in the
10566         theory that an old version of GLib is more likely to
10567         be in the include directory for X then vice-versa.
10568         (Bug #2776)
10569
10570 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
10571
10572         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
10573         to determine the locale for fontsets, not LC_MESSAGES;
10574         the user may want English messages with a handling
10575         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
10576         will still be broken) (Bug #2891)
10577
10578 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10579
10580         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
10581
10582 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10583
10584         * gtk/gtkrc.ko: Changed the Korean default fontset.
10585
10586 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
10587
10588         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
10589         where when scrolling to the left or top double exposes
10590         were done, causing major slowdowns.
10591
10592 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
10593
10594         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
10595         names to lowercase and alphanumeric, before looking
10596         them up.
10597
10598         * gtk/Makefile.am: Install codeset variant gtkrc files
10599         with normalized names.
10600
10601 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
10602
10603         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
10604         popup menus when the menu is already visible, but its parent
10605         is still hidden, (happens after tornoff window got hidden).
10606
10607 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
10608
10609         * gtk/Makefile.am (install-data-local): Fix
10610         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10611         deleted, causing error messages on install.
10612
10613 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
10614
10615         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10616         the handle as well, since we now sometimes ignore
10617         exposes on the handle while resizing.
10618
10619 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
10620
10621         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10622         extra g_free introduced in one of the last one or two 
10623         commits.
10624
10625 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
10626
10627         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10628         consistent, put each style that a gtkrc.* file creates
10629         in a unique namespace, remove old files before installing.
10630
10631 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
10632
10633         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10634         gtk_rc_init is called multiple times. (Yes, people who
10635         do that have bugs in their code.)
10636
10637 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10638
10639         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10640         Remove it since it's generated by the Makefile anyway
10641
10642 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
10643
10644         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
10645         device->info.axes for core pointer.
10646
10647 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
10648
10649         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
10650         idle_id, to deal with obsolete, broken C libraries.
10651
10652 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
10653
10654         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
10655         allocation->x/y twice!
10656
10657         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
10658         consistent with gtk_vscale_pos_trough().
10659
10660 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
10661
10662         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
10663         be queueing a resize on a toplevel container between
10664         the time we show it and when we map it. So, we need
10665         to test GTK_WIDGET_VISIBLE() for toplevels, and only
10666         use GTK_WIDGET_DRAWABLE() for child windows.
10667
10668 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
10669
10670         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
10671         (fixes bug #2144)
10672
10673 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
10674
10675         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
10676         container DRAWABLE (instead of VISIBLE), so we don't queue
10677         resizes on non-toplevel containers.
10678
10679 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
10680
10681         * gtk/gtkselection.[ch]: Make the data argument
10682         const guchar *.
10683
10684 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
10685
10686         * gtk/gtkwindow.c: Try to behave sensibly if 
10687         the focus widget is the window itself. (Should
10688         we allow this at all?)
10689
10690 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
10691
10692         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
10693         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
10694         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
10695         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
10696         in prototypes and implementations consistent (Tomas Ogren).
10697
10698         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
10699         before the widget is unparented (reported by damon).
10700
10701         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
10702         since we provide unsigned data anyways.
10703
10704 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
10705
10706         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
10707         the call to gtk_tooltips_layout_text() until later.
10708
10709         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
10710         Call gtk_widget_ensure_style() before using the style.
10711
10712 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
10713
10714         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
10715         for old widgets that don't propagate draws to all
10716         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
10717
10718 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
10719
10720         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
10721         for a redraw but just the widget that requested the resize.
10722
10723 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
10724
10725         * gtk/gtkcontainer.c: added new widget level method
10726         gtk_container_set_reallocate_redraws() and a GtkContainer flag
10727         reallocate_redraws : 1 to reflect the setting, exported this through
10728         the argument system as a boolean ::reallocate_redraws.
10729
10730         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
10731         on the widget because the allocation changes, do so as well for
10732         widget->parent if the parent has reallocate_redraws set to TRUE.
10733         with that containers requesting reallocation redraws get automatically
10734         redrawn if their children changed allocation (this unfortunately
10735         affects also other children that didn't change allocation, but we
10736         cannot work around that before 1.3).
10737
10738 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
10739
10740         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
10741         _and_ height are >0 (not _or_).
10742
10743         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
10744         instead of gtk_container_queue_resize(), which is a core gtk internal
10745         function (must have been on crack when i queued that).
10746
10747         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
10748         we can check more reliably if we want to discard expose events.
10749         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
10750         flag.
10751         
10752         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
10753         we simply trust these events. for deciding whether to discard exposes,
10754         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
10755         
10756 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
10757
10758         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10759         queues of areas that are completely off screen.
10760
10761         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
10762         logic for handleboxes.
10763
10764         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
10765         check on width/height.
10766
10767 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
10768
10769         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
10770         we are fine with using $@ the way we do (if we actually encounter
10771         brokeness with $@ in VPATH builds because of additional path prefixes,
10772         we need to use $(@F) actually).
10773
10774 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
10775
10776         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
10777         short lived bugs, that would allow language bindings to do surgeries
10778         to our guts.
10779
10780 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
10781
10782         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
10783         where comparison was being done against an uninitialized
10784         value causing intermittant results depending on
10785         compiler flags. Also make it clearer that we aren't
10786         ever initializing the child as 0x0 (though this will
10787         be caught in gtk_widget_size_allocate())
10788
10789 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
10790
10791         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
10792         gtk_window_unset_transient_for() call after we do checks
10793         involving the old transient parent.
10794         [ From Lance Capser <lmc@cyberhighway.net> ]
10795
10796 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
10797
10798         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
10799         an empty file.
10800
10801 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
10802
10803         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
10804         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
10805
10806 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
10807
10808         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
10809         `$@' is valid only in the build dir, not after we've done 
10810         `cd $srcdir'.  Also use `test -f' instead of less portable
10811         `test -e'.
10812
10813 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
10814
10815         * gtk/gtktext.c (correct_cache_insert): Rewrite
10816          for simplicity, and hopefully correctness.
10817          (Fixes bug #1322, which was a segfault when
10818           on some insertions with the properties around
10819           the insertion set up just wrong.)
10820
10821         * gtk/gtktext.c (gtk_text_adjustment): When we receive
10822          a "changed" signal, clamp the new value to the adjustment
10823          bounds to avoid segfaulting if someone tries to change
10824          the adjustment to a bogus value. (Bug #1795)
10825
10826 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
10827
10828         * gtk/gtkmain.c: Ignore unexpected destroy notifies
10829         for children, for toplevel windows handle them
10830         like delete_event.
10831
10832         * gtk/gtkplug.c: Add an unrealize handler so that
10833         we unref plug->socket_window when we are done
10834         with it.
10835
10836 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
10837
10838         * gtk/gtktext.c (clear_area): Fix stupid signedness
10839          problem that was causing background to sometimes
10840          be misaligned.
10841
10842 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
10843
10844         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
10845         
10846         * gtk/gtkmenu.c (gtk_menu_position): Make
10847          sure we never position menus with negative x, y,
10848          since gtk_widget_set_uposition() can't handle that.
10849
10850         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
10851          Modify the positioning code a bit so that we always
10852          put the top-left corner onscreen. (This is for
10853          UI reasons, gtk_menu_position() now takes care of
10854          gtk_widet_set_uposition() brokeness.)
10855
10856 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
10857
10858         * gtk/Makefile.am: fixed up things for -jx, x > 1.
10859
10860 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
10861
10862         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10863           RC style that is passed in. The lack of the ref
10864           before was a bug. If people worked around this
10865           bug, this will introduce a slight memory leak
10866           in their code. The code should typically look like:
10867
10868             rc_style = gtk_rc_style_new ();
10869             [...]
10870             gtk_widget_modify_style (widget, rc_style);
10871             gtk_rc_style_unref (rc_style);
10872
10873         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10874           the style if it was already set.
10875
10876         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10877           style if it was set before.
10878
10879 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10880
10881         * gtk/testgtk.c (main): Add a check to see if we
10882           are being run from the correct directory and
10883           to quit nicely if we are not.
10884
10885         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10886           static.
10887
10888 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
10889
10890         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10891
10892         * gtk/gtkwindow.c:
10893         queue resizes unconditionally (gtk_widget_queue_resize will figure
10894         what to do if the window is not realized).
10895         (gtk_window_move_resize): only recenter the window
10896         for GTK_WIN_POS_CENTER_ALWAYS.
10897         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10898         the same way as GTK_WIN_POS_CENTER.
10899
10900 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
10901
10902         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10903         with (!(info->last_flags & GDK_HINT_POS)) instead of
10904         (!info->last_flags & GDK_HINT_POS).
10905
10906         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10907         new_height unconditionally, because we use these values even if
10908         !default_size_changed && !hints_changed.
10909         comented the (default_size_changed || hints_changed) case with
10910         respect to resize rejects from the window manager.
10911
10912         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10913         in the zvt condition hack, since this includes the window hints, set
10914         the hints after the handling_resize case.
10915
10916         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10917         window is initially shown with to the geometry.
10918
10919 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
10920
10921         * gtk/gtkwindow.c (gtk_window_move_resize):
10922         s/size_changed/default_size_changed/g so i know what's
10923         really going on (frying brain on smaller flame now).
10924
10925 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
10926
10927         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10928         we have size_changed upon handling_resize. this is a gross
10929         workaround for the broken zvt widget and should be removed in
10930         1.3 again (search for FIXME).
10931         Owen provided an accurate comment for this:
10932
10933         /* We could be here for two reasons
10934          *  1) We coincidentally got a resize while handling
10935          *     another resize.
10936          *  2) Our computation of size_changed was completely
10937          *     screwed up, probably because one of our children
10938          *     is broken. It's probably a zvt widget.
10939          *
10940          * For 1), we could just go ahead and ask for the
10941          * new size right now, but doing that for 2)
10942          * might well be fighting the user (and can even
10943          * trigger a loop). Since we really don't want to
10944          * do that, we requeue a resize in hopes that
10945          * by the time it gets handled, the child has seen
10946          * the light and is willing to go along with the
10947          * new size. (this happens for the zvt widget, since
10948          * the size_allocate() above will have stored the
10949          * requisition corresponding to the new size in the
10950          * zvt widget)
10951          *
10952          * This doesn't buy us anything for 1), but it shouldn't
10953          * hurt us too badly, since it is what would have
10954          * happened if we had gotten the configure event before
10955          * the new size had been set.
10956          */
10957
10958 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
10959
10960         * gtk/gtkrc.c: deal properly with the fact that RC
10961           style lists may include rc styles more than once.
10962
10963         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10964           unused static function.
10965
10966         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10967           stack of directories of RC files currently being
10968           parsed and implicitely add them to pixmap path.
10969           
10970           This fixes a bug where the directory would get
10971           appended then overwritten by pixmap_path declarations.
10972
10973           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10974
10975         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10976           theme's exit function. (Patch from Peter Wainwright,
10977           bug #1454)
10978
10979         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10980           Add a destroy() handler to take care of removing
10981           group for menu item. (Fixes bug #1197)
10982
10983         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10984           in warning message.
10985
10986 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
10987
10988         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10989         roundtrip to figure window's width and height, since we know that
10990         anyways from widget->allocation.
10991
10992 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
10993
10994         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10995           the hints after we request the new size.
10996
10997 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
10998
10999         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
11000           GTK_WIDGET_REALIZED() assertion - we can compute the
11001           hints before we are realized.
11002
11003         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
11004           hint changing so that we have a value of hints_changed
11005           when we decide whether to constrain the window size.
11006
11007         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
11008
11009         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
11010         change back to G_MAXINT.
11011
11012 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
11013
11014         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11015         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11016         contain uncluttered values.
11017         (gtk_window_compute_hints): simply assert that window is realized
11018         and that geometry_info is valid, since we rely on this anyways.
11019         (gtk_window_constrain_size): major cleanups to the code.
11020         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11021         for the base size, instead of the minimums. use 32767 as max width
11022         and height (like in gtkwindow.c) instead of G_MAXINT.
11023
11024 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
11025
11026         * cleaned up the GtkContainer.need_resize flag handling mess, we
11027         only need to force resize requests when we were prematurely
11028         realized, or our widget tree was modified when we were temporarily
11029         hidden. handling these cases directly upon showing the window (i.e.
11030         while the GdkWindow is still unmapped) avoids the need to wait for
11031         a configure event response and therefore makes the GUI more snappier
11032         and avoids blank windows during the roundtrip.
11033
11034         * gtk/gtkwidget.c:
11035         (gtk_widget_hide): 
11036         (gtk_widget_show): don't queue resizes on toplevels, they know how
11037         to deal with matters.
11038
11039         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
11040         flag directly for not visible resize containers and spare us unecessary
11041         signal emissions.
11042
11043         * gtk/gtkwindow.c:
11044         (gtk_window_realize): if we need to enforce premature size allocation,
11045         queue a container resize so we are correctly resized later on.
11046         (gtk_window_init):
11047         (gtk_window_size_request):
11048         don't freak around with the ->need_resize flag,
11049         gtk_container_queue_resize() will care about that.
11050         (gtk_window_show):
11051         handle initial resizing issues here, we can handle matters better in
11052         this place, especially since we know that our GdkWindow is still
11053         unmapped.
11054         (gtk_window_move_resize):
11055         don't care about ->need_resize at all.
11056         handle size changes properly that occoured while we waited for a
11057         configure event.
11058
11059 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
11060
11061         * gtk/gtkwidget.c (gtk_widget_set_uposition):
11062         * gtk/gtkwindow.[hc] (gtk_window_reposition):
11063         Move the hint setting code from gtk_widget_set_uposition
11064         to here; set the hints so that we respect any previously
11065         set geometry hints.
11066
11067         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
11068         change the window hints here or move the window here,
11069         let that happen in gtk_window_move_resize().
11070
11071 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
11072
11073         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
11074         to already queued resizes (and therefore redraws) on a widget, check
11075         its anchestry as well.
11076
11077         * gtk/gtkcontainer.c:
11078         (gtk_container_queue_resize): clear resize widgets for resize
11079         containers before aborting prematurely. this is especially important
11080         for toplevels which may need imemdiate processing or their resize
11081         handler to be queued.
11082         (gtk_container_dequeue_resize_handler): added new internal function for
11083         gtkwindow.c.
11084
11085         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
11086         configure event, take possible changes in window position into account
11087         as well.
11088         if we request a new window size, queue up a resize handler that will
11089         last until the configure event response arrives.
11090         combined the ->need_resize case (initial show) with the general size
11091         (hints) changed case and added even more comments.
11092         if !auto_shrink, only revert to the old allocation if the new size
11093         is smaller than the current allocation.
11094
11095 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
11096
11097         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
11098                            gtk_window_set_geometry_hints
11099                            gtk_window_set_default_size):
11100         When hints are set, queue a resize so that the hints will
11101         be eventually reset on the toplevel.
11102
11103         * gtk/gtkwindow.c (gtk_window_show): Use
11104         gtk_window_compute_default_size(). Clear the need_resize flag
11105         on the initail map so that we don't unnecessarily trigger the
11106         resize code.
11107
11108         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
11109         into separate functions. Compare the hints we are setting
11110         with what we set last time so that we can accurately
11111         tell when we need to reset the hints.
11112
11113         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
11114         function to figure out the size from requisition
11115         and default_size.
11116
11117         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
11118         from fvwm to constrain a size to the geometry hints.
11119
11120         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
11121         to compare two sets of geometry hints.
11122
11123         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
11124         from gtk_window_set_hints(), just compute the hints,
11125         don't set them.
11126
11127         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
11128         code from gtk_window_move_resize() to separate function,
11129         rationalize a bit.
11130
11131 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
11132
11133         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
11134         structure into a new private structure.
11135
11136         * gtkrc.c: Split GtkRcStyle into public/private.
11137         In the private part, add a list of pointers to the
11138         RcStyle lists this RcStyle participates in.
11139
11140         * gtkrc.c: When a RcStyle is free, remove all
11141         lists referencing it from the 
11142         realized_style_ht hash, and free those lists.
11143         
11144         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
11145         gtk_rc_init(), since that adds the default styles
11146         to the list of parsed RC files again.
11147
11148         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
11149         
11150 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
11151
11152         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
11153         checks that ensure that a widget's allocation is at least 1 in width
11154         and height. (GNOME note: this doesn't affect old panel code anymore,
11155         because GtkSocket will request width and height of at least 1 since
11156         Fri Jul 23).
11157
11158         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
11159         allocated yet (happens if the user realizes the window prematurely),
11160         size request and allocate it.
11161         (gtk_window_size_allocate): guard against guint underflows.
11162
11163 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
11164
11165         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
11166         in gtk_built_sources, so gtk.defs gets built prior to all other
11167         sources.
11168
11169 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11170
11171         * gtk/Makefile.am:
11172         invoke indent on gtkmarshal.*. 
11173         rewrote source generation rules, use COPYING as oldest source tag for
11174         a piggyback rule to generate all sources from (don't touch it ;).
11175         major cleanups, strip spaces on build rules for GNU Make.
11176
11177         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
11178         source and target files from commandline arguments. don't invoke indent.
11179
11180 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11181
11182         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11183         notebook after switch to avoid drawing problems.
11184         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11185         
11186         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11187         show them instead. 
11188         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11189
11190 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11191
11192         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11193         notebook after switch to avoid drawing problems.
11194         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11195         
11196         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11197         show them instead. 
11198         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11199
11200 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
11201
11202         * gtk/gtkwindow.c:
11203         we use window->need_resize from configure_event now, to indicate that
11204         the gtkwindow should keep its allocation (e.g. because the user resized
11205         the window through window manager handles). resize_count is now reliably
11206         used to figure whether we got the allocation we requested from the
11207         window manager.
11208         configure events get queued as resizes now, the real stuff (size
11209         computation and allocation) now only goes on in gtk_window_move_resize().
11210         GtkWindow's requisition now contains its *real* requisition (like all
11211         other widgets), *not* taking usize into account.
11212         geometry_info->last_{width|height} is now updated from set_hints() only
11213         so it always contains the last hints we set for the window manager.
11214         made some event handlers return TRUE instead of FALSE.
11215         the overall code should be much more straight forward now, and the
11216         significant code portions are accompanied by comments now.
11217         (gtk_window_set_hints):
11218         removed requisition argument and made it
11219         fetch the requisition through gtk_widget_get_child_requisition.
11220         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
11221         does that now.
11222         (gtk_window_show):
11223         ensure that the widget is realized before calling 
11224         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
11225         ensure that we got properly size requested and allocated before
11226         realization.
11227         (gtk_window_configure_event):
11228         ignore plain window moves, or reallocate the widget tree through the
11229         resize queue otherwise.
11230         (gtk_window_move_resize):
11231         mostly rewrote this function to figure window manager hints more
11232         reliably, coalesce window moves and resizes to reduce configure events
11233         and do actuall size allocations.
11234
11235 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11236
11237         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
11238         that have a resize pending, because a redraw is already queued for them.
11239
11240         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
11241         hack to clear resize_widgets.
11242
11243         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
11244         for resize containers prior to size allocation. (this is also a bit
11245         ugly, but avoids side effects for stopped emissions and is thus more
11246         reliable).
11247         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
11248
11249         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
11250         function from gtk_tooltips_expose, as we connect to ::expose_event
11251         *and* ::draw now.
11252
11253 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11254
11255         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
11256         checks.
11257         (gtk_target_list_unref): Likewise.
11258
11259         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
11260
11261 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
11262
11263         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
11264         guard against division by zero. (Fixes bug #1339)
11265
11266 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
11267
11268         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
11269         Prevent the trivial leak of information of allowing
11270         word motion when the entry is not visible.
11271
11272 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
11273
11274         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
11275         modality to error dialog as well as confirmation dialogs.
11276         (Bug #1803, reported by Rosanna Wing Sze Yuen)
11277
11278 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11279
11280         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
11281         tree->view_lines.
11282         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
11283
11284         * gtk/Makefile.am (install-data-local): Solaris apparently
11285         has various troubles with ln -f; use rm first instead.
11286         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
11287
11288 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
11289
11290         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
11291         use `cp' followed by `rm' (the `rm' was already there).
11292
11293 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11294         
11295         * configure.in: Fix autoconf warnings about cross compilation by
11296         trying to provide sane defaults for AC_TRY_RUN.
11297         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
11298         put them into $(srcdir) when generated. Also add a dependency of
11299         gtksignal.h on gtkmarshal.h for -j builds. 
11300         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
11301
11302 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
11303
11304         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
11305         GDK_THREADS_{LEAVE,ENTER} pair.
11306         (From Paul Fisher <pnfisher@redhat.com>)
11307
11308 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
11309
11310         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
11311         width and height are always >0 (owen).
11312
11313 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
11314
11315         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
11316         change that assured that a widget's allocated with and height are
11317         always >1, since this breaks *buggy* panel code. unfortunately this
11318         back-breaks the gimp's color selector.
11319
11320         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
11321         allocation is always >0 in width and height, before sending the
11322         configure event; this is a *gross* hack to get the gimp back to work.
11323         
11324         * marked both cases with TODO-1.3
11325
11326 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
11327
11328         * gtk/gtktext.c: Don't display wrap indicators when
11329         text is not editable and word wrap is on.
11330
11331 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
11332
11333         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
11334         option menus here as they are not derived from menu shell, assure that
11335         the option menu has a menu we can add items to.
11336
11337 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
11338
11339         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
11340         width/height to (gint) before calculations and check against < 0 to
11341         avoid guint wraparounds.
11342
11343 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
11344
11345         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
11346         width and height is never zero. sanity check both dimensions against
11347         32767 and issue a warning if the allocation is greater than that.
11348
11349 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
11350
11351         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
11352         to g_main_pending() as well.
11353
11354 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
11355
11356         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
11357         call to g_main_iteration() - since that will regrab
11358         GTK+ lock to process events.
11359
11360 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
11361
11362         * gtk/gtkwindow.c
11363         - Regularize with the rest of GTK+ by making widget->requisition
11364           not reflect the set_usize()
11365         - Always recompute geometry hints, then check if they
11366           changed before sending them to the X server. The
11367           previous checks for changes would fail in a number
11368           of circumstances. 
11369
11370 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
11371
11372         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
11373
11374 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
11375
11376         * gtk/gtkdnd.c:
11377         - Code cleanups
11378         - Instantaneously update on modifier key presses
11379         - Allow cancellation of the drag with Escape.
11380
11381 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
11382
11383         * gtk/testgtk.c (create_handle_box): Set the policy
11384         to auto_shrink - otherwise the appearance is rather
11385         strange when flipping between horizontal and vertical.
11386
11387 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
11388
11389         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
11390         (gtk_window_set_default_size): don't change a value if it's < 0.
11391         queue a resize.
11392
11393 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
11394
11395         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
11396
11397 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
11398
11399         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
11400         add an extra "/" when concating "/" + filename.
11401         (From Matt Grossman <mattg@oz.net>)
11402
11403 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
11404
11405         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
11406         for fg_gc if we set it for drawing pixmap.
11407
11408 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
11409
11410         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
11411         
11412         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
11413         already set, call old engine's destroy function and
11414         unref the old engine.
11415
11416 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
11417
11418         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
11419
11420 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
11421
11422         * gtk/gtkaccelgroup.h: mark certain functions as internal.
11423
11424 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
11425
11426         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
11427         expand behaviour changed.
11428
11429         * gtk/gtklabel.c (gtk_label_set_pattern):
11430         (gtk_label_set_justify):
11431         (gtk_label_set_line_wrap):
11432         don't bother invoking queue_clear, the reallocation does
11433         that for us, always free_words so the upcoming resize will
11434         relayout the label's contents.
11435
11436 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
11437
11438         * applied argument implementation patches from Elena Devdariani
11439         <elena@cogent.ca>.
11440
11441         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
11442         ::space_style, ::relief
11443         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
11444         * gtk/gtkpreview.c: ::expand
11445         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
11446         * gtk/gtknotebook.c: ::homogeneous
11447         * gtk/gtklabel.c: ::wrap
11448         * gtk/gtklist.c: ::selection_mode
11449         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
11450         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
11451         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
11452         * gtk/gtkclist.c: ::sort_type
11453         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
11454         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
11455
11456 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
11457
11458         * gtk/gtkstyle.c: Removed ill-thought-out part of last
11459         comment.
11460
11461 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
11462
11463         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
11464         counting right when we have to attach a new style
11465         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
11466
11467         * gtk/gtkstyle.c: Documented the refcounting
11468         peculularities of gtk_style_attach.
11469
11470 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11471
11472         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
11473         window types.
11474
11475         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
11476         of GTK_TOPLEVEL for creating the window.
11477
11478 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11479
11480         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
11481         the last argument (reported by Per Winkvist).
11482         
11483 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
11484
11485         Fixes for invisible XOR lines (Frank Loemker
11486         <floemker@TechFak.Uni-Bielefeld.DE>)
11487         
11488         * gtk/gtkclist.c (gtk_clist_realize): Always use
11489         a non-zero pixel for GDK_XOR.
11490
11491         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
11492         Use GDK_INVERT instead of GDK_XOR.
11493
11494 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
11495
11496         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
11497         signals if h/voffsets differ from adjustment values.
11498         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
11499
11500 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
11501
11502         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
11503         ::selection-done emissions up to the topmost menu shell.
11504
11505 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
11506
11507         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
11508         the user data on the window before destroying it.
11509
11510         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
11511         unrealize handler to take care of destroying 
11512         notebook->panel properly. 
11513         (Bug #1198 - Morten Welinder <terra@diku.dk>)
11514
11515         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
11516         of g_new and g_realloc to stop memory leak. (Actually,
11517         we could just use g_realloc(), but I'm not 100% sure
11518         that is portable).
11519         (Bug #1196 - Morten Welinder <terra@diku.dk>)
11520
11521 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11522
11523         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
11524
11525         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11526         for fontsets.
11527
11528         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
11529         with bin/button confusion.
11530
11531 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
11532
11533         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
11534         and show how preselection of radio items is done.
11535
11536 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
11537
11538         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
11539         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
11540         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
11541         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
11542         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
11543         * gtk/gtktable.c (gtk_table_attach): 
11544         * gtk/gtklist.c (gtk_list_insert_items): 
11545         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
11546         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
11547         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
11548         * gtk/gtkbin.c (gtk_bin_add): 
11549         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
11550         * gtk/gtkfixed.c (gtk_fixed_put): 
11551         * gtk/gtklayout.c (gtk_layout_put):
11552         general fixups to container_add logic. always realize child if
11553         child->parent is realized, only map the child and queue a resize
11554         if child and child->parent are both visible.
11555
11556 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
11557
11558         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
11559         instead of gtk_container_foreach to walk and unrealize children, so
11560         composite children get also unrealized.
11561         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
11562         (gtk_widget_map): assert that the widget is visible (basic constrain).
11563         (gtk_widget_real_map): assert that the widget is realized (basic
11564         constrain).
11565
11566 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
11567
11568         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
11569
11570 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
11571
11572         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
11573         file for iso-8859-2 locales.
11574
11575         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
11576
11577 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
11578
11579         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
11580          (Pointed out by andy@rz.uni-karlsruhe.de and others).
11581          Remove some suspicious and useless lines. 
11582
11583 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
11584
11585         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
11586         width,height = 0, 0 to mean - here to edge of window,
11587         instead of -1, -1, since the former is all we support.
11588
11589 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
11590
11591         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
11592         when removing from quit_functions list.
11593
11594 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
11595
11596         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
11597
11598 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
11599
11600         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
11601          When redrawing characters on non-visible entry, use appropriate
11602          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
11603
11604 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
11605
11606         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
11607         from drag coordinates.
11608         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
11609         use drag_dest_cell.
11610
11611         * gtk/gtktree (drag_dest_cell)
11612         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11613         (Bug #1129)
11614
11615 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
11616
11617         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11618         translate_* fields.
11619         (gtk_item_factory_finalize): invoke translate_notify independant from
11620         translate_data.
11621         (gtk_item_factory_set_translate_func): likewise.
11622         (gtk_item_factory_destroy): only remove ifactory pointer from those
11623         widgets that belong to us (stupid me).
11624
11625 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
11626
11627         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11628         rc_style list when lookup succeeeds.
11629
11630 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
11631
11632         * gtk/gtkctree.c (resync_selection): 
11633         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11634         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11635         bug.
11636
11637 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
11638
11639         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11640         Add some missing GDK_THREADS_ENTER()/LEAVE around
11641         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11642
11643 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
11644
11645         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
11646         rather than emit_by_name.
11647
11648         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
11649         on the widget across multiple signal emissions.
11650         (gtk_editable_delete_text): same here.
11651         (gtk_editable_class_init): set widget_class->activate_signal after
11652         editable_signals[ACTIVATE] has been created.
11653
11654 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
11655
11656         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
11657         position here prematurely -- we might not have the
11658         right ->min_position and ->max_position yet.
11659
11660 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
11661
11662         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
11663         Add error traps so if the other end of the connection
11664         dies, we survive.
11665
11666         * gtk/gtkselection.c (gtk_selection_notify): Clean
11667         up properly when selection property retrieval fails.
11668         
11669         * gtk/gtkselection.c (gtk_selection_request): Correctly
11670         reject SelectionRequest notifies where the handler
11671         returns no data.
11672
11673 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11674
11675         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
11676         when we've previously highlighted.
11677
11678         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
11679         emit two "drag_leave" signals for Motif drops.
11680
11681         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
11682         back the correct status messages when dropping from
11683         Motif onto a proxy window that is rejecting the
11684         drop.
11685
11686 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
11687
11688         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
11689         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
11690         to compare two argument values. added gtk_arg_to_valueloc() to set a
11691         variable from an arg through its location (pointer).
11692
11693         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
11694         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
11695         as gfloat*, uchars are collected as guchar*, ints are collected as
11696         gint*, etc...
11697
11698 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
11699
11700         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
11701         Include <string.h> instead of <strings.h>.
11702
11703         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
11704         (actually, a lot more duplicate includes occur if
11705          you trace through the sequence of #include's)
11706         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
11707         
11708 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
11709
11710         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11711         gtk-a-higuti-990322-[0-3]
11712
11713         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11714         that was causing -DX_LOCALE not to work.
11715
11716         * gtk/gtkrc.c (gtk_rc_init):
11717         X_LOCALE will never have LC_MESSAGES defined
11718
11719 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
11720
11721         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
11722         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
11723
11724         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
11725         left/right as well (gtk-michael-980726-0.patch.gz).
11726
11727         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
11728         for pointer values, use gchar instead of char. fixed uline allocation
11729         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
11730         chunks instead of G_ALLOC_ONLY.
11731         (gtk_label_size_request): always alter requisition as passed and leave
11732         widget->requisition alone.
11733         (gtk_label_set_text): allow NULL strings.
11734         (gtk_label_new): likewise.
11735
11736 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
11737
11738         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
11739
11740 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
11741
11742         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
11743         *and* mapped (i.e. drawable).
11744         (gtk_bin_expose): only send exposes to drawable children.
11745
11746         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
11747         (gtk_box_expose): only send exposes to drawable children.
11748
11749         * gtk/gtkhscale.c (gtk_hscale_draw): 
11750         * gtk/gtkvscale.c (gtk_vscale_draw):
11751         hm, this is an ugly one. we first compute the size of our trough area
11752         here (window relative) and then check intersection with the draw_area
11753         which is parent relative because we're a NO_WINDOW widget, so we need
11754         to offset the trough area by allocation.x and allocation.y before the
11755         check. (this must not be done for the background area though, since
11756         that's already computed parent relative).
11757
11758 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
11759
11760         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
11761         unrealize title buttons.
11762
11763 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
11764
11765         * gtk/gtkclist.c (gtk_clist_column_title_passive)
11766         (gtk_clist_column_title_active): 
11767         only connect/disconnect to GtkWidgetClass::event to block mouse events.
11768
11769         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
11770         zero initialize event, removed superfluous gdk_window_get_pointer call
11771
11772         * gtk/gtklist.c (gtk_list_vertical_timeout)
11773         (gtk_list_horizontal_timeout): removed superfluous
11774         gdk_window_get_pointer call
11775
11776 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
11777
11778         * plugging problems reported by "Bruce Mitchener, Jr."
11779         <bruce@puremagic.com> due to a purify session.
11780
11781         * gtk/gtkstyle.c:
11782         (gtk_style_ref): 
11783         (gtk_style_unref): assert ref_count to be > 0.
11784
11785         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
11786         the requisition.
11787         (gtk_clist_set_shift): likewise.
11788
11789         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
11790         adjustments.
11791
11792         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
11793         event before sending it and set send_event to TRUE (which needs to
11794         be done for *all* synthesized events).
11795         (gtk_list_vertical_timeout): likewise.
11796
11797         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
11798         leaks.
11799
11800         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
11801         to TRUE when synthesizing events.
11802
11803 [ *** end of merges from 1.2 *** ]      
11804         
11805 1999-11-21  Tor Lillqvist  <tml@iki.fi>
11806
11807         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
11808         (or copied from gdkconfig.h.win32 on Win32, sigh).
11809
11810         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
11811
11812         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
11813
11814         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
11815
11816         * gdk/gdkconfig.h.win32: New file.
11817
11818         * gdk/win32/makefile.cygwin: Build just a static archive here.
11819
11820         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
11821         for the DLL from the static archive built above.
11822
11823         * gdk/gdk.def: Moved here from the win32 subdirectory.
11824
11825         * gdk/win32/*: Adapt for the changed private struct organisation.
11826
11827         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
11828
11829 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
11830
11831         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
11832         for wheel mice (buttons 4 and 5).
11833
11834 1999-11-18  Tor Lillqvist  <tml@iki.fi>
11835
11836         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
11837         drawables use just the pixel field in the foreground and
11838         background GdkColor of the GdkGC.
11839
11840         gdk_gc_set_{fore,back}ground() are called in the GIMP with
11841         GdkColors containing uninitialized (red,green,blue) fields, and
11842         just the pixel field filled in, and furthermore in the
11843         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11844         It thus turns out that we really don't need to have the full
11845         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
11846         it later to have just the pixel values.
11847
11848 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11849
11850         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
11851
11852 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
11853
11854         * docs/gtkfaq.sgml: threads example from Erik Mouw.
11855         New question on GtkLabel background colors.
11856
11857         * docs/gtk_tut.sgml:
11858           - Correct the example code callback
11859             function definitions.
11860           - Update the gtkdial example code, from Frans van Schaik.
11861           - Update setselection.c to current API.
11862
11863         * examples/Makefile examples/*/*.c: Update to code
11864         listed in tutorial.
11865
11866 1999-11-10  Tor Lillqvist  <tml@iki.fi>
11867
11868         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11869         subrange table (from the "Developing International Software for
11870         WIndows 95 and Windows NT" book) was missing the Hangul syllable
11871         block... Get the loaded font's charset correctly.
11872
11873         (Note that this, and the other *-win32.c files, still really are
11874         the old ones, the win32 subdirectory is not ready for compilation
11875         yet after the reorg.)
11876
11877 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
11878
11879         * gtk/gtkclist.c: Fix off-by-one bug in parameter
11880         check.
11881
11882 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
11883
11884         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11885         on results of XQueryDeviceState().
11886
11887 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
11888
11889         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11890         we need to accesss only ->children. We need an accessor
11891         for the children.
11892
11893         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11894         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11895         to get rid of gdkx.h include.
11896         
11897         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11898         and random references to 'None'.
11899
11900         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11901         Get rid of unused #include <gdk/gdkx.h>
11902
11903         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11904         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11905         gdkconfig.h.
11906
11907 1999-11-08  Tor Lillqvist  <tml@iki.fi>
11908
11909         * gdk/win32/gdkdraw.c
11910         * gdk/win32/gdkfont.c
11911         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11912         following yesterday's changes. (Unrelated to Owen's reorg.)
11913
11914 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
11915
11916         * gdk/x11/gdkinput-gxi.c: Add missing include,
11917           fix GdkWindowPrivate => GdkDrawablePrivate.
11918
11919         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11920
11921         * gdk/x11/Makefile.am (xinput_sources): Add missing
11922         backslash to fix building with --with-xinput=none
11923
11924 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
11925
11926         Move all X specific code into the x11/ directory.
11927         Aside from shuffling things around, did the following:
11928
11929        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11930          gdk_arg_context_* - a simple argument parsing system
11931          in the style of popt.
11932
11933        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11934          gdk/x11/gdkprivate-x11.h:
11935          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
11936          add ->klass and ->klass_data fields. The klass_data
11937          field points to an auxilliary structure that is
11938          windowing system dependent.
11939
11940        * gdk/gdkfont.c: Make most of the measurement functions
11941          simply wrappers around gdk_text_extents().
11942
11943        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
11944          _gdk_font_strlen() function that hides the weird
11945          behavior in gtk+-1.[02] where a string is interpreted
11946          differently for 8-bit and 16-bit fonts.
11947
11948        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11949          to store common code for synthesizing double/triple
11950          press events.
11951         
11952        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11953          Make all the function that modify an existing GC
11954          simply wrappers around gdk_gc_set_values().
11955          
11956        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11957          for throwing out later.
11958
11959        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11960          GdkImagePrivate and GdkColormapPrivate to have a
11961          windowing system dependent part (GdkFontPrivateX etc.)
11962          that "derives" from the system-independent part.
11963
11964        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11965          Got rid of the included-source-files for XInput in
11966          favor of automake conditionals. (Which didn't exist
11967          when XInput support was originally added.)
11968
11969        * gdk/gdkrgb.c: Remove the visual id from the debugging
11970          statements since that is X11 specific; print out
11971          type/depth info instead.
11972          
11973
11974 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
11975
11976         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11977         loading duplicates of hashed fonts.
11978
11979         * gdk/gdk.c (gdk_keysym_convert_case): rename
11980         gdk_XConvertCase to gdk_keysym_convert_case, allow
11981         results to be NULL in the GTK+ style.
11982
11983         * gdk/gdkcompat.h: Started compatibility header
11984         for renames.
11985
11986 1999-11-07  Tor Lillqvist  <tml@iki.fi>
11987
11988         * gdk/win32/gdkprivate.h: New font private structures, related to
11989         fontsets.
11990
11991         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11992         gdk_font_list_free(). On X11, will just be wrappers to
11993         XListFonts() and XFreeFontNames(). On Win32, the code previously
11994         in gtkfontsel.c is now here.
11995
11996         New function gdk_font_xlfd_create(). On X11 will get the FONT
11997         property of the font (for GDK_FONT_FONTs), or call
11998         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11999         builds a XLFD style name from the font information in the LOGFONT
12000         struct(s).
12001
12002         New function gdk_font_xlfd_free(), which correspondingly frees the
12003         string returned by gdk_font_xlfd_create().
12004
12005         Implement fontsets on Win32. Add a function that iterates over a
12006         wide char string and calls a callback function for each substring
12007         of wide chars from the same Unicode subrange (and thus probably
12008         available in the same real font).
12009
12010         Improve the XLFD emulation a bit.
12011
12012         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
12013
12014         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12015         Beta3, WM_IME_CHAR messages don't seem to contain the composed
12016         multi-byte char as with the Active IMM on Win9x. Oh well, handle
12017         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12018         ImmGetCompositionStringW() to get the composed Unicode chars.
12019
12020         * gdk/win32/gdkgc.c
12021         * gdk/win32/gdkdraw.c: Changes needed because of the font private
12022         struct changes.
12023
12024         * gdk/win32/gdk.def: Add the new functions.
12025
12026 1999-11-04  Tor Lillqvist  <tml@iki.fi>
12027
12028         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12029         get the Platform SDK to get <dimm.h>.
12030
12031         * gdk/win32/gdkevents.c: More event handling fixes and
12032         simplification. Never generate motion events with is_hint true. We
12033         used to do that on bogus grounds earlier. Windows sends
12034         WM_MOUSEMOVE messages on button events even if the mouse hasn't
12035         moved, ignore these.
12036
12037         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
12038
12039         * gdk/win32/gdkglobals.c
12040         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
12041         the TrackMouseEvent function, and use it.
12042
12043         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
12044         char before calling WideCharToMultiByte in order to get a string
12045         for the window title.
12046
12047         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
12048
12049         * gdk/win32/gdk.def: Remove obsolete functions.
12050
12051         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
12052         /nodefaultlib and /defaultlib switches.
12053
12054         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
12055
12056 1999-10-31  Tor Lillqvist  <tml@iki.fi>
12057
12058         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
12059         EuroSign).
12060
12061         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
12062         same type as GdkWChar, especially on Win32.
12063
12064         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
12065
12066         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
12067         before passing to Windows GDI for drawing etc. Convert to the
12068         system default codepage before passing to Windows as window
12069         titles.
12070
12071         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
12072         support changing input locale on the fly.
12073
12074         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
12075         on-the-fly changes. Convert incoming characters from the current
12076         codepage to Unicode (and then to a UTF-8 multi-byte string) based
12077         on the current input language. Use keysym<->Unicode mapping tables
12078         and functions borrowed from xterm sources.
12079
12080         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
12081         editions of Win9x, use the ActiveX-based Active IMM (Input Method
12082         Manager) if available. IMEs and the Active IMM are available under
12083         the disguise of Chinese, Korean and Japanese support for IE and
12084         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
12085         support is present in all editions (as long as you install it).
12086
12087         Call DispatchMessage from gdk_events_queue() (and thus
12088         gdk_WindowProc()), instead of duplicating the code in
12089         gdk_WindowProc().
12090
12091         Reworked the grab handling and propagation code, factored out
12092         duplicated code snippets into separate functions. Other cleanups,
12093         too.
12094
12095         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
12096         the <dimm.h> header describing the Active IMM.
12097
12098         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
12099         just do the same as for "single" fonts.
12100
12101         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
12102         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
12103         the new keysyms from gdkkeysyms.h.
12104
12105         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
12106         fontset, so that gtkentry uses wide characters.
12107
12108         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
12109         GTk+'s system directory "gtk+", not "gtk".
12110
12111 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
12112
12113         * docs/gtkfaq.sgml: FAQ update
12114
12115 1999-10-21  Tor Lillqvist  <tml@iki.fi>
12116
12117         * gdk/win32/gdkprivate.h: Add more font private data.
12118
12119         * gdk/win32/gdkfont.c
12120         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
12121         fonts and strings. Now works much better. You still have to
12122         have a correct font selected, though. No fontset emulation yet.
12123
12124 1999-10-19  Tor Lillqvist  <tml@iki.fi>
12125
12126         * gtk/maketypes.awk: Use G_OS_WIN32.
12127
12128         * gtk/gtk.def: Add some missing entry points. Also some non-public
12129         ones, but PyGTK porter claims to need them.
12130
12131         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
12132         built-in type generation.
12133
12134 1999-10-14  Tor Lillqvist  <tml@iki.fi>
12135
12136         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
12137         GDK_FONT_FONT fonts (which is all we have for now, we don't
12138         emulate fontsets). The X11 version uses plain XDrawString in that
12139         case, too. The string passed to gdk_draw_text_wc seems to be in
12140         fact (at least, when used by gtkentry and gtktext) either in a
12141         single-byte charset, or a DBCS. Not Unicode.
12142
12143         This fixes the problem in gtkfontsel, where even if you had
12144         selected a font with a non-Latin1 charset (windows-greek, for
12145         instance), the preview still used Latin-1 glyphs.
12146
12147         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
12148         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
12149         (gdk_font_load): Recognize the demibold etc weights, even if we
12150         don't have the corresponding constants in the headers.
12151         (gdk_font_hash_insert): Use same hash mechanism as in the X11
12152         version. Should save font resources a bit, when we don't have
12153         multiple HFONTs for the same font.
12154
12155         * gdk/win32/gdkprivate.h: Add the names field as in the X11
12156         version.
12157
12158 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
12159
12160         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
12161         X values
12162
12163 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
12164
12165         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
12166         layout support (as mentioned on
12167         http://www.jcinteractive.com/gnome-ui/software/widgets/)
12168
12169 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
12170
12171         * gtk/fnmatch.c
12172         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
12173
12174 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
12175
12176         * configure.in (ALL_LINGUAS): Added Galician (gl)
12177
12178 1999-10-05  Tor Lillqvist  <tml@iki.fi>
12179
12180         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
12181
12182         * gdk/win32/gdkcompat.c: New file, actually provide an
12183         implementation for the deprecated functions. (Just temporarily.)
12184
12185         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
12186
12187         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
12188
12189         * gdk/win32/gdk.def gtk/gtk.def: Updates.
12190
12191 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
12192
12193         * configure.in: Added "uk" to ALL_LINGUAS.
12194         
12195 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
12196
12197         * configure.in: correct checking for BeOS check
12198
12199         * gdk/gdktypes.h
12200         * gtk/fnmatch.c
12201         * gtk/gtkfilesel.c
12202         * gtk/gtkitemfactory.c
12203         * gtk/gtkmain.[ch]
12204         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
12205
12206 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12207
12208         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
12209         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
12210         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
12211         by Bulgarian). 
12212
12213 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
12214
12215         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
12216         Fix a reference to window_private->destroyed.   
12217
12218         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
12219         (ugly) setting of an internal GdkWindow member to use
12220         a _slightly_ cleaner macro.
12221
12222         * gdk/gdkprivate.h: Split GdkWindowPrivate into
12223         GdkDrawablePrivate and GdkWindowPrivate.
12224         Add extra macros for accessing GDK_DRAWABLE_ components.
12225
12226         * *.[ch]: Massive adjustments for the above, use the
12227         new macros in a lot of places.
12228
12229 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
12230
12231         * gdk/gdktypes.h: Make GdkDrawable the base type,
12232         not GdkWindow.
12233
12234 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
12235
12236         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
12237
12238 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
12239
12240         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
12241
12242 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
12243
12244         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
12245         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
12246
12247         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
12248
12249         * docs/gtk-config.1: Now autogenerated.
12250         * docs/Changes-1.4.txt: started
12251         
12252 1999-10-03  Tor Lillqvist  <tml@iki.fi>
12253
12254         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
12255         to #ifdef also here.
12256
12257         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
12258         Owen did to the X11 backend.
12259
12260         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
12261         ScrollWindowEx when blitting inside a window, it can't be correct
12262         in the general case.
12263
12264         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
12265         WM_GETMINMAXINFO is easier.
12266
12267         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
12268         depth equal to the bitspixel value, not the visual's depth.
12269
12270         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
12271         to 24 even if the bitspixel value is 32.
12272
12273         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
12274         need to check for depth==32 when bpp==32, depth will always be 24.
12275
12276 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
12277
12278         * docs/Changes-1.4.txt: Started
12279         
12280         * gtk/Makefile.am (gdk_headers): Include all the new headers.
12281
12282         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
12283         
12284         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
12285         into C file.
12286         
12287         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
12288         header to gdkinputprivate.h.
12289
12290         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
12291         unused since before 1.2.
12292
12293 1999-09-30  Tor Lillqvist  <tml@iki.fi>
12294
12295         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
12296         expand possible hex escapes in the font family (put there by
12297         logfont_to_xlfd if the font name isn't a legal XLFD font family,
12298         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
12299         On Win32, add hex escapes here, too.
12300
12301 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
12302
12303         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
12304         to #ifdef GDK_WINDOWING_X11.
12305
12306 [ Merges from gtk-1-2 ]
12307
12308 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
12309
12310         * configure.in: fixed "GNU Make" check to pass with new make version
12311         3.77.95.
12312
12313 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
12314
12315         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
12316         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
12317         AM_PATH_GTK() macros don't get confused by the -pre1.
12318
12319 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12320
12321         * configure.in (REBUILD): Change check for perl5
12322           to check explicitely for v >= 5.002. (5.001
12323           does not work with our scripts.)
12324
12325 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
12326
12327         * configure.in: evaluate $PERL for the perl version check. added
12328         --disable-rebuilds to give the user an option to completely disable
12329         any source autogeneration rules.
12330
12331 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
12332
12333         * configure.in: evaluate $ac_make when checking for GNU Make.
12334
12335 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12336
12337         * docs/Makefile.am: added generation.txt.
12338
12339         * Makefile.am: require automake 1.4, build README from README.in and
12340         INSTALL from INSTALL.in in dist-hook.
12341         
12342         * README.in:
12343         * INSTALL.in: new files to autogenerate README and INSTALL from.
12344
12345         * configure.in: figure whether we have GNU Make
12346
12347         * docs/generation.txt: minor additions/corrections.
12348
12349 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12350
12351         * docs/gtkfaq.sgml: FAQ Update
12352
12353 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12354         
12355         * configure.in: Fix autoconf warnings about cross compilation by
12356         trying to provide sane defaults for AC_TRY_RUN.
12357
12358 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
12359
12360         * ltconfig
12361         * ltmain.sh: upgrade to libtool 1.3.3
12362
12363 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
12364
12365         * INSTALL: Indicate that the --with-glib= configure
12366         time flag is unsupported.
12367
12368 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
12369
12370         * docs/generation.txt: Added a file that gives
12371         documenation about the autogeneration process for
12372         various autogenerated files.
12373         
12374 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12375
12376         * configure.in (LIBS): Look for libgmodule in the
12377         right location.
12378
12379 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
12380
12381         * docs/gtk_tut.sgml: Removed references to
12382         code examples in my directory on gtk.org as
12383         they should all be in the tutorial now.
12384
12385         * docs/gtk_tut.sgml: Added sources for dial-test
12386         and scribble-xinput programs that were previously
12387         missing.
12388
12389 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
12390
12391         * TODO: Added entry about menu keyboard navigation, removed
12392         some finished items.
12393
12394 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
12395
12396         * acinclude.m4: Standardize on func_dgettext
12397         not func_gettext, so that the checks for dgettext
12398         actually are paid attention to.
12399
12400 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
12401
12402         * configure.in (LIBS): Add $INTLLIBS into $LIBS
12403         directly, rather than repeating the checks for
12404         gettext.
12405
12406         * INSTALL: Added information about gettext and
12407         NLS support.
12408
12409         * acinclude.m4 (LIBM): Check for dgettext, not
12410         just gettext. This should hopefully fix things wrt
12411         systems with old versions of GNU gettext installed.
12412
12413 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12414
12415         * configure.in (LIBS): Look for libgmodule in the
12416         right location.
12417
12418 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12419
12420         * autogen.sh: add --enable-maintainer-mode
12421
12422         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
12423
12424 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
12425
12426         * docs/gtk-config.1.in:
12427           docs/Makefile.am:
12428           configure.in: gtk-config is now generated.
12429
12430         * docs/gtk-config.1: Removed, now generated.
12431
12432 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
12433
12434         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
12435         handle CreateNotify itself, still put out a debuging message for
12436         --gdk-debug=events. made the ReparentNotify debugging message more
12437         verbose.
12438         wrap xcoords translation for ConfigureEvents into an error trap,
12439         a destroy event may already be pending, and in that case, the
12440         actuall coordinate values are not at all critical.
12441
12442 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
12443
12444         * gdk/gdkcc.c: Stop leaking the color_hash all over
12445         the place. Simplify and improve the logic.
12446
12447 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12448
12449         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
12450         for prototypes and function implementations consistent (reported
12451         by Tomas Ogren).
12452
12453 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12454
12455         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
12456         send_event set in debugging output.
12457         (gdk_compress_exposures): default initialize the event so we don't
12458         operate on bogus values (namely send_event).
12459
12460 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12461
12462         * gdk/gdkwindow.c: When we receive an unexpected
12463         destroy notify on one of our windows, don't just
12464         warn about it, also mark our windows as destroyed.
12465
12466 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
12467
12468         * gdk/gdkfont.c (gdk_font_hash_insert): Add
12469           name => font and name => fontset hashes. The 
12470           name => fontset hash is a _big_ win since we
12471           weren't previously caching fontsets at all and loading
12472           fontsets is expensive. The name => font hash
12473           is less of a win, but it does save us from doing
12474           repeated XQueryFont calls on the same font.
12475
12476         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
12477           list so we can remove font/fontset from hash.
12478
12479 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12480
12481         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
12482           and slightly confusing test. [ XInternAtom (,,TRUE)
12483           will never return None ].
12484
12485 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
12486
12487         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
12488           gdk/gdkwindow.c (gdk_window_set_hints):
12489
12490         Don't omit setting the properties if flags == 0 -
12491         there may be an existing set of properties there
12492         already. (Very old bug. Would it be better to
12493         delete the property instead?)
12494
12495         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
12496           spelling error in comment.
12497
12498 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
12499
12500         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
12501           to avoid stomping over gdk_error_warnings.
12502
12503         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
12504           as (bits_per_pixel + 7) / 8. This gives the same
12505           result as before for multiples of 8, but actually
12506           a "reasonable" value for 1bit or 4bit displays.
12507
12508 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12509
12510         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
12511         GNU Make.
12512
12513 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12514
12515         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
12516         discarding configure events.
12517
12518 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12519
12520         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
12521         refcount is greater than zero.
12522
12523         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
12524
12525         * gdk/gdkfont.c (gdk_font_unref): Likewise.
12526
12527         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
12528
12529         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
12530
12531 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12532
12533         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
12534         that format 32 => sizeof(item) == 4. It really is
12535         sizeof(long).
12536
12537 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
12538
12539         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
12540         core dump at all on X IO errors, only core dump
12541         if --enable-debug for X errors.
12542
12543 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
12544
12545         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
12546         unknown window:" message. disabled ConfigureNotify discarding code,
12547         because it led to events being processed out of order.
12548
12549 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
12550
12551         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
12552
12553         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
12554         we export this function, supress error warnings and don't reset the
12555         error code in the first half of this function.
12556
12557         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
12558         code (instead of just -1) so gdk_error_trap_pop() reveals something
12559         actually informative about the error that happened.
12560
12561         * gdk/*.c:
12562         don't rely on gdk_error_code being -1 if an error occoured, but just
12563         gdk_error_code != 0.
12564
12565 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
12566
12567         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
12568         pointer *before* invoking the filter function, so we at least don't
12569         crash if a filter is removed that is currently executed. window filters
12570         *really* need to be made truely reentrant at some point.
12571
12572 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
12573
12574         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
12575         PropertyNotify debug messages.
12576
12577 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
12578         
12579         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
12580         
12581         * gdk/gdkim.c: Fix cut-and-paste errors for 
12582         x/y and PreeditAttributes/StatusAttributes.
12583
12584 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12585
12586         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
12587         G_MAXINT to 2^16 to alleviate overflow problems in
12588         various window managers.
12589
12590 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12591
12592         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12593         for fontsets.
12594
12595 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
12596
12597         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
12598         Initialize size_hints.x and size_hints.y because kwm
12599         brokenly pays attention to them.
12600         (Bug #1181 -  Lars Heete <hel@admin.de>)
12601
12602 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
12603
12604         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
12605         return value of gdk_list_visuals(). 
12606         (Bug #1193 - Morten Welinder <terra@diku.dk>)
12607
12608 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
12609
12610         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12611         XSetIMValues to (void *) when comparing to NULL, to workaround
12612         the problem of some compilers barfing since older X headers don't
12613         have the prototype for it.
12614
12615 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
12616
12617         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12618         for pseudocolor where colormap->colors was double
12619         allocated.
12620
12621         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12622         color value in the hash table with the pixel filled
12623         in so when we do later hash table lookups, the color
12624         value is correct.
12625         
12626 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12627
12628         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12629         making the call
12630
12631 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
12632
12633         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12634         pointed out by Morten Welinder <terra@diku.dk>.
12635
12636 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12637
12638         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12639           default filter from the list
12640
12641 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12642
12643         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12644           default filter from the list
12645
12646 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
12647
12648         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
12649
12650         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
12651         g_strdup_printf instead of calcing the length separately
12652
12653 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
12654
12655         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
12656         that we don't do in many other places. (Fixing duplicate 
12657         #include of config.h)
12658
12659         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
12660         Otherwise, #ifndef XINPUT_NONE check in the latter
12661         doesn't work. (Bug #546)
12662
12663 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
12664
12665         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
12666         "None" case insensitive.
12667
12668 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12669
12670         * gdk/gdkselection.c: 
12671         Add error traps so if the other end of the connection
12672         dies, we survive.
12673
12674 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12675
12676         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
12677         dest_xid field into two fields - one for the window
12678         to send in messages, one to indicate the last looked
12679         up window for caching purposes. This is needed, so
12680         that Leave messages get the correct window.
12681
12682 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
12683
12684         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
12685         Fix warning created by people mucking around
12686         with the gsource API.
12687
12688         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
12689         Change mapping between GIOCondition and GdkInputCondition
12690         to match the way the Linux kernel does it. This should
12691         fix problems where closed pipes were no longer signalling
12692         GDK_INPUT_READ on systems with a native poll().
12693
12694 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
12695
12696         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
12697         explicitly for the string "None" - it is in the XPM
12698         spec and some servers treat unknown colors in odd ways
12699         (like asking the user!)
12700
12701 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12702
12703         * gdk/gdkevents.c: made "->" into a "." of previous change so
12704         it compiles
12705
12706 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
12707
12708         * gdk/gdkevents.c (gdk_compress_exposures): Set the
12709         window field of the event structure before calling
12710         user filters.
12711
12712 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12713
12714         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
12715         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
12716
12717 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
12718
12719         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
12720         intermediate text property - prevents major memory
12721         leak when gdk_use_mb.
12722         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
12723
12724 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12725
12726         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12727         gtk-a-higuti-990322-[0-3]
12728
12729         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
12730         sizeof(wchar_t) != sizeof (GdkWChar)
12731
12732         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12733         that was causing -DX_LOCALE not to work.
12734
12735         * gtk/gtkrc.c (gtk_rc_init):
12736         X_LOCALE will never have LC_MESSAGES defined
12737
12738         * gdk/gdk.c (gdk_init_check):
12739         Remove --xim-preedit and --xim-status from argv properly.
12740
12741         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
12742         that the client window is present on the X server
12743         before we pass it to the input method.
12744
12745 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12746
12747         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
12748         if --display is specified on the command line, than
12749         the drag window will not be created on that display.
12750         
12751 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
12752
12753         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
12754         lookups with only_if_exists == TRUE were inserting
12755         bogus values into the atom cache.
12756
12757 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12758
12759         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
12760         then reset it to NULL.
12761
12762         * gdk/gdkcolor.c:
12763         (gdk_colors_free): 
12764         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
12765         key for g_hash_table_remove() in both functions, this prevents us
12766         from accessing possibly uninitialized portions of a GdkColor structure
12767         where we are only interested in its pixel value.
12768
12769 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12770
12771         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12772         font hash table, if we have a GdkFontPrivate entry for this font
12773         already, simply increment its reference count, provided by Olaf Dietsche
12774         <olaf.dietsche+list.gtk@netcologne.de>.
12775
12776 1999-09-21  Tor Lillqvist  <tml@iki.fi>
12777
12778         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
12779         just to be sure.
12780
12781         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
12782         unused variables, leftovers from the X11 version.
12783
12784         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
12785
12786         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
12787         downcase fields on X11.
12788
12789 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12790         
12791         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
12792         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
12793
12794 1999-09-17  Tor Lillqvist  <tml@iki.fi>
12795
12796         * gdk/win32/gdk.def: Add gdk_threads_mutex.
12797
12798         * gtk/makefile.msc: Correct path to libintl.
12799
12800         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
12801         use of gint vs. int, and gint vs. gboolean in headers and
12802         definitions. Use GtkType for the *_get_type functions. Note that
12803         these changes preserve binary compatibility.
12804
12805         * gdk/gdk.c
12806         * gdk/win32/gdk.c
12807         * gdk/gdk.h: Fix inconsistencies: gint vs int.
12808
12809         * gtk/gtkmain.c
12810         * gtk/gtkclist.c
12811         * gtk/gtkmenufactory.c
12812         * gtk/gtknotebook.c
12813         * gtk/gtkwidget.c: Fix inconsistencies, also gint
12814         vs. gboolean.
12815
12816         * gtk/gtkcolorsel.[ch]
12817         * gtk/gtkcombo.[ch]
12818         * gtk/gtkdrawingarea.[ch]
12819         * gtk/gtkgamma.[ch]
12820         * gtk/gtkhandlebox.[ch]
12821         * gtk/gtkhpaned.[ch]
12822         * gtk/gtkhruler.[ch]
12823         * gtk/gtkplug.[ch]
12824         * gtk/gtkpreview.[ch]
12825         * gtk/gtkruler.[ch]
12826         * gtk/gtksocket.[ch]
12827         * gtk/gtkstatusbar.[ch]
12828         * gtk/gtktoolbar.[ch]
12829         * gtk/gtkvbbox.[ch]
12830         * gtk/gtkvpaned.[ch]
12831         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
12832         functions.
12833
12834         * gtk/gtkgamma.h: Fix bug, missing () in call of
12835         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
12836
12837 1999-09-14  Tor Lillqvist  <tml@iki.fi>
12838
12839         * gdk/gdkcolor.c (gdk_colormap_new)
12840         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
12841         colormap->colors was allocated twice.
12842
12843         * gdk/win32/gdk.c: Remove some unused stuff.
12844
12845         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
12846         colormap.
12847
12848         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
12849         * gtk/gtklabel.h (gtk_label_get_type)
12850         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
12851         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
12852         in a couple of places, not guint.
12853
12854 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12855
12856         * configure.in,po/et.po: added Estonian language file
12857
12858 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12859
12860         * configure.in,po/da.po: added Danish file
12861
12862 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12863
12864         * docs/gtkfaq.sgml: Minor FAQ Update
12865
12866 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12867
12868         * docs/gtkfaq.sgml: FAQ update
12869
12870 1999-08-27  Tor Lillqvist  <tml@iki.fi>
12871
12872         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12873         way to get window contents continually refreshed while resizing. I
12874         didn't like the effects myself, so it's not on by default.
12875
12876         * gdk/win32/gdkprivate.h: New flag variable
12877         gdk_event_func_from_window_proc, FALSE by default.
12878
12879         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12880         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12881         are passed --gdk-event-func-from-window-proc.
12882
12883         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12884         and we have am event_func, call it instead of enqueing the event.
12885
12886 1999-08-23  Tor Lillqvist  <tml@iki.fi>
12887
12888         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12889         Kelley: Set expose_count in GdkEventExposes correctly.
12890
12891         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12892         MULTIPLE_WINDOW_CLASSES).
12893
12894         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12895         for bug in NT, apparently NT *does* draw the end pixel, too, in
12896         LineTo with a one-pixel pen, so we don't have to do it ourselves.
12897
12898 1999-08-21  Tor Lillqvist  <tml@iki.fi>
12899
12900         Improvements by Hans Breuer: 
12901
12902         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12903
12904         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12905         CS_?REDRAW flags as they cause lots of (late) redraws when "show
12906         window contents while dragging" is turned on. Allocate at least
12907         one unique class for every GdkWindowType. If support for single
12908         window-specific icons is ever needed (eg. Dialog specific), every
12909         such window should get its own class.
12910
12911 1999-08-19  Tor Lillqvist  <tml@iki.fi>
12912
12913         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12914         error that caused crashes.
12915
12916 1999-08-17  Tor Lillqvist  <tml@iki.fi>
12917
12918         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12919         window, use ScrollWindowEx, and call UpdateWindow. This prevents
12920         bugs when for instance part of the window was outside the
12921         display. Thanks to Philippe Colantoni for finding and fixing this.
12922
12923 1999-08-16  Tor Lillqvist  <tml@iki.fi>
12924
12925         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12926         endpoint calculations which were totally wrong. (A little RTFMing
12927         helps a lot ;-)
12928
12929         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12930         from a separate directory, not from gettext, because of licensing
12931         issues (we want to use the LGPL version).
12932
12933         * README.win32: Mention the intl from glibc vs from gettext issue.
12934
12935 1999-08-13  Tor Lillqvist  <tml@iki.fi>
12936
12937         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12938         in the key event handling: Now AltGr chars work again. Also,
12939         now Alt-digits are passed up as well as Control-digits.
12940         Pass keypad plus and minus as normal plus and minus.
12941
12942 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12943
12944         * docs/gtkfaq.sgml: FAQ Update
12945
12946 1999-07-25  Tor Lillqvist  <tml@iki.fi>
12947
12948         * README.win32
12949         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12950         the Wintab SDK.
12951
12952         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12953         OK, but getting closer. Guard against bogus tilt data from Wacom
12954         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12955         enable easier building without Wintab.
12956
12957         * gdk/win32/gdkinput.h
12958         * gdk/win32/gdkevents.c 
12959         * gdk/win32/gdkwindow.c: Minor changes related related to above.
12960         
12961         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12962         code. As we have just one visual on Win32, no sense to have it in a
12963         table, and no need for the hash table.
12964
12965         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12966         better on white background.
12967
12968 1999-07-21  Tor Lillqvist  <tml@iki.fi>
12969
12970         * README.win32: Update gcc build instructions. Mention gettext is
12971         GPL.
12972
12973         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12974         supported cursor size with GetSystemMetrics.
12975
12976         * gdk/win32/gdkfont.c
12977         * gtk/gtkfontsel.c: Guard against some font weight and charset
12978         symbols being undefined (in mingw32 headers).
12979
12980         * gdk/win32/makefile.cygwin
12981         * gtk/makefile.cygwin
12982         * gtk/gtkthemes.c: No longer need to have differently named
12983         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12984
12985 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12986
12987         * docs/gtkfaq.sgml: Long awaited FAQ update.
12988
12989 1999-07-15  Tor Lillqvist  <tml@iki.fi>
12990
12991         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12992         it. Obscure bit manipulation needed.
12993
12994         * gdk/win32/gdkevents.c: Logging.
12995         
12996         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12997         style (file name include compiler name) for theme engines.
12998
12999 1999-07-13  Tor Lillqvist  <tml@iki.fi>
13000
13001         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
13002
13003         * gdk/win32/gdkevents.c: Fix long-standing bug in key
13004         events. The key.string wasn't zero-terminated, still we strdup'ed
13005         it in gdk_event_copy(). Synthesize crossing events for button
13006         events before possible propagation.
13007
13008         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
13009
13010         * gdk/win32/makefile.cygwin
13011         * gtk/makefile.cygwin: Use new DLL naming style for the
13012         GCC-compiled ones.
13013
13014         * gdk/win32/makefile.msc
13015         * gtk/makefile.msc: Cosmetics mostly.
13016
13017         * gtk/gtk.def: Add missing entry points.
13018
13019         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13020
13021 1999-07-09  Tor Lillqvist  <tml@iki.fi>
13022
13023         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13024         or height is zero. Don't print a warning if Pie or Arc fails, they
13025         always fail (?) for very narrow ellipses.
13026
13027         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13028         the part or the destination window corresponding to source area
13029         outside of the source drawable's boundary.
13030
13031         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
13032         anything if less than two points.
13033
13034         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
13035         return NULL. Gtk cut-and-paste inside a single program works
13036         better this way. (It always gets the clipboard contents from
13037         Windows, not from its own copy, which is cleared anyway. I can't
13038         say I fully understand what happens... Emulating the X selection
13039         and property stuff is a bit of a mess.)
13040
13041         * gdk/win32/gdkevents.c
13042         * gdk/win32/gdkproperty.c: A bit more verbose logging.
13043
13044         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
13045         that never got deleted). Revamp gdk_region_shrink.
13046
13047         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
13048         after use.
13049
13050         * gtk/gtk.def: Add some missing entry points.
13051
13052         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
13053         component.
13054
13055 1999-07-04  Tor Lillqvist  <tml@iki.fi>
13056
13057         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
13058         Control-digits specially.
13059
13060 1999-07-03  Tor Lillqvist  <tml@iki.fi>
13061
13062         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
13063
13064 1999-06-28  Tor Lillqvist  <tml@iki.fi>
13065
13066         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
13067         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
13068         finding this.)
13069
13070 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
13071
13072         * gtk+.spec.in: Corrected some typos in files section.
13073         
13074 1999-06-15  Tor Lillqvist  <tml@iki.fi>
13075
13076         * README.win32: Mention using GNU gettext.
13077         * config.h.win32: Enable NLS stuff.
13078         * gtk/makefile.msc: Use GNU gettext.
13079         * gdk/win32/gdkdnd.c: Minor header reorg.
13080         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
13081         cosmetics.
13082         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
13083         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
13084
13085 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
13086
13087         * acinclude.m4
13088         * config.guess
13089         * config.status
13090         * ltconfig
13091         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
13092
13093 1999-05-30  Tor Lillqvist  <tml@iki.fi>
13094
13095         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
13096         SafeAdjustWindowRectEx. Don't override all calls to
13097         AdjustWindowRectEx by it, but use it only in two places: When
13098         creating a new top-level window and when moving a top-level
13099         window.
13100
13101         Use screen coordinate rectangle, not client rectangle, in
13102         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
13103         when we try to place a window so that the decoration (mainly,
13104         title bar) isn't visible.
13105
13106         These changes fix the bug that showed up for instance as the
13107         GIMP's saved top-level windows moving right and down (by an amount
13108         equal to the window decoration) for each session. This bug showed
13109         up also in testgtk's "Saved Position".
13110
13111         gdk_window_resize also redone a bit.
13112
13113 1999-05-25  Tor Lillqvist  <tml@iki.fi>
13114
13115         * gtk/testgtkrc: Add (commented out) Windows-style theme
13116         include line.
13117
13118         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
13119
13120 1999-05-18  Tor Lillqvist  <tml@iki.fi>
13121
13122         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
13123         gdkx.h to a gdk subdirectory, so that applications can include
13124         these with <gdk/*.h> without trouble.
13125
13126         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
13127         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
13128         have their bitmap destroyed.
13129
13130         * gdk/win32/gdk.def: Add gdk_root_parent.
13131
13132 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
13133
13134         * configure.in
13135           gtk-config.in
13136           ltconfig
13137           ltmain.sh     
13138           gtk/Makefile.am: changes to compile nicely (with xlib) 
13139           on BeOS
13140
13141 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
13142
13143         * acinclude.m4
13144         * config.guess
13145         * config.sub
13146         * ltconfig
13147         * ltmain.sh: upgrade to libtool 1.3
13148
13149 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
13150
13151         * gtk/gtkclist.c:
13152         * gtk/gtkctree.c: merges from gtk-1-2
13153
13154 1999-04-25  Tor Lillqvist  <tml@iki.fi>
13155
13156         Support added for building using a GNU toolchain on Win32,
13157         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
13158
13159         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
13160         * config.h.win32: Changes for gcc.
13161         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
13162         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
13163         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
13164         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
13165         Protect shl stuff unavaiilable with mingw32 headers.
13166         * gdk/win32/gdkevents.c: Fix typo.
13167         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
13168         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
13169         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
13170         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
13171         the mingw32 headers.
13172         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
13173         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
13174         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
13175         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
13176         Test for NATIVE_WIN32, not _MSC_VER.
13177         * gtk/gtkmain.c: No use warning about developer version on Win32,
13178         there aren't any non-developer versions anyhow.
13179         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
13180         * gtk/makefile.msc: Use pthread from another directory. Minor other
13181         changes. 
13182
13183 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13184
13185         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13186           default filter from the list
13187
13188 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
13189
13190         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
13191          when gtk_widget_grab_default() is called for a widget that
13192          is not within a GtkWindow.
13193
13194 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
13195
13196         * docs/gtk_tut.sgml, examples/clist.c: use a
13197           scrolled window in the clist example. Minor
13198           tutorial fixes.
13199
13200 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
13201
13202         * docs/gtk_tut.sgml: Style check from David King
13203           <dking@youvegotmail.net>
13204
13205 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
13206
13207         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
13208         compile with unknown value of GDK_WINDOWING
13209
13210 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
13211
13212         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
13213         after the rule is fired.
13214         (install-exec-local): Install gdkconfig.h only if the contents are
13215         different from the currently installed gdkconfig.h.
13216
13217 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
13218
13219         * gdk/Makefile.am (configexecincludedir): Rename from 
13220         configincludedir so that gdkconfig.h will be installed 
13221         as part of `make install-exec'. 
13222
13223 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
13224
13225         * acinclude.m4
13226         * config.guess
13227         * config.sub
13228         * ltconfig
13229         * ltmain.sh: upgrade to libtool 1.2f
13230
13231         * autogen.sh: libtool is not required to autogen gtk+
13232
13233         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
13234         needed)
13235
13236 1999-03-18  Tor Lillqvist  <tml@iki.fi>
13237
13238         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
13239         declaring gdk variables exported/imported from the DLL. New image
13240         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
13241         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
13242         GDK_DRAG_PROTO_OLE2.
13243
13244         * gdk/gdk.h: Merge in Win32 version: Two new functions,
13245         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
13246         declared only for the Win32 version, but could be in the X11
13247         version as well. (Needed for a Xlib-less gdk_imlib.)
13248         gdk_color_hash should have only one parameter. Declare
13249         gdk_threads_mutex with GDKVAR.
13250         
13251         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
13252         just one parameter.
13253
13254         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
13255         per pixel, not bits.
13256
13257         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
13258         Fetch bpp (which means bits-per-pixel here) from another place on
13259         Win32. Accept also depth==32 (which we might get on Win32) with
13260         bpp==32.
13261
13262         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
13263         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
13264         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
13265         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
13266         in the backend-dependent directory, not in the common gdk
13267         directory.
13268
13269         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
13270         headers.
13271
13272 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
13273
13274         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
13275         want to use the Gtk+ devel version (which is true, and yes - even i am
13276         currently working with the 1.2.x branch). so everyone reading this, you
13277         probably want to issue
13278         cvs checkout -r glib-1-2 glib
13279         and
13280         cvs checkout -r gtk-1-2 gtk+
13281         as your next two comands.
13282
13283 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
13284
13285         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
13286         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
13287
13288         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
13289         file. strongly deprecated the GTK_HAVE_* macros, we provide
13290         GTK_CHECK_VERSION() for people that need to check for certain
13291         Gtk+ versions.
13292
13293         * gtk/gtkcompat.h: removed this from CVS.
13294         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
13295         idea right from the start, it just didn't seem like that back then.
13296
13297 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
13298
13299         * merges from gtk-1-2:
13300
13301 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
13302
13303         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
13304         item factory class has been created.
13305         (gtk_item_factory_parse_rc): likewise.
13306
13307         * gtk/gtkmenu.c:
13308         keep proper references for old_active_menu_item.
13309         (gtk_menu_reparent): unset the usize of the new parent,
13310         so the menu can sanely be size requested and we don't get nasty screen
13311         artefacts upon next reparentation.
13312         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
13313         enter notify. only synthesize enter notifies if the pointer really is
13314         inside the event window.
13315         (gtk_menu_popdown): use gtk_menu_shell_deselect().
13316         (gtk_menu_popup): move the background setting stuff into
13317         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
13318
13319         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
13320         gtk_menu_shell_select_item() to select the new item.
13321         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
13322         do the right thing for deselection as well.
13323
13324 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
13325
13326         * gtk/gtkwidget.[hc]:
13327         (gtk_widget_accelerators_locked): return whether a widget's accelerators
13328         are locked.
13329
13330         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
13331         existing accelerators if the widget's accelerators are locked.
13332
13333 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
13334
13335         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
13336
13337         * gtk/gtkmenu.c: truely forward key press and key release events to
13338         the menu widget from the toplevel or tearoff window. we can't simply
13339         connect to that, we need to stop further processing of the events as
13340         well.
13341
13342 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
13343
13344         * gtk/gtkmenu.c:
13345         (gtk_menu_key_press): pass event->keyval, event->state to
13346         gtk_accelerator_valid, instead of event->keyval twice.
13347         refuse to install single letter accelerators for menus that use
13348         single letter shortcuts.
13349
13350         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
13351         gtk_menu_ensure_uline_accel_group().
13352
13353         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
13354         which will always return an uline accel group, made
13355         gtk_menu_get_uline_accel_group() return NULL if the group isn't
13356         yet created.
13357
13358 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
13359
13360         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
13361
13362         * gtk/gtkclist.c (gtk_clist_column_title_passive):
13363         Leave button sensitive, trap  button_press, button_release,
13364         motion_notify, enter_notify and leave_notify events instead.
13365         (gtk_clist_column_title_active): disconnect event handler.
13366         (gtk_clist_drag_data_get): fixed memory leak. Reported by
13367         Guillaume Laurent <glaurent@worldnet.fr>
13368
13369 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
13370
13371         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
13372         width/height mixups.
13373
13374         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
13375         if needed.
13376
13377 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
13378
13379         * gtk/testgtk.c (create_item_factory): unref the item factory after
13380         window's destruction.
13381
13382         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
13383         count on the menu shell around the menu item's activation, since the
13384         signal emission may cause menu shell destruction.
13385
13386         * gtk/gtkitemfactory.c:
13387         the previous code leaked one accel group per menu. we use
13388         gtk_menu_get_uline_accel_group() now to fix that, and with that
13389         also create the underline accelerator group of the menus only if
13390         required (i.e. an underline accelerator has been specified).
13391         (gtk_item_factory_construct):
13392         (gtk_item_factory_create_item): removed code that would create an
13393         extra accel group for the menu (and leak references).
13394         (gtk_item_factory_create_item): adapted the underline accelerator
13395         installation code to properly feature gtk_menu_get_uline_accel_group().
13396
13397         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
13398         menu->accel_group, this may return NULL if the accelerator group
13399         hasn't been set yet.
13400         added gtk_menu_get_uline_accel_group() to retrive the underline
13401         accelerator group of the menu, this will be created on demand
13402         and proper care is taken about its reference count.
13403
13404         * gtk/gtkitemfactory.h:
13405         * gtk/gtkitemfactory.c:
13406         dumped the approach of keeping a widgets by action list on the
13407         factory since the factory<->widget destroy negotiation didn't work
13408         and would be hard to get going at all. instead we keep a list of
13409         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
13410         persistant throughout a program's life time).
13411         also, i removed the static const gchar *key_* variables, and made
13412         them inline strings (they weren't actually used anyways).
13413         (gtk_item_factory_add_item): update ifactory->items.
13414         (gtk_item_factory_destroy): destroy ifactory->items (and remove
13415         the item factory pointer from the remaining ifactory widgets).
13416         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
13417         list to find the widget.
13418         (gtk_item_factory_get_item): new function that works around
13419         gtk_item_factory_get_widget() limitations, this function will only
13420         return menu items, even for <Branch> entries.
13421
13422 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13423
13424         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13425         font hash table, if we have a GdkFontPrivate entry for this font
13426         already, simply increment its reference count, provided by Olaf Dietsche
13427         <olaf.dietsche+list.gtk@netcologne.de>.
13428
13429         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13430         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13431
13432 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
13433
13434         * gtk/gtkcontainer.c:
13435         (gtk_container_add_with_args):
13436         (gtk_container_addv):
13437         (gtk_container_add): before adding a child to a conatiner, make sure
13438         it is (default) constructed, this is neccessary because under certain
13439         circumstances the child will get relized and mapped immediatedly, in
13440         which case it has to be constructed already.
13441
13442 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
13443
13444         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
13445         values > 1 as TRUE also.
13446
13447 1999-03-16  Tor Lillqvist  <tml@iki.fi>
13448
13449         * README.win32: New file.
13450                 
13451         * configure.in: Check for lstat.
13452
13453         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
13454         completeness.
13455
13456         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
13457
13458         * gtk/gtk.def: Removed CRs.
13459
13460         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
13461         ..\gdk\win32).
13462
13463         * gdk/win32/makefile.msc: Correct upwards relative paths.
13464         
13465 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
13466
13467         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
13468           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
13469           it was connecting a void function to expose_event and the int
13470           returning function to the draw signal
13471
13472 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
13473
13474         * configure.in:
13475         Use correct path to libgmodule.la when ref'ing uninstalled copy
13476         of glib.  (Already in stable branch, Bug #417)
13477
13478 1999-03-15  Tor Lillqvist  <tml@iki.fi>
13479
13480         Win32 merge and general portability stuff:
13481                 
13482         * acconfig.h,configure.in: Check for <sys/time.h>.
13483
13484         * gdk/win32: New directory (actually, been there for a while).
13485         
13486         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
13487         NATIVE_WIN32, and use these. Always case fold on Win32. No
13488         backslashed escapes on native Win32.
13489
13490         * gtk/{gtk.def,makefile.msc}: New files.
13491
13492         * gtk/Makefile.am: Add above new files.
13493         
13494         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
13495         instead of <strings.h>.
13496
13497         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
13498         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
13499         <unistd.h> appropriately.
13500
13501         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
13502         Use ABS() (from <glib.h>) instead of abs().
13503         
13504         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
13505         of gtk (and thus glib) headers, so that WIN32 will be
13506         defined. With MS C, include <direct.h> for mkdir prototype.
13507
13508         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
13509         some casts, needed by MS C.
13510
13511         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
13512         implemented).
13513
13514         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
13515         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
13516         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
13517
13518         * gtk/gtkmain.h: Mark variables for export/import on Win32.
13519                 
13520         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
13521         the event is not a hint, or its window is not the slider. Needed
13522         on Win32, at least.
13523
13524         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
13525         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
13526         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
13527         a subdirectory of the Windows directory as gtk system
13528         configuration directory.
13529
13530         * gtk/gtkselection.c: No chunks on Win32.
13531
13532         * gtk/gtksocket.c: Not implemented on Win32.
13533
13534         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
13535
13536         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
13537
13538         * gtk/maketypes.awk: Declare variables with a macro that expands to
13539         necessary export/import magic in the case of Win32.
13540                 
13541         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
13542
13543 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
13544
13545         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
13546         since those were meant only for gdki18n.h.  
13547         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
13548         for widechar tests.
13549         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
13550
13551 1999-03-13  Tor Lillqvist  <tml@iki.fi>
13552
13553         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
13554         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
13555
13556         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
13557         installed) to CFLAGS.
13558
13559         * gdk/Makefile.am: Add rules for gdkconfig.h.
13560
13561         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
13562         APIs.
13563
13564         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
13565         gdkx.h anyway when compiling for X11.
13566         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
13567         general): Merge in Win32 version.
13568         
13569         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
13570         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
13571         expansion (if we don't have HAVE_PWD_H), allow for drive
13572         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
13573         included code from Craig Setera's port to Win32 (the one that uses
13574         X11, and the cygwin dll), even if it probably will be abandoned.
13575
13576         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
13577         the user entered one herself.  This way one can complete *.h and
13578         don't get matches on any .help files, for instance.
13579         
13580 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13581
13582         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13583         font hash table, if we have a GdkFontPrivate entry for this font
13584         already, simply increment its reference count, provided by Olaf Dietsche
13585         <olaf.dietsche+list.gtk@netcologne.de>.
13586
13587         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13588         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13589
13590 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13591
13592         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
13593         the number of calls to gdk_draw_point() (and thus to X) by
13594         clipping the points by hand.
13595
13596         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
13597         the clip parameter.
13598         (gtk_handle_box_paint): Only paint the handle if the expose area
13599         intersects it.
13600
13601 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13602
13603         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
13604
13605 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
13606
13607         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
13608         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
13609
13610 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13611
13612         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13613          textmode (O_TEXT) for OS/2 version.
13614
13615 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
13616
13617         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
13618         GtkSpinButton, "input" and "output", to make the output more flexible.
13619         The user has to provide a mapping between adjustment->value and the
13620         output string (and vice versa, if the spin button is editable). 
13621         See testgtk for examples.
13622
13623 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
13624
13625         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13626         new one.
13627         
13628         * configure.in: set gtk+ version to 1.3.0.