]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
uglify so that size request gets tested.
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-03-07  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/testgtk.c (create_spins): uglify so that size request gets
4         tested.
5
6         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
7         request on values for upper/lower, completes #6152
8
9 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
10
11         * Makefile.am: Remove gtk-config-2.0 again.
12         (Grrrr, pkg-config. And stops make loops.)
13
14 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
15
16         * gtk/gtksignal.[hc]: removed old emission hook API.
17         
18         * docs/Changes-2.0.txt: fixed sections.
19         
20         * gtk/gtktextbuffer.c: signal arg fixups.
21
22 2001-03-07  Havoc Pennington  <hp@redhat.com>
23
24         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
25
26         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
27         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
28         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
29         validation and the redraw which is higher priority than the
30         validation.
31
32 2001-03-07  Havoc Pennington  <hp@redhat.com>
33
34         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
35         (gtk_entry_set_property): remove trailer
36
37         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
38         (gtk_entry_get_width_chars): new functions, to set size request to 
39         a given number of characters
40
41         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
42
43         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
44         (gtk_dialog_get_has_separator): new function
45         (run_delete_handler): fix to not emit "response" signal
46         because we already did in the delete event handler installed
47         at dialog creation time.
48         
49         * gtk/gtkdialog.h: add a has_separator property,
50         add GTK_DIALOG_NO_SEPARATOR flag
51
52 2001-03-07  Havoc Pennington  <hp@redhat.com>
53
54         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
55         off decorations for a window.
56
57         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
58         changes
59
60         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
61         to get location of PangoLayout inside the label, closes #51198
62
63         * gtk/testgtk.c (create_bbox): fix up button box usage
64
65         * gtk/testcalendar.c (create_calendar): fix up button box usage
66
67         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
68
69         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
70
71         * gtk/gtkhbbox.h: deprecations
72
73         * gtk/gtkvbbox.h: deprecations
74
75         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
76         emulate deprecated gtk_button_box_get_spacing
77
78         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
79         the "set global default" functions
80         (struct _GtkButtonBox): remove "spacing" field, use the one from 
81         GtkBox base class
82
83         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
84
85         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
86         render the icon, return the missing image icon.
87
88         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
89         image icon if the load fails.   
90
91         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
92         when no image is found; should be the Netscape "missing image"
93         icon eventually but for now is a random image
94
95         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
96         role for the session manager
97
98         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
99
100         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
101         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
102
103         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
104
105 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
106
107         * gtk/*.c: marshaller fixes.
108         
109         * gtk/gtkmarshal.list: extreme cleanup.
110
111         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
112         param spec for now.
113
114         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
115         where appliable.
116
117         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
118         special cased autogenerated boxed types from gtktypebuiltins_ids.c
119         which are not reference counted:
120         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
121         PangoFontDescription, GtkTreeIter and GtkTreePath.
122
123 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
124
125         * gtk/gtktreeselection.h: 
126         * gtk/gtktreemodel.c:
127         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
128         file should be included directly, and gobject/gmarshal.h
129         as well as gtk/gtkmarshal.h even can't be included directly.
130
131         * Makefile.am: grr, install gtk-config-2.0.
132
133         * gtk/testgtk.c:
134         * gtk/simple.c:
135         * gtk/gtkmenu.c:
136         * gtk/gtkitemfactory.c: use g_object_connect() instead of
137         passing "*signal*::*" args to gtk_widget_set().
138         
139         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
140         
141         * gtk/*.c: removed trailer arg from property setters and getters.
142         macro fixups.
143
144 2001-03-07  Alexander Larsson  <alexl@redhat.com>
145
146         * gtk/gtklabel.c (set_markup): Removed warning
147
148 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
149
150         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
151         field to allow you to hide cell renderers.
152
153         * gtk/gtkcellrenderer.c: Add support for invisible cells.
154
155         * gtk/gtktreeview.c: Add support for invisible cells.
156
157 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
158
159         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
160         Add "clicked" signal back to columns.
161
162         * ChangeLog: remove conflict markers.
163
164 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
165
166         * gtk/gtkbutton.c: Add animation of activation by, on 
167         activate, pressing the button, and adding a timeout that 
168         releases the button after 250ms or on key release and
169         emits ::clicked. (#51501)
170
171         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
172         action area, we connect to ::clicked instead of ::activate
173         so the dialog stays up through the animation.
174
175 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
176
177         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
178         check the ignore_enter flag for the menu shell that
179         the item is actually a child of, not for attached
180         submenus. (#51536)
181
182 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
183
184         * gtk/gtkmain.c (gtk_propagate_event): Only do special
185         special key-press grab handling for widgets within
186         GtkWindows. Otherwise, fall through to normal case.
187
188         This prevents key events being sent twice to GtkInvisible
189         widgets, which can cause all sorts of mischief.
190
191 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
192
193         * gtk/gtkmain.c (gtk_propagate_event): When a grab
194         widget is in effect, give the grab widget a first
195         crack at KEY_PRESS/RELEASE events. (#424)
196
197 2001-03-06  James Henstridge  <james@daa.com.au>
198
199         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
200         offset for the window_state_event to point at window_state_event
201         rather than no_expose_event.
202
203 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
204
205         * gtk/gtkimmodule.h: fix busted /* comment */
206
207 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
208
209         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
210         object properties.
211
212 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
213
214         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
215         add object properties.
216
217         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
218         to add object properties.
219
220         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
221         object properties.
222
223         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
224         add object properties.
225
226         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
227         object properties.
228
229 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
230
231         * gtk/gtktreemodel.c: renamed "child_toggled" to
232         "has_child_toggled".
233
234         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
235         handle new signal name.
236
237         * gtk/gtktreestore.c: Updated to handle new signal name.
238         * gtk/gtklisttore.c: Updated to handle new signal name.
239         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
240
241 2001-03-05  Alexander Larsson  <alexl@redhat.com>
242
243         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
244         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
245
246 2001-03-05  Michael Natterer  <mitch@gimp.org>
247
248         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
249         pixbuf-engine coincidentially also failed to make one of it's
250         parent_class pointers static, causing overwriting of GtkLabel's
251         parent_class pointer in pixbuf_style_class_init().
252         (Will commit the fix to the pixbuf-engine too).
253
254 2001-03-05  Alexander Larsson  <alexl@redhat.com>
255
256         * gdk/gdkwindow.h:
257         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
258         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
259         gdk_window_set_icon_list for net wmspec functionality.
260
261         * gdk/x11/gdkwindow-x11.c:
262         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
263         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
264         gdk_window_set_icon_list.
265         Added gdk_wmspec_change_state helper function and used it in the code.
266         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
267
268         * gtk/gtkdialog.c (gtk_dialog_init):
269         Set GDK_WINDOW_TYPE_HINT_DIALOG.
270
271         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
272         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
273
274         * gtk/gtkwindow.c:
275         new function gtk_window_set_type_hint.
276         On realize, set type hint and modal hint.
277
278         * gtk/gtkwindow.h:
279         Added type_hint field and gtk_window_set_type_hint.
280
281 2001-03-05  Alexander Larsson  <alexl@redhat.com>
282
283         * gtk/gtklabel.[ch]:
284         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
285         New function gtk_label_get_accel_keyval () to get the underline accelerator
286         of the label. Setting the label pattern overrides other attributes.
287
288 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
289
290         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
291         Added missing initializers to gtk_rc_style_init().
292
293 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
294
295         * gtk/gtktextview.c: fixed bug #51097 about setting 
296         gtk_text_view_set_border_window_size() if the widget is 
297         already realized.
298
299 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
300
301         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
302
303         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
304         comment. Won't do to have duplicated doc comments between
305         the platform subdirs.
306
307 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
308
309         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
310           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
311
312         Detectable auto-repeat - make a repeating key generate
313         press/press/press/release instead of press/release pairs.
314
315         If we have Xkb and XkbSetDectableAutoRepeat supports
316         that, we do it that way. Otherwise, when we get
317         a release event, we check ahead with XPending to see
318         if the next key is a KeyPress with the same keycode
319         and timestamp. (Not 100% reliable, but pretty close.)
320           
321 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
322         
323         * gtk/gtkmain.c (gtk_propagate_event): Only do special
324         special key-press grab handling for widgets within
325         GtkWindows. Otherwise, fall through to normal case.
326  
327         This prevents key events being sent twice to GtkInvisible
328         widgets, which can cause all sorts of mischief.
329  
330 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
331  
332         * gtk/gtkmain.c (gtk_propagate_event): When a grab
333         widget is in effect, give the grab widget a first
334         crack at KEY_PRESS/RELEASE events. (#424)
335  
336 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
337
338         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
339         to extend the selection. (Roughly based on patch
340         from Jay Cox, #50939)
341
342         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
343         to properly handle previous GDK_BUTTON_PRESS. 
344         (Patch from Jay Cox, #50938)
345
346         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
347         '\0' back along with the deleted text. (#51148)
348
349 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
350
351         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
352         the group when extracting it from the X keyboard event.
353
354         * modules/input/Makefile.am modules/input/imipa.c: 
355         Simple module for entering IPA. (Do we need a 
356         gtk-stupid-input-tricks CVS module?)
357
358 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
359
360         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
361         const.
362
363         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
364
365         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
366         is no focus widget for the dialog currently, grab the focus as well
367         as the default.
368
369         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
370         the action area's children to iterate through, not the
371         dialog's children.
372
373 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
374
375         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
376         Add plug-socket tests. (Won't work worth a darn until I commit
377         the rest of the plug-socket changes, but no reason these
378         can't go into CVS now.)
379
380 2001-03-02  Havoc Pennington  <hp@redhat.com>
381
382         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
383         _gdk_region_get_xrectangles()
384
385         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
386
387         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
388
389         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
390         function, contributed by Ron Steinke    
391
392         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
393         gdk_net_wm_supports
394
395         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
396         New function, contributed by Ron Steinke
397
398         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
399         used to line up the text in the entry when using the entry for
400         editable sheet cell hacks
401
402         * gtk/testgtk.c (create_entry): test the activate_default setting
403         on GtkEntry
404
405         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
406         cause the entry to activate the default button for a dialog when 
407         activated
408         (gtk_entry_get_activates_default): new function
409
410 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
411
412         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
413         Hwang to move call to sync_selection() up a few lines
414         to before the row list is modified, to fix crash when
415         removing rows in the undo_selection list.
416
417         (Test case provided by Daniel Elstner:
418
419         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
420
421 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
422
423         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
424         of tree->root_tree in parent_set rather than _map(), 
425         fixing #50892 in a bit better manner.
426
427 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
428
429         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
430
431 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
432
433         * gtk/gtkstyle.c : Remove duplicate fwd decl for
434         gtk_default_draw_shadow.
435
436 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
437
438         * gdk/gdkimage.c (gdk_image_new): Remove excess 
439         warning, make warnings more verbose, treat a error
440         in shmat as permanent, and don't try again.
441         (#51163, Ed Randall.)
442
443 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
444
445         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
446         delay for the first click before starting to scroll.
447         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
448
449         * gtk/gtktext.c: GtkText should have I-beam cursor. 
450         (based on gtk-enf-990513-1.patch, Eric Fisher.)
451
452 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
453
454         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
455         cleanup to remove some references to unused
456         ->xoffset, ->yoffset.
457
458 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
459
460         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
461         mask. (#51039, fix from Martin Maierhofer)
462
463 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
464
465         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
466         for unshifted + and shifted = for non-us keyboards.
467         Make <Control>+ and <Control>- work as well as 
468         <Control>KP_Plus, <Control>KP_Minus for recursive
469         open/close.  (#2682, René Seindal)
470
471 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
472
473         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
474         the active menu item before deactivating the menu,
475         so gtk_menu_popdown doesn't change the history. (#50964)
476         
477 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
478
479         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
480         draw lines with text_gc rather than black_gc.
481         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
482
483 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
484
485         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
486         Move handling of buttons fully in gtktreeviewcolumn.  This code is
487         less interrelated then it was, but it still requires the
488         GtkTreeView to map it.
489
490         * test/testtreecolumn.c: Now I can add a column to one view,
491         remove it, add it to the another view, remove it, then re-add it
492         to the first.  Nifty.
493
494 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
495
496         * docs/tutorial/gtk-tut.sgml: Minor corrections
497
498 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
499
500         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
501         GtkRowReference.
502
503 2001-02-28  Havoc Pennington  <hp@redhat.com>
504
505         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
506         draw_default
507         (gtk_widget_draw_focus): remove this function; we could instead
508         make it just gtk_widget_draw(), but in most cases I think the
509         result would be broken user code, so think it's better to have
510         that code not compile and get fixed
511         (gtk_widget_draw_default): ditto
512
513         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
514         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
515         
516         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
517         widgets lose/get the default, instead of calling draw_default
518         
519         * docs/Changes-2.0.txt: note about all this
520
521         Then fixed every widget in GTK, I won't list all the filenames.
522
523 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
524
525         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
526         _gtk_tree_row_reference_deleted.
527         (inserted_callback): Proxy out to
528         _gtk_tree_row_reference_inserted.
529         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
530         get around signal emission ordering problem.
531
532         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
533         fix to work with SINGLE 
534         (_gtk_tree_selection_internal_select_node): Major sanitization on
535         selections.  SINGLE now seems to work.
536
537         * tests/Makefile.am: add testtreecolumn.c:
538
539         * tests/testtreecolumn.c: New test.  Mostly points out selection
540         bugs currently, but will test columns later.
541
542         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
543         selection bug.  I hate touching this code -- it's scary.
544
545 2001-02-26  Havoc Pennington  <hp@redhat.com>
546
547         * gtk/testgtk.c: test the window state stuff
548
549         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
550         window come to the user's attention as if it were just created
551         (gtk_window_iconify): new function
552         (gtk_window_deiconify): new function
553         (gtk_window_stick): new function
554         (gtk_window_unstick): new function
555         (gtk_window_maximize): new function
556         (gtk_window_unmaximize): new function
557
558         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
559
560         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
561
562         * gdk/x11/gdkevents-x11.c: create window state events when
563         appropriate
564         (gdk_wmspec_supported): new function
565
566         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
567         iconification before showing the window
568         (gdk_window_deiconify): new function
569         (gdk_window_stick): new function
570         (gdk_window_unstick): new function
571         (gdk_window_maximize): new function
572         (gdk_window_unmaximize): new function
573
574         * gdk/gdkwindow.c: store the window state in the window; 
575         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
576         window->mapped.
577         (gdk_window_get_state): return the current window state
578
579         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
580         (gdk_event_get_state): handle GDK_WINDOW_STATE
581         (gdk_synthesize_window_state): function to create the window state
582         events
583
584         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
585         event, for changes to "window state" such as maximized, sticky, 
586         etc.
587         
588         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
589         focuses a window
590
591         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
592         finds out if we support a given WM spec hint
593
594 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
595
596         * docs/faq/gtk-faq.sgml: New question re memory leaks.
597
598 2001-02-25  Hans Breuer  <hans@breuer.org>
599
600         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
601         cause we want to loose those prototypes only in the latter case
602
603         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
604         GdkPixmapImplWin32 because it itsn't derived from it. Use the
605         impl member variable instead
606
607         * gtk/gtk.def : updated
608
609         * gtk/gtklist.c : 
610         * gtk/gtkmenus.c : include <string.h> for memset ()
611
612         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
613         for everthing built here, but for gtk-x.x.dll only. This solves
614         problem of indifferent gtk type definitions
615
616 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@webwynk.net>
617
618         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
619
620 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
621
622         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
623         column that is exposed.
624
625         (_gtk_tree_view_update_size): Changed name from set_size, and
626         changed function to do more work, and not force people calling it
627         to figure out the size.  Simplifies a lot of code elsewhere.
628
629 2001-02-23  Alexander Larsson  <alexl@redhat.com>
630
631         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
632         return solid masks for xpms that have no transparent color.
633         This makes the ..._create_from_xpm... API backwards
634         compatible.
635
636 2001-02-23  Tor Lillqvist  <tml@iki.fi>
637
638         * README.win32: Update. Mention the gtk-1-3-win32-production
639         branch.
640
641         * gdk/win32/bdfcursor.c: New file. A program that generates
642         xcursors.h. Thanks to Stefan Ondrejicka.
643
644         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
645         compact format.
646
647         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
648
649         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
650         function, uses xcursors.h.
651         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
652         cursor from inline data instead of using LoadCursor() to generate
653         it from a resource.
654
655         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
656         event, must check the Windows message for mouse button state, as
657         the GDK event state might not have been built if it is
658         undelivered. Remove one goto.
659
660         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
661         SetCursor() if the current cursor as returned by GetCursor() is
662         the window's previous cursor. The ChildWindowFromPoint() test
663         apparently didn't work correctly.
664
665         * gdk/win32/rc/*.cur: Remove.
666
667         * gdk/win32/rc/gdk.rc.in: Remove cursors.
668
669         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
670
671         * gtk/makefile.{mingw,msc}.in: Updates.
672
673 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
674
675         * gtk/gtktreemodel.h: add functions for signal emission.
676
677         * gtk/gtktreestore.c: move to use above functions instead of
678         g_signal_emit.
679
680         * gtk/gtkliststore.c: ditto
681
682 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
683
684         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
685         GObject instead of GtkObject.
686
687         * gtk/gtkliststore.c: ditto.
688
689         * gtk/gtktreemodelsort.c: ditto.
690
691         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
692         GtkTreeModelIface, instead of in each model.
693
694 2001-02-21  Havoc Pennington  <hp@redhat.com>
695
696         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
697         unbreak this function
698
699         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
700         properties
701
702         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
703         properties
704
705         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
706         properties
707
708         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
709         mean unset the max length
710
711 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
712
713         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
714         Changed name to be set_cell_data_func to make it clear what
715         the functino does.  Close bug #51069.
716
717 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
718
719         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
720         have memory actually freed.  Keeps box running longer.
721
722 2001-02-21  Alexander Larsson  <alexl@redhat.com>
723         
724         * gtk/gtkseparatormenuitem.[ch]:
725         Added new menu separator item. The drawing and size handling
726         is still done in GtkMenuItem, but the API is a bit more sane.
727         
728         * gtk/Makefile.am:
729         Add gtkseparatormenuitem.[ch].
730
731         * gtk/gtk.h:
732         Add gtkseparatormenuitem.h.
733         
734         * gtk/gtkentry.c:
735         * gtk/gtkmenufactory.c:
736         * gtk/gtktextview.c:
737         Use the new API for menu separators.
738         
739         * demos/gtk-demo/menus.c (create_menu):
740         Add some GtkSeparatorMenuItem demo code.
741
742 2001-02-20  Havoc Pennington  <hp@redhat.com>
743
744         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
745         Lee Mallabone
746
747         * gtk/gtkarrow.c: Convert to new property API, patch from 
748         Lee Mallabone
749
750 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
751
752         * tests/testtreeview.c (toggled_callback): fix to reflect change
753         in GtkTreeModelStore.
754
755 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
756
757         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
758         function to create an icon set from a pixbuf.
759
760 2001-02-20  Alexander Larsson  <alexl@redhat.com>
761
762         * gtk/gtkcellrenderertext.[ch]:
763         Add a "markup" property.
764
765         * gtk/treestoretest.c:
766         Use the markup property, remove some leftover stuff from
767         GtkTreeModelMapping.
768
769 2001-02-20  Alexander Larsson  <alexl@redhat.com>
770
771         * gtk/gtklabel.c (gtk_label_set_selectable):
772         Queue a redraw if the selectable setting was changed.
773
774 2001-02-20  Alexander Larsson  <alexl@redhat.com>
775
776         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
777         Actually copy the whole gc, not just the public parts.
778         
779         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
780         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
781         labels.
782
783 2001-02-19  Havoc Pennington  <hp@pobox.com>
784
785         * gdk/gdkwindow.c: docs
786
787         * gdk/gdkrgb.c: docs
788
789         * gdk/gdkregion-generic.c: docs
790
791         * gdk/gdkgc.c (gdk_gc_set_values): docs
792
793         * gdk/gdkdraw.c: docs
794
795         * gdk/gdkdrawable.h: deprecate drawable get/set data
796
797 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
798
799         * demos/gtk-demo/dialog.c: Add simple new demo.
800
801 2001-02-19  Havoc Pennington  <hp@redhat.com>
802
803         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
804         insert_child_anchor signal, bug #50245
805
806         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
807         from create_child_anchor, so the anchor is passed in
808
809         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
810         (_gtk_widget_segment_new): have the child anchor object passed in, 
811         instead of creating it.
812
813         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
814         to gtk_text_buffer_get_modified
815
816 2001-02-19  Havoc Pennington  <hp@redhat.com>
817
818         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
819         changed GLib without fixing GTK
820
821         * gtk/gtkrange.h: Rename all the stupid implementation detail 
822         functions to have an underscore in front. Most of them should 
823         probably just go away, but for starters don't export them.
824         Bug #50482
825
826 2001-02-19  Havoc Pennington  <hp@redhat.com>
827
828         * gdk/gdkcolor.h: test was backward, so deprecated functions were
829         excluded by default
830
831         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
832         clean up the old code a bit
833
834         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
835         inconsistent state
836
837         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
838         draw inconsistent state
839
840         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
841         (create_menu): add inconsistent test
842
843         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
844         new function
845         (gtk_check_menu_item_get_inconsistent): new function
846         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
847         state (using etched in for now)
848
849         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
850         draw inconsistent state
851
852         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
853         function, used when the user has selected a range of stuff in
854         different states
855         (gtk_toggle_button_get_inconsistent): accessor for that
856         (gtk_toggle_button_paint): draw inconsistent state (etched in?
857         don't know what else to do)
858
859 2001-02-19  Hans Breuer <hans@breuer.org>
860
861         * gtk/gtk.def : updated exported symbols
862
863         * gtk/makefile.msc.in : updated
864
865         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
866         a colormap, when invoked from testgtk::entry. I'm not sure where
867         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
868         avoids immediate crashing ...
869
870         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
871         any objections ?
872
873         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
874         0 parameter. At least msvc doesn't like macros with var args. 
875         I simply removed the extra 0, was it a feature or a typo ?
876
877         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
878         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
879         because the value assignment to the internal struct wasn't working.
880         I'm not absolutely sure. The problem could have been resolved by
881         changing the "func" declartion in the struct, but was the pointer
882         to the function pointer intended ?
883
884         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
885
886         * gdk/gdk.def : updated exported symbols
887
888         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
889         only use SetDIBitsToDevice if there is a palette at the drawable
890         and the image is GDK_VISUAL_PSEUDO_COLOR
891
892         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
893
894         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
895
896         * gdk/*/makefile.msc : updated
897
898 2001-02-19  Havoc Pennington  <hp@redhat.com>
899
900         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
901         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
902
903         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
904         (gdk_key_repeat_restore): nuke
905
906         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
907         (gdk_init_check): no atexit func
908
909         * gdk/gdkrgb.h: mark some stuff deprecated
910
911         * gdk/gdkcolor.h: mark some stuff deprecated
912         
913         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
914
915         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
916
917 2001-02-16  Havoc Pennington  <hp@redhat.com>
918
919         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
920         scroll steps.
921
922         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
923         steps, and add Ctrl-arrow shortcuts for paging visually as with
924         HScale, since Page Up and Page Down move logically.
925
926         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
927         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
928         
929         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
930         steps
931         (gtk_range_scroll): handle the visual steps
932
933         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
934         scroll steps
935
936         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
937         steps, not the logical ones.
938
939         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
940         (scroll_vertical): handle up/down steps
941
942 2001-02-19 Alexander Larsson  <alexl@redhat.com>
943
944         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
945         Copy data and free data with free().
946
947         * gdk-pixbuf/gdk-pixbuf.c:
948         * gdk-pixbuf/io-jpeg.c:
949         * gdk-pixbuf/io-png.c:
950         Use g_try_malloc/g_free instead malloc/free.
951         
952         * gdk-pixbuf/test-gdk-pixbuf.c:
953         Must... initialize... gobject...
954         
955         * gdk-pixbuf/pixops/timescale.c:
956         * gtk/gtkcalendar.c:
957         Use g_malloc instead of malloc.
958         
959 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
960
961         * gtk/testgtkrc:
962         Comment out property assignments, these don't work yet.
963
964 2001-02-17  Havoc Pennington  <hp@pobox.com>
965
966         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
967         bit.
968
969 2001-02-17  Havoc Pennington  <hp@pobox.com>
970
971         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
972         shadowed variables that had broken size request in some cases,
973         leading to bogus tooltips (#50996)
974
975 2001-02-06  Jon K Hellan  <hellan@acm.org>
976
977         Implement fast browsing of tooltips, bug #50619
978         
979         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
980         and last_popdown
981         
982         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
983         use_sticky_delay and last_popdown.
984         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
985         time of popdown.
986         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
987         is NULL.
988         (gtk_tooltips_recently_shown): New static function.  Return true
989         if < sticky_delay has elapsed since last popdown.
990         (gtk_tooltips_event_handler): Display window after sticky_delay
991         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
992         since last popdown.
993         
994 2001-02-17  Havoc Pennington  <hp@pobox.com>
995
996         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
997         instead of (). #6394
998
999         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
1000         G_CONST_RETURN, make it return by reference, #50473
1001         
1002 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
1003
1004         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
1005         generated ENTER_NOTIFY event with 0, otherwise not explicitely
1006         setup fields contain garbage (e.g. subwindow, breaking
1007         gdk_drawable_ref() upon event copy).
1008         (gtk_menu_stop_navigating_submenu_cb): same here.
1009
1010         * gtk/gtklist.c (gtk_list_vertical_timeout): 
1011         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
1012         * gtk/gtkclist.c (vertical_timeout): 
1013         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
1014         default-zero-intialization for unions to memset(,0,), as unions are
1015         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
1016         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
1017
1018         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
1019         g_closure_sink() warning.
1020
1021         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
1022         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
1023         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
1024         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
1025         
1026 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
1027
1028         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
1029         gtk_*_store_get, and moved to GtkTreeModel.
1030
1031         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
1032
1033         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
1034
1035         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
1036
1037         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
1038         set the func.
1039
1040         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1041         freeze/thaw notify between setting all the properties for a cell.
1042
1043         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
1044
1045 2001-02-15  Havoc Pennington  <hp@redhat.com>
1046
1047         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
1048         the X coordinates so they're with respect to the line, rather than 
1049         with respect to the layout.
1050
1051         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
1052         Mallabone
1053
1054         * gtk/testgtk.c (create_range_controls): add vscale tests, 
1055         and inverted test
1056
1057         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
1058         #50806
1059
1060         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
1061
1062         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
1063         gtk_text_iter_is_end
1064
1065         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
1066         rename gtk_text_buffer_get_end_iter
1067
1068         * gtk/testgtk.c (create_labels): Add test for selectable
1069
1070         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
1071         the selection stuff. This code is kind of broken since it doesn't 
1072         use the theme engine.
1073
1074         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
1075         fix infinite loop and y offset problem
1076         (gdk_draw_layout_line_with_colors): fix foreground color handling
1077
1078         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
1079         that makes the label selectable.
1080         
1081         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
1082         layout when the style is set, since fonts etc. could have changed.      
1083
1084 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
1085
1086         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
1087
1088         * gtk/gtktreemodelsimple.[ch]: removed.
1089
1090 2001-02-16  Alexander Larsson  <alexl@redhat.com>
1091
1092         * gtk/gtktreemodelmapping.[ch]:
1093         New files. Implement GtkTreeModelMapping.
1094         
1095         * gtk/Makefile.am:
1096         Add gtktreemodelmapping.[ch].
1097         
1098         * gtk/gtk.h:
1099         Add gtktreemodelmapping.h
1100
1101         * gtk/treestoretest.c:
1102         Test the GtkTreeModelMapping
1103
1104 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
1105
1106         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
1107         have a demo, we might as well pass in real values.  Thanks to
1108         clahey for pointing this out.
1109
1110 2001-02-14  Havoc Pennington  <hp@pobox.com>
1111
1112         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
1113         "static" to a private function
1114         (gtk_image_menu_item_class_init): remove destroy handler,
1115         add "image" object property
1116
1117 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
1118
1119         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
1120         Add a shortcut if the window and the current clip_region doesn't
1121         overlap. This is needed when there are a lot of windows in a
1122         window. The layout test in testgtk is a good test.
1123
1124         * gdk/linux-fb/gdkwindow-fb.c:
1125         Whitespace fix.
1126
1127 2001-02-13  Sven Neumann  <sven@convergence.de>
1128
1129         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
1130
1131 2001-02-13  Alexander Larsson  <alexl@redhat.com>
1132
1133         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
1134         Don't reference last_cursor if it is null. Fixes crash when rotating
1135         the screen before having moved the mouse.
1136
1137         * gdk/linux-fb/gdkcc-fb.c: Zapp!
1138
1139         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
1140
1141         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
1142         when using 90 or 270 degrees rotation.
1143
1144 2001-02-12  Havoc Pennington  <hp@pobox.com>
1145
1146         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
1147         it always set the foreground, even if we were only using
1148         a stipple.
1149         (gdk_draw_layout_line_with_colors): new function, allow
1150         override colors
1151         (gdk_draw_layout_with_colors): new function, allow override
1152         colors
1153         (gdk_pango_layout_line_get_clip_region): function to get the clip
1154         region for a logical text range
1155         (gdk_pango_layout_get_clip_region): get the clip region for a
1156         logical text range
1157
1158         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
1159         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
1160         the right number of arguments.
1161
1162         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
1163         enhance the function to check that node data corresponds to a 
1164         view still belonging to the tree.
1165
1166         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
1167         GtkTreePath
1168         (gtk_tree_view_inserted): ditto
1169         (gtk_tree_view_child_toggled): ditto
1170
1171         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
1172         simplify this code.
1173
1174         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
1175         a PangoAttrList
1176
1177         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
1178
1179         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
1180
1181         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
1182         size in the size request 
1183         (gtk_menu_bar_size_allocate): consider toggle size here
1184
1185         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
1186         that displays a widget in the toggle slot
1187
1188         * gtk/testgtk.c: test GtkImageMenuItem
1189
1190         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
1191         
1192         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
1193         request and allocation
1194
1195         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
1196
1197         * gtk/gtkcheckmenuitem.c
1198         (gtk_check_menu_item_toggle_size_request): ditto
1199         
1200 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
1201
1202         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
1203         reference.
1204
1205         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
1206         and refuse to initialize GTK+ if they fail.
1207
1208 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
1209
1210         * configure.in: Add check for gtk-doc version.
1211
1212 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
1213
1214         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
1215         where the xpad/ypad was only being used on one side!
1216
1217 2001-02-11  Tor Lillqvist  <tml@iki.fi>
1218
1219         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
1220         function, copied from X11 version.
1221
1222         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
1223         DestroyCursor failures. The reason for the problem (despite the
1224         inconsistent messages from GetLastError()) was that
1225         DestroyCursor() cannot be called while a cursor is set in a
1226         window. Set the new cursor first and then destroy the old one.
1227         Thanks to jpe@archaeopteryx.com.
1228
1229         * gdk/win32/gdkcc-win32.c: Remove.
1230
1231         * gdk/win32/Makefile.am: Remove from here, too.
1232         
1233         * gdk/gdk.def
1234         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
1235
1236         * gtk/gtk.def
1237         * gtk/makefile.mingw.in: Updates.
1238
1239 2001-02-08  Havoc Pennington  <hp@redhat.com>
1240
1241         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
1242         add a widget to a bin that already has a child.
1243
1244         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
1245
1246         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
1247         
1248         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
1249
1250         * gdk/gdk.h: remove gdkcc.h
1251
1252         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
1253
1254         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
1255         GdkPixbuf, since the previous implementation was GdkColorContext
1256         dependent.
1257
1258         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
1259         
1260 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
1261
1262         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
1263         a sane value!
1264
1265 2001-02-08  Havoc Pennington  <hp@redhat.com>
1266
1267         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
1268         lighten them.
1269
1270 2001-02-08  Havoc Pennington  <hp@redhat.com>
1271
1272         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
1273         validation idle
1274
1275         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
1276         cell renderer
1277
1278         * demos/pixbuf-demo.c (timeout): remove deprecated
1279         gtk_widget_draw
1280
1281         * demos/testpixbuf-save.c (main): remove deprecated
1282         gtk_drawing_area_size
1283
1284         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
1285         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
1286         at the start of the allocation.
1287         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
1288         unsetup or NULL model.
1289
1290         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
1291         even/odd/sorted cells in the tree view.
1292
1293         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1294         bugfixes
1295
1296         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
1297         backgrounds with draw_flat_box using different detail for even/odd
1298         rows.
1299
1300         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
1301         row, so we can draw the alternating colors thing
1302
1303         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
1304         property from a synonym property, notify for the synonym.
1305         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
1306         (gtk_text_tag_get_property): Always return the font, even if
1307         all its fields aren't set
1308
1309         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
1310         store the attr list; it leaves us with no way to change attributes
1311         in _render according to the render flags, and no way to implement
1312         get_property. Instead store all the specific text attributes. 
1313         Separate whether an attribute is enabled from its value. Sync all
1314         properties with GtkTextTag, make them all consistent, etc.
1315
1316         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
1317         renderers can highlight the sort row/column     
1318
1319         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
1320         accessor functions to get values; this has the side effect of
1321         showing up which accessor functions were missing. Added those.
1322
1323         * gtk/gtktreeviewcolumn.h: Replace set_justification with
1324         set_alignment, to be consistent with GtkLabel, GtkMisc
1325
1326         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
1327         arrow.
1328
1329         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
1330
1331         * gtk/gtktreesortable.h: updates in here
1332
1333 2001-02-07  Sven Neumann  <sven@convergence.de>
1334
1335         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
1336         pango dimensions after painting the background. We used to draw
1337         gigantic flat boxes here.
1338
1339 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
1340
1341         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
1342         error introduced with earlier commit) (pointed out by
1343         Ollie Lho)
1344
1345 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
1346
1347         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
1348         which are no longer necessary.
1349
1350 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
1351
1352         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
1353
1354 2001-02-04  Tor Lillqvist  <tml@iki.fi>
1355
1356         * gdk/gdk.def
1357         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
1358         Provide dummy implementations.
1359
1360 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
1361
1362         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
1363
1364         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
1365         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
1366         deprecated this function.
1367
1368         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
1369         argument.
1370
1371 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
1372
1373         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
1374
1375 2001-02-03  Havoc Pennington  <hp@pobox.com>
1376
1377         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
1378         Mikael Hermansson with patch from Mikael (if there was a toggle
1379         start one after the first character in the range, this function
1380         was broken). Bug #50380
1381
1382 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
1383
1384         * configure.in: Remove confusing comment about X11.
1385
1386 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
1387
1388         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
1389         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
1390         
1391 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
1392
1393         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
1394         it breaks things on BSD. If you want to compile GTK+ with
1395         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
1396         when configuring, since GTK+ simply can't be "pure ANSI" 
1397         in the header files it uses. (#8170, Greg Hudson)
1398
1399 2001-02-02  Havoc Pennington  <hp@redhat.com>
1400
1401         * gtk/gtkwindow.c: docs
1402
1403         * gtk/gtkwidget.c: docs
1404         (gtk_widget_set_colormap): add a reference to the colormap
1405         (gtk_widget_get_default_colormap): add a reference to the colormap
1406
1407         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
1408
1409         * gtk/gtktextiter.c: docs
1410
1411         * gtk/gtkmain.c (gtk_propagate_event): docs
1412
1413         * gtk/gtkpaned.c (gtk_paned_get_position): docs
1414         (gtk_paned_set_position): docs
1415
1416         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
1417         sort interface, no implementation yet.
1418
1419         * demos/testpixbuf.c (new_testrgb_window): replace
1420         gtk_drawing_area_size() with gtk_widget_set_usize()
1421
1422         * demos/testpixbuf-drawable.c (main): ditto
1423         
1424         * gtk/testgtk.c: remove use of GtkStatusbarMsg
1425
1426         * gtk/gtktextbuffer.c: docs
1427
1428         * gtk/gtkstock.c: docs
1429
1430         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
1431
1432         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
1433
1434         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
1435         
1436         * gtk/gtkimage.c: add some docs in here
1437         (gtk_image_size_request): change name of
1438         gtk_widget_render_stock_icon
1439         (gtk_image_get_icon_set): don't dup returned string
1440         (gtk_image_get_icon_set): don't dup returned string
1441
1442         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
1443         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
1444         and gtkiconfactory.h functions
1445
1446         * gtk/gtkiconfactory.c: add some docs in here
1447
1448         * gtk/gtkmain.c (gtk_get_default_language): document
1449         (gtk_get_current_event): document
1450         (gtk_get_current_event_state): document
1451         (gtk_get_event_widget): document
1452
1453         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
1454
1455         * gtk/gtkcontainer.c: Add some documentation
1456         (gtk_container_add): give a more explanatory warning on adding an
1457         already-parented widget, this is kind of a FAQ and also a common
1458         typo that's easier to debug with a nice warning 
1459
1460         * gtk/gtkcellrenderertoggle.c
1461         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
1462         adding this, it's useless
1463         (gtk_cell_renderer_toggle_set_active): remove
1464         (gtk_cell_renderer_toggle_get_radio): add
1465
1466         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
1467         the NULL cell renderer, that doesn't make any sense to me. 
1468
1469         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
1470         demo code should never use deprecated features.
1471
1472         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
1473         code should never use deprecated features.
1474
1475         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
1476         gtk_widget_queue_clear_area deprecated
1477
1478         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
1479         deprecated
1480
1481         * gtk/gtklabel.h: mark gtk_label_get() deprecated
1482
1483         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
1484         a GdkImage deprecated, replaced by new consistently-named
1485         functions       
1486
1487         * gtk/gtkmain.h: Mark gtk_exit() deprecated
1488
1489         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
1490
1491         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
1492         deprecated
1493
1494         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
1495         so it won't appear in docs and confuse people.
1496
1497         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
1498
1499         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
1500         macros deprecated. (can't mark the type itself deprecated, since
1501         GtkProgressBar is not deprecated and we need the type decl to use
1502         GtkProgressBar)
1503
1504         * gtk/gtkpixmap.h: Mark deprecated
1505
1506         * gtk/gtkoldeditable.h: Mark deprecated
1507
1508         * gtk/gtklist.h: Mark deprecated
1509
1510         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
1511         for anything anymore.
1512
1513         * gtk/gtkctree.h: Mark deprecated
1514
1515         * gtk/gtkclist.h: Mark deprecated
1516
1517         * gtk/gtkpreview.h: Mark deprecated
1518
1519         * gtk/gtkpacker.h: Mark deprecated
1520
1521         * gtk/gtktipsquery.h: Mark deprecated
1522
1523         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
1524
1525         * gtk/gtkvruler.h: Add comment that it will move out of GTK
1526
1527         * gtk/gtkhruler.h: Add comment that it will move out of GTK
1528
1529         * gtk/gtkruler.h: Add comment that it will move out of GTK
1530
1531         * gtk/gtkgamma.h: Add comment that it will move out of GTK
1532
1533         * gtk/gtkcurve.h: Add comment that it will move out of GTK
1534
1535 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
1536
1537         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
1538         gdk_colormap_sync private since it was never exported
1539         in a header file.
1540
1541         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
1542         colormap->colors[] for StaticGray, StaticColor colormaps.
1543
1544         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
1545         was being used as if it was image->bits_per_pixel.
1546
1547         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
1548         for the image in the GdkImage structure since it isn't
1549         reconstructable, and we need it to handle packed types
1550
1551         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
1552         the assumption that on Win32 image->bits_per_pixel == image->depth,
1553         always.
1554
1555         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
1556
1557         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
1558         warning message if no converter can be found. 
1559
1560 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
1561
1562         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
1563         chars to isupper() / tolower(). (#567)
1564
1565         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
1566         to clear up 64-bit warnings. (#567)
1567
1568 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
1569
1570         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
1571         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
1572
1573         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
1574         since some people set $(libdir) separately. (#1290, David Kaelbling)
1575
1576 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
1577
1578         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
1579         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
1580         MAXPATHLEN, but the code here depends on a fixed value.)
1581         (#4524)
1582
1583 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
1584
1585         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
1586         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
1587
1588 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
1589
1590         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
1591         viewable there is no way that moving the node will cause the 
1592         focus row to become not viewable, so omit check on the visibility
1593         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
1594
1595 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
1596
1597         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
1598         selection before inserting new text.
1599
1600 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
1601
1602         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
1603         Make the sensitivity of the reparented child track that of
1604         the original parent menu item. (#34218, David Hodson)
1605
1606         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
1607         the case where the current item is destroyed properly.
1608
1609         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
1610         some edge cases with child-less menuitems.
1611         
1612 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
1613
1614         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
1615         key pop down window. (#12074, Jon K Hellan)
1616
1617 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
1618
1619         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
1620         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
1621         The solution here isn't perfect - you get an extraneous
1622         emission of "toggle", which could conceivably confuse an app,
1623         but better than the current situation. LXR search seems to
1624         indicate that no apps in GNOME CVS connect to "toggle".
1625
1626 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
1627
1628         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
1629         gtk_public_h_sources to directly here to avoid warning when
1630         building srcdir != builddir. (#9656)
1631
1632 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
1633
1634         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
1635         handlers in gtkrange.c return the proper values (TRUE == handled)
1636         (#10316).
1637
1638         This is just the tip of the iceberg, but gtkrange.c is the
1639         most common place where the propagation is problematical,
1640         and also a place where it is almost certainly safe to change
1641         this in the stable branch.
1642
1643         (You don't want right click popups on a range control or anything...)
1644
1645 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
1646
1647         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
1648         area on focus out, even if a background pixmap isn't set.
1649         (#13941)
1650         
1651 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
1652
1653         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
1654         to deal with setting the shape properly when scrolling arrows are
1655         turned on, but not visible because there is sufficient space.
1656         (#13432)
1657
1658 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
1659
1660         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
1661         items with submenus, destroy the item along with the submenu.
1662         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
1663         properly.
1664
1665         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
1666         later.
1667
1668 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
1669
1670         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
1671         the focus widget sometimes wasn't drawn with the default if there
1672         was no default widget.
1673
1674         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
1675         unreference pixmaps. 
1676
1677         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
1678         for some extra safety.
1679
1680 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
1681
1682         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
1683         the text of a cell to the old pointer value better, by
1684         copying the new text before freeing the old text. Some code
1685         cleanup. (#8079, Karl Nelson)
1686
1687 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
1688
1689         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
1690         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
1691
1692 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
1693
1694         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
1695         item from a menu, check to see if it matches 
1696         menu->old_active_menu_item, and if so, unref and clear
1697         old_active_menu_item (Patch from Pavel Cisler)
1698
1699         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
1700         menu_shell->active_menu_item, if it is the child being
1701         removed. (Patch based on that of Gene Ragan, #50337)
1702
1703 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
1704
1705         * gdk/linux-fb/gdkselection-fb.c: 
1706         * gdk/linux-fb/gdkcolor-fb.c: 
1707         * gdk/linux-fb/gdkdrawable-fb2.c: 
1708         * gdk/linux-fb/gdkfont-fb.c: 
1709         * gdk/linux-fb/gdkim-fb.c: 
1710         * gdk/linux-fb/gdkinput.c: 
1711         * gdk/linux-fb/gdkkeyboard-fb.c: 
1712         * gdk/linux-fb/gdkmain-fb.c: 
1713         * gdk/linux-fb/gdkrender-fb.c: 
1714         A bunch of whitespace cleanup.
1715         
1716 2001-01-30  Havoc Pennington  <hp@pobox.com>
1717
1718         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
1719         #ifdef GTK_ENABLE_BROKEN.
1720
1721         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
1722         GTK_ENABLE_BROKEN just before including the broken headers.
1723         
1724         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
1725         deprecated types registered.
1726
1727         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
1728         we have to test the broken stuff.
1729
1730         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
1731         
1732 2001-01-30  Havoc Pennington  <hp@redhat.com>
1733
1734         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
1735         here where prev pointer was set to the wrong thing
1736
1737         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
1738         (gtk_tree_path_is_descendant): new function
1739
1740         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
1741         cached length
1742         (gtk_list_store_get_iter): don't modify iter if we can't get the
1743         path.
1744
1745         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
1746         
1747         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
1748         GtkTreeDragDest
1749
1750         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
1751         was causing segfault
1752
1753         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
1754         pointer to NULL
1755
1756         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
1757
1758         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
1759         on returning FALSE
1760         (gtk_list_store_iter_children): ditto
1761         (gtk_list_store_iter_nth_child): ditto
1762         (gtk_list_store_iter_nth_child): ditto
1763         (gtk_list_store_iter_parent): ditto
1764
1765         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
1766         on iter->user_data != NULL instead of silently accepting it.
1767         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
1768         we are returning TRUE.
1769         (gtk_tree_store_iter_children): ditto
1770         (gtk_tree_store_iter_nth_child): ditto
1771         (gtk_tree_store_iter_parent): ditto
1772         (gtk_tree_store_insert): remove handling of parent->user_data ==
1773         NULL, replace with parent == NULL       
1774
1775         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
1776         and a comment explaining things
1777
1778         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
1779         interface support to GtkTreeStore.
1780
1781         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
1782         FALSE if no prev, fix
1783
1784         * gtk/gtktreeview.c (set_source_row): use a row reference
1785         (set_dest_row): use a row reference
1786
1787 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
1788
1789         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
1790         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
1791         (gtk_tree_selection_select_iter): The same as above.
1792
1793 2001-01-26  Havoc Pennington  <hp@redhat.com>
1794
1795         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
1796         which holds a handle to a specific row (particular set of values
1797         in the model, i.e. pointer-identity row).
1798
1799         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
1800         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
1801         Still need to use it for the src/dest row saved on the drag context.
1802
1803 2001-01-26  Havoc Pennington  <hp@redhat.com>
1804
1805         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
1806
1807         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
1808         not offset by TREE_VIEW_HEADER_HEIGHT
1809         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
1810         TREE_VIEW_HEADER_HEIGHT
1811
1812         * configure.in (included_loaders): for me, --with-included-loaders
1813         generates the error "the specified loader yes does not exist",
1814         i.e. the arg defaults to "yes", so change test for value ""
1815         to test for value "yes", and include all loaders in that case.
1816
1817         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
1818
1819         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
1820         handle TREE_VIEW_VERTICAL_SEPARATOR
1821         (gtk_tree_view_bin_expose): fix to consider the row offset as
1822         pointing halfway into vertical separator.       
1823         (gtk_tree_view_draw_node_focus_rect): ditto
1824
1825         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
1826         --gtk-debug=updates, which causes gdk_window_set_debug_updates
1827         (TRUE) to be called.
1828
1829         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
1830         debug mode where the invalid region is colored in on invalidate,
1831         so you can see the flicker and know whether your redraw code is 
1832         doing a good job.
1833
1834         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
1835         tree window coordinates (clip rect is in tree window coords)
1836
1837         * gtk/Makefile.am: add gtktreednd.[hc]
1838
1839         * gtk/gtkliststore.c: implement gtktreednd interfaces.
1840
1841         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
1842         drag-and-drop data operations on a model (so we can set up tree
1843         drag-and-drop automatically)
1844
1845         * gtk/testgtk.c: Add a window to change sensitivity in the
1846         GtkLabel test; add a way to change the entry frame in GtkEntry
1847         test
1848
1849         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
1850         (gtk_entry_get_has_frame): new functions to remove the frame
1851         around an entry
1852         (gtk_entry_size_request): shrink requisition if no frame
1853         (gtk_entry_draw_focus): don't draw frame if no frame
1854
1855         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
1856         checks inside a cell renderer
1857         (gtk_default_draw_option): ditto for options
1858
1859         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
1860         children from the alignment, not the button
1861         (gtk_tree_view_column_init): ref/sink the column, to emulate
1862         GObject refcounting.
1863
1864         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
1865         
1866         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1867         Use theme functions to draw the toggles 
1868
1869         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
1870
1871         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
1872         GdkPangoAttrEmbossed to use in rendering insensitive text
1873
1874         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
1875
1876         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
1877         using new GDK features
1878         
1879 2001-01-24  Alexander Larsson  <alexl@redhat.com>
1880
1881         * gtk/gtkimage.c:
1882         Splitted gtk_image_clear into gtk_image_clear() and
1883         gtk_image_reset(). Call gtk_image_clear() in ::destroy
1884         to avoid leaks.
1885
1886         * gtk/gtklabel.c (set_markup):
1887         Don't leak text.
1888
1889         * gtk/gtktextlayout.c:
1890         Always free display->shaped_objects.
1891
1892         * gtk/testgtk.c (create_clist):
1893         Don't leak custom style.
1894
1895 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1896
1897         * gtk/gtkcolorsel.c (grab_color_at_mouse):
1898         Don't leak image. Simplify using gdk_colormap_query_color().
1899         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
1900
1901         * linux-fb/gdkcolor-fb.c:
1902         Implemented gdk_colormap_query_color.
1903
1904 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1905
1906         * linux-fb/gdkcursor-fb.c:
1907         Don't leak built-in cursors.
1908
1909         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
1910         Don't leak tmp_points.
1911
1912         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
1913         Don't modify desc. Don't leak font if the PangoFont
1914         isn't found.
1915         
1916         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
1917         Free dash_list.
1918
1919         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
1920         Don't leak string.
1921         
1922 2001-01-20  Havoc Pennington  <hp@pobox.com>
1923
1924         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
1925         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
1926         me, matches Pango
1927
1928 2001-01-22  Havoc Pennington  <hp@redhat.com>
1929
1930         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
1931
1932         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
1933
1934         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
1935         Remove, move back to gdk-pixbuf
1936
1937         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
1938         to all the word functions
1939
1940         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
1941         before doing anything on NULL layout or if we don't have the focus
1942
1943         * gtk/testtext.c (fill_example_buffer): "justification"
1944
1945         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
1946         to be called "justification" not "justify"
1947
1948         * demos/gtk-demo/textview.c (create_tags): "justification"
1949         
1950         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
1951
1952 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1953
1954         * gdk/gdkwindow.c (gdk_window_invalidate_region):
1955         Don't leak visible_region. Use visible_region instead of region.
1956         
1957         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1958         Don't do extra gdk_drawable_ref(). This is not X.
1959         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
1960         gdk_fb_focused_window is ref:ed.
1961         (gdk_fb_window_send_crossing_events): Watch out for destroyed
1962         windows.
1963
1964 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1965
1966         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
1967         Don't leak the PangoFontDescriptor.
1968
1969 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
1970
1971         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1972         when not realized.
1973         (gtk_tree_view_scroll_to_cell): Make work when not realized.
1974         (gtk_tree_view_realize): add scroll_to support
1975         (gtk_tree_view_finalize): add a finalize method.  Populate.
1976         (gtk_tree_view_insert_column): ref and sink the column.
1977         (gtk_tree_view_append_column): ref and sink the column.
1978         (gtk_tree_view_queue_draw_node): New function to handle redrawing
1979         individual nodes.  Should make the code much more efficient, if
1980         actually used.
1981
1982 2001-01-19  Havoc Pennington  <hp@redhat.com>
1983
1984         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1985         byte_offset variable was being used to mean both "offset into
1986         layout" and "offset into buffer line" which was no longer true
1987         with addition of preedit string; fix
1988
1989 2001-01-19  Havoc Pennington  <hp@redhat.com>
1990
1991         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1992
1993         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1994         function
1995
1996         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1997         implement
1998
1999         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
2000         scroll_to_cell, matches TextView scroll functions better
2001         (gtk_tree_view_tree_to_widget_coords): new function
2002         (gtk_tree_view_widget_to_tree_coords): new function
2003         (gtk_tree_view_get_visible_rect): new function
2004         (gtk_tree_view_get_path_at_pos): accept negative coordinates
2005         (gtk_tree_view_draw_node_focus_rect): new function moved from
2006         draw_focus, also, use width of bin_window as width of the focus
2007         rect
2008         (gtk_tree_view_expand_row): fix bug where it didn't recognize
2009         already-expanded rows
2010         (gtk_tree_view_get_cell_rect): new function
2011         (gtk_tree_view_get_path_at_pos): return the click position
2012         relative to the passed-in cell
2013         (gtk_tree_view_set_expander_column): new function
2014
2015         * configure.in: remove gtk-config-2.0 chmod
2016
2017         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
2018         and properly handle drags with targets we don't understand
2019         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
2020         scrolling anyway
2021         (gtk_text_view_drag_drop): stop scrolling here though, and set the
2022         mark invisible
2023
2024         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
2025         function
2026         (gtk_drag_dest_get_target_list): new function
2027         (gtk_drag_dest_set_target_list): new function
2028         
2029         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
2030
2031         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
2032         related to drag-and-drop
2033
2034 2001-01-19  Alexander Larsson  <alexl@redhat.com>
2035
2036         * gdk/linux-fb/gdkprivate-fb.h:
2037         Define EMULATE_GDKFONT.
2038         Add extra pango_font stuff to GfkFontPrivate.
2039         
2040         * gdk/linux-fb/gdkdrawable-fb2.c:
2041         * gdk/linux-fb/gdkfont-fb.c:
2042         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
2043         emulation using PangoFont.
2044
2045 2001-01-17  Havoc Pennington  <hp@pobox.com>
2046
2047         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
2048         all the non-deprecated set_foo functions. Added missing object
2049         properties, and added g_object_notify() to setters. 
2050         Wrote docs.
2051         
2052 2001-01-18  Tor Lillqvist  <tml@iki.fi>
2053
2054         * gtk/gtkmain.c
2055         * gtk/gtkrc.c: (Win32) Use the new
2056         g_win32_get_package_installation_(sub)directory() functions.
2057
2058         * config.h.win32.in: New file.
2059         
2060         * config.h.win32: Removed.
2061
2062         * configure.in: Output config.h.win32.
2063
2064         * Makefile.am: Add it to EXTRA_DIST.
2065
2066         * gtk/gtk.def: Update.
2067
2068 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
2069
2070         * gtk/gtklabel.c (gtk_label_size_request): Set the
2071         attributes onto the PangoLayout even if they are newly
2072         created from label->pattern.
2073
2074 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
2075
2076         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
2077
2078         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
2079         structures in functions. Fixes bug where gtk_dataset_*
2080         was accidentally still being used in one place, causing
2081         every dest side event to be treated independently.
2082
2083         * gtk/gtkdnd.c: Remove last vestages of handling
2084         ::draw (fixes warning)
2085         
2086         * gtk/gtkentry.[ch]: Add drag and drop support.
2087
2088         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
2089         new function gtk_check_drag_threshhold() for checking
2090         to check if (dx,dy) has exceeded the threshhold for starting
2091         a drag and use it everywhere.
2092
2093 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
2094
2095         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
2096         add -I{includedir}/gtk-2.0.
2097
2098         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
2099         gdk/gdk-pixbuf.h: Doc fixups.
2100         
2101         * gtk/gtkobject.h: Remove trailing , from enum
2102
2103 2001-01-17 Alexander Larsson <alexl@redhat.com> 
2104
2105         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
2106         Doh! Mixed up x and y.
2107
2108         * gdk/linux-fb/gdkglobals-fb.c:
2109         Removed gdk_fb_pointer_grab_window_events,
2110         added _gdk_fb_pointer_grab_owner_events and
2111         _gdk_fb_keyboard_grab_owner_events.
2112
2113         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
2114         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
2115         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
2116         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
2117         Send crossing events after ungrab finished.
2118         (gdk_keyboard_grab): Set ..._owner_events
2119         (type_masks): Move out of function.
2120         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
2121         gdk_fb_keyboard_event_window): New functions, return the
2122         window an event should be targeted at. Handles grabs and
2123         event propagation. Can return NULL.
2124         (gdk_event_make): Remove event_mask checking. Now always
2125         returns an event.
2126                 
2127         * gdk/linux-fb/gdkkeyboard-fb.c:
2128         * gdk/linux-fb/gdkproperty-fb.c:
2129         * gdk/linux-fb/gdkselection-fb.c:
2130         Use new event_window/gdk_event_make() behaviour.
2131         
2132         * gdk/linux-fb/gdkmouse-fb.c:
2133         Use new event_window/gdk_event_make() behaviour.
2134         Only send motion events if in the same window.
2135         If grabbed, use cursor from window if sibling of grabbed
2136         window, and cursor from grabbed window otherwise.
2137
2138         * gdk/linux-fb/gdkprivate-fb.h:
2139         Update gdk_fb_window_send_crossing_events, gdk_event_make
2140         and grab varaible declarations. Add gdk_fb_*_event_window().
2141
2142         * gdk/linux-fb/gdkwindow-fb.c:
2143         Use new event_window/gdk_event_make() behaviour.
2144         Keep correct track of focus window.
2145         (gdk_window_set_events): Set all specific button motion masks
2146         if GDK_BUTTON_MOTION_MASK set.
2147
2148         * gtk/gtkdnd.c (gtk_drag_update):
2149         Free info->last_event if gdk_drag_motion returned FALSE.
2150
2151 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2152
2153         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
2154         Eliminate redraws when input-only windows are shown or
2155         hidden. Thanks to jpe@archaeopteryx.com.
2156
2157 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
2158
2159         * docs/faq/gtk-faq.sgml: FAQ update:
2160           - Update to bugzilla
2161           - Add GTK+ and security/SUID/SGID
2162           - Add DnD question
2163
2164 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
2165
2166         * gdk/linux-fb/gdkdnd-fb.c:
2167         Some cleanups.
2168         
2169 2001-01-15  Havoc Pennington  <hp@pobox.com>
2170
2171         * tests/testtreeview.c: add test stuff for CellRendererToggle
2172
2173         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
2174         accessor
2175
2176         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
2177         only toggle on button press (would do release like GtkButton, but
2178         we'd need implicit grab code for treeview cells)
2179
2180 2001-01-16  Tor Lillqvist  <tml@iki.fi>
2181
2182         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
2183
2184         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
2185         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
2186
2187         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
2188         to g_{locale,filename}_{to,from}_utf8 to match current API.
2189
2190         * gtk/makefile.msc.in (gtk_OBJECTS)
2191         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
2192
2193         * gtk/gtk.def: Update.
2194
2195 2001-01-15  Tor Lillqvist  <tml@iki.fi>
2196
2197         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
2198         implementaion that more closely mimics the events that an X server
2199         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
2200         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
2201         with nested preview widgets, for instance, more responsive when
2202         you move the mouse quickly into them.
2203         (find_window_for_pointer_event): Make it actually compile.
2204         (gdk_event_translate): Set send_event to the value of
2205         InSendMessage (). This doesn't really mean the same as X11's
2206         send_event flag, but is close enough, says jpe@archaeopteryx.com
2207
2208 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2209
2210         * gdk/linux-fb/gdkdnd-fb.c:
2211         Implemented drag and drop.
2212         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
2213         when it tries to free and then copy the same event (info->last_event).
2214         I am not sure about why this happens, but will continue looking.
2215
2216 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2217
2218         * gdk/linux-fb/gdkwindow-fb.c:
2219         Use gdk_window_invalidate_rect instead of
2220         gdk_window_invalidate_rect_clear to minimise flashing.
2221         When hiding windows you need to clear the root window though.
2222
2223 2001-01-15  Alexander Larsson  <alexl@redhat.com>
2224
2225         * gdk/linux-fb/gdkdrawable-fb2.c:
2226         For optization, add an full_shapes argument to gdk_fb_clip_region.
2227         If this is false, only the cliprects of the shapes are used.
2228
2229         * gdk/linux-fb/gdkprivate-fb.h:
2230         Export gdk_fb_window_peek_shape.
2231         Add full_shapes to gdk_fb_clip_region.
2232
2233         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2234         When moving a window, don't clear everything under the it, just the
2235         root window. Makes stuff faster and flash less.
2236         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
2237         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
2238         offset of the shape.
2239         
2240
2241 2001-01-12  Havoc Pennington  <hp@redhat.com>
2242
2243         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
2244         current invalid region, fixes redraw bug while scrolling the 
2245         text widget
2246
2247         * gtk/gtktextview.c, gtk/gtktextview.h:
2248         Rearrange the scrolling/validation/etc. code in a major way, 
2249         so it seems to make sense to me. Probably isn't genuinely that
2250         much better, but...
2251
2252         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
2253         notifies
2254
2255         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
2256
2257 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
2258
2259         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
2260         Hide mouse pointer while rotation. Show it afterwards.
2261
2262 2001-01-12  Alexander Larsson  <alexl@redhat.com>
2263
2264         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
2265         windows in consideration when generating clip region.
2266
2267         * gdk/linux-fb/gdkfb.h:
2268         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
2269
2270         * gdk/linux-fb/gdkprivate-fb.h:
2271         Add shape to GdkWindowFBDatat.
2272         exported gdk_fb_window_get_abs_shape().
2273         removed gdk_fb_draw_lines declaration.
2274
2275         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
2276         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
2277         send focus changes when there is a grabbed window.
2278         (gdk_window_get_pointer): Handle shaped windows.
2279         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
2280         (gdk_fb_window_peek_shape): Returns the shape for a window,
2281         handles GDK_FB_USE_CHILD_SHAPE.
2282         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
2283         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
2284         (gdk_window_shape_combine_mask): Implement.
2285
2286         * gtk/gtkwindow-decorate.c:
2287         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
2288         setting the shape of a window makes the window transparent.
2289
2290 2001-01-11  Havoc Pennington  <hp@redhat.com>
2291
2292         * gtk/gtktreemodelsimple.h: Oops, broke some macros
2293
2294 2001-01-10  Havoc Pennington  <hp@redhat.com>
2295
2296         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
2297         add this function, bug 40251
2298
2299         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
2300         of type macro   
2301
2302 2001-01-11  Alexander Larsson  <alexl@redhat.com>
2303
2304         * acconfig.h:
2305         Added ENABLE_SHADOW_FB
2306
2307         * configure.in:
2308         Added --disable-shadowfb
2309
2310         * gdk/linux-fb/gdkcursor-fb.c:
2311         Update shadowfb when updating cursor
2312
2313         * gdk/linux-fb/gdkdrawable-fb2.c:
2314         Added wrappers for shadowfb that calls  the normal drawable
2315         methods, but calls gdk_shadow_fb_update(bounding box) when
2316         GdkWindows are drawed to.
2317         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
2318         which also returns the bounding box.
2319
2320         * gdk/linux-fb/gdkfb.h:
2321         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
2322
2323         * gdk/linux-fb/gdkgeometry-fb.c:
2324         Update shadowfb when scrolling window.
2325
2326         * gdk/linux-fb/gdkglobals-fb.c:
2327         Add _gdk_fb_screen_angle.
2328         
2329         * gdk/linux-fb/gdkkeyboard-fb.c:
2330         Test code for screen rotation. Shift-F2 in the xlate driver
2331         rotates the screen.
2332
2333         * gdk/linux-fb/gdkmain-fb.c:
2334         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
2335
2336         * gdk/linux-fb/gdkmouse-fb.c:
2337         Use fb_width/height instead of modeinfo.xres/yres.
2338
2339         * gdk/linux-fb/gdkprivate-fb.h:
2340         Added fb_men, fb_width, fb_height & fb_stride. When using
2341         shadow fb these can differ from the framebuffer stuff.
2342         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
2343         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
2344         _gdk_fb_screen_angle. Removed CM, RP.
2345
2346         * gdk/linux-fb/gdkrender-fb.c:
2347         Added code for shadowfb handling and screen rotation using
2348         shadowfb.
2349
2350         * gdk/linux-fb/gdkwindow-fb.c:
2351         Use fb_mem, fb_stride, fb_width, fb_height.
2352         Added recompute_rowstride to reset the rowstride of all windows.
2353         Added gdk_fb_recompute_all() which recomputes rootwindow size,
2354         window abs positions and window rowstrides. Usefull when the
2355         rotation has changed.
2356
2357 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
2358
2359         * docs/faq/gtk-faq.sgml: update to make web site updating easier
2360
2361 2001-01-10  Havoc Pennington  <hp@redhat.com>
2362
2363         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
2364         where sibling == iter
2365         (gtk_tree_store_insert_after): handle sibling == iter
2366         (gtk_tree_store_prepend): remove stamp checks
2367         (gtk_tree_store_insert_before): ditto
2368         (gtk_tree_store_append): ditto
2369         (gtk_tree_store_get_path): ditto
2370         (gtk_tree_store_get_value): ditto
2371         (gtk_tree_store_iter_has_child): ditto
2372         (gtk_tree_store_iter_n_children): ditto
2373         (gtk_tree_store_iter_nth_child): ditto
2374         (gtk_tree_store_insert_after): ditto
2375         (gtk_tree_store_is_ancestor): ditto
2376         (gtk_tree_store_iter_depth): ditto
2377         (gtk_tree_store_insert_before): assert that sibling's parent is
2378         the same as the passed-in parent
2379         (gtk_tree_store_insert_after): assert that sibling's parent is
2380         the same as the passed-in parent
2381
2382         
2383         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
2384         function to get the first iterator in a model
2385         
2386         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
2387         conventionally the "root" in this sense is just NULL afaict.
2388
2389         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
2390         where sibling == iter
2391         (gtk_list_store_insert_after): handle case where sibling == iter
2392
2393         * tests/testtreeview.c (run_automated_tests): fairly lame basic
2394         automated tests for ListStore, TreeStore
2395
2396         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
2397         (gtk_list_store_insert): update tail pointer, and fix it to work
2398         (gtk_list_store_insert_before): update tail pointer, and fix it to work
2399         (gtk_list_store_append): use tail to be faster
2400         (gtk_list_store_prepend): fix it, update tail pointer
2401         (gtk_list_store_insert_after): fix it, update tail pointer
2402
2403         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
2404         the list
2405
2406 2001-01-09  Havoc Pennington  <hp@redhat.com>
2407
2408         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
2409         is NULL due to a pending resize
2410
2411         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
2412         column width to values less than 1
2413
2414         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
2415         width to be between min/max width, and still set the width 
2416         even if autosize is turned on, so the tree view can use this 
2417         function in order to autosize.
2418         (gtk_tree_view_column_init): set initial width to 1 not 0
2419
2420         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
2421         setter function to modify column width, so we get notification
2422         (gtk_tree_view_insert_iter_height): ditto
2423         (gtk_tree_view_calc_size): ditto
2424         (gtk_tree_view_check_dirty): ditto
2425
2426         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
2427         properties to change all the interesting attributes of the tree
2428         view column.
2429         (gtk_tree_view_column_set_header_clickable): rename set_clickable
2430         (gtk_tree_view_column_get_clickable): add
2431         (gtk_tree_view_column_set_cell_renderer): don't unset the current
2432         attributes; assume a cell renderer with equivalent object
2433         properties has been swapped in. Do g_object_notify().
2434         (gtk_tree_view_column_set_visible): g_object_notify
2435         (gtk_tree_view_column_get_sizing): rename from get_col_type
2436         (gtk_tree_view_column_set_sizing): g_object_notify
2437         (gtk_tree_view_column_set_width): add g_object_notify
2438         (gtk_tree_view_column_set_min_width): ditto
2439         (gtk_tree_view_column_set_max_width): ditto
2440         (gtk_tree_view_column_set_title): ditto
2441         (gtk_tree_view_column_set_clickable): ditto
2442         (gtk_tree_view_column_set_widget): ditto
2443         (gtk_tree_view_column_set_justification): ditto
2444
2445 2001-01-09  Havoc Pennington  <hp@redhat.com>
2446
2447         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
2448         there are no rows in the model
2449
2450         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
2451         NULL, then return the start of the list
2452
2453         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
2454         if we can't get any rows from an empty model 
2455
2456         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
2457         extraneous * after function pointer typedef usage
2458
2459         * Makefile.am: don't specify full path to cp and rm
2460
2461         * gtk/gtkcellrenderertextpixbuf.c
2462         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
2463         NULL before dereferencing, fixes a segfault that happened from
2464         time to time
2465
2466         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
2467         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
2468         and reindent the function
2469         (gtk_cell_renderer_pixbuf_get_size): indentation
2470
2471         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
2472         we quit it
2473         (gtk_dialog_add_buttons_valist): add g_return_if_fail
2474         (gtk_dialog_set_default_response): New function, to set default
2475         button
2476         (gtk_dialog_set_response_sensitive): New function, to set 
2477         sensitivity of buttons
2478
2479         * gtk/gtkcellrendererpixbuf.c
2480         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
2481         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
2482
2483         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
2484         handle any G_TYPE_OBJECT subclass, not just the base class, and 
2485         also boxed types.
2486         (_gtk_tree_data_list_value_to_node): ditto
2487
2488         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
2489         --gtk-debug=tree
2490
2491         * gtk/gtkmain.c: add GTK_DEBUG_TREE
2492
2493         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
2494
2495 2001-01-09  Tor Lillqvist  <tml@iki.fi>
2496
2497         * gdk/win32/gdkevents-win32.c: Implement better mouse
2498         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
2499         (find_window_for_pointer_event): New function.
2500         (gdk_event_translate): Use it when handling mouse events.
2501
2502 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
2503
2504         * configure.in:
2505         Added --with-included-loaders option
2506
2507         * gdk-pixbuf/Makefile.am:
2508         * gdk-pixbuf/gdk-pixbuf-io.c:
2509         Add support for including selected gdk-pixbuf loaders only.
2510
2511         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
2512         gtk_window_set_has_frame):
2513         Added inline documentation.
2514
2515         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
2516         * docs/reference/gdk/tmpl/windows.sgml:
2517         Added inline documentation.
2518
2519 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
2520
2521         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
2522         realizing buttons that have already been realized.
2523
2524 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
2525
2526         * tests/testtreeview.c (main): Show menu items before adding to
2527         option menu.
2528
2529         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
2530         around if we kill them.
2531
2532         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2533         Return if we pass in a NULL model.
2534
2535 2001-01-08  Havoc Pennington  <hp@redhat.com>
2536
2537         * tests/testtreeview.c: hack on this some
2538
2539         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
2540         gtk_tree_store_set_valist, v is for arrays, valist for varargs
2541         list
2542         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
2543
2544         * gtk/gtkliststore.h: Add varargs set() and get() convenience
2545         functions
2546
2547 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2548
2549         * gtk/gtkwindow-decorate.[hc]:
2550         * gtk/Makefile.am:
2551         New files. Contains an implementation of a minimal WM for
2552         linux-fb.
2553
2554         * gtk/gtkwindow.h:
2555         Add the possibility for GtkWindows to specify a frame. This
2556         is used for the window decoration code, but could concievably
2557         be used for X programs too (xmms style windows).
2558         GtkWindow->frame is the toplevel window if the window is framed.
2559         The signal frame_event gets all events that are targeted to
2560         GtkWindow->frame.
2561         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
2562         
2563         * gtk/gtkwindow.c:
2564         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
2565         Call out to gtkwindow-decorate.c for WM support in linx-fb.
2566
2567 2001-01-08  Alexander Larsson  <alexl@redhat.com>
2568
2569         * docs/README.linux-fb:
2570         Correct filename ~/.pangoft2_aliases
2571
2572         * gdk/gdkwindow.h:
2573         Added new function gdk_window_get_decorations.
2574
2575         * gdk/linux-fb/gdkfb.h:
2576         Removed _gdk_window_get_decorations declaration.
2577         Renamed _gdk_window_set_child_handler to
2578         gdk_fb_window_set_child_handler.
2579
2580         * gdk/linux-fb/gdkwindow-fb.c:
2581         Renamed _gdk_window_set_child_handler to
2582         gdk_fb_window_set_child_handler.
2583
2584         * gdk/x11/gdkwindow-x11.c:
2585         New function gdk_window_get_mwm_hints().
2586         Implemented gdk_window_get_decorations.
2587
2588         * docs/reference/gdk/tmpl/windows.sgml:
2589         * docs/reference/gdk/gdk-sections.txt:
2590         Added gdk_window_get_decorations docs.
2591         
2592 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
2593
2594         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
2595         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
2596         gdk_fb_window_send_crossing_events):
2597         Possibly send focus events when the mouse moves from one
2598         window to another.
2599
2600 2001-01-07  Tor Lillqvist  <tml@iki.fi>
2601
2602         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
2603         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
2604         to match current API.
2605
2606         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
2607         environment variable is set, don't call g_error when on a
2608         palettized (PseudoColor) display. Some people want to use GTK+ 
2609         in 256-colour mode even though works only partially.
2610
2611         * gdk/gdk.def
2612         * gtk/gtk.def
2613         * gtk/makefile.mingw.in: Update.
2614
2615 2001-01-05  Havoc Pennington  <hp@redhat.com>
2616
2617         * tests/testtreeview.c: hack on this a bit
2618
2619         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
2620         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
2621
2622         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
2623         was spelled incorrectly
2624         (GTK_IS_TREE_MODEL_SIMPLE): ditto
2625
2626         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
2627         from gtk_tree_view_set_headers_active   
2628
2629         * gtk/gtktexttag.c:
2630         (gtk_text_tag_get_property): handle PROP_DIRECTION
2631         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
2632         properties, bug 40235
2633
2634         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
2635         forward_to_line_end
2636
2637 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
2638
2639         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
2640         modules/input/gtkimcontextxim.c: Adapt to new prototypes
2641         for unicode,locale,filename conversion functions.
2642
2643 2001-01-05  Havoc Pennington  <hp@redhat.com>
2644
2645         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
2646         broken if called on the first position in the buffer.
2647
2648         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
2649         forward_to_delimiters to be called only if we aren't already at
2650         the delimiters.
2651
2652 2001-01-05  Havoc Pennington  <hp@redhat.com>
2653
2654         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
2655
2656 2001-01-05  Alexander Larsson  <alexl@redhat.com>
2657
2658         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
2659         colormap in here. Sync from X port.
2660         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
2661         Sync from X port.
2662         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
2663         This happens now and then, and i don't think it is a bug.
2664         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
2665         != endpoint.
2666         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
2667         GDK_LINE_SOLID.
2668
2669         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
2670         some of the fields filled in at least.
2671
2672         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
2673         miLineArcD is no more, remove it from the function definition.
2674
2675 2001-01-04  Havoc Pennington  <hp@redhat.com>
2676
2677         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
2678         this
2679
2680         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
2681         user_data instead of tree_node
2682
2683         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
2684         TREE_VIEW_COLUMN_SIZE
2685
2686         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
2687         "size" field to "width" finishes bug 40061
2688
2689         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
2690         for bitfields, bug 40268
2691
2692 2001-01-04  Havoc Pennington  <hp@redhat.com>
2693
2694         Rename some stuff:
2695         
2696         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
2697
2698         s/GtkModelSimple/GtkTreeModelSimple/g;
2699         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
2700         s/gtk_model_simple/gtk_tree_model_simple/g;
2701         s/gtkmodelsimple/gtktreemodelsimple/g;
2702
2703         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
2704
2705         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
2706         s/column_set_col_type/column_set_sizing/g;
2707
2708         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
2709         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
2710
2711         s/GtkCellRendererType/GtkCellRendererState/g;
2712         
2713         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
2714         (gtk_cell_renderer_toggle_class_init): change "state" property to
2715         "active", to match GtkToggleButton
2716         (gtk_cell_renderer_toggle_get_active): new function, bug
2717         40269
2718         (gtk_cell_renderer_toggle_set_active): new function
2719         (gtk_cell_renderer_toggle_set_property): route changes to toggle
2720         state through gtk_cell_renderer_set_active
2721
2722 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
2723
2724         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
2725         temporarily until they work again.  Brought up to date with
2726         changes in the model.
2727         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
2728         model.
2729
2730 2001-01-04  Havoc Pennington  <hp@redhat.com>
2731
2732         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
2733         equal to the line length, then position iterator before paragraph 
2734         separators. Fixes crash reported by Mikael Hermansson when
2735         pressing left arrow from the start of a line.   
2736
2737         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
2738         about byte indexes off the end
2739         (iter_set_from_char_offset): add g_error about char offsets
2740         off the end
2741
2742 2001-01-03  Havoc Pennington  <hp@redhat.com>
2743
2744         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
2745
2746         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
2747         of private functions; remove inclusion of private headers.
2748
2749         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
2750         function, so we don't need private functions in gtktextdisplay.c
2751
2752         * gtk/gtktextiterprivate.h: underscore-ification
2753
2754         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
2755         to instead say "only useful to implement widgets"
2756
2757         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
2758         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
2759         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
2760
2761         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
2762         This function was completely broken
2763
2764         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
2765
2766         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
2767
2768         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
2769
2770         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
2771
2772         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
2773
2774         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
2775
2776         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
2777         gtk_paint_layout
2778
2779         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
2780         gtk_paint_layout
2781
2782         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
2783         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
2784         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
2785         which were not implemented.     
2786
2787         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
2788         insert_pixbuf signal. Rename delete_text to delete_range since it
2789         also deletes pixbufs and child anchors. This almost closes bug
2790         40245 (still need to deal with child anchors)
2791
2792         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
2793         insert_pixbuf, change signal names as appropriate, change types of
2794         signals taking marks/tags to have the specific type, not just
2795         G_TYPE_OBJECT
2796         
2797         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
2798         closes bug 40051
2799
2800         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
2801         unnecessary remove_contents() call
2802         (gtk_option_menu_class_init): add a "changed" signal, closes
2803         bug 40039
2804         (gtk_option_menu_update_contents): emit "changed" if the 
2805         active menu item changes
2806
2807         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
2808         cast to GtkObject, reported by Jonas Borgstrom
2809         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
2810         we can't do stuff with side effects in finalize. Instead, spew a
2811         warning if the loader isn't closed.
2812
2813         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
2814         colormap in here, non-X ports probably need to sync to this change
2815
2816         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
2817         assertion that colormap != NULL, you can set the colormap to NULL
2818         if you like.
2819         
2820         * Makefile.am: remove gtk-config-2.0
2821
2822         * configure.in: Use pkg-config to locate GLib. Remove
2823         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
2824         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
2825         Use pkg-config to locate Pango. Output correct Pango libs to
2826         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
2827
2828         * Makefile.am (pkgconfig_DATA): install only target-specific pc
2829         files
2830         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
2831         X11 pc files
2832
2833         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
2834         unref from here
2835
2836 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
2837
2838         * configure.in:
2839         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2840
2841 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2842
2843         * gtk/gtktextlayout.c
2844         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
2845         variable when moving back onto a single line.
2846
2847 2001-01-01  Havoc Pennington  <hp@redhat.com>
2848
2849         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2850
2851         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2852
2853         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
2854         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2855
2856 2001-01-01  Havoc Pennington  <hp@redhat.com>
2857
2858         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
2859
2860         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
2861         GtkTextAttributes
2862
2863         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
2864         #40246
2865         (gtk_text_attributes_copy_values): rename from 
2866         gtk_text_attributes_copy
2867         (gtk_text_attributes_copy): a more standard GTK copy function, 
2868         which returns a new object
2869
2870 2001-01-01  Havoc Pennington  <hp@redhat.com>
2871
2872         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
2873         
2874         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
2875         don't fill in tree_view->priv->selection, kind of an unexpected
2876         side effect
2877
2878         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
2879         gtkintl.h
2880         
2881         * gtk/gtkcellrenderer.c: Remove definition of _ and include
2882         gtkintl.h
2883         (gtk_cell_renderer_get_property): remove calls to g_value_init
2884
2885         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
2886         gtkintl.h
2887
2888         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
2889         and include gtkintl.h
2890         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
2891         property names
2892
2893         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
2894         GtkTreeSelection
2895         (_gtk_tree_selection_new_from_with_view): rename, return
2896         GtkTreeSelection
2897         (_gtk_tree_selection_set_tree_view): rename with uscore
2898         (gtk_tree_selection_get_selected): fill in the "model" out param
2899         first, so it gets filled in even if we return at the top of the 
2900         function
2901         (gtk_tree_selection_real_select_all): add a comment and an else{}
2902         to clarify this a bit
2903         (gtk_tree_selection_real_unselect_all): add the same else{}
2904
2905         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
2906         set_tree_view to have underscore prefixes, move them to the
2907         private header, fix return type of new_with_tree_view
2908         (struct _GtkTreeSelection): mark struct
2909         fields private  
2910
2911         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
2912         GtkTreeModelFlags, not a guint
2913         (gtk_tree_path_prev): return gboolean not gint
2914         (gtk_tree_path_up): return gboolean not gint
2915
2916         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
2917         return GtkTreeModelFlags, not a guint
2918
2919         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
2920         that child model is non-null before unrefing it
2921         (g_value_int_compare_func): make this a qsort compare func, not 
2922         a boolean predicate
2923
2924         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
2925         (add -umn to the end), and mark it unimplemented
2926         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
2927         I don't see what it's for - doesn't the model always sort itself?
2928         (gtk_tree_model_sort_set_compare): this had the wrong signature
2929
2930         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
2931         Fix the docs to say that it destructively replaces existing
2932         attributes (previously said that it added attributes).
2933         (gtk_tree_view_column_set_visible): canonicalize bool before
2934         equality testing. Also, check for realization before
2935         hiding/showing the tree_column->window; if this window could exist
2936         before realization, then it's busted and needs fixing, we can't 
2937         create GDK resources pre-realization. Also, remove
2938         superfluous queue_resize(), since set_size() does that for us.
2939         (gtk_tree_view_column_set_col_type): check realization before 
2940         using tree_column->window
2941
2942         * gtk/gtktreedatalist.c: fix filename in copyright notice
2943
2944 2000-12-31  Havoc Pennington  <hp@pobox.com>
2945
2946         * gtk/gtktextview.c: Rearrange all the
2947         scroll-while-dragging-or-selecting code to be different, not
2948         necessarily better. ;-)
2949         (gtk_text_view_scroll_to_mark): Change this
2950         function to take within_margin as a fraction instead of a pixel
2951         value, and to take alignment arguments (indicating where to align 
2952         the mark inside the visible area)
2953         
2954         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
2955         to GtkObject
2956
2957         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
2958         behavior so that offsets past the end of the line are not 
2959         allowed, and an offset equal to the line length moves the iterator
2960         to the next line
2961         (gtk_text_iter_set_line_index): make parallel change
2962         (gtk_text_iter_get_bytes_in_line): add this function
2963         
2964         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
2965         of byte indexes off the end of the line; byte index at the end of
2966         the line now returns FALSE and doesn't fill in the requested
2967         values, byte index past the end of the line is an error.  Also,
2968         don't allow -1 offset anymore, since its meaning is unclear.
2969
2970         This change exposes some bug in visual cursor motion, where we
2971         end up with a huge invalid byte index; needs fixing. Symptom of 
2972         bug is a crash when you hit up arrow.
2973         
2974         (_gtk_text_line_char_locate): match the change to byte_locate
2975
2976         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2977         from start of line properly. fixes bug reported by Mikael
2978         Hermansson where backspace would delete all text before the
2979         cursor.
2980
2981 2000-12-30  Tor Lillqvist  <tml@iki.fi>
2982
2983         * gdk/win32/gdkwindow-win32.c
2984         (gdk_window_impl_win32_get_visible_region): New function, as in
2985         the X11 backend.
2986         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2987         instead of duplicating the same code here.
2988
2989         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2990         GDK_COLORMAP macro.
2991
2992         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2993         destroy function.
2994         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2995         access that.
2996
2997         * gtk/gtk.def: Update.
2998
2999         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
3000
3001 2000-12-30  Havoc Pennington  <hp@pobox.com>
3002
3003         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
3004         colormap on input only windows, to avoid special cases all over
3005         the code for these windows.
3006
3007 2000-12-26  Tor Lillqvist  <tml@iki.fi>
3008
3009         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
3010         we are on a palettized display ("PseudoColor" in X11), as the code
3011         for that doesn't work anyway, and never has.
3012
3013 2000-12-22  Alexander Larsson  <alexl@redhat.com>
3014
3015         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
3016         Don't use isprint() for chars > 255.
3017
3018 2000-12-21  Havoc Pennington  <hp@redhat.com>
3019
3020         * tests/testtreeview.c: more work
3021
3022 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3023
3024         * docs/README.linux-fb:
3025         Update the docs to the new pangoft2 way.
3026
3027 2000-12-21  Alexander Larsson  <alexl@redhat.com>
3028
3029         * configure.in:
3030         For linux-fb get the pangoft2 cflags and libs. This needs a recent
3031         pango version.
3032         Remove modules/linux-fb/Makefile.
3033
3034         * gdk/linux-fb/gdkdrawable-fb2.c:
3035         Render glyphs using freetype.
3036
3037         * gdk/linux-fb/gdkfb.h:
3038         Add new fb-specific functions needed for managing windows.
3039
3040         * gdk/linux-fb/gdkmain-fb.c:
3041         Remove gdk_font_init/fini() calls.
3042
3043         * gdk/linux-fb/gdkpango-fb.c:
3044         Remove old implementation. Use pangoft2 instead.
3045
3046         * gdk/linux-fb/gdkprivate-fb.h:
3047         Remove PangoFBFont and related stuff.
3048
3049         * gdk/linux-fb/gdkwindow-fb.c:
3050         Implement drawable->get_visible_region.
3051         Implement support for _gdk_window_set_child_handler () and
3052         _gdk_window_get_decorations().
3053
3054         * modules/Makefile.am:
3055         Remove linux-fb subdir.
3056
3057         * modules/linux-fb/*:
3058         Removed all.
3059         
3060 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
3061
3062         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
3063         calls, as they are no longer needed.
3064
3065         * gtk/gtktreemodelsort.c: Fix up the comparison code.
3066         
3067         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
3068         figure out how to emit a signal on an interface.
3069
3070 2000-12-20  Havoc Pennington  <hp@redhat.com>
3071
3072         * tests: new directory to contain tests, gtk/test* should move
3073         here sometime (with appropriate on-cvs-server hackery)
3074
3075         * tests/testtreeview.c, tests/Makefile.am: a test
3076         
3077         * configure.in (AC_OUTPUT): add tests/Makefile
3078
3079         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
3080         and "invisible_set" which were missing
3081
3082         * gtk/gtkrbtree.h: some cheesy indentation fix
3083         
3084 2000-12-20  Alexander Larsson  <alexl@redhat.com>
3085
3086         * gtk/gtkinvisible.c (gtk_invisible_realize):
3087         Attach the style to the window so that the style it is not
3088         leaked when unrealizing the window.
3089
3090 2000-12-18  Havoc Pennington  <hp@redhat.com>
3091
3092         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
3093         begin/end user action where appropriate
3094         (gtk_text_view_commit_handler): add begin/end user action
3095
3096         * gtk/gtktextbuffer.c: add begin/end user action signals, and
3097         bracket interactive operations with begin/end user action pair.
3098         
3099         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
3100         "interactive" arg from insert_text and delete_text signals.
3101         Add begin_user_action, end_user_action signals
3102         (gtk_text_buffer_begin_user_action): 
3103         (gtk_text_buffer_end_user_action): New functions to delimit 
3104         a user-visible action
3105
3106         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
3107         signals.
3108         
3109 2000-12-18  Havoc Pennington  <hp@redhat.com>
3110
3111         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
3112         was pretty non-working.
3113
3114         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
3115         by passing the length to g_utf8_validate().
3116
3117 2000-12-16  Havoc Pennington  <hp@pobox.com>
3118
3119         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
3120         Port to GObject, can go back in gdk-pixbuf after setting up 
3121         a gdk-pixbuf-marshal.h header over there.
3122
3123         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
3124         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
3125         args
3126         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
3127         set
3128         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
3129         here, do it when we create the buttons later
3130         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
3131         (gtk_tree_view_map): paranoia checks that column->button is shown 
3132         and unmapped
3133         (gtk_tree_view_size_request): only request visible children.
3134         Move header size calculation in here, for cleanliness, and 
3135         to maintain invariants for child widgets if we eventually 
3136         let users set different children inside the buttons
3137         (gtk_tree_view_map_buttons): factor out code to map buttons,
3138         since it was being called several times
3139         (gtk_tree_view_size_allocate_buttons): move_resize the drag
3140         windows instead of just moving them; their height may change 
3141         if we allow random widgets in there, or the theme changes.
3142         (gtk_tree_view_size_allocate): move button size allocation 
3143         above emitting the scroll signals, to ensure a sane state when we
3144         hit user code
3145         (gtk_tree_view_button_release): remove queue_resize after
3146         tree_view_set_size(), set_size() will handle any resize queuing
3147         that's needed
3148         (gtk_tree_view_focus_in): just queue a draw, don't fool with
3149         draw_focus goo
3150         (gtk_tree_view_focus): use gtk_get_current_event() and
3151         gdk_event_get_state()
3152         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
3153         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
3154         semicolon
3155         (gtk_tree_view_create_button): show the button here
3156         (gtk_tree_view_button_clicked): actually emit the clicked signal
3157         on the column
3158         (_gtk_tree_view_set_size): return right away if the size is
3159         unchanged, as a cheesy optimization
3160         (gtk_tree_view_setup_model): rename set_model_realized to 
3161         setup_model to match the flag that indicates whether we've 
3162         called it
3163         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
3164         exist, because set_scroll_adjustment does that and it shouldn't
3165         matter what order you call these in
3166         (gtk_tree_view_get_vadjustment): ditto
3167         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
3168         for paranoia
3169         (gtk_tree_view_set_headers_visible): call
3170         gtk_tree_view_map_buttons() instead of using cut-and-paste code
3171         (gtk_tree_view_append_column): clarify whether the return value
3172         is the count of columns before or after, and do the increment 
3173         separately from the return statement so you can tell from the code.
3174         (gtk_tree_view_remove_column): ditto
3175         (gtk_tree_view_insert_column): ditto
3176         (gtk_tree_view_get_column): remove g_return_if_fail for columns
3177         outside the existing range, the docs say that outside-range
3178         columns are allowed, so we handle them as documented. (Presumably
3179         this allows a nice loop with column != NULL as test.)
3180         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
3181         mean (left/right/center etc.).
3182         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
3183         (gtk_tree_view_expand_row): add docs
3184         (gtk_tree_view_collapse_row): add docs
3185
3186         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
3187         function to emit the clicked signal on a column
3188         
3189         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
3190         state of an event
3191         (gdk_event_get_time): don't treat GDK_SCROLL 
3192         as a button event, remove default case from switch so gcc 
3193         will whine if we don't explicitly handle all event types
3194
3195         * gtk/gtktreeselection.h: added some FIXME 
3196         
3197         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
3198         "columns" to "n_columns" and "column" to "columns" for clarity
3199
3200 2000-12-16  Havoc Pennington  <hp@pobox.com>
3201         
3202         * gtk/gtktextiter.c: General cleanup of the log attr iteration
3203         stuff. This should make e.g. the delete key work again in the
3204         text widget...
3205         (gtk_text_iter_forward_cursor_positions): handle negative count
3206         (gtk_text_iter_backward_cursor_positions): handle negative count
3207         (gtk_text_iter_forward_word_ends): handle negative count
3208         (gtk_text_iter_backward_word_starts): handle negative count
3209
3210         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
3211         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
3212         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
3213         GObject. No doubt will cause breakage.
3214
3215         * demos/gtk-demo/textview.c: remove hacks around
3216         non-GObject-ification of the text objects
3217
3218         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
3219         the text tag
3220         
3221 2000-12-14  Havoc Pennington  <hp@pobox.com>
3222
3223         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
3224         that we have Xrender
3225
3226 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
3227
3228         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
3229         Add two virtualized functions gdk_drawable_get_clip_region - to
3230         get the clip region when drawing.
3231         
3232         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
3233         use invalidate_region.
3234
3235         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
3236         region.
3237
3238         * acconfig.h configure.in: Check for Xft. For now, assume
3239         that if Xft is found, Pango was compiled with Xft support
3240         as well.
3241
3242         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
3243         gdk_colormap_query_color().
3244         
3245         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
3246         with Xft if appropriate.
3247
3248         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
3249         a pangoxft context if we have XFT and the environment
3250         variable GD_USE_XFT is set.
3251         
3252         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
3253         and also possibly an XftDraw structure.
3254
3255         * gtk/gtkfontsel.c: Handle the case where the font from the
3256         style doesn't match any of the fonts a bit better.
3257         
3258         * gtk/testgtk.c: Add tabs between directional segments for
3259         hebrew/arabic test. (Not really necessary, just a little
3260         prettier.)
3261
3262 2000-12-14  Havoc Pennington  <hp@redhat.com>
3263
3264         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
3265         reading a file
3266
3267 2000-12-14  Havoc Pennington  <hp@redhat.com>
3268
3269         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
3270         unused call to get_last_line()
3271
3272         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
3273         here until boxed is working (and maybe after that - we should
3274         really not gratuitously break old code)
3275
3276         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
3277         specific types for font_desc and tabs args, move them to
3278         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
3279         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
3280
3281         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
3282         use GTK_TYPE_POINTER for signal signatures as a hack-around
3283
3284         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
3285         PangoTabArray
3286
3287         * gtk/gtktextlayout.c (line_display_iter_to_index): 
3288         make static
3289         (line_display_index_to_iter): make static
3290
3291         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
3292         to marshal a string not a boxed
3293
3294         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
3295
3296         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
3297         since the UTF-8 isn't validated yet
3298
3299         * gtk/gtktextsegment.c (char_segment_check_func): don't require
3300         lines to end in '\n'
3301         
3302         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
3303         forward_to_delimiters, and grapheme boundaries
3304         (gtk_text_view_delete_from_cursor): properly handle non-newline
3305         delimiters, and grapheme boundaries
3306
3307         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
3308         to gtk_text_iter_forward_to_delimiters, and make it work properly
3309         if empty lines end with a character other than '\n'
3310
3311         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
3312         position
3313
3314 2000-12-15  Tor Lillqvist  <tml@iki.fi>
3315
3316         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
3317
3318         * gtk/gtk.def
3319         * gdk/gdk.def: Update.
3320
3321         * gdk/win32/gdkmain-win32.c
3322         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
3323         gdkmain-win32.c here.
3324
3325         * gdk/win32/makefile.mingw.in (all): No need to make
3326         gdk-win32res.o here, the makefile one step up will call us to make
3327         it.
3328
3329         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
3330         gdkkeys-win32.
3331
3332         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
3333
3334         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
3335         call to g_source_add().
3336
3337         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
3338         leak. Thanks to Andreas Kemnade.
3339
3340 2000-12-13  Havoc Pennington  <hp@pobox.com>
3341
3342         * gtk/gtktextbtree.h: Remove double _ in front of some functions
3343
3344         * gtk/gtktext*.[hc]: update accordingly
3345         
3346 2000-12-13  Havoc Pennington  <hp@pobox.com>
3347
3348         * gtk/gtktextbtree.h: Put _ in front of every function in this 
3349         header file
3350
3351         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
3352
3353 2000-12-13  Alex Larsson  <alexl@redhat.com>
3354
3355         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
3356         Add support for ps2 intellimouse.
3357
3358         * gdkkeyboard-fb.c:
3359         Move shift-F1 repaint handling to xlate handler only.
3360         
3361         * docs/README.linux-fb:
3362         Add imps2 to docs.
3363         Document the new refresh keys.
3364         
3365 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
3366
3367         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
3368
3369         * gtk/gtkbox.c: change property types from (u)long to (u)int for
3370         ::position and ::padding.
3371
3372         * gtk/gtkcontainer.c: make ::border_width an INT property.
3373
3374         * gtk/gtkpacker.c: make ::position an INT property.
3375
3376         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
3377         guard against NULL h/v scrollbars, since this is used at construction
3378         time.
3379
3380         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
3381         internal gtk_clist_constructor().
3382
3383         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
3384         gtk_ctree_constructor().
3385
3386         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
3387         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
3388
3389         * docs/reference/Makefile.am: fun stuff, disabled docs generation
3390         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
3391
3392         * gtk/gtkwidget.[hc]:
3393         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
3394         and gtk_widget_get().
3395         (gtk_widget_new): use g_object_new_valist().
3396         (gtk_widget_set): use g_object_set_valist().
3397
3398         * gtk/gtkobject.[hc]:
3399         removed gtk_object_arg_get_info(), gtk_object_getv(),
3400         gtk_object_query_args(), gtk_object_newv(),
3401         gtk_object_class_add_signals(),
3402         gtk_object_class_user_signal_new(),
3403         gtk_object_class_user_signal_newv(),
3404         gtk_object_arg_set(), gtk_object_arg_get(),
3405         gtk_object_args_collect(),
3406         gtk_object_default_construct(),
3407         gtk_object_constructed(),
3408         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
3409         removed nsignals, signals and n_args members from GtkObjectClass.
3410         (gtk_object_new): use g_object_new_valist().
3411         (gtk_object_set): use g_object_set_valist().
3412         (gtk_object_get): use g_object_get_valist().
3413         
3414         * gtk/gtkcompat.h: define gtk_object_default_construct().
3415         
3416         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
3417         g_object_new().
3418
3419         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
3420         fucntions, cleaned up method assignments (make sure your structures
3421         are setup properly before calling out). removed all GTK_CONSTRUCTED
3422         hacks ;)
3423
3424 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
3425
3426         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
3427         off-by-one error in checks. (Dave Lambert)
3428
3429 2000-12-12  Alexander Larsson  <alexl@redhat.com>
3430
3431         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
3432         Don't free gdk_fb_keyboard twice.
3433
3434 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
3435
3436         * gtk/testgtk.c:
3437         (create_tooltips): 
3438         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
3439         use GObject swapped_signal:: properties instead.
3440
3441         * gtk/gtkcellrenderertoggle.c: 
3442         * gtk/gtkcellrenderertextpixbuf.c: 
3443         * gtk/gtkcellrenderertext.c: 
3444         * gtk/gtkcellrendererpixbuf.c: 
3445         * gtk/gtkcellrenderer.c:
3446         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
3447         missing warnings for invalid property ids, install properties
3448         with g_object_class_install_property() now.
3449         
3450         * gtk/gtksignal.c:
3451         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
3452         
3453 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
3454         
3455         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
3456         to determine if a window is the focus widget within
3457         its toplevel.
3458
3459         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
3460         to be boolean.
3461
3462         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
3463         of the case where the container CAN_FOCUS to here instead
3464         of having it in each individual move-the-focus place.
3465
3466         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
3467         focusing to be geometric in a much more obvious sense. Arrowing
3468         around is still non-intuitive because it isn't perfect and
3469         because entries, etc, grab the arrow keys, but it at least
3470         usually will do what you expect now.
3471         
3472         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
3473         file.
3474
3475         * gtk/gtknotebook.c: Change tabs to be a single item in
3476         the focus chain. Make movement of focus on tabs with arrow
3477         keys wrap around.
3478         
3479         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
3480         CHECK_FIND_CHILD macro to give informative error messages
3481         instead of silent returns.
3482
3483         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
3484         flag since we handle GdkReturn on the tabs.
3485
3486         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
3487         windows rather than sending expose events directly.
3488
3489         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
3490         definition for GtkNotebookPage into .c file, since it is private.
3491
3492         * gtk/testgtk.c (create_notebook): Add option for 
3493         testing borderless notebook.
3494
3495         * gtk/testgtk.c (page_switch): Removed egregious poking
3496         around in GTK+ internals.
3497
3498         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
3499
3500         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
3501         properly through gtk_clist_focus. Make the title headers a
3502         single item in the tab-focus chain, and make left-right wrap
3503         around.
3504
3505         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
3506         focus method so that wrapping around works properly.
3507
3508         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
3509         that is handled for the widget now. 
3510
3511 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
3512
3513         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
3514         widgets as TOPLEVEL.
3515
3516         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
3517         TOPLEVEL widgets are containers.
3518
3519         * gtk/gtkinvisible.h: Remove useless include.
3520
3521 2000-12-11  Havoc Pennington  <hp@redhat.com>
3522
3523         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
3524         Handle chopping off \r\n and 0x2029 in addition to \n before
3525         passing to PangoLayout
3526
3527         * gtk/gtkimcontextsimple.c
3528         (gtk_im_context_simple_get_preedit_string): 
3529         return an empty string if no match is pending
3530
3531         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
3532         assertion that the returned preedit string was sane
3533
3534         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
3535         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
3536         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
3537
3538 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
3539
3540         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
3541         Fix up finalizer to chain to its parent.
3542
3543 2000-12-11  Alexander Larsson  <alexl@redhat.com>
3544
3545         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
3546         Clearified the difference between the keyboard types. Wrote a note
3547         about the magic sysrq key to get out of raw mode.
3548
3549 2000-12-09  James Henstridge  <james@daa.com.au>
3550
3551         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
3552         member to hold masks for detecting the start of a protocol packet.
3553         (mouse_devs): add packet start masks for ps2 and ms device types.
3554         Left the mask for fidmour blank, as I have no idea what it should
3555         be.
3556         (handle_mouse_io): skip bytes until we get to the start of a
3557         packet.  My Logitech mouse seems to be passing an extra NULL pad
3558         byte, and GPM does a similar thing here.
3559         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
3560         this is the ms mouse driver.
3561         (gdk_fb_mouse_ms_packet): fix up button handling, which was
3562         completely broken except for button1.  It was checking the wrong
3563         bit in the packet for the status of the right mouse button, and
3564         wrongly assuming right == button2 rather than 3.  I fixed that and
3565         also added support for middle button (button2).
3566
3567 2000-12-08  Havoc Pennington  <hp@redhat.com>
3568
3569         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
3570         that cause a segfault on text insertion
3571
3572         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
3573         warning
3574
3575         * gtk/gtktextiter.c (test_log_attrs): use
3576         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
3577
3578         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
3579         Get log attrs for a line, using a cache stored on the buffer
3580         
3581         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
3582         reported by Jeff Franks
3583
3584 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3585
3586         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
3587         /dev/ttyS0 -> /dev/mouse
3588
3589 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3590
3591         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
3592         Added dummy gdk_fontset_load.
3593
3594 2000-12-08  Alexander Larsson  <alexl@redhat.com>
3595
3596         * docs/README.linux-fb:
3597         * docs/Makefile.am:
3598         Initial GtkFB docs.
3599         
3600         * gdk/linux-fb/Makefile.am:
3601         Define GDK_DATA_PREFIX.
3602
3603         * gdk/linux-fb/gdkmain-fb.c:
3604         Fix typo.
3605         Change default display to /dev/fb0.
3606
3607         * gdk/linux-fb/gdkpango-fb.c:
3608         Add $(prefix)/share/fonts/ to font path.
3609         
3610 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
3611
3612         * gdk/linux-fb/gdkkeyboard-fb.c:
3613         New file containing the abstracted keyboard driver. Most code
3614         taken from gdkinput-ps2.c
3615
3616         * gdk/linux-fb/gdkinput-ps2.c:
3617         Removed file.
3618         
3619         * gdk/linux-fb/Makefile.am:
3620         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
3621
3622         * gdk/linux-fb/gdkcolor-fb.c:
3623         display->fb was renamed to display->fb_fd.
3624
3625         * gdk/linux-fb/gdkcursor-fb.c:
3626         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3627
3628         * gdk/linux-fb/gdkinput.c:
3629         Moved gdk_input_init here from gdkinput-ps2.c
3630
3631         * gdk/linux-fb/gdkmain-fb.c:
3632         display->fb was renamed to display->fb_fd.
3633         Now the tty and the console is opened here instead
3634         of in the keyboard driver. Also check GDK_VT to see what
3635         tty to open.
3636         Move gdk_beep () here from gdkinput-ps2.c
3637         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3638
3639         * gdk/linux-fb/gdkmouse-fb.c:
3640         Add header.
3641         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3642         Return correct keyboard modifiers.
3643         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
3644
3645         * gdk/linux-fb/gdkprivate-fb.h:
3646         Add tty and vt info to display.
3647         Add orignal modeinfo storage to display
3648         Update global functions
3649
3650         * gdk/linux-fb/gdkwindow-fb.c:
3651         Added gdk_fb_window_find_focus().
3652         gdk_mouse_get_info -> gdk_fb_mouse_get_info
3653
3654 2000-12-07  Havoc Pennington  <hp@pobox.com>
3655
3656         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
3657         function, noticed by Alex
3658
3659 2000-12-06  Elliot Lee  <sopwith@redhat.com>
3660
3661         * configure.in: Detect freetype properly
3662
3663         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
3664         above.
3665
3666 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3667
3668         * gdk/linux-fb/Makefile.am:
3669         Add gdkmouse-fb.c
3670         
3671         * gdk/linux-fb/gdkmouse-fb.c:
3672         New file. Abstracted the mouse drivers a bit.
3673
3674         * gdk/linux-fb/gdkcursor-fb.c:
3675         The cursor hide/show functions was moved here from gdkinput-ps2.c.
3676
3677         * gdk/linux-fb/gdkinput-ps2.c:
3678         Removed old mouse handling code. Moved cursor handling code
3679         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
3680         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
3681         gdk_mouse_get_info.
3682
3683         * gdk/linux-fb/gdkmain-fb.c:
3684         Pass NULL pointers for x,y in gdk_mouse_get_info call.
3685
3686         * gdk/linux-fb/gdkprivate-fb.h:
3687         Removed public gdk_fb_find_common_ancestor, added and renamed
3688         functions for the new mouse handling code.
3689
3690         * gdk/linux-fb/gdkwindow-fb.c:
3691         Moved gdk_fb_window_send_crossing_events here. added global
3692         variable gdk_fb_window_containing_pointer. made
3693         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
3694         renamed to gdk_mouse_get_info.
3695
3696 2000-12-06  Alexander Larsson  <alexl@redhat.com>
3697
3698         * gdk/linux-fb/gdkevents-fb.c:
3699         Update to match latest gmain/gsource changes.
3700
3701         * gdk/linux-fb/gdkinput-ps2.c:
3702         Bogus gdk_keymap_get_entries_for_keycode implementation so that
3703         it links. Will be implemented later.
3704
3705 2000-12-03  Havoc Pennington  <hp@pobox.com>
3706
3707         * gdk/Makefile.am: add gdkkeys.[hc]
3708
3709         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
3710         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
3711
3712         * acconfig.h, configure.in: add checks and command line options
3713         for XKB
3714
3715         * gdk/x11/gdkkeys-x11.c: Implement the above functions
3716         
3717         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
3718         and group in the key event
3719
3720         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
3721         field with the low-level hardware key code, and a group
3722         field with the keyboard group
3723
3724         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
3725         and declare a couple globals used for keymap handling
3726         
3727         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
3728         hold down Shift-Control and type a hex number to get a Unicode 
3729         character corresponding to the hex number
3730         (gtk_im_context_simple_get_preedit_string): Fix cursor position
3731         (return bytes not chars)
3732
3733 2000-12-05  Elliot Lee  <sopwith@redhat.com>
3734
3735         * gdk/gdkcolor.h: Make GdkColor specify element sizes
3736         to avoid waste on 64-bit platforms.
3737
3738 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
3739
3740         * INSTALL: Fix link to PNG home, remove reference
3741         to fribidi.
3742
3743         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
3744         
3745         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
3746         tested.)
3747
3748         * gtk/gtkcheckmenuitem.c: Permanently turn on
3749         always_show_toggle.
3750
3751         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
3752         be NULL. (Vladimir Klebanov, #26545)
3753
3754         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
3755         some signed/unsigned comparison problems. (#6510,
3756         David Kaelbling)
3757
3758         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
3759         return type to boolean (Oskar Liljeblad, #18648)
3760
3761 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3762
3763         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
3764         Remove bogus colormap setting.
3765
3766 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3767
3768         * gdk/linux-fb/gdkcolor-fb.c:
3769         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
3770
3771         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
3772         Must set colormap.
3773         
3774 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
3775
3776         * docs/tutorial/gtk-tut.sgml: DND updates
3777
3778 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
3779
3780         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3781         Remove old debug g_warning().
3782         (gdk_fb_draw_drawable): The src argument can be either a wrapper
3783         or an implementation, just pass the implementation to draw_drawable_2.
3784         
3785         * gdk/linux-fb/gdkprivate-fb.h:
3786         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
3787
3788         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3789         clear and invalidate area when window is destroyed.
3790         (send_map_events): Remove old commented out code.
3791
3792 2000-12-05  Alexander Larsson  <alexl@redhat.com>
3793
3794         * gdk/linux-fb/gdkpango-fb.c:
3795         Use italic instead of oblique in font aliases.
3796         
3797         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
3798         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
3799         other unsupported functions.
3800
3801 2000-12-04  Havoc Pennington  <hp@redhat.com>
3802
3803         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
3804
3805         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
3806
3807         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
3808
3809         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
3810         hack to avoid infinite loops (synthetic expose event) - 
3811         Owen has more appropriate fixes in a branch he'll check in later.
3812
3813         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
3814         separator, CR, and CRLF as line ends
3815
3816         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
3817         into lines using pango_find_paragraph_boundary(); other bits of
3818         the widget are still going to be broken if the boundary isn't '\n'
3819         though
3820
3821 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3822
3823         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
3824         multiply.
3825
3826         * gdk/linux-fb/gdkpango-fb.c:
3827         Copied some 26.6 scaling macros from pango to clean up the rounding.
3828         (pango_fb_font_get_glyph_info): Correct sign on x value.
3829
3830         * gdk/linux-fb/gdkprivate-fb.h:
3831         Removed unreferenced external functions.
3832
3833         * modules/linux-fb/Makefile.am: Use ` instead of '.
3834
3835         * modules/linux-fb/basic.c:
3836         Remove dead code. In particular the dummy lang engine which broke all
3837         pango layouts in GtkFB. Don't include tables-big.i anymore.
3838
3839         * modules/linux-fb/tables-big.i:
3840         Upgrade to latest version from pango. Left for reference, basic_ranges
3841         moved to basic.c.
3842         
3843 2000-12-04  Havoc Pennington  <hp@redhat.com>
3844
3845         Fix bugs Alex found:
3846         
3847         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
3848         to "draw"
3849
3850         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
3851
3852         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
3853
3854         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
3855         implementation in here, apparently the expose() implementation was
3856         dead code.
3857
3858 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3859
3860         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3861         Return positive descent.
3862
3863 2000-12-02  Havoc Pennington  <hp@pobox.com>
3864
3865         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
3866         method and signal
3867         
3868         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
3869         calls gdk_window_process_updates() to push the exposes through
3870         (gtk_widget_class_init): No more draw signal, no
3871         gtk_widget_real_draw()  
3872         
3873         * gtk/gtkbin.c (gtk_bin_draw): remove
3874
3875         * gtk/gtkbox.c (gtk_box_draw): remove
3876
3877         * gtk/gtkbutton.c (gtk_button_draw): remove
3878
3879         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
3880
3881         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
3882
3883         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
3884
3885         * gtk/gtkclist.c (gtk_clist_draw): remove
3886
3887         * gtk/gtkentry.c (gtk_entry_draw): remove
3888
3889         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
3890
3891         * gtk/gtkfixed.c (gtk_fixed_draw): remove
3892
3893         * gtk/gtkframe.c (gtk_frame_draw): remove
3894
3895         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
3896
3897         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
3898
3899         * gtk/gtklayout.c (gtk_layout_draw): remove
3900
3901         * gtk/gtklist.c (gtk_list_draw): remove
3902
3903         * gtk/gtklistitem.c (gtk_list_item_draw): remove
3904
3905         * gtk/gtkmenu.c (gtk_menu_draw): remove
3906
3907         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
3908
3909         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
3910
3911         * gtk/gtknotebook.c (gtk_notebook_draw): remove
3912
3913         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
3914
3915         * gtk/gtkpacker.c (gtk_packer_draw): remove
3916
3917         * gtk/gtkrange.c (gtk_range_draw): remove
3918
3919         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
3920
3921         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
3922
3923         * gtk/gtktable.c (gtk_table_draw): remove
3924
3925         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
3926
3927         * gtk/gtktext.c (gtk_text_draw): remove
3928
3929         * gtk/gtktextview.c (gtk_text_view_draw): remove
3930
3931         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
3932
3933         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
3934
3935         * gtk/gtktree.c (gtk_tree_draw): remove
3936
3937         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
3938
3939         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
3940
3941         * gtk/gtkviewport.c (gtk_viewport_draw): remove
3942
3943         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
3944
3945         * gtk/gtkvscale.c (gtk_vscale_draw): remove
3946
3947         * gtk/gtkwindow.c (gtk_window_draw): remove
3948
3949 2000-20-01  Anders Carlsson  <andersca@gnu.org>
3950
3951         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
3952         a GtkToggleButton is both insensitive and active, it was being
3953         drawn by the GtkButton draw handler which doesn't check the
3954         state. Now it's calling gtk_toggle_button_paint instead.
3955         
3956 2000-12-01  Havoc Pennington  <hp@redhat.com>
3957
3958         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
3959         dangling pointers to the appearance attributes from the 
3960         line display
3961
3962         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
3963         width/height to mean "full width/height of drawable"
3964
3965         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
3966         click to select word/line
3967         
3968         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
3969         when getting log attrs. Get a slice, so that pixmaps and stuff
3970         are properly handled.
3971
3972         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3973         paste into the selection (replaces selection now, previously
3974         crashed or added to selection). Reveals longstanding btree bug -
3975         select multiple lines, middle-click on the selection, boom. This
3976         isn't related to my changes though.
3977
3978         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3979         PangoLogAttrs changes
3980         (gtk_entry_move_backward_word): ditto
3981
3982         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3983         functions return bool whether the iter moved onto a
3984         dereferenceable position.
3985  
3986         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3987         functions for motion in terms of display lines.
3988
3989         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3990         get the buffer a mark is inside
3991         
3992 2000-12-01  Alexander Larsson  <alexl@redhat.com>
3993
3994         * gdk/linux-fb/Makefile.am:
3995         * modules/linux-fb/Makefile.am:
3996         Freetype 2 final uses freetype-config
3997
3998         * gdk/linux-fb/gdkpango-fb.c:
3999         Upgrade to use Freetype 2 final.
4000         More flexible support for font aliases, this also fixes a bug with
4001         GtkFontSelector, as the aliases must be visible in the font/family list,
4002         or GtkFontSelector reads uninitialized memory.
4003
4004 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
4005
4006         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
4007         XGetIMValues to properly terminate variable argument list, and do
4008         NULL return check for ic_values and xim_styles.
4009
4010         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
4011         Restore preedit state after XmbResetIC().
4012         
4013         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
4014         XvaCreateNestedList() should take XvaNestedList, but not
4015         XvaNestedList*.
4016
4017         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
4018         preedit_draw_callback, preedit_caret_callback): Match
4019         "preedit-changed" signal name to "preedit_changed" to be
4020         consistent to the spec.
4021
4022         * gtk/gtkimcontextsimple.c (check_table):
4023         Match "preedit-changed" to "preedit_changed" to be consistent
4024         to the spec.
4025
4026 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
4027
4028         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
4029         gc->clip_region == NULL>
4030
4031 2000-11-30  Tor Lillqvist  <tml@iki.fi>
4032
4033         Changes by Hans Breuer:
4034         
4035         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
4036         Dont't use negative width and height as max_hints. This fixes
4037         Owen's recent testgtk changes for win32.
4038
4039         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
4040         gdk_win32_hdc_release): These are exported and may be called with
4041         other drawable types than our GdkDrawableImplWin32 (?).
4042
4043         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
4044         so always #define USE_BACKING_STORE.
4045
4046         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
4047         of printf for debugging output.
4048
4049         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
4050         
4051         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
4052
4053         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
4054         declaration.
4055
4056         * gtk/gtktexttypes.h: Ditto.
4057
4058         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
4059         (GDK_VoidSymbol) also if in case of arg check failure.
4060
4061         * gtk/gtkimcontextsimple.c
4062         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
4063         position to the pointer, but to the variable it points to.
4064
4065         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
4066
4067         * gtk/gtk.def: Updates.
4068
4069 2000-11-29  Elliot Lee  <sopwith@redhat.com>
4070
4071         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
4072         GTK_TYPE_TREE_MODEL.
4073
4074 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4075
4076         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
4077         Set the size of the font from the description.
4078         (gdk_text_width): Gross hack that calculates the width
4079         of text by text_length * size/2. This is necessary because
4080         GtkLabel does some ugly gtk_string_width call to calculate
4081         an good size.
4082         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
4083
4084 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
4085
4086         * docs/tutorial/gtk-tut.sgml: DND updates
4087
4088 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4089
4090         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4091         If you pass width or height == 0 to gdk_window_clear_area they
4092         should be calculated from the window size.
4093
4094 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4095
4096         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
4097         a grab, but no grab-cursor, use the cursor from the grabbed
4098         window. (gdk_fb_window_send_crossing_events): Send normal
4099         enter/leave notifications if grab and owner_events == TRUE.
4100
4101 2000-11-29  Alexander Larsson  <alexl@redhat.com>
4102
4103         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4104         Do implicit button grabs, even if the window doesn't
4105         want the event.
4106         (gdk_fb_window_send_crossing_events): If there is a
4107         grab, only the grabbed window gets normal enter/leave
4108         notifications. On ungrab go from grabbed window to current.
4109         Don't send any notification to b when propagating from c -> b.
4110         If setting a grab on window, don't set prev_window.
4111         (handle_mouse_input): Send enter/leave events to the window the
4112         mouse is over, not the grabbed one.
4113         
4114 2000-11-28  Elliot Lee  <sopwith@redhat.com>
4115
4116         * gdk/gdkregion-generic.c: Zap warning.
4117         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
4118         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
4119
4120 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
4121
4122         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4123         The cursor should be hidden if it is part of either the
4124         source or destination region. Not only if it is in both.
4125         (gdk_window_set_transient_for): Silence warnings.
4126
4127 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4128
4129         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
4130         The default mode in X is Pie Arcs, therefore that is
4131         what Gtk+ uses.
4132
4133 2000-11-28  Alexander Larsson  <alexl@redhat.com>
4134
4135         * gdk/linux-fb/gdkinput-ps2.c:
4136         Implement correct EnterNotify/LeaveNotify:
4137         (gdk_fb_window_send_crossing_events): New function that sends
4138         all GdkCrossingEvents from the last mouse-window to the specified
4139         destination.
4140         (gdk_fb_window_visibility_crossing): Removed function.
4141         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
4142         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
4143         instead of gdk_window_get_pointer() for better readability.
4144
4145         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
4146         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
4147
4148         * gdk/linux-fb/gdkprivate-fb.h:
4149         removed gdk_fb_window_visibility_crossing, added
4150         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
4151
4152         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
4153         New function that finds the least common ancestor of two windows.
4154         (gdk_window_show, gdk_window_hide):
4155         Use gdk_fb_window_send_crossing_events.
4156         (gdk_fb_window_move_resize): Send configure events to toplevel
4157         windows. Use gdk_fb_window_send_crossing_events.
4158
4159 2000-11-27  Havoc Pennington  <hp@redhat.com>
4160
4161         * gtk/gtkprivate.h (enum): Remove a trailing comma
4162
4163 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
4164
4165         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
4166         the "changed" callback of the adjustment.  We need to redraw the
4167         spin button's arrows when the adjustment's range changes.
4168         (adjustment_changed_cb): Draw the arrows.
4169         (gtk_spin_button_value_changed): Draw the arrows.
4170
4171 2000-11-23  Alexander Larsson  <alexl@redhat.com>
4172
4173         * gdk/linux-fb/gdkselection-fb.c:
4174         Initial selection implementation.
4175
4176         * gtk/gtkselection.c:
4177         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
4178         requestor in gtk_selection_request.
4179         
4180         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
4181         Added gdk_selection_property atom.
4182
4183         * gdk/linux-fb/gdkprivate-fb.h:
4184         Export _gdk_selection_window_destroyed.
4185         Removed mask_off_x/y from GdkCursorPrivateFB.
4186         Removed hbearing, added top, left to PangoFBGlyphInfo.
4187
4188         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4189         Call _gdk_selection_window_destroyed
4190         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
4191         the root window has been created.
4192         (static_dx_hack, static_dy_hack, compare_draw_rects,
4193         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
4194         in region. They are already sorted. Instead just traverse them in
4195         reverse if draw_direction < 0.
4196         
4197         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
4198         Double-clicks must be sent after the normal button_press.
4199         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
4200         
4201         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
4202         Pass _gdk_fb_screen_gc instead of NULL.
4203
4204         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4205         Initialize gdk_selection_property.
4206         (gdk_event_make): Remove unused code.
4207
4208         * gdk/linux-fb/gdkcursor-fb.c:
4209         Make the pixmap for the cursor the same size as the mask. Also remove
4210         the mask_off_x/y fields in GdkCursorPrivateFB and combine
4211         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
4212         Now the whole cursor is visible.
4213
4214         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4215         Fix bug where xdest+height instead of ydest+height was used
4216         to calculate if the source and dest overlapped. This fixes the
4217         redraw bug when the main window in testgtk was scrolled when
4218         partially covered by a tall window.
4219         Copy rectangles in region in order depending on draw_direction.
4220         Also moved the draw_direction flipping of start_y and end_y into
4221         the gc functions, as this might not be what all of them want.
4222         (gdk_fb_draw_lines): Support dashed lines.
4223         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
4224         so that the text is positioned correctly (was 1 pixel high).
4225
4226         gdk/linux-fb/gdkgc-fb.c:
4227         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
4228         all lines were drawn a pixel to short. Also checked the default of
4229         the rest of the values, and they're the same as X now.
4230
4231         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
4232         Clean up pixel positioning of the glyphs. Just use bgy->top and
4233         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
4234         to all divisions to get correct rounding behaviour.
4235
4236         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
4237         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
4238         Moved start_y/end_y flip into draw_drawable implementations.
4239         Flip also x rendering when draw_direction < 0.
4240         Remove unneccesary multiply with draw_direction.
4241
4242 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
4243
4244         * docs/tutorial/gtk-tut.sgml:
4245           - get rid of gtk_toggle_button_toggled FUD
4246           - start DND section - needs work - based on:
4247                 http://wolfpack.twu.net/docs/gtkdnd/
4248
4249 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4250
4251         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
4252         Correct calculation of font metrics. Now GtkEntrys have sane
4253         size.
4254
4255 2000-11-22  Alexander Larsson  <alexl@redhat.com>
4256
4257         * gdk/gdktypes.h:
4258         Add new type GdkSpan
4259         
4260         * docs/reference/gdk/gdk-sections.txt,
4261         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
4262         gdk/gdkregion.h:
4263         Implement and document gdk_region_spans_intersect_foreach.
4264
4265         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
4266         Add new file gdkrender-fb.c which contains all core
4267         rendering code.
4268         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
4269         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
4270         (optimized rectangle fillers).
4271
4272         * gdk/linux-fb/gdkdrawable-fb2.c:
4273         Move all rendering code to gdkrender-fb.c.
4274         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
4275         Use the new span intersection functions in gdk_fb_fill_spans.
4276         gdk_fb_draw_rectangle() clips filled rectangles and calls
4277         gc->fill_rectangle with the result.
4278         gdk_fb_fill_spans() gets extra argument "sorted".
4279
4280         * gdk/linux-fb/gdkevents-fb.c:
4281         Remove unused includes and defines.
4282         New function gdk_fb_get_time() to get correct time for events.
4283
4284         * gdk/linux-fb/gdkinput-ps2.c:
4285         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
4286         Make sure to set the time of all events.
4287
4288         * gdk/linux-fb/gdkmain-fb.c:
4289         Use gdk_fb_get_time ().
4290
4291         * gdk/linux-fb/gdkprivate-fb.h:
4292         New virtual GC calls: fill_span & fill_rectangle.
4293         Export gdk_fb_get_time().
4294         gdk_fb_fill_spans() gets extra argument "sorted".
4295
4296         * gdk/linux-fb/mi*.c:
4297         Use GdkSpan instead of GdkRectangle.
4298         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
4299         from XFree 4 source)
4300         
4301 2000-11-22    <jrb@redhat.com>
4302
4303         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
4304         reversing the order in an if statement will do.  Doing so managed
4305         to make the treemodelsort half work.  Other half will follow after
4306         I get the insert function fully fixed.
4307
4308 2000-11-21  Elliot Lee  <sopwith@redhat.com>
4309         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
4310         more than 2 bits. Besides, I need to implement an evil hack. :)
4311
4312 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
4313
4314         * docs/tutorial/gtk-tut.sgml: minor corrections
4315
4316 2000-11-20  Jonathan Blandford <jrb@redhat.com>
4317         * gtk/gtktreemodelsort.h: Add convertion functions to let you
4318           convert to and from relative path's and iters.
4319
4320         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
4321           testing sorting functions a bit better.  Currently broken -- will
4322           fix in morning.
4323
4324 2000-11-20  Havoc Pennington  <hp@redhat.com>
4325
4326         * gtk/gtkwidget.c: Documented a bunch of functions in here
4327         (gtk_widget_realize): Warn if you try to realize
4328         a widget with no parent that isn't a toplevel
4329         (gtk_widget_intersect): return a gboolean
4330
4331 2000-11-20  Havoc Pennington  <hp@redhat.com>
4332
4333         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
4334         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
4335         scrolling to be implemented in GDK to finish. Also, right now
4336         we just size_allocate all children on every layout change,
4337         which is pretty lame. Test commented out of testtext.c, 
4338         until it works better.
4339
4340 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
4341
4342         * gdk/linux-fb/gdkdrawable-fb2.c:
4343         Removed unused arguments from gdk_fb_drawable_get_pixel().
4344
4345         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
4346         Renamed fidur specific mouse packet data in MouseDevice to
4347         generic. Used it in ps2 mouse handling code to avoid blocking
4348         reads.
4349
4350 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
4351
4352         * demos/gtk-demo/main.c: Changed to have the list become
4353         non-italic when the demo window is destroyed through an external
4354         event (like a close button).  Doing so found three bugs in the
4355         widget.
4356
4357         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
4358
4359         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
4360         we actually set the cell.
4361
4362         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
4363
4364         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
4365         free a leaked path.  Thanks memprof.
4366
4367 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
4368
4369         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
4370         off-by-one error when destroying allocated segments
4371         on failure. (Elliot)
4372
4373 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
4374
4375         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
4376         memleaks found by Evan Martin.
4377
4378 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
4379
4380         * Released 1.3.2
4381         
4382         * NEWS: Updates for 1.3.2
4383
4384 2000-11-17  Tor Lillqvist  <tml@iki.fi>
4385
4386         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
4387         but in general for window system specific events.
4388
4389         * gtk/gtk.def
4390         * gtk/makefile.mingw.in
4391         * gtk/makefile.msc.in: Update.
4392         
4393         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
4394
4395 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
4396
4397         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
4398         distribute gtk.immodules.
4399
4400         * gtk/Makefile.am (install-data-local): Don't install the
4401         gtk.immodules file created for the uninstalled modules;
4402         instead run gtk-query-immodules after install
4403
4404 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
4405
4406         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
4407         -rpath to the right install location.
4408
4409         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
4410         -export-dynamic.
4411
4412         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
4413         properly.
4414
4415 2000-11-15  Havoc Pennington  <hp@pobox.com>
4416
4417         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
4418         patch from Mikael Hermansson to temporarily stop blinking while
4419         the user is using the keyboard to type or navigate. 
4420
4421         Also, when blinking, stay on for longer than we stay off. Also,
4422         return from start_cursor_blink if !cursor_visible, to save
4423         checking that flag all over the place before we call
4424         start_cursor_blink.
4425
4426 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
4427
4428         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
4429         only contain a "fontset" line, which is now ignored.
4430
4431         * gtk/gtkentry.c (gtk_entry_button_release): Make 
4432         double-click-to-select-word work.
4433         
4434 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
4435
4436         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
4437         Don't move back one char when we are actually at the end of the 
4438         paragraph.
4439
4440 2000-11-15  Robert Brady  <robert@suse.co.uk>
4441
4442         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
4443         'o' < 'p'.
4444         
4445         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
4446         bind_textdomain_codeset.
4447
4448         (gtk_init_check): Make the warning about translating default:LTR
4449         sterner.
4450         
4451 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
4452
4453         * **/Makefile.am : remove unecessary rules for win32-specific
4454         config-substituted targets. If you want these rules, use
4455         --enable-maintainer-mode (called automatically by autogen.sh).
4456         Stops a lot of unneccessary make-time warnings.
4457
4458         * gtk/gtktext{layout,display}.c: Factor in total width as
4459         well as screen when figuring alignment for word-wrap as well as
4460         no wrap; this is necessary to handle lines that cannot be wrapped
4461         at all.
4462
4463 2000-11-15  Havoc Pennington  <hp@redhat.com>
4464
4465         * gtk/testtext.c: Implement essential color cycling feature
4466
4467 2000-11-15  Havoc Pennington  <hp@redhat.com>
4468
4469         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
4470         when we invalidate the main window.
4471
4472         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
4473         GtkTextView will now invalidate the side windows for us when text
4474         changes.
4475
4476 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
4477
4478         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
4479         unconditionally, since we may need to update the horizontal
4480         scrollbars even if the height didn't change.
4481
4482         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
4483         the extra attrs, since some of them affect size.
4484
4485         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
4486         x_offset correctly.
4487
4488 2000-11-15  Havoc Pennington  <hp@redhat.com>
4489
4490         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
4491         don't move the first line out into the margin, instead move the
4492         whole paragraph in order to make space for the first line within 
4493         the margin
4494
4495 2000-11-15  Havoc Pennington  <hp@redhat.com>
4496
4497         * gtk/gtktextview.c (changed_handler): offset redraw rect by
4498         xoffset in addition to yoffset, so horizontal scrolling doesn't
4499         break redraws
4500
4501 2000-11-15  Havoc Pennington  <hp@redhat.com>
4502
4503         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
4504         from the cursor
4505         (render_layout_line): fix reversed test that caused weird
4506         underlines to get drawn
4507
4508 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4509
4510         * gdk/linux-fb/gdkprivate-fb.h:
4511         Fix debug macros.
4512         
4513 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
4514
4515         * gdk/linux-fb/gdkprivate-fb.h:
4516         Added virtual functions set_pixel, get_color,
4517         fill_span and draw_drawable to the GC.
4518         Added global _gdk_fb_screen_gc to use instead of
4519         NULL when drawing to the screen.
4520         Added _gdk_fb_gc_calc_state() prototype.
4521
4522         * gdk/linux-fb/gdkgc-fb.c:
4523         Call _gdk_fb_gc_calc_state() on any gc state change.
4524
4525         * gdk/linux-fb/gdkglobals-fb.c:
4526         Add _gdk_fb_screen_gc
4527                 
4528         * gdk/linux-fb/gdkdrawable-fb2.c:
4529         _gdk_fb_gc_calc_state() calculates best functions
4530         for the GC state and depth.
4531         Moved bpp specialized code to separate functions.
4532         Added optimized 24 bpp AA draw_drawable.
4533
4534         * gdk/linux-fb/gdkevents-fb.c:
4535         Silence gcc warning.
4536
4537         * gdk/linux-fb/gdkimage-fb.c:
4538         Use _gdk_fb_screen_gc
4539
4540         * gdk/linux-fb/gdkwindow-fb.c:
4541         Init and use _gdk_fb_screen_gc
4542
4543         * gdk/linux-fb/mitypes.h:
4544         Remove unused types.
4545
4546 2000-11-14  Havoc Pennington  <hp@pobox.com>
4547
4548         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
4549         to pixels
4550
4551 2000-11-14  Havoc Pennington  <hp@pobox.com>
4552
4553         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
4554
4555         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
4556         unknown char, no real reason we were using a variable. 
4557         Remove gtk_text_unknown_char variable. Fix all the text widget
4558         files accordingly.
4559
4560         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
4561         since the Unicode spec seems to prefer that character for our
4562         purposes.
4563
4564 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
4565
4566         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
4567         value of g_getenv() isn't freeable, so g_strdup it.
4568
4569         * modules/input/inuktitut.c: Inuktitut input method.
4570
4571         * modules/input/Makefile.am: Build this.
4572         
4573 2000-11-14  Elliot Lee  <sopwith@redhat.com>
4574
4575         * gtk/Makefile.am: Install gtk.immodules, needed for operation
4576         of gtk programs.
4577
4578 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
4579
4580         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
4581         reversed > that was causing Home to go to end of previous line.
4582
4583         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
4584         modified-keypresses (leave for bindings.)
4585
4586         * modules/input/Makefile.am: Remove useless -export-dynamic
4587         from module LDFLAGS.
4588
4589 2000-11-14  Havoc Pennington  <hp@redhat.com>
4590
4591         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
4592         higher.
4593
4594         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
4595         account. Also, render rise, underline, background, etc. for
4596         pixbufs as well as text. Also, draw underlines one pixel higher.
4597
4598         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
4599         PangoAttribute for the rise, so it gets drawn properly. Also,
4600         add the GtkTextAppearance attribute for pixbuf/widget segments
4601         as well; we should go ahead and have rise, underline, background,
4602         stipple work for those
4603
4604         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
4605         Pango
4606
4607 2000-11-15  Tor Lillqvist  <tml@iki.fi>
4608
4609         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
4610
4611         * gtk/gtk.def: Update.
4612
4613         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
4614         included.
4615         (gtk_rc_get_im_module_file): Use run-time installation directory
4616         on Win32.
4617
4618         * gdk/win32/rc/gdk.rc: Remove.
4619         * gdk/win32/rc/gdk.rc.in: New file.
4620         * gdk/win32/rc/Makefile.am: New file
4621         * gdk/win32/Makefile.am: Corresponding changes.
4622
4623         * gtk/gtk.rc: Remove.
4624         * gtk/gtk-win32.rc.in: New file.
4625         * gtk/Makefile.am: Corresponding changes.
4626
4627         * configure.in: Corresponding changes.
4628
4629         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
4630         has a built gtkcompat.h. Developers using CVS code on Win32 can
4631         hand-edit it from gtkcompat.h.in.
4632
4633         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
4634         gtkcompat.h from gtkcompat.h.win32.
4635
4636 2000-11-14  Havoc Pennington  <hp@redhat.com>
4637
4638         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
4639         to default to GDK_ACTION_MOVE if the drag is within a single
4640         widget. Defaults to GDK_ACTION_COPY between widgets.
4641
4642 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
4643
4644         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
4645
4646         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
4647
4648         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
4649         srcdir != builddir
4650
4651         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
4652
4653         * configure.in (GTK_VERSION): Up to 1.3.2
4654
4655         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
4656         gtkimcontextxim.h
4657
4658         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
4659         missing doc comment.
4660
4661 2000-11-14  Alexander Larsson  <alexl@redhat.com>
4662
4663         * modules/linux-fb/basic.c:
4664         Use the glib iconv wrappers.
4665
4666 2000-11-13  Havoc Pennington  <hp@pobox.com>
4667
4668         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
4669         still more bugs.
4670
4671         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
4672         scroll the GdkWindows before realization.
4673
4674 2000-11-13  Havoc Pennington  <hp@redhat.com>
4675
4676         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
4677         where GC didn't always get updated properly
4678
4679         * demos/gtk-demo/textview.c (create_tags): Use subattributes
4680         of fonts instead of setting the entire font
4681
4682         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
4683         setting entire font
4684
4685         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
4686
4687         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
4688         a bunch of individually-settable font attributes. You can still 
4689         use the "font" and "font_desc" args, they just set all the font
4690         attributes at once.
4691
4692 2000-11-13 Elliot Lee <sopwith@redhat.com>
4693
4694         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
4695
4696 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
4697
4698         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
4699         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
4700
4701         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
4702         work better.
4703
4704 2000-11-13  Havoc Pennington  <hp@redhat.com>
4705
4706         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
4707         the module file.
4708
4709         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
4710         dest->language
4711
4712         * gtk/testtext.c: Test pixels above/below/inside paragraphs
4713         settings
4714
4715         * gtk/gtktextview.c: Implement object args and setters/getters for
4716         all the aspects of the GtkTextAttributes that are not set from
4717         GtkWidget attributes. This is spacing, justification, margins,
4718         etc.
4719
4720         (gtk_text_view_set_arg)
4721         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
4722         args
4723         (gtk_text_view_class_init): Add args for justify, left_margin,
4724         right_margin, indent, and tabs
4725         
4726
4727         * gtk/gtktextlayout.c (set_para_values): fix to display indent
4728         attribute properly
4729
4730         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
4731         replace with indent attribute
4732
4733         * gtk/gtktextlayout.c (set_para_values): multiply indent by
4734         PANGO_SCALE
4735
4736         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
4737         rearranging code to do that
4738         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
4739         i.e. don't subtract the top_margin first, just to keep
4740         all margin-futzing in one place.
4741
4742         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
4743
4744         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
4745         special case of last line, Pango now handles this itself.
4746         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
4747         Y coordinate
4748         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
4749         (find_display_line_above): wasn't moving the byte index as it
4750         iterated over lines, so always returned byte 0. Also, port to use
4751         PangoLayoutIter.
4752         (find_display_line_below): same problem as
4753         find_display_line_above. Also, port to use PangoLayoutIter.
4754
4755 2000-11-13  Alexander Larsson  <alexl@redhat.com>
4756
4757         * gdk/linux-fb/*.[ch]:
4758         Massive reindent to gtk+ standard. My hands hurt.
4759
4760         * gdk/linux-fb/gdkcolor-fb.c:
4761         Move GdkColorPrivateFB from inherited to windowing_data
4762
4763         * gdk/linux-fb/gdkcursor-fb.c:
4764         _gdk_cursor_new_from_pixmap made static
4765
4766         * gdk/linux-fb/gdkdnd-fb.c:
4767         GdkDragContextPrivate moved to windowing_data
4768
4769         * gdk/linux-fb/gdkdrawable-fb2.c:
4770         Removed endian.h, use glib endianness macros instead
4771         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
4772         and GDK_DRAWABLE_IMPL_FBDATA
4773
4774         * gdk/linux-fb/gdkfont-fb.c:
4775         Add empty gdk_font_load(). Needed for linking of Gtk+.
4776
4777         * gdk/linux-fb/gdkimage-fb.c:
4778         Removed endian.h, use glib endianness macros instead
4779         Moved GdkImagePrivateFB to windowing_data
4780         gdk_image_new_bitmap didn't always allocate enough
4781         memory.
4782
4783         * gdk/linux-fb/gdkinput-ps2.c:
4784         Added semi-working support for MS serial mice.
4785
4786         * gdk/linux-fb/gdkprivate-fb.h:
4787         s/GdkWindowPrivate/GdkWindowObject/
4788         Removed GdkWindowPrivate typedef
4789         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
4790         Removed GDK_DRAWABLE_P
4791         Move GdkColorPrivateFB from inherited to windowing_data
4792         Moved GdkImagePrivateFB to windowing_data
4793
4794         * gdk/linux-fb/gdkvisual-fb.c:
4795         Removed some unused debug code.
4796
4797         * gdk/linux-fb/gdkwindow-fb.c:
4798         Use stock cursors instead of including X headers.
4799         s/GdkWindowPrivate/GdkWindowObject/
4800
4801         * gdk/linux-fb/mitypes.h:
4802         Removed unused types.
4803
4804         * modules/linux-fb/basic.c:
4805         Use the pango fribidi wrappers.
4806
4807 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
4808
4809         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
4810         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
4811         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
4812         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
4813         GEqualFunc where applicable.
4814         
4815         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
4816         pango_font_description_equal as changed in pango.
4817         
4818         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
4819
4820         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
4821
4822         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
4823
4824         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
4825
4826         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
4827
4828         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
4829
4830         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
4831         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
4832
4833         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
4834         gtk_rc_styles_compare -> gtk_rc_styles_equal.
4835
4836 2000-11-12  Havoc Pennington  <hp@pobox.com>
4837
4838         * demos/gtk-demo/Makefile.am (democodedir): change demo install
4839         dir to datadir/gtk+-2.0/demo
4840
4841         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
4842         sorts of text widget and Pango font bugs. Urgh.
4843
4844         * demos/gtk-demo/Makefile.am (demos): Add textview.c
4845
4846         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
4847         tree that you should double click to see the demo. Fix 
4848         types of variables to reflect changed return values from 
4849         GtkTreeStore and GtkTreeViewColumn constructors.
4850
4851         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
4852         newly-created buffer to prepare for GObject semantics
4853
4854         * gtk/testtext.c: don't leak the buffer with GObject semantics
4855
4856         * gtk/testtextbuffer.c: ditto
4857         
4858 2000-11-12  Havoc Pennington  <hp@pobox.com>
4859
4860         Rename this testgtk to gtk-demo to avoid confusion, and 
4861         install it so people can use it as a supplement to 
4862         the documentation.
4863         
4864         * demos/gtk-demo: Moved from demos/testgtk
4865
4866         * demos/testgtk: Removed
4867
4868         * configure.in: make Makefile in gtk-demo
4869         
4870         * demos/gtk-demo/Makefile.am: Install sample source to 
4871         datadir/gtk-demo (maybe there's a better place?), and 
4872         rename the binary to gtk-demo
4873         
4874         * demos/gtk-demo/main.c (load_file): Load installed sample
4875         source if source isn't found in pwd.
4876
4877 2000-11-09  Havoc Pennington  <hp@pobox.com>
4878
4879         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
4880         argument to set the char displayed when visibility == FALSE
4881         (gtk_entry_create_layout): If !entry->visible, replace 
4882         all chars with the "invisible char"
4883
4884         * gtk/testgtk.c: Test the invisible_char deal
4885         
4886 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
4887
4888         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
4889         can't get a native font in the right encoding.
4890
4891 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
4892
4893         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
4894         respectively.
4895
4896 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
4897
4898         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
4899         Fix warning when moving between paragraphs.
4900
4901         * gtk/gtkentry.[ch]: Change move => move_cursor, 
4902         delete => delete_from_cursor, insert => insert_at_cursor
4903
4904 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
4905
4906         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
4907
4908         * modules/input/imthai-broken.c: A Thai input method for use if
4909         Thai keys are really generating Latin1 keysyms.
4910
4911         * modules/input/Makefile.am: Build these.
4912
4913 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
4914
4915         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
4916         g_filename_{to,from}_utf8 now takes an extra parameter.
4917
4918         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
4919         strftime into UTF-8.
4920
4921         (column_from_x, gtk_calendar_paint_day_names): Support RTL
4922         calendars.
4923
4924         (gtk_calendar_paint_day_names): Draw day names in the right 
4925         place.
4926         
4927 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
4928
4929         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
4930         problem with using result of g_get_charset() backwards -
4931         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
4932
4933         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
4934         negative min_width/height and max_width/height to
4935         mean "requisition"; this allows setting a window
4936         to be user-resizable in only one direction easily.
4937
4938         * gtk/testgtk.c (create_main_window): Remove hard-coded
4939         usize - set a default size in the vertical direction.
4940
4941 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
4942
4943         * gtk/gtkrange.c: Add some missing casts. Support 
4944         2 and 3 button clicks on the arrows to mean 
4945         "move by pages" and "jump to end". (Like gtkspinbutton)
4946
4947 2000-11-12 Hans Breuer <Hans@Breuer.Org>
4948
4949         * gdk/win32/makefile.msc : reflect build module changes
4950
4951         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
4952         from GdkPixmap*, cast implementation member instead.
4953
4954         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
4955         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
4956         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
4957         more Gdi functions return value checking. 
4958         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
4959         GdkImagePrivateWin32 *.
4960
4961         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
4962         menus useable again. Add #pragma message to keep reminded on this issue.
4963         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
4964         windows. This allows to enable backing store on Win32!
4965
4966         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
4967         in drawable is of impl type. Correct specific type checks appropriate.
4968  
4969         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
4970         GDK_WINDOW_DESTROYED before allocating new resources.
4971
4972         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4973
4974         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4975         (gdk_window_foreign_new) initialize parent handle.
4976         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4977
4978         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4979         Let the GDI invalidate the window on MoveWindow call to fix scrolling
4980         problems (e.g. main buttons in testgtk). 
4981
4982 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
4983
4984         * gtk/gtkentry.c (gtk_entry_key_press): Call 
4985         gtk_widget_activate for GDK_Return.
4986
4987         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4988         of preedit cursor position.
4989
4990 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
4991
4992         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4993         static.
4994
4995 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
4996
4997         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4998         out support for multiple locales; that simple doesn't
4999         work reliably with current Xlib
5000
5001         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
5002         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
5003         Add support for positioning the cursor within the preedit string.
5004
5005 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
5006
5007         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
5008         at XIM input method module.
5009
5010         * gtk/gtktextview.c: Check for bindings after passing
5011         events to im context filter.
5012
5013 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
5014
5015         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
5016         empty attribute lists properly.
5017
5018 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
5019
5020         * gtk/queryimmodules.c (main): Return non-zero exit
5021         status if errors were encountered querying any
5022         modules.
5023
5024         * modules/input/Makefile.am (moduledir): remove
5025         leftover bin program target.
5026
5027         * docs/make-todo: Fix typo in error message.
5028
5029 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
5030
5031         * configure.in: Add modules/input/Makefile
5032
5033 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
5034
5035         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
5036         don't include gtkthemes.h.
5037
5038         * gtk/testgtk.c gtk/testtext.c: Set environment variables
5039         to point
5040
5041         * gtk/Makefile.am: Add new .c and .h files, build 
5042         gtk-query-immodules and use it to create a gtk.immodules
5043         file for use of test programs.
5044
5045         * gtk/gtkpreview.c: remove extra blank line.
5046
5047 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
5048
5049         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
5050         Add the ability to add extra tables beyond the default
5051         one, and also the ability to have compose sequences 
5052         that are prefixes of other compose sequences. 
5053
5054         * gtk/gtkimcontextsimple.c: Export a preedit string which
5055         consists of possible candidates for keystrokes that have
5056         been entered but not yet committed.
5057
5058         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
5059         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
5060
5061         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
5062         Add a function to add input-method switching menu items
5063         to a menu.
5064
5065         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
5066         when switching input methods.
5067
5068         * gtk/gtkimcontextsimple.[ch]: Change the format of
5069         the compose table to allow compose tables of different
5070         lengths / sequence.
5071
5072 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
5073
5074         * gtk/gtkimmodule.[ch]: Support routines for loading
5075         GtkIMContext implementations dynamically at runtime.
5076
5077         * modules/input/imcyrillic-translit.c: A sample input
5078         method (based on GtkIMContextSimple with an extra table),
5079         which demonstrates preedit strings and the module
5080         system for input modules
5081
5082         * gtk/queryimmodules.c: Program to query the available
5083         input modules and write the results into a file.
5084          
5085         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
5086         extra config options "im_module_file" (cache file for
5087         input method modules), and "im_module_path" - path
5088         to look for modules when generating cache file.
5089
5090         This doesn't scale.
5091
5092 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
5093
5094         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
5095         generic code from gtkthemes into a new abstraction
5096         GtkModule which has the logic for implementing
5097         a loadable module which implements a number of 
5098         GObject types.
5099
5100 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
5101
5102         * gtk/gtkeditable.[ch]: Convert GtkEditable from
5103         a class into an interface  
5104         
5105         * gtk/gtkoldeditable.[ch]: Move the old editable
5106         implementation into here, so legacy widgets can
5107         still rely on the implemenation. GtkOldEditable
5108         exports GtkEditable. Make selection handling
5109         code use new text conversion functions (and
5110         handle UTF-8 as a side-effect). Use GtkClipboard
5111         for CLIPBOARD.
5112
5113         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
5114         Adopt to match above changes.
5115
5116         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
5117         avoid GtkOldEditable implementation. Restructure
5118         to reduce number of places that modify state directly.
5119         Move to GtkBindingSet. Display the preedit string.
5120         Queue recomputation of PangoLayout and scroll position
5121         to improve effiency of doing complex changes naively.
5122         Add a menu with cut/copy/paste and input method selection.
5123
5124 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
5125
5126         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
5127         to set preedit string and attributes; display preedit string by
5128         inserting string and attributes at cursor when creating the
5129         GtkTextLineDisplay.
5130
5131         * gtk/gtktextlayout.c: Move all conversions between byte
5132         positions in PangoLayout and GtkTextIter into new functions
5133         line_display_iter_to_index/index_to_iter that properly
5134         handle the preedit string.
5135
5136         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
5137         it to return const char * (eventually will end up
5138         as GCONST char *, most likely.)
5139
5140         * gtk/gtktextview.[ch]: Handle the preedit string, call
5141         gtk_im_context_reset() as necessary, add a menu to switch
5142         input methods.
5143         
5144         * gtk/gtktextlayout.[ch]: Remove useless
5145         gtk_text_layout_get_log_attrs() function.
5146
5147 2000-11-11  Tor Lillqvist  <tml@iki.fi>
5148
5149         * gdk/gdk.def
5150         * gtk/gtk.def: Update.
5151
5152         * gdk/win32/*.c: Add last argument to g_type_register_static()
5153         calls.
5154
5155         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
5156
5157         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
5158         generated by older wheel mouse drivers. Get the correct y
5159         coordinate from WM_MOUSEWHEEL messages.
5160
5161         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
5162         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
5163         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
5164         Debugging functions.
5165
5166         * gdk/win32/gdkprivate-win32.h: Declare them.
5167
5168         * gdk/win32/gdkinput-win32.h: Add declaration for
5169         gdk_input_window_destroy().
5170
5171         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
5172
5173 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
5174
5175         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
5176         function to help handle keeping things in sync.
5177
5178 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
5179
5180         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
5181         BOXED marshallers.
5182
5183         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
5184         (gtk_list_store_class_init): use the new BOXED marshallers.
5185
5186         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
5187         new_with_values to new_with_types.
5188         (gtk_tree_store_get_column_type): add this.
5189         (gtk_tree_store_class_init): use the new BOXED marshallers.
5190
5191         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
5192         mirror some POINTER marshallers.
5193
5194 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
5195
5196         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
5197         allow more interesting iterators.  Also, made the lifecycle of
5198         iterators more explicit.
5199
5200         * gtk/gtktreemodelsort.[ch]: New model for sorting.
5201
5202         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
5203         types.
5204
5205 2000-11-09  Alexander Larsson  <alexl@redhat.com>
5206
5207         * demos/testgtk/menus.c:
5208         Changes to make the new testgtk compile after
5209         gtk_menu_append was removed.
5210
5211         * gdk/linux-fb/gdkdrawable-fb2.c
5212         (gdk_fb_get_depth, gdk_fb_get_visual,
5213         gdk_drawable_impl_fb_class_init): Implement
5214         these drawable functions. Now GtkImages work again.
5215
5216         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
5217
5218         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
5219         
5220         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
5221         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
5222         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
5223         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
5224
5225 2000-11-08  Havoc Pennington  <hp@pobox.com>
5226
5227         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
5228         visible_set args, don't know where these had gone, I thought they
5229         used to be there
5230
5231         * gtk/testtext.c: Add a menu item to apply invisibility tag;
5232         now we can test the feature and see that it's totally broken.
5233
5234 2000-11-08  Havoc Pennington  <hp@pobox.com>
5235
5236         Make DND copy pixbufs and tags when source and target share a 
5237         tag table.
5238         
5239         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
5240         in-process GTK_TEXT_BUFFER_CONTENTS target
5241         (gtk_text_view_drag_data_received): Paste from
5242         GTK_TEXT_BUFFER_CONTENTS if we receive it.
5243
5244 2000-11-08  Alexander Larsson  <alexl@redhat.com>
5245
5246         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
5247         API changes.
5248
5249         * gtk/gtkmenu.c: Add support for scrolling menus.
5250         Remove gtk_menu_append/prepend/insert, these have been moved to
5251         gtkcompat.h as #defines.
5252
5253         * gtk/gtkcompat.h.in:
5254         Add compatibility #defines for gtk_menu_append/prepend/insert
5255
5256         * gtk/gtkmenu.h: Add data needed for scrolling menus.
5257         GtkMenuPositionFunc gets an extra argument push_in.
5258         gtk_menu_append/prepend/insert removed.
5259         
5260         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
5261         positioning behaviour to fit to scrolling menus.
5262
5263         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
5264         into menuitem->submeny. That is wrong, and broke torn
5265         off submenus of torn off menus, since they were unrealized
5266         when the first menu was unrealized.
5267
5268         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
5269         gtk_menu_shell_select_item() since these need to be overridden in
5270         GtkMenu.
5271
5272         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
5273         positioning behaviour to fit to scrolling menus.
5274         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
5275         the current item so that it is prelighted when the menu pops up.
5276         This is a workaround to the fact that the menu doesn't get the
5277         initial enter event (due to grabs).
5278
5279         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
5280         s/gtk_menu_append/gtk_menu_shell_append/
5281
5282         * gtk/gtknotebook.c:
5283         s/gtk_menu_insert/gtk_menu_shell_insert/
5284
5285         * gtk/testgtk.c (create_menu, create_menus):
5286         Create the first menu with 50 items so that menu scrolling
5287         can be tested.
5288         
5289         
5290         Patch from Jonathan Blandford  <jrb@redhat.com>
5291
5292         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
5293         system to handle size requests.  First, we ask what the size of
5294         the toggle is.  Then, when allocating the size, we allocate the
5295         toggle_size first.  This way we can have multiple menu-item
5296         classes w/o needing a seperate class for each.
5297
5298         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
5299         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
5300
5301         * gtk/gtkcheckmenuitem.c
5302         (gtk_check_menu_item_toggle_size_request): New function to handle
5303         the toggle size-request.
5304
5305 2000-11-07  Havoc Pennington  <hp@redhat.com>
5306
5307         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
5308         Half-ass somewhat fix this function, so that scrolling to the
5309         insertion point works. Pango hacking is in the future to really
5310         fix it.
5311
5312         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
5313         length of data, no longer used.
5314
5315         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
5316         method contents in here, get rid of destroy method
5317         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
5318         that were backward. Remove debug spew.
5319         (cut_or_copy): Make the clipboard work with insert_range to
5320         preserve tags and pixbufs, not just the primary selection.
5321
5322 2000-11-07  Havoc Pennington  <hp@redhat.com>
5323
5324         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
5325         to gtk_text_mark_get_visible
5326
5327         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
5328         bug that was generating an invalid iterator
5329
5330         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
5331         ensure_char_offsets() in front of code placing the iter in an
5332         invalid state.
5333
5334         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
5335         make override_location arg const
5336         (paste): Replace the selection if we paste into the 
5337         current selection
5338
5339         * gtk/gtkselection.h: Remove "GtkSelectioData"
5340         (struct _GtkSelectionData): move the definition here.
5341
5342         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
5343         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
5344
5345         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
5346
5347         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
5348         (gtk_text_buffer_insert_range_interactive): implement
5349         (gtk_text_buffer_get_tags): Remove, replaced by
5350         gtk_text_iter_get_tags()
5351
5352         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
5353         limit parameter, to avoid infinite linear scan.
5354         (gtk_text_iter_backward_search): Add search limit
5355         (gtk_text_iter_forward_find_char): Add search limit
5356         (gtk_text_iter_backward_find_char): Add search limit
5357
5358 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
5359
5360         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5361         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
5362         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
5363         gdk/linux-fb/gdkwindow-fb.c:
5364         use g_object_new() instead of g_type_create_instance() which
5365         is a private function for fundamental type implementations.
5366
5367         * gdk/linux-fb/gdkinput-ps2.c:
5368         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
5369         instead just store the current modifier state. Add a (somewhat broken)
5370         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
5371         Rename exported function gdk_input_ps2_get_mouseinfo to
5372         gdk_input_get_mouseinfo.
5373
5374         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
5375         gdk/linux-fb/gdkwindow-fb.c:
5376         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
5377         
5378
5379 2000-11-02  Havoc Pennington  <hp@redhat.com>
5380
5381         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
5382         use stock buttons. Should be 100% source compatible, appropriate
5383         filesel fields now point to dialog->vbox and dialog->action_area.
5384         On the bizarre side, dialog->action_area and filesel->action_area
5385         are not the same widget.
5386         (gtk_file_selection_init): Put some padding around the selection
5387         entry, so it isn't touching the GtkDialog separator.    
5388
5389         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
5390         use stock buttons, etc. Should also be source compatible.
5391         Set the dialog default title in _init not _new().
5392         
5393         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
5394         Use stock buttons; don't put a button box inside the existing
5395         dialog button box. Don't bother with push/pop colormap anymore.
5396
5397         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
5398         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
5399         for message dialog, and necessary for the font selection and color
5400         selection with help and apply buttons.
5401         
5402         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
5403         to the created button widget. Set GTK_CAN_DEFAULT on the button.
5404         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
5405         between buttons, put less padding around the action area.
5406         (gtk_dialog_run): Exit on unmap rather than on destroy. 
5407         This will also exit the loop if the widget is hidden.
5408         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
5409         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
5410         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
5411         special-case delete event.
5412
5413         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
5414         formatting
5415         
5416 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
5417
5418         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
5419         button to temporarily disable position recording in the
5420         "saved position" test.
5421
5422 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
5423
5424         * gtk/gtkthemes.c: added compat code that temporarily implements
5425         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
5426         going to be revamped by owen's upcoming GtkModule patches, but
5427         untill then people want gtk to build, right? ;)
5428
5429 2000-11-04  Havoc Pennington  <hp@pobox.com>
5430
5431         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
5432         list
5433
5434         * docs/Changes-2.0.txt: Add note about
5435         gtk_container_get_toplevels()
5436
5437         * gtk/gtktextview.h: formatting
5438         
5439         * gtk/gtktextview.c: don't start descriptions with "Returns",
5440         confuses gtk-doc
5441
5442 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
5443
5444         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
5445         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
5446
5447 2000-11-03  Havoc Pennington  <hp@redhat.com>
5448
5449         * gtk/gtktexttagtable.c: Docs
5450         (gtk_text_tag_table_size): return a signed int
5451
5452         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
5453         (gtk_text_tag_event): make the event_object a GObject
5454
5455         * gtk/gtktextview.c: Write API docs for all functions.
5456
5457         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
5458         for gtk_text_view_get_window_type() called on one of the private
5459         windows.
5460
5461         * gtk/gtktextview.c: Instead of accessing text_view->buffer
5462         directly, call get_buffer() which demand-creates a default
5463         buffer. So gtk_text_view_new() can be used to create a view with a
5464         default buffer in it, if you just want an empty text box users can
5465         put data in. Useful for GUI builders also.
5466
5467 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
5468
5469         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
5470         the charset encodign portion MUST be in lowercase.
5471         * gtk/gtkrc.az: added file for Azeri language
5472
5473 2000-11-03  Havoc Pennington  <hp@redhat.com>
5474
5475         Get widgets working on the btree/buffer side. Display of them 
5476         still doesn't work.
5477         
5478         * gtk/gtktextview.c: start implementing child widget stuff
5479
5480         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
5481
5482         * gtk/gtktextlayout.c: handle embedded widgets
5483
5484         * gtk/gtktextdisplay.c: handle embedded widgets
5485
5486         * gtk/gtktextchild.c: Implement all the child anchor goo
5487
5488         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
5489         function
5490
5491         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
5492         (insert_pixbuf_or_widget_segment): abstract out common portions of 
5493         creating a child anchor or a pixbuf segment.
5494         (gtk_text_btree_create_child_anchor): new function
5495         (gtk_text_btree_unregister_child_anchor): new function
5496
5497         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
5498         allocate_child signal on GtkTextLayout
5499
5500         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
5501         values
5502         (gtk_text_iter_get_child_anchor): new function
5503
5504         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
5505         default handler for the changed signal, which calls
5506         gtk_text_buffer_set_modified(), instead of just always emitting
5507         changed then calling set_modified() manually. I guess this is
5508         maybe more flexible. It seems logical.
5509
5510 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
5511
5512         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
5513         now.
5514
5515         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
5516
5517 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
5518
5519         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
5520         been marked static.
5521
5522 2000-11-02  Havoc Pennington  <hp@redhat.com>
5523
5524         * gtk/testgtk.c (create_labels): had a test backward
5525
5526         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
5527         fields, so the dest GC ends up with the correct clip origin, 
5528         etc. Fixes a bug where colored labels didn't redraw 
5529         properly.
5530
5531 2000-11-02  Alexander Larsson  <alexl@redhat.com>
5532
5533         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
5534         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
5535         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
5536         Add last argument to t_type_register_static call.
5537         
5538         * gdk/linux-fb/gdkdrawable-fb2.c:
5539         Add last argument to t_type_register_static call.
5540         export the get_image drawable virtual function.
5541
5542         * gdk/linux-fb/gdkimage-fb.c:
5543         Add last argument to t_type_register_static call.
5544         rename gtk_image_get to _gdk_fb_get_image and
5545         export it for use by gdkdrawable-fb2.
5546
5547         * gdk/linux-fb/gdkprivate-fb.h:
5548         export _gdk_fb_get_image.
5549
5550         * gdk/linux-fb/gdkselection-fb.c:
5551         Add new api call stubs.
5552
5553         * gtk/Makefile.am:
5554         Missing ( in linux-fb part.
5555
5556         * modules/linux-fb/Makefile.am:
5557         Must link with gdk_pixbuf or get unresolved symbol.
5558
5559 2000-11-01  Havoc Pennington  <hp@pobox.com>
5560
5561         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
5562         GTK_TYPE_TEXT_ITER and BOXED marshallers
5563
5564         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
5565
5566         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
5567         
5568         * gtk/gtk-boxed.defs: add GtkTextIter
5569
5570         * gtk/gtkmarshal.list: Add marshallers for text widget that 
5571         properly use OBJECT and BOXED
5572
5573 2000-11-01  Havoc Pennington  <hp@redhat.com>
5574
5575         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
5576
5577         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
5578         before returning it. 
5579         
5580 2000-11-01  Havoc Pennington  <hp@redhat.com>
5581
5582         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5583         Clip the rectangle to be rendered to the drawable, since
5584         get_from_drawable() requires a region within the drawable
5585
5586 2000-11-01  Havoc Pennington  <hp@redhat.com>
5587
5588         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
5589         from coordinates.
5590
5591 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
5592
5593         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
5594         it isn't NULL.
5595
5596 2000-11-01  Havoc Pennington  <hp@pobox.com>
5597
5598         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
5599         on a label
5600         (gtk_label_finalize): unref the attr list if any.
5601
5602         * gtk/testgtk.c (create_get_image): close test on second click
5603         (make_message_dialog): close dialog if it exists
5604
5605         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
5606
5607         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
5608         gdk-pixbuf
5609
5610         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
5611         from Pango markup format
5612         (gtk_label_set_markup_with_accel): ditto but with accelerator
5613         parsing
5614
5615         * gtk/gtkimage.c (gtk_image_expose): reformatting.
5616
5617         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
5618         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
5619         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
5620         call gdk_window_get_origin().
5621
5622         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
5623         implement GDK_PIXBUF_ALPHA_FULL
5624         
5625 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
5626
5627         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
5628         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
5629         g_signal_handlers_disconnect_matched to block/unblock and disconnect
5630         multiple handlers respectively, instead of only treating the
5631         first handler found (bug reported by owen).
5632
5633 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
5634
5635         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
5636
5637         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
5638
5639         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
5640         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
5641         gtk/gtktreeviewcolumn.h: Fixed inline docs.
5642
5643         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
5644         widget.  Needs writing someday.
5645
5646         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
5647         the docs.
5648
5649 2000-10-30  Havoc Pennington  <hp@redhat.com>
5650
5651         * gtk/gtktextview.h, gtk/gtktextview.c:
5652         Rename delete_at_cursor delete_from_cursor, and 
5653         move to move_cursor.
5654
5655 2000-10-30  Havoc Pennington  <hp@redhat.com>
5656
5657         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
5658         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
5659         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
5660         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
5661         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
5662         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
5663         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
5664         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
5665         gtktexttypes.h, gtktextview.c, gtktextview.h:
5666
5667         Massive reindentation and reformatting. Arg alignment and comments
5668         still need fixing in various places.
5669
5670 2000-10-30  Havoc Pennington  <hp@redhat.com>
5671
5672         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
5673         to be named insert_at_cursor and delete_at_cursor so C++ can
5674         handle them.
5675
5676 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5677
5678         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
5679         to get a double directory separator in case the home directory
5680         ends with one. This would cause trouble especially on Windows,
5681         where the path will be confused with the syntax for an an UNC
5682         (network share) path \\server\share\path.
5683         (gtk_rc_add_initial_default_files): Ditto.
5684
5685 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
5686
5687         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
5688
5689         * gtk/gtktextview.c: Use correct marshallers.
5690
5691 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
5692
5693         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
5694         use new iter stuff, and added all the appropriate signals et al.
5695
5696         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
5697         code is internal to gtk only.
5698
5699 2000-10-28  Tor Lillqvist  <tml@iki.fi>
5700
5701         * gtk/gtk.def
5702         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
5703         glib-genmarshal etc.
5704
5705 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
5706
5707         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
5708         parallel builds.
5709
5710 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
5711
5712         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
5713
5714 2000-10-27  Robert Brady  <robert@suse.co.uk>
5715
5716         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
5717         en_GB (British), ia (Interlingua).
5718
5719 2000-10-26  Havoc Pennington  <hp@redhat.com>
5720
5721         * gtk/gtktextiter.c (my_strrstr): fix constness warning
5722
5723         Fixed output of:
5724         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
5725         
5726         * gtk/gtktextsegment.c (char_segment_new): rename
5727         (_char_segment_new_from_two_strings): rename
5728         (_toggle_segment_new): rename
5729         
5730         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
5731         (make_clipboard_widget): make it static
5732         (text_get_func): static
5733         (text_clear_func): static
5734
5735         * gtk/gtkcolorsel.c (adjustment_changed): make this function
5736         static
5737         (hex_changed): make it static
5738         (hsv_changed): make it static
5739         (opacity_entry_changed): make it static
5740
5741         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
5742         (toggle_segment_check_func): rename with _gtk
5743
5744         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
5745         (_widget_segment_new): rename
5746         (_widget_segment_add): rename
5747         (_widget_segment_remove): rename
5748         (_widget_segment_ref): rename
5749         (_widget_segment_unref): rename
5750
5751         * gtk/gtktextmark.c (_mark_segment_new): Rename
5752         _gtk_mark_segment_new   
5753
5754 2000-10-26  Havoc Pennington  <hp@redhat.com>
5755
5756         * gtk/gtkmarshal.list: add new marshallers used by the text widget
5757         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5758         types
5759
5760         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
5761         marshaller types
5762
5763         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
5764         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
5765         license on these files.
5766
5767         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
5768         work.
5769
5770         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
5771         runtime random number different for each tree, instead of 
5772         a constant I made up.
5773
5774 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
5775
5776         * gtk/Makefile.am: buncha cleanups, kludged build sources
5777         dependencies with a Makefile: oldest-source-stamp dependancy
5778         for the moment. automake is really fighting us here, with
5779         intentionally not allowing user-defined rules or dependancies
5780         prior to it's -include $(DEP_FILES) statement. sucks rocks!
5781
5782         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
5783         to public headers. tehy have a comment stating that they are
5784         "semi-public" aren't included by gtk.h and if enums popup there,
5785         they can be /*< skip >*/-ed.
5786
5787         * gtk/gtktextlayout.h: 
5788         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
5789         added LGPL... <SIGH>
5790
5791 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
5792
5793         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
5794         GtkTreeIter.  Added iterators everywhere.
5795
5796         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
5797
5798         * gtk/gtktreeviewselection.c: Changed to use the iterators.
5799
5800         * gtk/gtktreestore.c: Changed to use the iterators.
5801
5802         * gtk/gtkliststore.c: Commented out the code.  Will convert to
5803         iterators tomorrow.
5804
5805         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
5806         iterators tomorrow.
5807
5808         * gtk/treestoretest.c: Changed to use iterators.
5809
5810         * demos/testgtk/main.c: Moved to use the new iterator system.
5811
5812 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
5813
5814         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
5815         localization misbehaviour.
5816
5817         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
5818         a useless type without copy/free.
5819
5820         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
5821         of GTK_TYPE_CTREE_NODE.
5822
5823 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
5824
5825         * gtk/gtksignal.c:
5826         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
5827         applicable.
5828
5829         * gtk/gtk-boxed.defs (GtkSelectionData): specify
5830         gtk_selection_data_copy and gtk_selection_data_free
5831         do GtkSelectionData work as params in signals.
5832
5833 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
5834
5835         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
5836         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
5837         couldn't they at least give it a non-standard name?
5838         
5839         * gtk/gtktextlayout.c: arg! yet another implementation of
5840         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
5841
5842         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
5843         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
5844         home. now i know this _is_ a conspiracy.
5845
5846         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
5847         ::state-changed.
5848
5849         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
5850         (gtk_accel_group_create_add): marshaller signature fixups.
5851
5852         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
5853         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
5854
5855         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
5856         anymore.
5857
5858 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
5859
5860         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
5861         due to the signal system changes, it wouldn't build currently. to
5862         be fixed soon.
5863
5864         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
5865
5866         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
5867         so it needs gtk_marshal_VOID__ENUM() instead of
5868         gtk_marshal_NONE__UINT().
5869
5870         * gdk/gdk*.c: adapted type registration functions.
5871
5872         * gtk/gtkbindings.c:
5873         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
5874         gone.
5875
5876         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
5877
5878         * gtk/gtkobject.c:
5879         (gtk_object_destroy):
5880         (gtk_object_shutdown): fixed recursion guards. basically we have to
5881         catch the case where any of GObject.shutdown() or gtk_object_destroy()
5882         is called during ::destroy, and avoid recursion there.
5883
5884         * gtk/gtktypeutils.c:
5885         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
5886         boxed_copy/boxed_free. this needs a more general solution based on a
5887         publically installed code-generator utility.
5888
5889         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
5890         glib's gobject has support for that now.
5891         define GtkSignalMarshaller in terms of GSignalCMarshaller.
5892
5893 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
5894
5895         * gtk/gtksignal.[hc]:
5896         * gtk/gtkmarshal.[hc]:
5897         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
5898         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
5899         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
5900         care of that.
5901
5902         * *.c: marshaller name fixups.
5903
5904         * gtk/gtkmarshal.list: added a comment briefing the format.
5905
5906 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
5907
5908         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
5909         compatibility macros here now. more specifically, most of
5910         the API is preserved (yes, _most_, nonwithstanding the
5911         following exceptions listed, the API is stil lHUGE ;)
5912         things that got removed completely:
5913         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
5914         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
5915         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
5916         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
5917         gtk_signal_remove_emission_hook().
5918         non-functional functions variants:
5919         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
5920         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
5921         not supported anymore.
5922         (gtk_signal_compat_matched): new internal function to aid
5923         implementation of the compatibility macros, it  provides
5924         functionality to block/unblock/disconnect handlers based
5925         on func/data.
5926
5927         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
5928
5929         * *.c: adaptions to new type registration API signatures.
5930
5931 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
5932
5933         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
5934
5935 2000-10-25  Robert Brady  <robert@suse.co.uk>
5936
5937         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
5938         gdk_property_delete): If window == NULL, assume the root window.
5939         (restoring the behaviour that was in 1.2).
5940         
5941         * gtk/testtext.c (save_buffer): Allow creation of new files when
5942         saving.
5943
5944         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
5945         calls to read().
5946
5947 2000-10-25  Tor Lillqvist  <tml@iki.fi>
5948
5949         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
5950
5951         * gdk/win32/gdkdrawable-win32.c
5952         * gdk/win32/gdkimage-win32.c
5953         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
5954         X11 backend.
5955
5956         * gdk/win32/gdkcc-win32.c
5957         * gdk/win32/gdkcolor-win32.c
5958         * gdk/win32/gdkfont-win32.c
5959         * gdk/win32/gdkinput-win32.c
5960         * gdk/win32/gdkmain-win32.c
5961         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
5962
5963 2000-10-24  Havoc Pennington  <hp@redhat.com>
5964
5965         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
5966         it a static function
5967
5968         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5969         redraw text when a tag is applied to it.
5970
5971         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5972         (gtk_text_tag_affects_nonsize_appearance): private functions to
5973         see if a tag requires various kinds of redraw/layout to be queued
5974         up.
5975
5976         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5977
5978         * gtk/testtext.c (fill_example_buffer): Put the cursor 
5979         at the start of the buffer, so search works by default
5980
5981         * gtk/gtktextiter.c (lines_match): init match_start always
5982
5983         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5984         function, get iter at a line + a byte index
5985
5986         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5987         to set byte position within a line
5988         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5989
5990 2000-10-23  Havoc Pennington  <hp@redhat.com>
5991
5992         * gtk/testtext.c: Re-enable the "find" dialog
5993
5994         * gtk/testgtk.c: Add test for gdk_drawable_get_image
5995         
5996         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5997         the arguments to gdk_draw_drawable were in the wrong order
5998         (gdk_window_paint_init_bg): This function was ignoring the
5999         init_region, instead of clipping to it, so the entire backing
6000         pixmap was cleared on every begin_paint()
6001         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
6002         was in here again, the loop kept using the same GtkWindowPaint
6003         over and over.
6004         (gdk_window_begin_paint_region): Fix a bug where we had two
6005         x_offset instead of x_offset and y_offset
6006
6007         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
6008         before we get the image.
6009         (gdk_draw_drawable): get the composite before we draw the drawable.
6010         (gdk_drawable_real_get_composite_drawable): default
6011         get_composite_drawable implementation that returns the drawable 
6012         itself
6013
6014         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
6015         get_composite_drawable virtual function
6016
6017         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
6018         list-walking bug
6019
6020         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
6021         make this work if the source drawable is a GdkDrawableImplX11
6022         instead of a public drawable type. This is really broken; the
6023         problem is that GdkDrawable needs a virtual method get_xid(), but
6024         of course that doesn't work in practice. Enter RTTI.
6025
6026         Also, improve mismatched depth message.
6027
6028         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
6029         GdkPixmap
6030
6031         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
6032         install _gdk_x11_get_image as our implementation of get_image
6033         
6034         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
6035         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
6036
6037         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
6038         gdk_drawable_get_image
6039
6040         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
6041
6042         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
6043         get_image
6044
6045         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
6046         trailing semicolon after for loop
6047
6048 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
6049
6050         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
6051         where font_desc for widget's context lagged widget's font_desc by
6052         one step.
6053
6054 2000-10-22  Tor Lillqvist  <tml@iki.fi>
6055
6056         * gdk/win32/gdkgc-win32.c
6057         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
6058
6059         * gtk/makefile.mingw.in
6060         * gtk/gtk.def: Updates.
6061
6062         * gtk/testgtk.c: sleep() is called _sleep in MS's C
6063         library.
6064
6065         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
6066
6067         * gtk/makefile.msc: Remove
6068
6069         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
6070
6071         * gtk/Makefile.am: Add it.
6072
6073         * configure.in: Generate it.
6074
6075         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
6076         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
6077         something even if not implemented, to satisfy picky MSVC.
6078
6079         Patches by Hans Breuer:
6080         
6081         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
6082         SetBkMode() and SetTextAlign() before calling
6083         pango_win32_render().
6084
6085         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
6086         Set hcliprgn to NULL after destroying it.
6087         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
6088
6089         * gdk/win32/gdkgeometry-win32.c
6090         (_gdk_windowing_window_queue_antiexpose): More effective
6091         implementation.
6092
6093         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
6094         depth as default, not the visual's.
6095
6096         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
6097         against empty title.
6098
6099         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
6100         IMAGE_PRIVATE_DATA.
6101
6102         * gdk/win32/gdkimage-win32.c: Use it.
6103
6104 2000-10-22  Robert Brady  <robert@suse.co.uk>
6105
6106         * configure.in: Check for bind_textdomain_codeset
6107
6108         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
6109         present, make use of it.
6110
6111         Add a translatable string "default:LTR" which, if translated
6112         to "default:RTL", will cause the default direction to be
6113         Right-to-Left.
6114
6115         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
6116         direction if marked as flippable.
6117
6118         * gtk/gtkhscale.c: Mark widget as flippable.
6119         
6120 2000-10-04  Havoc Pennington  <hp@redhat.com>
6121
6122         * gtk/testgtk.c (create_buttons): create some stock buttons
6123         with the default accel group
6124         (create_image): test some new GtkImage features
6125         (make_message_dialog): test GtkMessageDialog
6126         (create_modal_window): fix someone's bizzarro indentation
6127
6128         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
6129         GTK_WIN_POS_CENTER_ON_PARENT. 
6130         Add "destroy with parent" setting, which means the window goes
6131         away with its transient parent.
6132         (gtk_window_get_default_accel_group): get the default accel group
6133         for the window.
6134         (gtk_window_set_destroy_with_parent): set/unset destroy with
6135         parent flag
6136         (gtk_window_read_rcfiles): invalidate icon set caches
6137         after reloading rcfiles 
6138
6139         * gtk/gtkenums.h (GtkWindowPosition): add
6140         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
6141         on its parent window when the dialog is mapped for the first time.
6142
6143         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
6144         a simple message dialog class
6145         
6146         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
6147         handler to emit response signal, and maybe later it would
6148         honor a hide_on_delete flag - though that isn't there yet.
6149         Set border width on the vbox to 2, so we get some padding.      
6150         Use a button box for the action area.
6151         (gtk_dialog_key_press): synthesize a delete event if Esc
6152         is pressed and the GtkWidget key press handler didn't 
6153         handle the escape key.
6154         (gtk_dialog_new_with_buttons): new function creates a dialog
6155         with some default buttons in it.
6156         (gtk_dialog_add_action_widget): add an activatable widget
6157         as a button in the dialog - you can also add a non-activatable
6158         widget by accessing the action area directly.
6159         (gtk_dialog_add_button): add a simple button - stock ID or 
6160         label - to the action area
6161         (gtk_dialog_response): emit response signal
6162         (gtk_dialog_run): block waiting for the dialog, return 
6163         the response. Override normal delete_event behavior, so that 
6164         delete_event does nothing inside gtk_dialog_run().
6165
6166         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
6167         emitted when an action widget is clicked or the dialog gets
6168         delete_event
6169
6170         * gtk/gtk.h: add gtkmessagedialog.h
6171
6172         * gtk/Makefile.am: add gtkmessagedialog.[hc]
6173
6174 2000-10-18  Havoc Pennington  <hp@redhat.com>
6175
6176         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
6177         where any number of empty lines would get skipped
6178
6179         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
6180         edge.
6181
6182         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
6183         warning about invalid iterators (explain more thoroughly)
6184         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
6185
6186         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
6187         big
6188
6189         * demos/*.c: Add error handling
6190
6191         * gtk/gtktextbuffer.c: don't modify const iterators
6192
6193         * gtk/gdk-pixbuf-loader.c: Add full error handling here
6194
6195         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
6196         on file load
6197
6198         * gtk/gtkiconfactory.c: Update to reflect addition of error
6199         handling to gdk-pixbuf loaders
6200
6201 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
6202
6203         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
6204         move to new modularized testgtk.
6205
6206 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
6207
6208         * gtk/gtktreeview.c: Draw the arrows correctly.
6209
6210         * gtk/gtktreemodel.c: Added user docs.
6211
6212         * gtk/gtk.h: remove gtktreedatalist.h.
6213
6214         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
6215         parent when generating my type.
6216
6217         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
6218         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
6219
6220 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6221
6222         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
6223         GtkTreeModel from object to interface.
6224
6225 2000-10-16  Havoc Pennington  <hp@redhat.com>
6226
6227         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
6228         compilation
6229
6230 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
6231
6232         * gtk/gtktreeselection.c: Add API documentation to all public
6233         functions.
6234
6235         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
6236         functions.
6237
6238 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
6239
6240         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
6241         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
6242         docs to all public functions.
6243
6244         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
6245         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
6246         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
6247         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
6248         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
6249         issue.
6250
6251 2000-10-14  Robert Brady  <robert@suse.co.uk>
6252
6253         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
6254
6255 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
6256
6257         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
6258         values other then G_TYPE_STRING.
6259         * gtk/gtktreeselection.c: Minor commenting updates.
6260         * gtk/gtktreeview.c: Format updates.
6261
6262 2000-10-09  Tor Lillqvist  <tml@iki.fi>
6263
6264         * README.win32: Update.
6265
6266         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
6267         lines that had been deleted by mistake (?).
6268
6269         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
6270         also the case fg==white and bg==black (but still not randomly
6271         coloured cursors). Thanks to Wolfgang Sourdeau.
6272
6273         * gdk/win32/*.c: Silence gcc -Wall.
6274
6275         * gtk/gtk.def: Add missing entry points.
6276
6277         Fixes by Hans Breuer:
6278
6279         * gdk/makefile.msc
6280         * gdk/win32/makefile.msc: Update.
6281
6282         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
6283         some MSVC thing, presumably), cause breakpoint on failures. Add
6284         GDK_NOR case. Call g_log_set_always_fatal.
6285
6286         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
6287         should be pased by reference.
6288         
6289         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
6290         
6291         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
6292
6293         * gdk/win32/gdkevents-win32.c
6294         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
6295
6296         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
6297         implementation object.
6298
6299         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
6300         not just windows.
6301         
6302         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
6303         Use the wrapper object.
6304         
6305 2000-10-06  Havoc Pennington  <hp@redhat.com>
6306
6307         * Makefile.am (SRC_SUBDIRS): contrib subdir
6308
6309         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
6310         so it can be used in Xlib version
6311
6312         * demos/testpixbuf.c (update_timeout): error checking from 1.0
6313         tree
6314
6315         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
6316         change from 1.0 tree that returns first frame of animation
6317         if the loaded file is an animation.
6318
6319         * contrib: add new directory to hold stuff that comes with GTK+
6320         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
6321         
6322         * configure.in: add contrib/*
6323
6324 2000-10-05  Havoc Pennington  <hp@redhat.com>
6325
6326         * demos/testpixbuf-save.c: add pixbuf save test
6327
6328         * demos/Makefile.am: add testpixbuf-save.c
6329
6330 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
6331
6332         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
6333         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
6334         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
6335         * gtk/gtktreeselection.[ch]: Replaced
6336         "node_selected"/"node_unselected" signal with "selection_changed"
6337         signal.
6338
6339 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6340
6341         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
6342         tree widget.
6343
6344 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
6345
6346         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
6347         drawing.
6348
6349 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
6350
6351         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
6352         Move list pointer forwards before removing item from
6353         list. (Crash reported by Salmaso Raffaele)
6354
6355         * gdk/gdkwindow.h: Remove spurious trailing ,
6356
6357         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
6358         dependencies on uninstalled libraries, sorry folks.
6359
6360 2000-10-04  Havoc Pennington  <hp@redhat.com>
6361
6362         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
6363         gtk/gtkiconfactory.c: Fix copyrights    
6364
6365         * demos/testpixbuf.c: add inline pixbuf test
6366         
6367 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
6368
6369         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
6370         Add gdk_window_iconify.
6371
6372         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
6373         (gdk_window_set_geometry_hints): Add win_gravity
6374         to geometry structure.
6375
6376         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
6377         Implement _NET_WM_PING.
6378
6379         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
6380         Set _NET_WM_PID on the client leader.
6381
6382         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
6383         Handle UTF-8 better.
6384
6385         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
6386         UTF-8 better, set _NET_WM_NAME as well. Only set
6387         icon name if it hasn't previously been explicitely 
6388         set.
6389
6390 2000-10-03  Havoc Pennington  <hp@redhat.com>
6391
6392         * gtk/testtextbuffer.c: clean up trailing whitespace,
6393         add extensive tests for tag toggle iteration.
6394         
6395         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
6396         distance
6397
6398         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
6399         optimize case where the tag root is on level 1
6400         (gtk_text_line_previous_could_contain_tag): attempt to implement
6401         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
6402         functionality
6403
6404         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
6405         Implement this, though not very efficiently.
6406
6407         * gtk/gtktextiterprivate.h: reformat
6408
6409         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
6410         iterator
6411
6412         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
6413         this to properly revalidate the iterators.
6414
6415         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
6416         properly at the end of the line (and therefore on empty lines)
6417
6418         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
6419         maybe we should return a value...
6420
6421 2000-10-03  Tor Lillqvist  <tml@iki.fi>
6422
6423         * config.h.win32: Guard definition of alloca(). glib.h now handles
6424         that.
6425
6426         * gdk/gdk.def
6427         * gtk/gtk.def: Add new entry points.
6428
6429         Changes just to make GTK+ build without errors on Win32. No hope
6430         of it working in its current state, though...:
6431         
6432         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
6433         some functions from the X11 backend, just to make GTK+ build.
6434
6435         * gdk/makefile.mingw.in
6436         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
6437         number. Add new object files.
6438
6439         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
6440         GetMessageTime to get timestamp (where on X11 uses
6441         gdk_x11_get_server_time()).
6442
6443 2000-10-02  Havoc Pennington  <hp@pobox.com>
6444
6445         * gtk/gtktextview.c: text_window_* weren't static and should have
6446         been.
6447         Start work on child widgets; not yet complete, syncing to 
6448         office computer.
6449
6450         * gtk/gtktextchild.h: change this to contain a public interface,
6451         starting work on child interfaces.
6452         * gtk/gtktextchildprivate.h: move private interfaces here
6453
6454         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
6455
6456         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
6457         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
6458         gtk/gtktextmark.c: copyright notices
6459
6460         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
6461         internal functions      
6462
6463         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
6464         internal function
6465
6466         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
6467         Reformatting    
6468
6469 2000-09-30  Havoc Pennington  <hp@pobox.com>
6470
6471         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
6472         NULL start/end pointers
6473
6474         * gtk/gtktextbuffer.c: Write some docs
6475         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
6476         NULL, so you can just check whether there's a selection.        
6477
6478         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
6479         cleanup_line or segments_changed ourselves, it gets done 
6480         in unlink_segment
6481
6482         * gtk/gtktextmark.h:
6483         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
6484         
6485         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
6486
6487         * gtk/gtktextmark.c: delete some more old Tk cruft
6488
6489         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
6490         mark before removing it, so we can emit MARK_DELETED with a valid
6491         pointer.
6492         (gtk_text_buffer_mark_set): hold ref across signal emission
6493
6494         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
6495         whining about attempts to delete special marks
6496
6497         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
6498         underscore, since it's internal.
6499
6500         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
6501         now implemented in terms of iterators in gtktextiter.h
6502
6503         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
6504         New function, destructively sets contents of buffer. Also 
6505         a convenient way to clear the buffer by setting text to ""
6506
6507         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
6508         multiline string literal
6509
6510         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
6511         text changes.
6512
6513         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
6514         is not dereferenceable
6515         (gtk_text_iter_forward_lines): fix return value
6516
6517 2000-09-29  Havoc Pennington  <hp@redhat.com>
6518
6519         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
6520
6521         * gtk/gtktextview.c: Implement drag thresholding; change functions 
6522         that set border window size to have nicer name
6523         (gtk_text_view_mark_set_handler):  Fix this to have the 
6524         right signature.
6525
6526         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
6527
6528         * gtk/testtext.c: Update with API changes, put line numbers on 
6529         both sides.
6530         
6531         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
6532         with this
6533
6534         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
6535         pixbuf; delete a big block of #if 0 Tk code
6536
6537         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
6538         insert_pixmap with insert_pixbuf
6539
6540 2000-09-29  Martin Baulig  <baulig@suse.de>
6541
6542         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
6543         confusion with the GdkPixbuf of the GNOME 1.x platform.
6544
6545 2000-09-29  Havoc Pennington  <hp@pobox.com>
6546
6547         * gtk/gtktextview.c: Implement the side windows.
6548
6549         * gtk/testtext.c: Implement simple line numbering in the 
6550         left side window; seems to make scrolling sloooow. Oops.
6551         Also, cursor blink is for some reason causing redraws
6552         of the line numbers. Should investigate...
6553
6554 2000-09-28  Havoc Pennington  <hp@redhat.com>
6555
6556         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
6557         scrolling child windows, and draw focus rectangle properly.
6558         
6559         (gtk_text_view_buffer_to_window_coords):
6560         Coordinate transformation to deal with all these freaking windows
6561         and offsets
6562         (gtk_text_view_window_to_buffer_coords): transform the other way
6563
6564         * gtk/testtext.c (create_buffer): Update to match Pango API change
6565
6566         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
6567         anonymous tags
6568         (foreach_unref): don't emit remove signal from finalize, just
6569         set tag's parent to NULL
6570
6571 2000-09-26  Havoc Pennington  <hp@redhat.com>
6572
6573         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
6574         Fix some warnings       
6575
6576 2000-09-26  Havoc Pennington  <hp@redhat.com>
6577
6578         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
6579         headers into the private header list
6580
6581         * Makefile.am (pkgconfig_DATA): install pkg-config files
6582
6583         * configure.in: add pkg-config files
6584
6585         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
6586
6587         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
6588         outstanding icon caches on theme change.
6589
6590         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
6591         important types:
6592
6593         (GtkIconSource): Specification for creating a pixbuf 
6594         appropriate for a direction/state/size triplet from 
6595         a source pixbuf or filename
6596
6597         (GtkIconSet): List of GtkIconSource objects that are used to
6598         create the "same" icon (e.g. an OK button icon), and cache for
6599         rendered icons
6600
6601         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
6602         up the icon set for a given stock ID.  GTK maintains a stack of
6603         GtkIconFactory to search, and applications or libraries can add
6604         additional icon factories on top of the stack
6605         
6606         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
6607         the set of GtkIconSource specified for a given stock ID into 
6608         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
6609         RcStyle, under the specified stock ID.
6610
6611         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
6612         render_icon used to derive a GdkPixbuf from a GtkIconSource.
6613         This allows people to theme how prelight, insensitive, etc. are
6614         done.
6615
6616         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
6617         icon factories for a style, and return the resulting 
6618         icon set if any.
6619
6620         (gtk_style_render_icon): Render an icon using the render_icon 
6621         method in the GtkStyleClass.
6622
6623         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
6624         Use the style for a given widget to look up a stock ID, get the
6625         icon set, and render an icon using the render_icon method 
6626         of the style
6627
6628         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
6629         (contains information about a stock item), the built-in stock item
6630         IDs, and functions to add/lookup stock items.
6631
6632         * gtk/stock-icons/*: Stock icons that come with GTK
6633
6634         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
6635         a button based on a GtkStockItem
6636         (gtk_button_new_accel): Takes a uline string and accel group, and
6637         installs the accelerator.
6638
6639         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
6640         image-display widget.
6641
6642 2000-09-25  Havoc Pennington  <hp@redhat.com>
6643
6644         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
6645
6646         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
6647         Fix a bug when removing node data, we didn't properly 
6648         re-splice the linked list after removing the data.
6649
6650         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
6651         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
6652
6653         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
6654
6655         * gtk/gtktextlayout.c (set_para_values): Set tab array 
6656         for the layout from the GtkTextTag.
6657
6658         * gtk/gtktexttypes.h: delete tab and search cruft, 
6659         remove g_convert() in favor of GLib version
6660
6661         * gtk/gtktexttypes.c: remove tab implementation from here,
6662         move to Pango
6663
6664         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
6665         tab stuff using new PangoTabArray from Pango
6666
6667         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
6668         unused border_width stuff
6669
6670 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
6671
6672         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
6673         glib) and now useless utf_to_latin1() latin1_to_utf()
6674
6675         * gtk/gtktextview.[ch]: Change ::move_insert and
6676         ::delete_text action signals to ::move and ::delete;
6677         create the signals with the right enumeration type,
6678         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
6679         C-v bindings, change Home, End to move to beginning/end
6680         of line, Add C-Home C-End to move to beginning/end
6681         of buffer. Change ::cut_text to ::cut_clipboard, etc;
6682         combine ::scroll_text into ::move; use new GtkSelectionData
6683         functions to simplify DND text handling.
6684         
6685         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
6686         deletion enumerations here, rename enumeration values to 
6687         be consistently plural.
6688
6689         * gtk/gtktextbuffer.c: Use new clipboard interfaces
6690         for cut/copy/paste and primary selection.
6691
6692         * gtk/gtktextbuffer.[ch]: Remove excess time and
6693         'interactive' arguments from cut/copy/paste;
6694         rename cut to cut_clipboard, etc; remove
6695         gtk_text_buffer_get_clipboard_contents().
6696
6697         * gtk/gtktextlayout.[ch]: Add 
6698         gtk_text_layout_move_iter_to_line_end() to move the iter to 
6699         line ends.
6700
6701         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
6702         Functions to set or get a UTF-8 string on the selection
6703         data.
6704
6705         * gtk/gtkclipboard.[ch]: New, simplified selection handling
6706         interfaces.
6707
6708         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
6709         created widgets - one of these is useless if we don't.
6710
6711         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
6712         a public function clear all targets registered for the
6713         widget.
6714
6715         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
6716         Never call gtk_widget_realize() - that was just asking
6717         for bizarre side-effects.
6718
6719         * gtk/gtkselection.c (gtk_selection_owner_set): Call
6720         gdk_selection_owner_set even if the widget is the
6721         same so that we reliably update the timestamp on
6722         the server.
6723
6724         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
6725         gdk_x11_get_server_time() function.
6726         
6727         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
6728         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
6729         Add some tricky filtering on serial numbers for
6730         selection clear events to fix up long-standard
6731         race condition FIXME's in gtkselection.c.
6732
6733         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
6734         routines to convert from utf8 to compound text or
6735         STRING and from a text property to UTF-8.
6736
6737         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
6738         a convenience function gdk_get_current_event_time().
6739
6740         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
6741         and free selection_data->data properly
6742
6743 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
6744
6745         * gtk/gtkthemes.c: Remove some unecessary includes.
6746
6747 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
6748
6749         * gtk/gtktextdisplay.c
6750         * gtk/gtktextlayout.c
6751         * gtk/gtktexttag.c
6752         * gtk/gtktexttag.h
6753         * gtk/testtext.c: Change the overstrike property to strikethrough,
6754         to closer match pango.
6755
6756 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
6757
6758         * gtk/gtktextview.c: Fix up visibility so that focus,
6759         cursor_visible and blink interact properly.  Reenable cursor blink
6760         which had been roughly disabled. Make blink and focus
6761         properly per-view.
6762
6763         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
6764         Add a flag for whether to display insertion cursor and
6765         a function to set the flag.
6766
6767         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
6768         get_line_y() to get_line_yrange(), to be a bit more generally
6769         useful.
6770
6771 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
6772
6773         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
6774           do stop_navigating_submenu, to clear last timeout properly.
6775           Also in gtk_menu_motion_notify move ignore_enter above
6776           the conditional to make it always happen as suggested by Owen
6777
6778 2000-09-07  Tor Lillqvist  <tml@iki.fi>
6779
6780         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
6781
6782         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
6783         w32api headers.
6784
6785         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
6786         declarations.
6787
6788         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
6789         (gdk_win32_get_colormap): A line had been deleted by mistake.
6790
6791         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
6792         (gdk_event_translate): Handle more virtual keycodes to be able to
6793         generate GDK events for Control-comma, Control-period, etc.
6794
6795         * gtk/gtk.def: Add some missing entry points.
6796
6797 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
6798
6799         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
6800         Doc comment fixing. (Mostly non-matching parameter names.)
6801
6802         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
6803         comments a little to avoid looking like a doc comment.
6804
6805         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
6806         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
6807         conversions be changed to GError?)
6808
6809         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
6810         Move private #defines into .c file.
6811
6812         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
6813         order of argument addition, remove duplicates.
6814
6815         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
6816         parent class is FrameClass, not BinClass.
6817
6818         * gtk/gtk.h: Add gtkinvisible, which was missing.
6819         (It's occasionalyl useful for client apps, if seldom.)
6820
6821         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
6822         #define.
6823
6824 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
6825
6826         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
6827         coordinates when creating window, instead of GDK-space
6828         coordinates. (Avoid BadValue on too large windows.)
6829
6830 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6831
6832         * configure.in (use_mmx_asm): Remove conftest* after use along the
6833         lines of AC_TRY_COMPILE.        
6834         
6835         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
6836         of g_dirname, which is deprecated.
6837         (gtk_rc_parse_any): Removed calls to
6838         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
6839
6840         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
6841         Removed calls to g_hash_table_{freeze,thaw}, as they are
6842         deprecated now.
6843
6844         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
6845         instead of g_basename.
6846         
6847 2000-09-04 Elliot Lee <sopwith@redhat.com>
6848         
6849         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
6850         ANSI warning.
6851
6852 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
6853
6854         * gtk/gtkwidget.h:  Add some documenting comments about 
6855           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
6856           just as owen said on irc.
6857
6858         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
6859           set HAS_DEFAULT.  Only set it if there isn't another window
6860           holding it (a focus window which RECEIVES_DEFAULT) and only unset
6861           it if the widget is not the focused window with RECEIVES_DEFAULT.
6862           This fixes weird double default bugs in dialogs which has things
6863           call gtk_window_set_default at times.
6864
6865 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
6866
6867         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
6868         Nils Barth and David Santiago to improve submenu
6869         navigation. The patch does this by creating a triangular
6870         region from the point where the pointer leaves the
6871         menu to the submenu.  While the pointer is in
6872         that region and a timeout has not expired, events 
6873         that would cause the active submenu to change are
6874         ignored.
6875
6876 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
6877
6878         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
6879         moving a toplevel window immediately after sizing it would
6880         result in it being sized back to the old size since 
6881         impl->width, impl->height aren't updated until we hear
6882         back from the server. There is still a (longstanding) bug
6883         here that gdk_window_get_size() will give the wrong size
6884         until we do hear back.
6885
6886 2000-08-31  Havoc Pennington  <hp@redhat.com>
6887
6888         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
6889         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
6890         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
6891         Rename GtkTextStyleValues to GtkTextAttributes
6892
6893 2000-08-31  Havoc Pennington  <hp@pobox.com>
6894
6895         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
6896         for rapid testing whether an iterator is the end iterator
6897         (gtk_text_btree_new): init end line cache
6898         (gtk_text_line_is_last): use fast cached line to 
6899         see if we're the last line.
6900         (get_last_line): use cached line here too, should 
6901         speed up some random unrelated code.
6902         
6903 2000-08-30  Havoc Pennington  <hp@pobox.com>
6904
6905         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
6906         signals.
6907
6908         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
6909         delete_text signals. This allows the signals to be used for
6910         implementing undo.
6911
6912         * gtk/gtktextbuffer.c: Change signal handler signatures; 
6913         provide "interactive" argument when emitting insert_text or
6914         delete_text signal.
6915         
6916 2000-08-30  Havoc Pennington  <hp@pobox.com>
6917
6918         * gtk/gtktextbuffer.c: Docs
6919
6920 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
6921
6922         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
6923         from switch statements, since Tor removed the enumeration
6924         value.
6925         
6926         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6927         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
6928
6929 2000-08-29 Elliot Lee <sopwith@redhat.com>
6930         * */*.h: Use G_GNUC_CONST.
6931
6932 2000-08-27  Havoc Pennington  <hp@pobox.com>
6933
6934         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
6935         minor indentation fixes, inserted some FIXME about stuff I
6936         realized was broken while documenting it.
6937         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
6938         GTK convention  
6939
6940 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
6941
6942         * gtk/testgtk.c (create_styles): Fix double free of
6943         font desc.
6944
6945 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6946
6947         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
6948         
6949         * gtk/testgtk.c (create_styles): Add a test for modifying
6950         the style through gtk_widget_modify_*.
6951
6952         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
6953         a function to get the current modifier style.
6954
6955         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
6956         of the passed in GtkRcStyle instead of ref'ing it.
6957
6958         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
6959
6960 2000-08-20  Tor Lillqvist  <tml@iki.fi>
6961
6962         * gdk/gdkimage.h
6963         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
6964         shared memory image+pixmap GdkImage type, or
6965         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
6966         I am dropping that.
6967
6968         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6969         actually call gtk_init_abi_check(), passing also
6970         sizeof(GtkWindow). Ditto for gtk_init_check(). 
6971
6972         * gtk/gtk.def
6973         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6974         New functions, used to check that the GTK+-using code has been
6975         compiled using the correct compiler and switches. In particular,
6976         with gcc one has to use the -fnative-struct switch as GTK+ is
6977         compiled with that.
6978
6979 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
6980
6981         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6982         ->prev fields when merging lists. (Found simultaneously
6983         by Pawel Salek and Jakub Jelinek)
6984
6985 2000-08-12  Tor Lillqvist  <tml@iki.fi>
6986
6987         * gdk/gdk.def
6988         * gtk/gtk.def: Add missing entries.
6989
6990         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6991         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6992
6993         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6994         function. Dummy implementation at this point.
6995
6996         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6997         rules. Undefine GTK_COMPILATION when compiling the test programs.
6998         
6999         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
7000
7001 2000-08-11  Tor Lillqvist  <tml@iki.fi>
7002
7003         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
7004         to convert back and forth from UTF-8 and the "system" (or "current
7005         locale") charset when necessary. Indentation/spacing cleanup.
7006
7007 2000-08-10  Havoc Pennington  <hp@redhat.com>
7008
7009         * Makefile.am (snapshot): Change the format of the snapshot
7010         version to match glib
7011
7012         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
7013         from EXTRA_DIST since it doesn't seem to exist
7014
7015 2000-08-10  Tor Lillqvist  <tml@iki.fi>
7016
7017         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
7018         version of the directory name (not the UTF-8 one) when building
7019         the path name to stat().
7020
7021 2000-08-03  Elliot Lee  <sopwith@redhat.com>
7022
7023         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
7024         PANGO_ATTR_SHAPE set.
7025
7026 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
7027
7028         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
7029         Peter Osterlund to simplify the code while keeping the
7030         functionality the same.
7031
7032 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
7033
7034         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
7035         is_viewable() test further inside the function, since removing the 
7036         window from the redraw list without clearing ->update_area
7037         was also very broken.
7038
7039 2000-08-02  Tor Lillqvist  <tml@iki.fi>
7040
7041         * configure.in: Check for <unistd.h>.
7042
7043 2000-08-01  Martin Baulig  <baulig@suse.de>
7044
7045         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
7046         to display the message that this is a development version of GTK+.
7047
7048 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
7049
7050         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
7051         was depending on widget->allocation instead of the width of text_area,
7052         which was incorrect for subclasses like GtkSpinButton.
7053
7054         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
7055         with width == 1 tests that should be width == -1.
7056
7057 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
7058
7059         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
7060         (broken, Elliot, every single window blank on X) custom code with call
7061         to gdk_window_is_viewable() which a) prevents code duplicate and
7062         b) works. 
7063
7064 2000-07-31  Elliot Lee  <sopwith@redhat.com>
7065
7066         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
7067         to get the GDK_PARENT_ROOT() macro to work.
7068         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
7069         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
7070         of, windows that aren't shown.
7071         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
7072         pointer grab stuff.
7073
7074 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
7075
7076         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
7077           s/gtk_main_iteration/g_main_iteration/
7078
7079           Did this already in change:
7080                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
7081           don't know how it got reverted.
7082
7083 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
7084
7085         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
7086         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
7087
7088         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
7089         not gdk_pixbuf.
7090
7091 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
7092
7093         * configure.in,po/{sp,sr}.po: Added Serbian files
7094
7095 2000-07-30  Tor Lillqvist  <tml@iki.fi>
7096
7097         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
7098
7099         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
7100         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
7101         GIOChannel implementation.
7102
7103         * gdk/win32/gdkinput.c
7104         * gdk/win32/gdkpango-win32.c: Update license name here, too.
7105
7106         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
7107         definition to match prototype.
7108
7109         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
7110
7111 2000-07-27  Elliot Lee  <sopwith@redhat.com>
7112
7113         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
7114         function, to allow handling image formats that cannot be detected
7115         by looking at content alone.
7116
7117 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
7118
7119         * docs/tutorial/*.gif *.jpg *.eps
7120           Update these to the same look-n-feel.
7121           Why does including images in DocBook suck so badly?
7122
7123 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
7124
7125         * gtk/gtktable.c: applied patch from Phil Thompson
7126         <phil@river-bank.demon.co.uk> that enables space settings for
7127         the last row/columns as well.
7128
7129 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
7130
7131         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
7132         updates the license headers to the GNU Lesser General Public License,
7133         as well as updating the copyright year to 2000.
7134
7135 2000-07-26  Robert Brady  <rwb197@zepler.org>
7136
7137         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
7138           and po/Makefile, was installing and looking for them under gtk20
7139           and gtk2 respectively.
7140
7141 2000-07-25  Havoc Pennington  <hp@redhat.com>
7142
7143         * gtk/testtext.c: Comment out some stuff that depends on the rest
7144         of my patches.
7145
7146 2000-07-25  Havoc Pennington  <hp@redhat.com>
7147
7148         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
7149         buffer
7150
7151 2000-07-25  Havoc Pennington  <hp@redhat.com>
7152
7153         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
7154         widget changes.
7155
7156         * gtk/gtktextview.h: To be consistent with usage of "line"
7157         throughout the API to mean "newline-terminated thingy", change
7158         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
7159         to MOVEMENT_LINE.
7160
7161         (GtkTextView): Add flags for default editability, and whether to
7162         show the cursor. Add functions to get/set that. Add 
7163
7164         (gtk_text_view_get_iter_location): new function
7165
7166         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
7167         gtktextlayout.h
7168         (g_convert): Add g_convert temporarily, will go in glib in a bit
7169         
7170         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
7171         GtkTextTagTableForeach instead of brokenly using GHFunc.
7172         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
7173
7174         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
7175         moved to public header.
7176
7177         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
7178         "invisible", since "elide" was a bad name.
7179         (gtk_text_tag_get_priority): Added
7180
7181         (GtkTextStyleValues): put this in public header, along with
7182         functions to use it.
7183
7184         * gtk/gtktextmarkprivate.h: Include more headers, since we no
7185         longer include gtktextbtree.h.
7186
7187         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
7188         gtk_text_mark_deleted
7189
7190         * gtk/gtktextlayout.h: Don't include the "really private" headers,
7191         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
7192         to make this possible. Now we only need to install
7193         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
7194         (However the Makefile.am isn't changed yet because of the
7195         logistics of merging gtk-hp-patches piecemeal)
7196
7197         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
7198         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
7199         gtk_text_iter_get_line is now used in the public API for a
7200         different purpose.
7201
7202         * gtk/gtktextiter.h: Clean up function names to be more
7203         consistent. Always call char offset "offset" and byte index
7204         "index". A "line" is always a line number. 
7205
7206         (gtk_text_iter_is_last): new function, more efficient than 
7207         the existing way to check
7208         (gtk_text_iter_is_first): new function, also more efficient
7209
7210         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
7211
7212         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
7213         gtk_text_iter_forward_char, etc.
7214
7215         (gtk_text_iter_forward_to_tag_toggle): Renamed from
7216         forward_find_tag_toggle, since this isn't a linear search
7217
7218         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
7219
7220         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
7221         New functions, search for a buffer substring.
7222
7223         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
7224         interactive and default editable (since we need to store that info
7225         until we receive the selection data).
7226
7227         Remove all the _at_char and at_line etc. versions of functions;
7228         only have iterator versions.
7229
7230         Add _interactive() versions of functions, that consider the
7231         editability of text. (FIXME add interactive flag to the 
7232         insert/delete signals per Darin's suggestion)
7233
7234         (gtk_text_buffer_get_tag_table): new function, demand-creates the
7235         tag table if necessary
7236
7237         Remove declaration of gtk_text_buffer_get_iter_from_string
7238
7239         (_gtk_text_buffer_get_btree): private/internal function, added.
7240         
7241
7242         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
7243         (gtk_text_line_is_last): new function
7244
7245 2000-07-25  Havoc Pennington  <hp@redhat.com>
7246
7247         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
7248         using GtkProgressBar. See Changes-2.0.txt for details.
7249
7250         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
7251         "pulse_step" which are the equivalent of
7252         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
7253         Implement new API.
7254         
7255         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
7256         (use_text_format) to mark whether text set on the progress bar is
7257         a format string. Deprecate entire GtkProgress interface.
7258
7259         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
7260         (gtk_progress_build_string): make this a no-op if use_text_format
7261         is FALSE
7262
7263         * docs/Changes-2.0.txt: Describe progress bar changes.
7264
7265 2000-07-25  Tor Lillqvist  <tml@iki.fi>
7266
7267         * Makefile.am: Include the build directory.
7268
7269         * configure.in: Generate build/Makefile, build/win32/Makefile,
7270         gdk/, gdk/win32/, and gtk/makefile.mingw.
7271
7272         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
7273         Add GETTEXT_PACKAGE.
7274         
7275         * gdk/gdk.def
7276         * gtk/gtk.def: Updates.
7277
7278         * gdk/gdkfont.h
7279         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
7280         need them any longer.
7281
7282         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
7283
7284         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
7285         PANGOWIN32_LIBS and gdk_pixbuf.
7286
7287         * gdk/win32: Compiles, but no doubt doesn't work at all.
7288
7289         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
7290
7291         * gdk/win32/gdkinput.c: New file, temporarily.
7292         
7293         * gdk/win32/gdkinput-win32.h: New file
7294
7295         * gdk/win32/gdkinputprivate.h: Remove.
7296
7297         * gdk/win32/gdkpango-win32.c: New file.
7298
7299         * gtk/makefile.mingw.in: New file
7300
7301         * gtk/makefile.cygwin: Removed
7302         
7303         * gtk/Makefile.am: Update accordingly.
7304
7305         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
7306         made externally visible.
7307
7308         * gtk/gtkmain.c: Use it.
7309         
7310         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
7311         is enough.
7312
7313         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
7314
7315 2000-07-24 Elliot Lee <sopwith@redhat.com>
7316         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
7317         individual backends already.
7318         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
7319         again. Yes, there really is a good reason for this, if you are using the gdkregion
7320         internals, and if you're not, why do you care?
7321         * gdk/gdkwindow.c: Fix inverted condition
7322         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
7323         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
7324         * gtk/gtkrange.c: Redraw trough when moving.
7325         * gtk/gtktypeutils.c: Fix warning by adding const cast.
7326         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
7327
7328 2000-07-23  Tor Lillqvist  <tml@iki.fi>
7329
7330         * configure.in: Check for mkstemp and sigsetjmp. Output
7331         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
7332
7333         More work on GDK for Win32. Still in an intermediate state.
7334
7335         * gdk/makefile.cygwin
7336         * gdk/win32/makefile.cygwin: Removed.
7337         
7338         * gdk/makefile.mingw.in
7339         * gdk/win32/makefile.mingw.in: New files.
7340
7341         * gdk/Makefile.am
7342         * gdk/win32/Makefile.am: Generate and distribute them.
7343
7344         * gdk/win32/gdkwindow-win32.h
7345         * gdk/win32/gdkdrawable-win32.h
7346         * gdk/win32/gdkpixmap-win32.h: New files.
7347
7348         * gdk/win32/gdkcolor-win32.c
7349         * gdk/win32/gdkcursor-win32.c
7350         * gdk/win32/gdkdrawable-win32.c
7351         * gdk/win32/gdkgc-win32.c
7352         * gdk/win32/gdkimage-win32.c
7353         * gdk/win32/gdkprivate-win32.h
7354         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
7355         Rename fields and variables called xcursor, xid, etc (these names
7356         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
7357
7358 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
7359
7360         * gtk/gtkentry.[ch]: Fix some problems with vertical
7361         alignment.
7362
7363         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
7364         char/byte confusion.
7365
7366 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
7367
7368         * gtk/gtktextview.c (changed_handler): Fix bug where
7369         redraw wasn't being done properly when height of
7370         dirty region changed.
7371
7372         * demos/Makefile.am: Remove various references to
7373         -lgmodule
7374
7375 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
7376
7377         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
7378         PangoAttrShape to reserve space for pixmaps, add 
7379         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
7380         in the display functions.
7381         
7382         * gtk/testgtk.c (create_layout): Set some more exotic
7383         scrolled window options
7384
7385         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
7386         Add function to set the shadow type of a window, to allow
7387         putting a shadow around widgets such as GtkLayout or GnomeCanvas
7388         which don't draw their own frame.
7389
7390 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
7391
7392         * docs/tutorial/package-db-tutorial.sh: New file for
7393           packaging DocBook format tutorial
7394
7395 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
7396
7397         * docs/tutorial/gtk-tut.sgml: Minor updates
7398
7399         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
7400
7401 2000-07-19  Tor Lillqvist  <tml@iki.fi>
7402
7403         * gtk/gtksignal.c: Fix C++ comment.
7404
7405         * gtk/gtkimmulticontext.c
7406         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
7407         don't return value from void functions.
7408
7409         * gtk/gtk.def: Add gtk_rc_style_unref.
7410
7411 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7412
7413         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
7414         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
7415         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
7416         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
7417         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
7418         gtk/gtktypeutils.h: Include files outside of the extern "C"
7419         block. Makes some C++ compiler happy. Reported by Denis Vakatov
7420         <vakatov@peony.nlm.nih.gov>.
7421
7422 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
7423
7424         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
7425           Completes first pass. Hurrah!
7426
7427 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
7428
7429         * docs/tutorial/gtk-tut.sgml: More clean ups.
7430
7431 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
7432
7433         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
7434         paint the background of the text area which was accidentally
7435         removed at some point.
7436
7437         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
7438           
7439          - Move most of the functionality from the theme vtable
7440            into GtkRcStyleClass and GtkStyleClass. The moved
7441            vtable functions were changed a bit in the move to
7442            work better in their new home.
7443
7444          - Get rid of the engine and engine_data fields from
7445            GtkRcStyle and GtkStyle; instead the theme
7446            engine derives theme-specific subclasses of GtkRcStyle
7447            and GtkStyle
7448
7449          - Add extra dlsym() found entry point to themes,
7450            theme_create_rc_style().
7451
7452         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
7453         in gtk_style_real_copy.
7454
7455         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
7456         to register a type associated with an engine. (The engine
7457         won't be unloaded as there is an instance of the type.)
7458
7459
7460 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
7461
7462         * docs/tutorial/gtk-tut.sgml: Clean ups.
7463
7464 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
7465
7466         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
7467           of cleaning up to do.
7468
7469 2000-07-15  Tor Lillqvist  <tml@iki.fi>
7470
7471         * gdk/testgdk.c: New file, quick hack to test backends for
7472         pixel-by-pixel correctness of the most simple graphic operations.
7473
7474 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
7475
7476         * Really release 1.3.1
7477         
7478         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
7479         include structure.
7480
7481 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
7482
7483         * Released 1.3.1
7484
7485 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
7486
7487         * gtk/gtktextlayout.c: use FALSE for size_only most
7488         of the time when calling gtk_text_layout_get_line_display()
7489         to avoid causing double reshapes when a redraw follows
7490         immediately after.
7491
7492 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
7493
7494         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
7495         appropriate region and gdk_window_process_updates() so trough
7496         updating doesn't lag behind the window being scrolled.
7497
7498         * gdk/gdkgc.c: Make parent_class pointer static.
7499          
7500 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
7501
7502         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
7503         include <string.h>.
7504          
7505         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
7506         cut-and-paste error in computing memory offset for 4 channels.
7507
7508 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
7509
7510         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
7511         gtk_rc_append_default_pixmap_path(), since it wasn't
7512         adding an interesting path and we don't have a meaningful
7513         default for this value.
7514
7515 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
7516
7517         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
7518         gtk-config to gtk-config-2.0 move gtk_.m4 to
7519         gtk-2.0.m4
7520
7521         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7522         gdk/Makefile.am demos/Makefile.am: Change 
7523         library names to libgtk-1.3.la, etc, so that we
7524         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
7525
7526         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
7527         gdk/Makefile.am gdk/x11/Makfile.am
7528         Move include files into /usr/include/gtk-2.0, 
7529         /usr/lib/gtk-2.0/include/
7530          
7531         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
7532         gtk/gtkintl.h: Change package for gettext from 
7533         gtk+ to gtk20. Put hack in autogen.sh to modify
7534         po/Makefile.in.in after gettextize to make this
7535         possible.
7536
7537         * gtk+.spec: Some updates, not tested.
7538
7539         * gdk-pixbuf/Makefile.am: Move loaders into
7540         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
7541
7542         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
7543         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
7544         to THEMENAME/gtk-2.0/. Move engine directory  to
7545         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
7546         
7547 2000-07-12  Tor Lillqvist  <tml@iki.fi>
7548
7549         Win32 changes, still doesn't build though.
7550
7551         * gdk/makefile.cygwin
7552         * gdk/win32/makefile.cygwin
7553         * gtk/makefile.cygwin: Updates.
7554
7555         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
7556         default values for fg and bg pixel as X11 does (0 and 1), not
7557         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
7558         Use 0 for pen width by default (treated as 1 anyway later, but for
7559         apps that might check the value in the GdkGC).
7560         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
7561         interface to gdk_gc_predraw and _postdraw.
7562
7563         * gdk/win32/gdkwin32.h
7564         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
7565
7566         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
7567         extraneous semicolon.
7568
7569         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
7570
7571         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
7572         not the Win32 bitspixel value.
7573
7574         * gdk/win32/gdkcc-win32.c:
7575         * gdk/win32/gdkcolor-win32.c 
7576         * gdk/win32/gdkprivate-win32.h
7577         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
7578         GDK object structure.
7579
7580 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
7581
7582         * docs/tutorial/gtk_tut_12.es.sgml (name): 
7583         * docs/tutorial/gtk_tut_it.sgml (name): 
7584         * docs/tutorial/gtk_tut_fr.sgml (name): 
7585         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
7586         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
7587
7588 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
7589
7590         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
7591           small changes.
7592
7593 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
7594
7595         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
7596         a bug here, never been here and never fixed anything ;(
7597         (don't segfault if tree->root_tree is NULL, which happens prior
7598         to widget realization, but puke instead).
7599
7600 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
7601
7602         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
7603         add the necessary tokens.
7604
7605         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
7606         (gtk_rc_style_to_style): copy thicknesses.
7607         (gtk_rc_init_style): apply thicknesses.
7608         (gtk_rc_parse_style): parse xthickness and ythickness.
7609
7610         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
7611
7612         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
7613         (gdk_window_new): 
7614         (_gdk_windowing_window_init): 
7615         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
7616         (gdk_pixmap_create_from_data): 
7617         (gdk_bitmap_create_from_data): 
7618         (gdk_pixmap_new): 
7619         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
7620         (gdk_image_new): 
7621         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
7622         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
7623         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
7624         (gdk_colormap_get_system): 
7625         (gdk_colormap_new): 
7626         * gdk/gdkwindow.c (gdk_window_init): 
7627         * gtk/gtkstyle.c (gtk_style_new):
7628         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
7629         * gdk/gdkpixmap.c (gdk_pixmap_init): 
7630         * gtk/gtkrc.c (gtk_rc_style_new):
7631         use g_object_new() instead of g_type_create_instance() which
7632         is a private function for fundamental type implementations.
7633
7634 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
7635
7636         * configure.in: Add check for db2html
7637
7638 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
7639
7640         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
7641         hack to set glib_debug_objects based on gtk_debug_flags.
7642
7643 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
7644
7645         * INSTALL.in: Update the Prerequisites section.
7646
7647         * Makefile.am demos/Makefile.am docs/Makefile.am
7648         docs/tutorial/Makefile.am gdk/x11/Makefile.am
7649         gdk/linux-fb/Makefile.am: Dist fixes
7650
7651 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
7652
7653         * NEWS: 10,000 foot view of 1.3.1 changes.
7654
7655 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
7656
7657         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
7658         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
7659         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
7660         gdk/x11/gdkmain-x11.c: 
7661
7662         Patch from George Lebl to add a GdkGrabStatus enumeration to use
7663         as a return value of gdk_*_grab(). Previously, we just
7664         returned the X11 values directly.
7665
7666 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
7667
7668         * gdk/x11/Makefile.am: Patch from George Lebl to 
7669         install all the headers in the right place.
7670
7671 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
7672
7673         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
7674           initial conversion to DocBook.
7675
7676 2000-07-04  Tor Lillqvist  <tml@iki.fi>
7677
7678         * README.win32: Improve a bit.
7679
7680         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
7681         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
7682         Alt+0nnn on the numpad (used to enter characters by numeric code
7683         from current DOS or ANSI codepage) working correctly, as in other
7684         Windows apps.
7685
7686         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
7687         same argument validity tests as in X11 version.
7688         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
7689
7690         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
7691         definitions in case missing from headers.
7692
7693         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
7694         destroy the window-specific cursor.
7695         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
7696         calling GetModuleHandle(NULL).
7697         (gdk_window_set_cursor): Reworked to always copy the passed cursor
7698         with CopyCursor before setting it as the window-specific
7699         cursor. It is OK for the caller to destroy the GdkCursor (and thus
7700         also its Windows cursor) after calling this function. Destroy any
7701         previous window-specific cursor.
7702
7703 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
7704
7705         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
7706         font charset is iso8859-1, not iso-8859-1.
7707
7708 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
7709
7710         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
7711         Use g_get_charset() instead of g_get_codeset().
7712
7713         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
7714         Comment out some strdup'ing functions to keep timj
7715         happy until we finish fighting this out.
7716
7717 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
7718
7719         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
7720         <= width or height.
7721
7722         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
7723         from 1.2 for parent/child states.
7724
7725         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
7726         of typos.
7727
7728         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
7729         event structures, replace with a generic axes field. Replace 
7730         deviceid/sourec with GdkDevice *device.
7731
7732         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
7733         to extract particular axis use value from event. (Also
7734         can be used for normal X/Y.)
7735
7736         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
7737         allow for arbitrary number of axes, namespace everything
7738         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
7739         everywhere.
7740
7741         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
7742         Get rid of the gdk_input_vtable setup if favor of simply
7743         defining the functions in gdkinput-none/gxi/xfree.c in
7744         a similar fashion to the way that the port structure is 
7745         done.
7746
7747         * gtk/gtkdnd.c: Fix fields of synthesized button press event
7748         for new event structures. 
7749
7750         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
7751         new device interfaces.
7752
7753 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
7754
7755         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
7756         set the initial text.
7757
7758         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
7759         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
7760         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
7761         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
7762
7763         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7764         pango_layout_set_font_description to simplify.
7765
7766 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
7767
7768         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
7769         pango_layout_set_font_description to simplify.
7770
7771 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
7772
7773         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
7774         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
7775         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
7776
7777         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
7778         PANGO_PIXELS() macro.
7779
7780 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
7781
7782         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
7783         that returns a PangoContext owned by the widget and updated to
7784         match future changes in the widget. Also, make 
7785         gtk_widget_create_pango_layout() use this context. If we ever
7786         add a ::changed signal to PangoContext, this will make things
7787         much more convenient. 
7788
7789         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
7790         in the appropriate places instead of destroying the layouts and
7791         creating new ones.
7792
7793         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
7794         in a few strategic places.
7795
7796 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
7797
7798         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
7799         gtk_widget_size_request() on reparented child, if one. Otherwise,
7800         queue_resize() on the child never results in it getting size-requested
7801         at all.
7802
7803         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
7804         in option menus, so that (with luck) people won't copy it into
7805         their apps in the future.
7806
7807         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
7808         to gtk_option_menu_calc_size. This isn't perfect, but should fix
7809         a lot of problems with changing the size of the menu's menu
7810         items after adding it to the option menu.
7811
7812         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
7813
7814         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
7815         the text direction for a widget changes.
7816
7817         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
7818         ::direction_changed to get rid of various hacks.
7819
7820 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
7821
7822         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
7823         name.
7824
7825 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
7826
7827         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
7828         flag to the structure. Do not call XFreePixmap on pixmaps created
7829         by gdk_pixmap_foreign_new().
7830
7831 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
7832
7833         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
7834         value using GdkRGB functionality given GdkColormap and GdkColor.
7835         (name not final, waiting for inspiration.)
7836         
7837         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
7838         set the foreground/background of a GC using the GC's colormap
7839         and GdkRGB. (name not final, waiting for inspiration.)
7840
7841         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
7842         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
7843
7844         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
7845         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
7846         purely a function of the corresponding colormap. Make
7847         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
7848
7849         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
7850         gdk_pixbuf_*create_from_xpm_* in terms of
7851         gdk_pixbuf_new_from_xpm_data(), move into platform independent
7852         code.
7853
7854         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
7855         advantage of the new draw_rgb_32_image_dithalign.
7856
7857         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
7858
7859         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
7860         on each created GC.
7861
7862         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
7863
7864         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
7865         which we initialize from the drawable when the GC is created,
7866         if the drawable has a colormap.
7867
7868         * gdk/x11/gdkgc-x11.c: include string.h for memset.
7869
7870         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
7871
7872         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
7873
7874 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
7875
7876         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
7877         actually returning expose events, make sure to set
7878         the count field properly.
7879
7880         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
7881         accidentally reintroced bug which always cleared
7882         the graphics_exposures value. 
7883
7884 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
7885
7886         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
7887
7888 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
7889
7890         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
7891
7892 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
7893
7894         * docs/faq/gtk-faq.sgml: Start of Section 6.
7895
7896 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
7897
7898         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
7899         
7900         (Fixes problem with drawing childless frames. Pointed out
7901         by and a first patch from Anders)
7902         
7903         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
7904         compute a child_allocation, even if we don't have a child.
7905
7906         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
7907         Always chain to the parent's impl, even if we don't have a child.
7908
7909 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7910
7911         * gdk/gdkrgb.c: If possible, create only a single shm segment and
7912         use multiple parts of it instead of creating a bunch of separate
7913         segments, since the maximum number of segments per system is not
7914         large. (This might be worth backporting to GTK+-1.2.x if we make a
7915         new release )
7916
7917         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
7918         structure in preparation for per-colormap GdkRGB.
7919
7920         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
7921         to False when we get EINVAL from shmget so that the caller of
7922         gdk_image_new can retry with a smaller segment size.
7923
7924 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
7925
7926         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
7927
7928 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
7929
7930         * configure.in: make the current version number 1.3.1 (binary age 0,
7931         interface age 0).
7932         
7933         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
7934         gtkcompat.h is all we want.
7935
7936         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
7937         GLib primitive types. fixed g_type_register_fundamental() argument
7938         ordering.
7939
7940         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
7941         compiles.
7942
7943         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
7944         object code cleanup, comment trigraph fixes, etc...
7945
7946 2000-06-23  Havoc Pennington  <hp@redhat.com>
7947
7948         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
7949         instead of making up a bogus name for first_para_mark
7950
7951         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
7952         0 as a context ID
7953
7954 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
7955
7956         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
7957
7958 2000-06-21  Havoc Pennington  <hp@pobox.com>
7959
7960         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
7961         we didn't check window->bg_pixmap != GDK_NO_BG.
7962
7963         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
7964         gdk-pixbuf
7965
7966 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
7967
7968         * docs/faq/gtk-faq.sgm: Move file to here.
7969           TODO: Update Makfile.am 
7970
7971 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
7972
7973         * docs/gtk-faq.sgm: Add Section 2
7974
7975 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
7976
7977         * docs/gtk-faq.sgm: New file. Start of DocBook
7978           version of the FAQ.
7979
7980 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
7981
7982         * configure.in (GDK_PIXBUF_MAJOR): Define version
7983         numbers for GDK_PIXBUF_*, as they get substituted
7984         into a header file. Need to consider versioning
7985         for gdk-pixbuf more carefully later.
7986
7987 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
7988
7989         Work with srcdir != builddir.   
7990         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
7991         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7992         * demos/testpixbuf.c: Likewise.
7993         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7994         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
7995         <gdk/x11/gdkx.h>.
7996         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
7997         "gdk-pixbuf.h".
7998         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7999
8000 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
8001
8002         * TODO.xml: Change 1.4 version numbers to 2.0.
8003
8004 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
8005
8006         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
8007         fixups to GTK+ standard.
8008
8009 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
8010
8011         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
8012         gdk-pixbuf.
8013
8014         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
8015         fixups for GObject.
8016
8017         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
8018         gdk-pixbuf with GDK dependencies moved into GDK.
8019         
8020         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
8021         move gdk-pixbuf-loader here until GObject has signals.
8022
8023         * demos/: New directory of demos. Move demos from
8024         gdk-pixbuf here.
8025
8026         * demos/pixbuf-init.c: Small bit of code to check for
8027         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
8028         set GDK_PIXBUF_MODULEDIR appropriately.
8029
8030         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
8031         define which no longer makes sense.
8032
8033 2000-06-21  Havoc Pennington  <hp@redhat.com>
8034
8035         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
8036         gtk_get_default_language
8037
8038         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
8039         new function to get the default language
8040
8041         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
8042         s/gtk_text_view_style_values/gtk_text_style_values/
8043
8044         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
8045         Add a "language" field to tags.
8046
8047         (gtk_text_tag_set_arg): Fix bug in setting
8048         "bg_full_height_set" tag.
8049
8050 2000-06-21  Havoc Pennington  <hp@redhat.com>
8051
8052         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
8053         in the interfaces
8054
8055         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
8056         stuff instead when possible.
8057
8058         * gtk/gtktexttypes.h: Delete some unused constants
8059
8060         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
8061         testtextbuffer.c: use glib instead of custom unicode routines
8062
8063 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
8064
8065         * docs/es/: Removed mistakenly added generated sgml
8066
8067         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
8068         Remove outdated info files.
8069
8070         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
8071         Moved tutorial files into subdir
8072
8073         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
8074         subdir.
8075
8076         * docs/man/gtk_button.pod: Remove. (contents will be
8077         integrated into gtk-reference button page.)
8078
8079         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
8080         docs/faq/Makefile.am: Adjust for new organization
8081
8082 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
8083
8084         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
8085         not $(MKINSTALLDIRS)
8086
8087 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
8088
8089         * gtk/testgtk.c (create_text): Finish the job Elliot started
8090         of removing font setting test for text widget. (Since text widget
8091         and GdkFont are not deprecated, and cause portability problems.)
8092
8093 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
8094
8095         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
8096         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
8097         Remove use of libunicode in favor of new GLib functions.
8098
8099         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
8100         nano-x, framebuffer. The X11 include is just a hack until we get
8101         the necessary functions in gdkcolor.h, so there is no reason to
8102         add other includes of platforms.
8103
8104         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
8105         window bigger than the screen change.
8106
8107         * gtk/testgtk.c: Revert some random changes from Elliot
8108         that had no particular point and were causing testgtkrc
8109         not to function correctly.
8110         
8111         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
8112         because GdkSegment and GdkRegionBox have the same fields,
8113         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
8114         results in clearer code.
8115
8116         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
8117         gdk_input_translate_coordinates): Fix missed GdkObjectification
8118
8119 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8120
8121         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
8122         * gtk/gtk{plug,socket}.h: Missed commits from previous.
8123
8124 2000-06-20  Havoc Pennington  <hp@redhat.com>
8125
8126         * modules/linux-fb/Makefile.am: Make this compile
8127         without framebuffer enabled
8128
8129         * gdk/linux-fb/Makefile.am: Add conditional to not build
8130         framebuffer unless specified in configure
8131
8132         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
8133         the size of the target instead of source if -1 was passed for
8134         width/height
8135
8136         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
8137         width/height confusion.
8138
8139 2000-06-19  Havoc Pennington  <hp@redhat.com>
8140
8141         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
8142         GDK_DRAWABLE_XID. In the future, we probably want to make it
8143         faster with G_DISABLE_CHECKS turned on.
8144
8145 2000-06-14  Havoc Pennington  <hp@redhat.com>
8146
8147         * gdk/Makefile.am: add gdkpixmap.c
8148
8149         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
8150         s/gdk_image_init/_gdk_windowing_image_init
8151
8152         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
8153         ref/unref
8154
8155         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
8156
8157         * gdk/gdkcompat.h: remove GdkWindowType compat, since
8158         GdkWindowType is now non-deprecated; 
8159         change gdk_window_get_type() compat to be
8160         gdk_window_get_window_type().
8161
8162         * gdk/gdkdnd.h: make GdkDragContext a GObject.
8163
8164         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
8165         virtual GObject. Make all functions call into the vtable.
8166         Move gdk_image_put() guts in here. Remove GdkDrawableType
8167         and gdk_drawable_get_type(), these are now GdkWindow-specific.
8168         draw_image, get_depth, get_size, set_colormap, get_colormap,
8169         get_visual added to the vtable.
8170         
8171         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
8172         GObject. Virtualize everything. 
8173         (gdk_gc_new_with_values): remove check for destroyed window,
8174         because now GdkWindow::create_gc will check this.
8175         (gdk_gc_set_values): New function to set GC values, this 
8176         was already implemented but wasn't in the header
8177
8178         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
8179
8180         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
8181         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
8182         remove _gdk_window_class; add _gdk_window_impl_get_type() and
8183         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
8184         _gdk_windowing_window_init, rename gdk_image_init to
8185         _gdk_windowing_image_init.
8186         
8187         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
8188         (gdk_draw_layout): Remove check for destroyed window, 
8189         because all the drawable methods already check it.
8190         
8191         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
8192         Add gdkpixmap.c which contains implementation of GdkDrawable
8193         virtual table (by chaining to a platform-specific implementation
8194         object).
8195         
8196         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
8197         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
8198         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
8199         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
8200         GdkColormapPrivate. 
8201
8202         * gdk/gdktypes.h: #include <glib-object.h>
8203
8204         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
8205         Move most functionality to platform-specific implementation
8206         object. GdkWindow itself now handles the backing store, then
8207         chains to the platform-specific implementation.
8208         (gdk_window_get_window_type): return GdkWindowType of the window.
8209         (gdk_window_peek_children): New routine, returns the children of 
8210         a GdkWindow
8211         (gdk_window_get_children): Was in X11-specific code and did 
8212         XQueryTree. Changed to simply return a copy of window->children; 
8213         so it can go in cross-platform code.
8214         
8215         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
8216
8217         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
8218         GdkColormap; just changed to use the new private data instead
8219         of casting to GdkColormapPrivate.
8220
8221         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
8222         gdk_cursor_new().
8223
8224         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
8225         (private data member in the GObject). 
8226         (xdnd_manager_source_filter): Function had broken 
8227         error handling, fix it (use gdk_error_trap_push).
8228
8229         * gdk/x11/gdkdrawable-x11.c: This file now implements
8230         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
8231         base class is purely for the convenience of the X port,
8232         and not part of the interface to cross-platform GDK.
8233
8234         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
8235         
8236         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
8237         specific to X, and returned by the create_gc virtual method
8238         of GdkDrawableImplX11. 
8239         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
8240         rather than gchar, this was also changed in the GdkGC vtable.
8241         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
8242         mask is 0, return immediately, instead of checking every flag.
8243         This is faster, and keeps us from segfaulting if values is NULL
8244         and the mask contains some nonzero flags.
8245
8246         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
8247         GdkWindow.
8248
8249         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
8250         GdkWindowPrivate is gone.
8251
8252         * gdk/x11/gdkim-x11.c: rename things that got renamed.
8253
8254         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
8255         remove the image_put stuff that got transferred to GdkDrawable.
8256         
8257         * gdk/x11/gdkinput.c: renamings
8258
8259         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
8260
8261         * gdk/x11/gdkpixmap-x11.c: GObject conversion
8262
8263         * gdk/x11/gdkprivate-x11.h: indentation fixes
8264
8265         * gdk/x11/gdkproperty-x11.c: renamings
8266
8267         * gdk/x11/gdkselection-x11.c: renamings
8268
8269         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
8270         implements the platform-specific "impl" object.
8271         Moved gdk_window_get_children to gdk/gdkwindow.c
8272
8273         * gdk/x11/gdkx.h: Remove all the private structs and private datas
8274         that no longer exist. Add declaration of GdkGCX11 object here.
8275         Fix all the macros to still work. 
8276
8277         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
8278         GdkDragContext from the boxed types since they are now GObjects.
8279
8280         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
8281         moved xthickness/ythickness into the instance. GtkStyleClass
8282         functions are now in the standard vtable for GtkStyle, so you have
8283         to create a GObject subclass to write a theme engine.
8284         (gtk_style_copy): fixed a leaked PangoFontDescription
8285         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
8286         can be the standard GObject function.
8287         
8288         * Throughout GTK:
8289         s/style->klass->[xy]thickness/style->[xy]thickness
8290         s/pango_layout_unref/g_object_unref/
8291
8292         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
8293         
8294         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
8295         accessing GDK internals.
8296
8297         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
8298         accessing GDK internals.
8299
8300 2000-06-18  Elliot Lee  <sopwith@redhat.com>
8301
8302         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
8303
8304         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
8305         problem by calculating event position relative to the trough
8306         rather than the slider.
8307         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
8308
8309         * gdk/gdkgc.h: Add GDK_NOR.
8310
8311         * configure.in, Makefile.am: Add modules top level dir
8312         * configure.in: Only use pangox library if building x11 target.
8313         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
8314
8315 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8316
8317         * gtk/gtkcolorsel.c: Change private class member to be named
8318         private_data throughout the file.
8319
8320         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
8321         private_data to avoid clashing with keyword.
8322
8323 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
8324
8325         * gdk/gdkdnd.h: Add comment to remove warning.
8326
8327 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
8328
8329         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
8330         Byelorussian language; changed the Makefile and file names 
8331         to reflect that.
8332
8333 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
8334
8335         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
8336         rather than gdk_window_hide; this makes things work
8337         correctly if the window is programmatically hidden while
8338         iconified.
8339
8340 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
8341
8342         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
8343         cut and paste typo where wrong pixmap was being
8344         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
8345
8346 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
8347
8348         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
8349         Add helper function to compute format / bytes 
8350         relationship. Use in a couple places to fix up
8351         errors which assume 8 * format.
8352
8353         * gtk/gtkselection.c (gtk_selection_request): Use 32
8354         rather than 8 * sizeof (GdkAtom), to work correctly
8355         on Alpha.
8356
8357 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
8358
8359         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
8360         libgtk.la
8361         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
8362         versions
8363
8364         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
8365         checking macros return NULL since the function has a return value.
8366
8367 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
8368
8369         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
8370         GTK+ from building at all.
8371
8372         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
8373
8374 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
8375
8376         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
8377         gtk/Makefile.am: make it possible to configure gtk for different
8378         targets on the same platform. The library name is now 
8379         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
8380         flag. Only the x11 target compiles right now.
8381         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
8382         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
8383         * gdk/nanox/gdk*generic*: delete generic region code.
8384         * gdk/linux-fb/gdk*generic*: delete generic region code.
8385         * README.nanox: update information.
8386         
8387 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
8388
8389         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
8390         prepend not append. (Pointed out by Brett Hall.)
8391
8392 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
8393
8394         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
8395
8396 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
8397
8398         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
8399         need this later, and this makes sure that the atexit for
8400         glib gets called after that for GDK, so atexits are
8401         properly ordered for object leak checking.
8402
8403         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
8404
8405         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
8406         pango_x_shutdown_display()
8407
8408         * gtk/simple.c (main): Close window on destroy.
8409
8410 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
8411
8412         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
8413         to treat initial creation different from setting with 
8414         regards to the graphics-exposures parameter, so add a parameter
8415         indicating whether this is initial or not.
8416
8417 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
8418
8419         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
8420         to sort of work by adding an extra return_exposes arg
8421         to gdk_event_translate() - it might be better to simply
8422         deprecate the function altogether and force people to rewrite
8423         without it. gdk_window_scroll() handles most of it, and where
8424         gdk_window_scroll() doesn't work, simply redrawing more does.
8425
8426         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
8427         assertion.
8428
8429         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
8430
8431         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
8432         bunch of pretty much useless /* Print debugging info */ comments 
8433         which had drifted away from the code they were commenting.
8434
8435 2000-06-02  Havoc Pennington  <hp@pobox.com>
8436
8437         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
8438         is in working order.
8439         
8440         * gtk/testtext.c: Change to reflect anonymous mark API
8441
8442         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
8443
8444         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
8445         field, which was unused.
8446
8447         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
8448         saves some typing.
8449
8450         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
8451
8452         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
8453         flag on the insertion point and selection bound
8454
8455         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
8456         make mark-manipulation functions take a GtkTextMark* instead of a
8457         mark name.
8458         
8459         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
8460         GtkTextMarkBody; will be used to detect attempts to delete
8461         the permanent marks (insert and selection bound)
8462
8463         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
8464
8465 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
8466
8467         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
8468         flag to on.
8469
8470         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
8471         Honor DOUBLE_BUFFRED_FLAG
8472
8473         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
8474         function to set the DOUBLE_BUFFERED flag.
8475
8476         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
8477         or not exposes done on the widget should be double-buffered.
8478
8479         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
8480         to be what would be expected. (Fixes problem with a
8481         g_return_if_fail() validating a TextDirection enumeration)
8482
8483 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
8484
8485         * gtk/gtkwidget.c: Remove all references to 
8486         offscreen flag which was no longer used.
8487
8488         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
8489
8490         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
8491         for non-null label_widget->parent.
8492
8493         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
8494         which no longer was used.
8495
8496         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
8497
8498         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
8499         for null arguments.
8500
8501         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
8502         check for destroyed windows.
8503
8504 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
8505
8506         * gtk/gtkimmulticontext.c: Add a finalize method and unref
8507         the slave context there.
8508
8509         * gtk/gtkinvisible.[ch]: Make reference counting behavior
8510         identical to GtkWindow.
8511
8512 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
8513
8514         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
8515         pangox to here, so we can write them independent of rendering
8516         system, using GDK primitives.
8517
8518         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
8519         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
8520         since we have a rendering-system independent implementation in
8521         terms of draw_glyphs().
8522         
8523         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
8524         function to render a single line.
8525
8526         * gdk/x11/gdkpango.c: Move the guts of this file mostly
8527         into ../gdkpango.c, which simplifies things, since we
8528         don't have to deal with raw X gc's.
8529
8530 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
8531
8532         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
8533         get the logical attributes for a given GtkTextLine.
8534
8535 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
8536
8537         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
8538         g_locale_get_codeset() to g_get_codeset() change.
8539
8540 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
8541
8542         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
8543         descriptions.
8544
8545         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
8546         the entry.
8547
8548         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
8549         redoing (vastly simplifying) for Pango. Still needs quite
8550         a bit of work. (Size selection is currently poor. List of 
8551         predefined sizes is not a good idea, since all of these
8552         sizes won't necessarily be distinct.)
8553
8554 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
8555
8556         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
8557         CODESET results for LANG=C.
8558
8559 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
8560
8561         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
8562         which takes a stringized pango font description;
8563         ignore the older 'font' and 'fontset' declarations.
8564
8565         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
8566         field with a GdkFont derived via gdk_font_from_description(),
8567         for compatibility. (Should we just remove it entirely?
8568         Probably too much compatibility breakage, but people
8569         should be migrating to the new Pango stuff as quickly
8570         as possible.)
8571
8572 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
8573
8574         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
8575
8576 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
8577
8578         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
8579         redoing; there are some bugs in size allocation right
8580         now, the semi-existant distinction between header / day
8581         fonts was removed, but, with Pango, could actually
8582         be made functional in a nice way.
8583         
8584         * gtk/testcalender: Move calender from examples into this
8585         directory as a test program. (We really need to restrcture
8586         testgtk into a whole directory full of tests for every
8587         widget or functionality group, separated into multiple .c
8588         files.)
8589
8590 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
8591
8592         * gtk/testgtk.c (file_exists): Fix stupid typo that
8593         was keeping RC file from being loaded.
8594
8595         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
8596         RC file font code.
8597
8598 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
8599
8600         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
8601         Add function to load a GdkFont from a PangoFontDescription.
8602
8603 2000-05-29  Tor Lillqvist  <tml@iki.fi>
8604
8605         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
8606         variable should be of type GdkEventPrivate.
8607
8608 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
8609
8610         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
8611         to have any widget for the label, use a GtkLabel widget
8612         to display the text. (Based partially on a patch from
8613         Anders Carlson.)
8614
8615         (Quite a bit of code reorganization - strip 90% of the
8616         guts out of gtkaspectframe and add a single virtual
8617         func to GtkFrameClass - compute_child_allocation.)
8618
8619 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
8620
8621         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
8622         (Removed clist->row_center_offset field because caching
8623         it wasn't saving time or code, added private function
8624         _gtk_clist_create_cell_layout()).
8625
8626 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
8627
8628         * gtk/gtkaccellabel.c: Pangoized.
8629
8630         * gtk/[hv]ruler.c: Pangoized
8631
8632 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
8633
8634         * gtk/gtkfilesel.c (gtk_file_selection_init):
8635         Use gtk_clist_set_column_auto_resize() to remove need
8636         need for manual column width computations.
8637
8638 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
8639
8640         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
8641         ensuring Pango correctness, and considerably simplifying the
8642         code.
8643         
8644         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
8645
8646         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
8647         getting of numbers of lines.
8648
8649         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
8650         to the actual requested width of the lable, not to the wrap
8651         width we set.
8652
8653         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
8654
8655         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
8656           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
8657
8658         * gtk/gtktextview.c: Fix structure inheritance.
8659
8660         * gtk/gtkprogressbar.c: Pangoize.
8661
8662 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
8663
8664         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
8665         in a function.
8666
8667         * gtk/gtktextlayout.c (find_display_line_above): Fixed
8668         bug with computing line tops.
8669
8670         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
8671
8672 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
8673
8674         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
8675         and y_offset coordinates to do what we need now. (The offset between
8676         buffer and layout coordinates has been reintroduced, but is a 
8677         bit different than before.)
8678
8679         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
8680         handle the adjustments ourselves, and scroll as necessary using
8681         the new gdk_window_scroll().
8682         
8683         The advantage of this is that when we are incrementally revalidating,
8684         we are essentially rearranging things around the visible portion
8685         of the screen. With the old setup, the visible portion of the
8686         screen was moved around in the layout, so scrolling and redrawing
8687         to track that caused jumping of the display. Since we now
8688         control the scrolling ourselves, we can suppress this and
8689         only redraw when things actually change.
8690
8691 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
8692
8693         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
8694         the region not just redisplay it after-all, since we store the
8695         cursors in the LineDisplay. (Ugly interactions here between
8696         GtkLayout and GtkTextBTree here.)
8697         
8698         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
8699
8700 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
8701
8702         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
8703         Added function to scroll contents of a window while keeping the
8704         window constant. Works by XCopyArea or guffaw-scrolling depending
8705         on the details of how the window is set up. (guffaw-scrolling
8706         still needs to be filled in.)
8707
8708 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
8709
8710         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
8711         move the debugging that was tied to a global variable
8712         to that.
8713
8714         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
8715
8716         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
8717         validated flag, in line data instead of setting height/width to
8718         -1. This allows us to perform operations with partially invalid
8719         buffer (using the old size for invalid lines) and thus to do
8720         incremental vaidation. Keep height/width aggregates up to date
8721         when deleting text and rebalancing the tree.
8722
8723         * gtk/gtktextbtree.[ch]: Add functions validate a line
8724         (gtk_text_btree_validate_line), and to validate up
8725         to a number of pixels (gtk_text_btree_validate).
8726
8727         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
8728         that indicates that something is changed and a revalidation
8729         pass is needed. Change ::need_repaint to ::changed, and
8730         make it take old and new yranges instead of a rectangle.
8731
8732         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
8733         the line_data_destroy() function from 
8734         gtk_text_btree_add_view() to a virtual function in 
8735         GtkTextLayout
8736
8737         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
8738         since we are handling partial repaints in a different fashion
8739         now.
8740
8741         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
8742         of the selection instead of queueing a repaint on the
8743         entire widget.
8744
8745         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
8746         get_selection_bounds() down to btree, make the function
8747         in buffer a wrapper around the btree function.
8748
8749         * gtk/gtktextlayout.[ch]: Add functions to check if the
8750         layout is valid and to recompute either a range of pixels
8751         aroudn a line or a certain total number of pixels.
8752
8753         * gtk/gtktextlayout.[ch]: Cache a single line display;
8754         now that we only redraw the needed portions, the hit rate
8755         for this cache is quite high.
8756         
8757         * gtk/gtktextview.[ch]: Keep track of the first paragraph
8758         on the screen so that when re-laying-out the buffer, we can
8759         keep the same place. This requires connecting to ::value_changed
8760         on the adjustments
8761
8762         * gtk/gtktextview.[ch]: Add idle functions to revalidate
8763         the buffer after we receive an ::invalidated signal.
8764         
8765 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
8766
8767         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
8768         to max of allocation and layout size, not just to the
8769         layout size.
8770
8771         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
8772         Invalidate window so it gets redrawn properly.
8773
8774         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
8775         to mean the entire window.
8776
8777         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
8778         into public header.
8779
8780 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8781
8782         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
8783         to get the name of a mark.
8784
8785         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
8786         to find the paragraph from a y position.
8787
8788 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
8789
8790         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
8791         nodes have width/height >= 0, not > 0.
8792
8793 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
8794
8795         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
8796         Add a size_only flag, so when we only need the size, we don't create
8797         useless appearance attributes.
8798
8799         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
8800         duplicate setting of font description.
8801
8802         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
8803
8804 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
8805
8806         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
8807         EXTRA_DIST. It does not work well when the file that
8808         everything depends on is not in the tarball.
8809
8810 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8811
8812         * gtk/testgtk.c: Some hacks and fixes so that it basically
8813         works when not sitting in the GTK+ build tree.
8814
8815 2000-05-03  Havoc Pennington  <hp@redhat.com>
8816
8817         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8818         Properly determine the ordering of the tag root and the current
8819         line within the tree. Previous algorithm only worked if the tag
8820         root's immediate parent was the common root of both the current
8821         line and the tag root.
8822
8823 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
8824
8825         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
8826         alignment.
8827
8828         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
8829         the widget text directional dynamically.
8830
8831         * gtk/gtktextview.[ch]: Added functions to get and set default
8832         wrap mode.
8833
8834 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
8835
8836         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
8837         in cursor location computation.
8838
8839 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
8840
8841         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
8842         vadjusment values properly when layout gets smaller.
8843
8844         * gtk/gtktextview.c (need_repaint_handler): Areas being
8845         passed in are far completely inaccurate, and sometimes
8846         too small, so, for now, just queue a redraw on the
8847         whole visible region.
8848
8849 2000-04-25  Havoc Pennington  <hp@redhat.com>
8850
8851         * gtk/gtktextbtree.c (summary_destroy): new function to 
8852         destroy tag summary nodes
8853         (gtk_text_line_next_could_contain_tag): this function was 
8854         totally broken if the line passed in wasn't below the tag
8855         root. Fix it.
8856         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
8857         "wildcard" case, we have to do a linear scan. Blah.
8858         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
8859         we have to do the linear scan
8860         (tag_removed_cb): When a tag is removed from the tag table, 
8861         remove the GtkTextTagInfo node from the btree.
8862         (gtk_text_btree_spew): Implement the spew function, for 
8863         our debugging pleasure.
8864
8865 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
8866
8867         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
8868         a problem with referring to the wrong buffer.
8869
8870         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
8871
8872         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
8873         font description to gtk_style_new() - otherwise things
8874         don't work without a .gtkrc file.
8875
8876         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
8877         tags table if we create it ourself, too.
8878
8879         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
8880         it was conflicting with XKB modifiers.
8881
8882         * gtk/gtktextview.[ch]: Add simple support for 
8883         GtkIMContext.
8884
8885 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
8886
8887         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
8888         with deletion from last commit.
8889
8890 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
8891
8892         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
8893         in the context from the current locale.
8894         
8895         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
8896         context, not hardcoded value.
8897
8898         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
8899         not logical.
8900
8901 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8902
8903         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
8904         attributes - that doesn't handle partial-glyph selection
8905         properly. Instead use new pango_layout_line_get_x_ranges()
8906         functionality to draw the selection.
8907
8908         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
8909         now properly handles out-of-range coordinates.
8910
8911         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
8912
8913         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
8914         public.
8915
8916         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
8917         for paragraphs opposite to the base direction of the widget.
8918
8919         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
8920
8921         * gtk/gtktextlayout.c: Don't split segments on marks, since that
8922         causes Arabic words to reshape as you cursor through.
8923
8924         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
8925         cursor position when moving vertically with the arrow keys and
8926         scrolling with page-up/page-down. (Arrow keys save only the X,
8927         scrolling saves both X and Y.)
8928
8929         This means you can line-up / line-down or page-up / page-down
8930         without losing your place, and also that moving vertically
8931         with the cursor keys keeps the same X position, not the same
8932         character count:
8933
8934         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
8935         arrow keys move by display lines, not paragraphs.
8936
8937 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8938
8939         * gtk/gtklayout.c: Make sure that the bin window is at least
8940         as big as the allocation. (Should we also make sure that the
8941         bin window is big enough to completely cover widget->window?)
8942
8943         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
8944         function to get the onscreen rectangle.
8945
8946         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
8947         for offsets in window coordinates.
8948
8949 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
8950
8951         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
8952         confusion.
8953
8954         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
8955         from the widget direction.
8956
8957         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
8958         Add a "direction" attribute.
8959
8960         * gtk/gtktextview.c: global s/tkxt/text_view/.
8961
8962         * gtk/testtext.c: Added long block of text in Arabic, to test out
8963         the direction attributes. (Some problems with the shaping system
8964         for arabic become obvious - like the fact the cursor splits words
8965         into unjoined pieces.)
8966
8967 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
8968
8969         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8970
8971         * gtk/gtktextlayout.c: Fix up alignment.
8972
8973         * gtk/testtext.c: Add some tests for centering, wrapping.
8974
8975 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
8976
8977         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8978         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8979         If we wrote GTK+-specific layout-render function this could just replace
8980         the draw_layout() operation in the vtable.
8981
8982         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
8983         pango_layout_get_cursor_pos() and use that function.
8984
8985         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8986         is a non-static symbol.
8987
8988         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8989         with gtk_text_btree_find_line_by_y()
8990
8991         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8992         renderer that handles GtkTextAppearance attributes.
8993
8994         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
8995
8996           - Move the values in the style that don't affect geometry into a
8997             GtkTextAppearance structure.
8998           - Change underline to take a PangoUnderline and "font" a string
8999             representation of a font description
9000           - Add a "font_desc" attribute which takes a FontDescription structure.
9001
9002         * gtk/gtktextlayout.[ch]:
9003
9004           - Get rid of the display-line list per each line. Instead, we
9005             generate, on demand, a GtkTextLineDisplay structure which]
9006             contains a PangoLayout * and other necesary information
9007             (offsets, cursor locations) for displaying a paragraph.
9008           - Get rid of the code to wrap lines, create display chunks,
9009             etc. Instead, we just go through a paragraph and convert
9010             it into the necessary inputs to a PangoLayout.
9011           - Implement a new attribute type, GtkTextAttrAppearance. This
9012             holds a GtkTextAppearance, and is used to pass colors, 
9013             stipple, etc, through from the layout to the display without
9014             having to use lots and lots of individual attributes.
9015           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
9016             in terms of PangoLayout functions.
9017         
9018         * gtk/gtktextview.c: 
9019          
9020           - Handle passing the necessary PangoContext to the layout
9021           - Some fixups in painting to deal with the automatic backing store
9022             and offsetting of GTK+-1.4
9023           - Add a style_set handler so that the default style reacts
9024             properly to theme changes.
9025         
9026         * gtk/gtktext?*.[ch]: Random code-style fixes.
9027
9028         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
9029
9030 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
9031
9032         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
9033         in original form preparatory to Pango-ization and gdkimcontext-ization.
9034
9035 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
9036
9037         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
9038         so that we can derive from gtkimcontext in language bindings properly.
9039
9040 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
9041
9042         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
9043         Add a compose table including (almost) all the compose combinations
9044         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
9045         data in the XIM implementation.
9046
9047         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
9048         Moved functions to convert keyvalues from and to unicode here from
9049         the win32 port and made them public.
9050
9051 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9052
9053         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
9054
9055 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
9056
9057         * gtk/gtkimcontext.[ch]: Base class for new input context system
9058
9059         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
9060         the real input context implementation to be loaded from modules
9061         and switched on the fly.
9062
9063         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
9064         context that just does direct keysymbol => unicode translation.
9065
9066         * gtk/gtkentry.[ch]: Start switching editing over to using
9067         GtkInputContext. (No handling of preedit yet.)
9068
9069 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
9070
9071         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
9072         many substitutions. (klass should not be subsituted.)
9073
9074 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
9075
9076         * configure.in: Add checks for Pango
9077
9078         * configure.in docs/Makefile.am: Add test for sgml2html
9079         and allow 'make dist' without building html, but print out
9080         warnings in that case. (For making snapshots)
9081
9082         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
9083         Add Pango libraries and C flags
9084
9085         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
9086         Add function (gdk_draw_layout) to draw a pango layout.
9087
9088         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
9089         for getting Pango contexts for GDK.
9090
9091         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
9092
9093         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
9094         editing.
9095
9096         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
9097         keysym => unicode translations. More languages can be added
9098         here, but real input-method support is needed.
9099
9100         * docs/Changes-1.4.txt: Added note about entry behavior.
9101         
9102         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
9103         to set the reading direction for a widget and the global direction.
9104         Add test which allows toggling the global direction. Two private
9105         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
9106
9107         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
9108           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
9109
9110         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
9111
9112         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
9113         underlining now handled by Pango.
9114
9115         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
9116         to RCStyle and Style. (Having both this and the old font name and GdkFont 
9117         is temporary.)
9118
9119         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
9120         convenience functions for creating contexts and layouts for widgets.
9121
9122         * gtk/testgtk.c: Enhance label tests with multilingual labels.
9123
9124 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
9125
9126         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
9127         titles to be active, even if they aren't visible.
9128         (gtk_clist_column_titles_passive):  Ditto.
9129
9130 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
9131
9132         * gtkmenu.c:
9133         * gtkmenu.h:
9134         * gtktypeutils.h: Spelling/grammar fixes in comments.
9135
9136 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
9137
9138         * gdk/nanox/*.h: add missing header files.
9139
9140 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
9141
9142         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
9143         send_event to TRUE.
9144         (gtk_drawing_area_size): queue a resize.
9145
9146 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
9147
9148         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
9149         the handlers, also invalidate them. bug nailed down by Karl Nelson
9150         <kenelson@ece.ucdavis.edu>.
9151
9152 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
9153
9154         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
9155         "(nil)" foundries, patch from Grigorios Magklis.
9156
9157         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
9158         on non-available fonts, based on a patch by Grigorios Magklis
9159         <maglis@cs.rochester.edu>.
9160
9161 2000-05-18  Elliot Lee  <sopwith@redhat.com>
9162
9163         * gdk/x11/gdkregion-generic.c: If a region does not have any
9164         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
9165         instead of GDK_OVERLAP_RECTANGLE_IN.
9166
9167 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
9168
9169         * gtk/gtklayout.c (gtk_layout_map): Remove references to
9170         OFFSCREEN, as it is no longer necessary.
9171
9172 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
9173
9174         * gtk/gtkcolorsel.c: Patch from David Santiago
9175         <mrcooger@cyberverse.com> to change things so that the 
9176         indicator of the active palette entry is done independently,
9177         not via the focus, since it should always be visible.
9178
9179 2000-05-17  Tor Lillqvist  <tml@iki.fi>
9180
9181         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
9182         refcount leaks as in the X11 backend.
9183
9184         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
9185         cosmetics.
9186
9187         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
9188         backend. Add _gdk_windowing_window_destroy().
9189
9190         * gtk/gtkcolorsel.c: Include correct backend-specific header.
9191         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
9192         either, but these probably do exist on nanox?)
9193         
9194         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
9195         which isn't necessarily defined by <math.h>.
9196
9197         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
9198         ancestry past GtkObject.
9199
9200         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
9201         from DLL on Win32.
9202
9203         * gtk/gtk.def: Update corresponding to recent changes.
9204
9205         * gtk/makefile.{cygwin,msc}: Updates.
9206
9207 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
9208
9209         * docs/Changes-1.4.txt: A bit of editing.
9210
9211         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
9212         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
9213         to clear the update area for the window, and clear it
9214         when hiding a window.
9215
9216         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
9217         if window destroyed.
9218
9219         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
9220
9221         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
9222         gdk_window_destroy() to the generic code, since there was a lot of 
9223         window-system-independent logic it in. Add a function:
9224         
9225          _gdk_window_destroy() 
9226
9227         to the internal API to destroy a window without unreferencing it.
9228         Add a function:
9229
9230          _gdk_windowing_window_destroy()
9231
9232         That does the windowing-system-dependent part of destroying 
9233         the window.
9234
9235 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
9236
9237         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
9238
9239 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
9240
9241         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
9242         Make gtk_widget_shape_combine_mask() keep a reference count on
9243         the pixmap since it keeps it around.
9244
9245 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
9246
9247         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
9248         leak.
9249
9250         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
9251         leak with event filters.
9252
9253 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
9254
9255         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
9256         signal handlers with the right data arguments. (Fixes
9257         some warnings when a widget was repeatedly set as a drag
9258         destination.)
9259
9260         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
9261         window so we can avoid avoid setting the DND properties on the
9262         toplevel window repeatedly.
9263
9264 2000-05-13  Tor Lillqvist  <tml@iki.fi>
9265
9266         * gdk/win32/gdkwin32.h: Define more message types missing from
9267         mingw headers.
9268
9269         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
9270         call gdk_window_destroy_notify(). It was never called. This
9271         probably meant that the GdkWindow was never freed. Thanks Owen for
9272         noticing (!).
9273
9274         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
9275         window as destroyed before calling DestroyWindow(). DestroyWindow()
9276         causes a call to the window procedure (gdk_WindowProc), which
9277         calls gdk_event_translate(), which calls
9278         gdk_window_destroy_notify(), which gets confused unless the window
9279         is set as destroyed.
9280
9281         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
9282         this function to indicate it's win32 only. Put inside #ifdef
9283         G_ENABLE_DEBUG.
9284
9285         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
9286         debugging function. (gdk_event_translate:) Add a default branch
9287         that uses the above function to print debug messages with all
9288         Windows messages symbolically.
9289
9290         * gdk/win32/gdkprivate-win32.h: Declare it, and
9291         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
9292
9293 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
9294
9295         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
9296         public header file.
9297
9298 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
9299
9300         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
9301
9302         * gtk/gtktext.c: made the adjustments no-construct args, simply
9303         provide default adjustments.
9304         (gtk_text_destroy): release adjustments.
9305
9306         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
9307         adjustment argument non-construct.
9308
9309         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
9310         instead of in finalize.
9311         (gtk_progress_get_text_from_value): 
9312         (gtk_progress_get_current_text): 
9313         (gtk_progress_set_value): 
9314         (gtk_progress_get_percentage_from_value): 
9315         (gtk_progress_get_current_percentage): 
9316         (gtk_progress_set_percentage): 
9317         (gtk_progress_configure): ensure an adjustment is present.
9318
9319 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
9320
9321         * gtk/gtkcolorsel.[hc]:
9322         * gtk/gtkcolorseldialog.[hc]:
9323         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
9324         their parent implementation, use bit fields for boolean values, don't
9325         create unused widgets, usage of glib types, braces go on their own
9326         lines, function argument alignment, #include directives etc. etc. etc..
9327
9328         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
9329
9330 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
9331
9332         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
9333
9334         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
9335         of NULL.
9336
9337         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
9338         to freed data.
9339         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
9340
9341         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
9342         to NULL when the toplevel is getting destroyed.
9343         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
9344         (gtk_menu_destroy): 
9345         (gtk_menu_init): store the information of whether we have to
9346         readd the initial child ref_count during destruction in a new
9347         GtkMenu field needs_destruction_ref_count.
9348
9349         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
9350         here, those reading: learn from my mistake! ;)
9351         in order for set_?adjustment to support a default adjustemnt if
9352         invoked with an adjustment pointer of NULL, the code read (pseudo):
9353         if (v->adjustment) unref (v->adjustment);
9354         if (!adjustment) adjustment = adjustment_new ();
9355         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
9356         now imagine the first unref to actually free the old adjustment and
9357         adjustment_new() creating a new adjustment from the very same memory
9358         portion. here, the latter comparision will unintendedly fail, and
9359         all hell breaks loose.
9360         (gtk_viewport_set_hadjustment):
9361         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
9362         after unreferencing it.
9363
9364         * gtk/gtkcontainer.[hc]: removed toplevel registration
9365         functions: gtk_container_register_toplevel(),
9366         gtk_container_unregister_toplevel() and
9367         gtk_container_get_toplevels() which had wrong semantics
9368         anyways: it didn't reference and copy the list.
9369
9370         * gtk/gtkwindow.c: we take over the container toplevel registration
9371         bussiness now. windows are registered across multiple destructions,
9372         untill they are finalized. the initial implicit reference count
9373         users are holding on windows is removed with the first destruction
9374         though.
9375         (gtk_window_init): ref & sink and set has_user_ref_count, got
9376         rid of gtk_container_register_toplevel() call. add window to
9377         toplevel_list.
9378         (gtk_window_destroy): unref the window if has_user_ref_count
9379         is still set, got rid of call to
9380         gtk_container_unregister_toplevel().
9381         (gtk_window_finalize): remove window from toplevel list.
9382         (gtk_window_list_toplevels): new function to return a newly
9383         created list with referenced toplevels.
9384         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
9385
9386         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
9387         adjustment a non-construct arg.
9388         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
9389         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
9390         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
9391
9392         * gtk/gtkrange.c: added some realized checks.
9393         (gtk_range_destroy): get rid of the h/v adjustments in the
9394         destroy handler instead of finalize. remove timer.
9395         (gtk_range_get_adjustment): demand create adjustment.
9396
9397         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
9398         we simply create them on demand now and get rid of them in
9399         the destroy handler.
9400         (gtk_viewport_destroy): get rid of the h/v adjustments in the
9401         destroy handler instead of finalize.
9402         (gtk_viewport_get_hadjustment): 
9403         (gtk_viewport_get_vadjustment): 
9404         (gtk_viewport_size_allocate): demand create h/v adjustment
9405         if required.
9406
9407         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
9408         gtk_widget_real_destroy () functionality.
9409         (gtk_widget_real_destroy): reinitialize with a new style, instead
9410         of setting widget->style to NULL.
9411
9412 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
9413
9414         * gtk/gtkcalendar.c:
9415         * gtk/gtkbutton.c: ported _get_type() implementation over to
9416         GType, either to preserve memchunks allocation facilities,
9417         or because Gtk+ 1.0 GtkTypeInfo was still being used.
9418
9419         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
9420         over. prepare for ::destroy to be emitted multiple times.
9421         removed reference tracer magic. chain into GObjectClass.shutdown()
9422         to emit ::destroy signal.
9423
9424         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
9425         fundamental.
9426
9427         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
9428         cludge.
9429
9430         * gtk/gtksocket.c:
9431         * gtk/gtkplug.c:
9432         * gtk/gtklayout.c:
9433         * gtk/gtklabel.c:
9434         * gtk/gtkargcollector.c:
9435         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
9436         not being a fundamental anymore, and to work with the new
9437         type system (nuked fundamental type varargs clutter).
9438
9439         * gtk/*.c: install finalize handlers in the GObjectClass
9440         part of the class structure.
9441         changed direct GTK_OBJECT()->klass accesses to
9442         GTK_*_GET_CLASS().
9443         changed direct object_class->type accesses to GTK_CLASS_TYPE().
9444
9445         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
9446         GType. made most of the GTK_*() type macros and Gtk* typedefs
9447         simple wrappers around macros and types provided by GType.
9448         most notably, a significant portion of the old API vanished:
9449         GTK_TYPE_MAKE(),
9450         GTK_TYPE_SEQNO(),
9451         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
9452         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
9453         GTK_TYPE_ARGS,
9454         GTK_TYPE_CALLBACK,
9455         GTK_TYPE_C_CALLBACK,
9456         GTK_TYPE_FOREIGN,
9457         GtkTypeQuery,
9458         gtk_type_query(),
9459         gtk_type_set_varargs_type(),
9460         gtk_type_get_varargs_type(),
9461         gtk_type_check_object_cast(),
9462         gtk_type_check_class_cast(),
9463         gtk_type_describe_tree(),
9464         gtk_type_describe_heritage(),
9465         gtk_type_free(),
9466         gtk_type_children_types(),
9467         gtk_type_set_chunk_alloc(),
9468         gtk_type_register_enum(),
9469         gtk_type_register_flags(),
9470         gtk_type_parent_class().
9471         replacements, where available are described in ../docs/Changes-1.4.txt.
9472         implemented compatibility functions for the remaining API.
9473
9474         * configure.in: depend on glib 1.3.1, use gobject module.
9475
9476 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
9477
9478         * TODO.xml: Various updates to current status.
9479
9480 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
9481
9482         * gtk.m4: Print out version when test succeeds.
9483
9484 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
9485
9486         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
9487         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
9488         
9489         (Original triangle color selector from Simon Budig
9490         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
9491         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
9492         Santiago <mrcooger@cyberverse.com>)
9493
9494         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
9495         out into a separate widget.
9496
9497         * gtk/testgtk.c: Add some checkbuttons for toggling palette
9498         and opacity controls.
9499
9500 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
9501
9502         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
9503         snuck in prematurely.
9504
9505 2000-05-07  Tor Lillqvist  <tml@iki.fi>
9506
9507         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
9508         had deleted a ! operator by mistake, which caused
9509         GDK_SELECTION_CLEAR events never to be generated, which caused
9510         only the first copy to the clipboard from an gtkeditable to
9511         actually cause a copy to the Windows clipboard.
9512
9513 2000-05-06  Tor Lillqvist  <tml@iki.fi>
9514
9515         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
9516         compilation, too. Current mingw gcc distributions include the
9517         necessary headers. Also the necessary IIDs are now in mingw
9518         headers/libraries, and own definitions unnecessary.
9519
9520         More hacking on OLE2 DND, still doesn't work though, and thus
9521         ifdeffed out.
9522
9523         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
9524         here, too.
9525
9526 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
9527
9528         * gdk/nanox/*: nano-X port work in progress.
9529         * gdk/simple.c: simple test for Gdk.
9530         * README.nanox: notes about the port: read this first!
9531         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
9532         with nano-X.
9533
9534 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
9535
9536         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
9537         gdk_window_clear() into common code, implement in terms of
9538         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
9539         not redirected to the backing rectangle.
9540
9541 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9542
9543         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9544         EXTRA_DIST. It does not work well when the file that
9545         everything depends on is not in the tarball.
9546
9547 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
9548
9549         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
9550         with recursion where process_updates() is called from
9551         an expose handler. (GtkTextView is highly broken in
9552         doing this, but it should work, so it is a nice test
9553         case.)
9554
9555 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9556
9557         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
9558         handle the case where updates are queued during processing of
9559         updates.
9560
9561 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
9562
9563         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
9564         window is on gdk_display - use that instead of segfaulting.
9565
9566 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
9567
9568         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
9569         broken and require an empty arg, give it to them.
9570
9571 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
9572
9573         * gtk/gtklabel.h: indentation fixes.
9574
9575 2000-05-02  Tor Lillqvist  <tml@iki.fi>
9576
9577         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
9578         draw too narrow or too low arcs, they seem to fail, at least with
9579         some display drivers.
9580
9581         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
9582
9583         Large changes to the Win32 backend, partially made necessary by
9584         the changes to the backend-independent internal
9585         structures. Attempts to implement similar backing store stuff as
9586         on X11. The current (CVS) version of the Win32 backend is *not* as
9587         stable as it was before the no-flicker branch was merged. A
9588         zipfile with that version is available from
9589         http://www.gimp.org/win32/. That should be use by "production"
9590         code until this CVS version is usable. (But note, the Win32
9591         backend has never been claimed to be "production quality".)
9592
9593         * README.win32: Add the above comment about versions.
9594
9595         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
9596
9597         * gdk/gdk.def: Update.
9598
9599         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
9600         presumably be replaced by some more better mechanism as 1.4 gets
9601         closer to release shape.
9602
9603         * gdk/makefile.{cygwin,msc}: Update.
9604
9605         * gdk/win32/*.c: Correct inclusions of the backend-specific and
9606         internal headers. Change code according to changes in these. Use
9607         gdk_drawable_*, not gdk_window_* where necessary.
9608
9609         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
9610         our old DND.
9611
9612         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
9613         to interpret single characters as UTF-8. Thanks to Hans Breuer.
9614         Use correct function name in warning messages.
9615
9616         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
9617         GSourceFuncs gdk_event_prepare and gdk_event_check.
9618         (gdk_event_get_graphics_expose): Do implement, use
9619         PeekMessage. Thanks to Hans Breuer.
9620         (event_mask_string): Debugging function to print an GdkEventMask.
9621         (gdk_pointer_grab): Use it.
9622
9623         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
9624         (old) book I used claimed was Hangul actually is CJK Unified
9625         Ideographs Extension A. Also, Hangul Syllables were missing.
9626         Improve logging.
9627
9628         * gdk/win32/gdkgc-win32.c: Largish changes.
9629
9630         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
9631         g_win32_getlocale() from GLib, and not setlocale() to get current
9632         locale name.
9633
9634         * gdk/win32/gdkprivate-win32.h
9635         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
9636         gdkwin32.h, similarily as in the X11 backend.
9637
9638         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
9639         assignment was used instead of equals in if test. Thanks to Hans
9640         Breuer.
9641
9642         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
9643         the X11 version.
9644
9645         * gdk/win32/makefile.{cygwin,msc}
9646         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
9647         path to the Win32 headers that works also with the mingw compiler.
9648
9649         * gtk/gtkstyle.c: Include <string.h>.
9650
9651 2000-04-26  Havoc Pennington  <hp@redhat.com>
9652
9653         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
9654         replacing the broken gtk_label_get ()
9655
9656 2000-04-15  Havoc Pennington  <hp@pobox.com>
9657
9658         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
9659         this keeps scanner scripts from getting confused.
9660
9661         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
9662         data, rather than void
9663
9664 2000-04-15  Tor Lillqvist  <tml@iki.fi>
9665
9666         * gtk/gtkclist.c (gtk_clist_motion)
9667         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
9668         with is_hint FALSE, get x and y from the event. They used to be
9669         used uninitialised. The Win32 backend never sends motion events
9670         marked as hints. This for instance fixes the annoying file and
9671         font selector behaviour in the Win32 version.
9672
9673 2000-04-14  Tor Lillqvist  <tml@iki.fi>
9674
9675         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
9676         gtk_private_n_signals variables, they are used by some software,
9677         sigh.
9678
9679         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
9680         installation directory from the Registry, where the installer
9681         should have put it.
9682
9683 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
9684
9685         * gdk/x11/Makefile.am: Fix problem with installation directory for
9686         gdkx.h
9687
9688         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
9689         <mrcooger@cyberverse.com> so that when selecting menus with the
9690         mouse, the first item will not be selected, but when selecting
9691         with an accelerator, or navigating left-right on a menubar with
9692         the menus popped up, the first item will be selected.
9693
9694 2000-04-05  Dan Damian  <dand@dnttm.ro>
9695
9696         * configure.in: Added "ro" to ALL_LINGUAS.
9697
9698 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
9699
9700         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
9701         indentation.
9702
9703         * Makefile.am (EXTRA_DIST): Fix typo.
9704
9705         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
9706         to catch gdkconfig.h
9707
9708         * gtk/gtkitemfactory.c: Added FIXME.
9709
9710 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
9711
9712         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
9713         s/return_if_fail/return_val_if_fail/g and add a return value.
9714
9715 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
9718         merge slipup.
9719
9720         * gdk/gdkinput.h: Fix missing line from merge.
9721
9722 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
9723
9724         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
9725         instead of gdkprivate.h.
9726
9727 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
9728
9729         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
9730         parent class to correctly be GtkDialogClass.
9731
9732 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
9733
9734         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
9735         toplevel windows and their immediate children by their parents,
9736         since the size of toplevel windows is out of our immediate
9737         control and we don't get any real benefit from trying to track
9738         this size for clipping.
9739
9740         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
9741         for input_only windows.
9742
9743         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
9744         to fix some hacks and make sure that we don't try to set the
9745         background of input only windows.
9746
9747 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
9748
9749         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
9750         the _really_ internal stuff, and leave gdkprivate.h for the fake private
9751         stuff that we've traditionally exposed.
9752
9753         * gdk/**.c: Use gdkinternals.h where appropriate.
9754
9755         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
9756         not include gdkprivate-x11.h, move all stuff of conceivable public
9757         interest into gdkx.h; keep all really private stuff in
9758         uninstalled header gdkprivate-x11.h.
9759
9760         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
9761         image->image_put on windows through a new function _gdk_window_draw_image()
9762         to allow us to do backing store for images. (Sort of ugly)
9763
9764         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
9765         contexts locally so that we can offset them properly when drawing 
9766         onto backing pixmaps.
9767
9768         * gdk/gdkinput.h: Reindented
9769
9770         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
9771         pixmap or color for the window, so we can properly initialize
9772         our double-buffer pixmaps, and also so that we temporarily set
9773         a background of None while scrolling.
9774
9775         * gdk/gdkregion.h: Revise region boolean operators to have an
9776         interface that is actually convenient - switch from creating new
9777         regions on every op, to "methods" that modify existing regions
9778         (A = A OP B). 3 argument forms which allow dest == src, would also
9779         be possible, but the current interfaces seem to map nicely
9780         onto what needs to be done. (There is quite a lot of region
9781         code in GDK now.)
9782
9783         * gdk/gdkregion.h: Add constructor from rectangle and a copy
9784         operator.
9785
9786         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
9787         gdkpoly-generic.h: Copy region code from Xlib, switch it over
9788         to 32 bit coordinates, modify it to be mostly GTK+ style
9789         and to have interfaces that match gdkregion.h.
9790
9791         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
9792         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
9793         create a backing pixmap and redirect all drawing to
9794         that backing pixmap until a matching gdk_window_end_paint().
9795
9796         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
9797         Create a special drawable class for GtkWindow's that 
9798         redirects the drawing to the backing pixmap as necessary
9799         and then calls the real operations in _gdk_windowing_window_class.
9800
9801         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
9802         Store invalid region for each window. Generate expose events for invalid
9803         region in an idle. This replaces both the expose compression
9804         and the redrawing queuing in GTK+. It is both more efficient and
9805         simpler than either one individually and far more so then the
9806         combination.
9807
9808         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
9809         Emulate 32 bit coordinates for windows with 16 bit coordinates
9810         by offsetting drawing, guffaw scrolling techniques and
9811         mapping/unmapping child windows as necessary.
9812
9813         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
9814         where, when invalid regions are processed, the region is stored,
9815         and if expose events come in that are detectably duplicate
9816         the processed exposes (by comparison of event serial numbers),
9817         the stored region is subtracted out of those exposes.
9818
9819         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
9820         regions newly exposed when scrolling or resizing windows.
9821         This, combined with forcing processesing of queued invalidated
9822         regions, gives nice flicker-free scrolling.
9823
9824         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
9825         invalidated regions after every scroll.
9826
9827         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
9828         emulation in GDK. Its, for all practical purposes just a
9829         GtkViewport/GtkFixed hybrid now.
9830
9831         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
9832         (16-bit) structures as necessary instead of just casting.
9833
9834         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
9835         in terms of the structures from gdkregion-generic.c, using appropriate
9836         offsets from GDK to X11 coordinates. Cache clip mask and
9837         origin and ts origin locally and only flush to the server
9838         when drawing, to avoid constantly setting and resetting these
9839         values when offsetting GC's for scrolling and backing pixmaps.
9840
9841         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
9842
9843         * gtk/gtkcontainer.c: Call process_all_updates at end
9844         of resizing to reduce flicker. (Avoids having redraw
9845         lag arbitrarily behind resize under some circumstances)
9846
9847         * gtk/gtkentry.c: Remove old backing store code, and simply take
9848         advantage of the new backing store capabilities of GDK.
9849
9850         * gtk/gtkmain.c: Simple implementation of widget backing
9851         store - simply push a paint while handling each expose.
9852         (Should really be configurable widget for widget.)
9853         
9854         * gtk/gtkwidget.c: Remove all the old complicated redraw
9855         code, and simply invalidate the GDK windows from
9856         gdk_window_queue_clear(), etc. (Sigh, so much carefully
9857         debugged complexity ... gone to the winds.)
9858
9859         Remove all the code for suppressing expose events while
9860         resizes are pending; this isn't needed since the invalid
9861         areas won't be processed until after the resizes are
9862         processed, since they are in a lower priority idle.
9863
9864 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
9865
9866         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
9867         and height of dest rectangle for non-intersecting rectangles.
9868
9869 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
9870
9871         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
9872         for GdkRectangle.
9873
9874 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
9875
9876         * gdk/gdk{events,image,private,types,window}.h
9877          gdk/x11/gdkinputprivate.h: Change all coordinates
9878          from int16 to int. Also, Change width and height from
9879          unsigned to signed to avoid all the stupid C 
9880          signedness bugs.
9881
9882 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
9883
9884         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
9885         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
9886         Add some more detailed checking.
9887
9888         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
9889         New function to retrieve the depth of a drawable.
9890
9891         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
9892         field, reorder fields to save memory. 
9893
9894 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
9895
9896         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
9897         of the background image instead of scaling the background down to
9898         a line.
9899
9900         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
9901         which temporarily set slider to wrong size.
9902
9903         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
9904         queue_clear().
9905
9906 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
9907
9908 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
9909
9910         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
9911
9912 2000-03-17  Tor Lillqvist  <tml@iki.fi>
9913
9914         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
9915         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
9916
9917         * gdk/win32/gdkfont-win32.c
9918         * gdk/win32/gdkproperty-win32.c
9919         * gdk/win32/gdkselection-win32.c
9920         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
9921         now declared such.
9922
9923 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
9924
9925         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
9926
9927 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
9928
9929         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
9930         is called without trapping X errors.
9931
9932 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
9933
9934         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
9935         way into the fontset lists.
9936
9937 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
9938
9939         * gtk/gtkthemes.h: add extern "C" scope.
9940
9941 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
9942
9943         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
9944         to make appends to the list constant. (gtk-guy-990901-0.patch)
9945
9946 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
9947
9948         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
9949         for the typename hash table.
9950
9951 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
9952
9953         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
9954         to make sure we never divide by zero. 
9955         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
9956
9957 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
9958
9959         * gtk/gtkfontsel.c: Apply patch from
9960         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
9961         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
9962
9963         Also, some cleanups in atom handling.
9964
9965 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
9966
9967         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9968         not GtkWidget.
9969
9970 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
9971
9972         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
9973         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
9974         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9975         more guint wrap-around bugs before going to bed.
9976
9977 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
9978
9979         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9980         guint wrap arounds in allocation.width.
9981
9982         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9983         process untill we fit the allocation given.
9984
9985 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
9986
9987         * gtk/gtkwidget.c:
9988         (gtk_widget_unrealize): guard widget access with ref/unref
9989         around signal emission.
9990         (gtk_widget_hide): same here, but also check its destroyed
9991         state before queueing a resize.
9992
9993 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
9994
9995         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9996         of gtk_default_insensitive_bg as insensitive base color.
9997
9998         * gtk/gtktext.c (gtk_text_style_set): set the background color according
9999         to the widget's state.
10000         (gtk_text_realize): same here.
10001         (gtk_text_state_changed): same here.
10002         (draw_bg_rect): compare background color against base[] from
10003         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
10004
10005 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
10006
10007         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
10008         grabs are active, unless a delete event is send to the toplevel
10009         of the currently grab holding widget.
10010
10011 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
10012
10013         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
10014         debugging g_print's.
10015
10016 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
10017
10018         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
10019         ever make the scrolled-window requisition ever depend on the 
10020         visibility state of the scrollbars for the AUTOMATIC policy. 
10021         This breaks the GTK+ requisition model, and causes loops.
10022
10023 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
10024
10025         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
10026         the default font to avoid problems with XFree86-4.0 where the
10027         default charset is iso10646-1, not iso8859-1.
10028
10029 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
10030
10031         * acinclude.m4
10032         * config.guess
10033         * config.sub
10034         * ltconfig
10035         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
10036
10037         * gtk/Makefile.am: minor cosmetic consistency tweak
10038
10039 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
10040
10041         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
10042         the activate_time to 0, so that we handle a quick
10043         press/release press/release properly and don't suppress
10044         the second release. (Red Hat bug #7545)
10045
10046 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
10047
10048         * gtk/gtkctree.c (row_delete):
10049         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
10050         bugs with destruction notifier, *always* update internal
10051         structures *before* calling user code.
10052
10053 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
10054
10055         A few more fixes for bug #5487, #2051, #2677.
10056         * gtk/gtkclist.c : 
10057         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
10058         not GDK_BUTTON_PRESS.
10059         (resync_selection): resync only if selection_mode is
10060         GTK_SELECTION_EXTENDED
10061         * gtk/gtkctree.c (resync_selection): same here
10062
10063 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
10064
10065         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
10066         gdk_drag_get_selection() and gtk_menu_detach().
10067
10068         [ From Jeroen Ruigrok/Asmodai ]
10069
10070 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
10071
10072         * gtk/gtknotebook.c (gtk_notebook_size_request): 
10073         page->tab_label can be NULL.
10074
10075 2000-01-25  Havoc Pennington  <hp@pobox.com>
10076         
10077         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
10078         arg is boolean
10079
10080         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
10081
10082         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
10083
10084         * gdk/gdkproperty.c (gdk_property_get): return boolean
10085
10086         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
10087
10088         * gdk/gdkim.c (gdk_im_ready): return boolean
10089
10090         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
10091
10092         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
10093         glib clash, should fix glib)
10094
10095         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
10096         (gdk_get_show_events): return gboolean, and canonicalize 
10097         to TRUE/FALSE
10098
10099         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
10100         colormap is private
10101         (gdk_colors_alloc): gboolean whether to be contiguous
10102         (gdk_color_equal): return gboolean since we are a predicate
10103         and not a qsort() (this looks semi-wrong due to glib breakage,
10104         IMO glib should be fixed)
10105         
10106         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
10107         (gdk_get_use_xshm): return gboolean
10108         (gdk_pointer_is_grabbed): return gboolean
10109
10110         * gdk/gdk.h: Change prototypes to match all the above changes,
10111         and re-run egtk-format-protos as required.
10112
10113 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
10114
10115         * gtk/gtkctree.c (resync_selection): 
10116         * gtk/gtkclist.c (resync_selection):
10117
10118         Return immediately if clist->drag_pos < 0. This is a workaround
10119         for the corrupt state that the clist gets into when a
10120         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
10121
10122         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
10123         
10124         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
10125         variable from recent commit.
10126
10127 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
10128
10129         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
10130
10131 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
10132
10133         * gtk/Makefile.am: prefix all autogenerated source that get build in
10134         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
10135         in builddir. since we subsequently cd into srcdir for autogeneration,
10136         the paths have to be stripped from the target file names, thusly we
10137         use $(@F) as target names now.
10138         put a comment about configure.in's --disable-rebuilds option,
10139         which can be used for non-writable source directories, for development
10140         setups though, srcdir has to be *writable*.
10141
10142 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
10143
10144         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
10145           Finish the job of allowing event to be NULL.
10146           (Fixes bug #4283, reported by Chris Blizzard)
10147
10148         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
10149           things so that the cursor appears on screen, properly
10150           take into account INNER_BORDER.
10151           (Fixes bug #4754, reported by Antonio Campos)
10152
10153 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
10154
10155         * gtk/gtknotebook.c (gtk_notebook_map): Don't
10156           show the tab_label unless it itself is visible.
10157
10158           gtk/gtknotebook.c (gtk_notebook_size_request):
10159           Do a better job of making sure that the visibility
10160           of the tab label corresponds to whether it should
10161           be mapped or not.
10162
10163 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
10164
10165         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
10166           Use the requisition, not the allocation, since the
10167           allocation has not necessarily been computed yet.
10168           (Pointed out by Eugene Osintsev)
10169
10170 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
10171
10172         * gtk/gtkstyle.c (gtk_style_new): Dont' set
10173           style/base[GTK_STATE_INSENSITIVE] both to
10174           gtk_default_insensitive_bg!
10175           (Bug #2187, reported by Jonathan Blandford)
10176
10177         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
10178           Add Alt_L, Alt_R to list of invalid accelerators.
10179           (Bug #3736, reported by Vlad Harchev)
10180
10181 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
10182
10183         * gtk/gtkfilesel.c (open_ref_dir): Fix several
10184         bugs which occured after an attempt to open 
10185         invalid home directory left cmpl_state->reference_dir == NULL.
10186
10187          - completion on files in home directory didn't work
10188          - completion on an empty string caused  segfault
10189
10190          (Bug #3678, reported by Steve Ratcliffe)
10191
10192         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
10193         cut and paste error that was causing scales to
10194         be incorrectly positioned.
10195         (Bug #2956,
10196          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
10197
10198 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
10199
10200         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
10201         when checking for dcgettext, if we've found we needed
10202         it for dgettext.
10203 +
10204 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
10205
10206         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10207         queue_clear on NO_WINDOW widgets during a reparent,
10208         since at that point the window and widget heirarchies
10209         are out of sync. This stops crashing in some cases
10210         (the scrolled window reparent test, for instance), and
10211         _probably_ won't cause drawing errors.
10212
10213         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
10214         test do what it was supposed to do and be robust against
10215         window closings, etc. (Bug #2443)
10216
10217 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
10218
10219         * gtk/gtkentry.c: Fix return values on mouse events.
10220         (Bug #2686, Sky <seb_sky@yahoo.com>)
10221
10222         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
10223         (pointed out by George Lebl)
10224
10225         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
10226         (From Ettore Perazzoli  <ettore@helixcode.com>)
10227  
10228 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
10229
10230         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
10231         clicks between rows or outside calender area correctly.
10232         (Patch from Damon Chaplin)
10233
10234         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
10235         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
10236           Call destroy function when overwriting existing data. 
10237           (Pointed out by Damon Chaplin)
10238
10239 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
10240
10241         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
10242           which was causing problems on various systems with Xmu.
10243           This hasn't been needed for a very long time.
10244           (Fixes #1185 3167)
10245
10246 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
10247
10248         * gdk/gdki18n.h: Include <ctype.h> when defining
10249           gdk_isw* in terms of is* as a fallback.
10250           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
10251
10252 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
10253
10254         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
10255           realize the widget when it is size allocated!
10256           (old, old bug)
10257
10258         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
10259           Removed unused call to gdk_window_get_size() that
10260           showed up when the above was fixed.
10261
10262 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
10263
10264         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
10265           fix up widget->window when the widget is a
10266           NO_WINDOW container widget.
10267
10268 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
10269
10270         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
10271           to account for the fact that feof() does _not_ 
10272           return TRUE on errors, and thus avoid infinite loops
10273           when trying to use gdk_pixmap_create_from_xpm()
10274           on unreadable values.
10275
10276 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
10277
10278         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
10279
10280 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
10281
10282         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
10283           gdk_gc_set_dashes to take gint8 instead of gchar to
10284           make it clearer that it is _not_ a NULL terminated string.
10285
10286         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
10287           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
10288           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
10289           arguments.
10290
10291 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
10292
10293         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
10294         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
10295         background size relative to our allocation, guard against small
10296         allocations, we may have not yet been size allocated.
10297
10298 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
10299
10300         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
10301         not just version == 3. We implement all 3 + most of 4 - 
10302         (we don't support matching text/plain;charset=iso-8859-1
10303         to a dest that expects text/plain). We'll still advertise
10304         3 to be safe, but any client implementing version >= 3
10305         must interoperate with 3.
10306         
10307 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10308
10309         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
10310         background and gc members, add a warning in gtk_tooltips_set_color()
10311         indicating that this function is deprecated.
10312
10313 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
10314
10315         * docs/gtkfaq.sgml: FAQ Update:
10316           - Minor cleanups (Emmanuel, me)
10317           - New questions:
10318                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
10319                 How can I retrieve the text from a GtkMenuItem? (timj)
10320                 How do I validate/limit/filter the input to a GtkEntry? (me)
10321                 Memory does not seem to be released when I free the list
10322                         nodes I've allocated (timj)
10323
10324 2000-03-07  Tor Lillqvist  <tml@iki.fi>
10325
10326         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
10327         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
10328         for which it is no use to call GetLastError onWin9x.
10329         (gdk_other_api_failed) New function, for general error
10330         reporting without calling GetLastError.
10331         (gdk_win32_api_failed) OTOH, this function always calls
10332         GetLastError. (gdk_win32_last_error_string) Remove this function,
10333         GLib has the equivalent now.
10334
10335         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
10336         call them with function name, file name and line number in the
10337         arguments.
10338
10339         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
10340         functions.
10341         
10342         * gtk/gtk.def: Add some missing entry points.
10343
10344         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10345         gtk_paned_set_gutter_size, which don't exist any longer, as void.
10346         
10347         Fixes by Hans Breuer:
10348
10349         * gdk/makefile.msc: Update for debugging.
10350
10351         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
10352         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
10353         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
10354         in the dash_list.
10355
10356         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
10357         the x11 backend.
10358
10359         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
10360
10361         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
10362
10363 2000-03-04  Tor Lillqvist  <tml@iki.fi>
10364
10365         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
10366         just pixel value of background colour.
10367
10368         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
10369         containing code snippet previously duplicated in a couple of
10370         places.
10371         
10372         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
10373         gdk_colormap_color.
10374
10375         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
10376         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
10377         events for autorepeated Shift, Control and Alt keys. Use
10378         gdk_colormap_color.
10379
10380         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
10381         pointer is inside the window the cursor of which we are setting,
10382         call SetCursor immediately.
10383
10384         * gdk/win32/makefile.cygwin
10385         * gtk/makefile.cygwin: If we don't have the build number stamp
10386         file, use zero.
10387
10388         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
10389         gtk_paned_set_gutter_size as empty.
10390
10391         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
10392         
10393 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
10394
10395         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
10396           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
10397           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
10398           docs/gtk_tut.sgml docs/gtk.texi TODO:
10399
10400           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
10401
10402 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
10403
10404         * gtk/gtkcalendar.c: Implement num_marked_dates,
10405           and don't emit mutiple day_selected signals on
10406           month_prev.
10407
10408 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
10409
10410         * docs/make-todo (lineno): let title and logo be configurable so
10411         that GNOME can use this script too.
10412
10413         * TODO.xml: added logourl and a title
10414
10415 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
10416
10417         * TODO.xml: Added some UI items, and an explanatory
10418         comment at the top of the file.
10419
10420 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
10421
10422         * TODO.xml: some updates, added abunch of new entries.
10423         a note for those fiddeling with this file, when done
10424         with it, invoke:
10425         $ ./docs/make-todo TODO.xml >/dev/null
10426         and correct output errors before comitting changes.
10427
10428 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
10429
10430         * TODO.xml: Added XML-structured TODO file.
10431         * docs/make-todo: python script to turn TODO.xml into
10432           pretty XML output. 
10433
10434 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
10435
10436         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
10437         the function to let it draw the seven dots, instead of the old,
10438         much maligned, method.
10439         (draw_dot): New function to draw a dot.
10440
10441         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
10442         to draw the handle inside the border width as opposed to outside.
10443         Use paint function instead of gdk_draw_point.
10444
10445         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
10446         to draw the handle inside the border width as opposed to outside.
10447         Use paint function instead of gdk_draw_point.
10448
10449         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
10450         Change indenting to be more GTK like.
10451
10452 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
10453
10454         * docs/gtk_tut.sgml: New section on GtkCalendar
10455         * examples/calendar: Update example code
10456
10457 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
10458
10459         * docs/gtkfaq.sgml: FAQ Update
10460
10461 2000-02-19  Anders Carlsson  <andersca@gnu.org>
10462
10463         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
10464         to prevent the scroll event to be propagated upwards.
10465
10466 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10467
10468         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
10469         OwnerGrabButtonMask from button entries for
10470         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
10471
10472         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
10473         to the event mask (which will result in button/press release
10474         being added to the event mask on Unix) so scrolling works
10475         for layouts in scroll windows.
10476
10477         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
10478
10479         Patch from Anders Carlsson  <andersca@gnu.org> to add
10480         a scroll event.
10481
10482         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
10483         scrolling to the "Test Scrolling" part of testgtk.
10484  
10485         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
10486  
10487         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
10488         it against GDK_SCROLL.
10489  
10490         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
10491         way of mouse wheel scrolling.
10492  
10493         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
10494  
10495         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
10496  
10497         * gtk/gtkmain.c: Removed previous mouse wheel hack.
10498  
10499         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
10500         gdk_event_mask_table.
10501  
10502         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
10503         GdkEventScroll handler.
10504  
10505         * gdk/gdkevents.h: Added GdkEventScroll structure.
10506  
10507 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
10508
10509         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
10510         and Anders Carlsson to change the Paned widgets so that they
10511         can be dragged from anywhere along the length. Also change
10512         the way that this is drawn to make this apparent.
10513
10514         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
10515         from George Lebl to check that option_menu->menu is present
10516         before getting history.
10517
10518 2000-02-14  Tor Lillqvist  <tml@iki.fi>
10519
10520         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
10521         before the assertion for non-NULL segment list.
10522
10523         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
10524         Seems that pattern brushes *must* be 8x8 pixels! At least on my
10525         machine, but it might be display driver dependent. Sigh, so make
10526         sure the stipple is that size. Does Windows suck or what?
10527
10528         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
10529         places.
10530
10531 2000-02-13  Havoc Pennington  <hp@pobox.com>
10532
10533         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
10534         refcount to 1
10535         (gdk_cursor_new): init refcount to 1
10536
10537         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
10538
10539 2000-02-13  Tor Lillqvist  <tml@iki.fi>
10540
10541         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
10542         so that we don't have to do unnecessary settings to the HDC.
10543
10544         * gdk/win32/gdkdrawable-win32.c
10545         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
10546         gdk_gc_predraw.
10547
10548         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
10549         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
10550         GDI paths, call WidenPath to get the outline of the stroken path,
10551         and then fill the outline (with the brush that was built from the
10552         stipple).
10553
10554         * gdk/win32/gdkgc-win32.c: Factor out common code from
10555         _gdk_win32_gc_new and gdk_win32_gc_set_values into
10556         gdk_win32_gc_values_to_win32values. Use correct colour for
10557         SetBkColor() (Until now the code actually used a random colour in
10558         the call to SetBkColor()... but that didn't show up as not many
10559         GDI APIs use the background colour. Pattern (opaque stippled)
10560         brushes do.)
10561
10562         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
10563         gdk_win32_api_failed): New functions for error logging.
10564
10565         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
10566         WIN32_API_FAILED to call them, passing function or file name and
10567         line number.
10568
10569         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
10570
10571         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
10572         GdkColor for foreground and background in GdkGCWin32Data.
10573
10574         * gdk/makefile.cygwin: Link in the resource object separately.
10575
10576         * gdk/win32/rc/gdk.rc
10577         * gtk/gtk.rc (New file)
10578         * gdk/win32/makefile.cygwin
10579         * gtk/makefile.cygwin: Update build number in DLLs automatically,
10580         as in GLib.
10581
10582 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
10583
10584         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
10585         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
10586         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
10587         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
10588         parameters given and cursor->ref_count. coding style fixups.
10589
10590         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
10591         not GtkWidget.
10592         
10593         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
10594         fix up widget macros and add _GET_CLASS() variant.
10595         
10596         * gtk/*.c: some GtkType fixups.
10597
10598 2000-02-09  Tor Lillqvist  <tml@iki.fi>
10599
10600         * gdk/win32/gdkproperty-win32.c
10601         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
10602         were reversed.
10603
10604 2000-02-04  Tor Lillqvist  <tml@iki.fi>
10605
10606         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
10607         g_filename_to_utf8 to convert the font names Windows gives us from
10608         whatever is the default codepage to UTF-8.
10609         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
10610         in the other direction.
10611
10612         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
10613         error in debugging output.
10614
10615 2000-02-02  Tor Lillqvist  <tml@iki.fi>
10616
10617         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
10618         and height parameters to gdk_window_clear_area(). Not minus one.
10619
10620 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
10621
10622         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
10623         checks if the widget passed to gtk_drag_get_data() was not the
10624         dest widget.
10625
10626 2000-02-01  Tor Lillqvist  <tml@iki.fi>
10627
10628         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
10629         g_filename_from_utf8 functions (which were added a moment ago to
10630         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
10631         size buffers.
10632
10633         gtk_file_selection_get_filename returns the filename in the C
10634         runtime encoding. It calls g_filename_from_utf8, but copies the
10635         returned string to a static buffer, which is returned. I think
10636         this is better than returning the result from g_filename_from_utf8
10637         directly, which would mean all apps that use it would have to free
10638         the return value. Or should this function care about this issue at
10639         all? Maybe a new function with clearly defined semantics.
10640
10641         * gtk/gtkfilesel.h: Add comment about
10642         gtk_file_selection_get_filename returning the filename in the C
10643         runtime's encoding.
10644
10645         * README.win32
10646         * gdk/gdk.def
10647         * gdk/makefile.{cygwin,msc}
10648         * gtk/gtk.def: Updates.
10649
10650         * gdk/gdkcursor-win32.c: Initialise refcount.
10651
10652 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
10653
10654         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
10655
10656 2000-01-30  Havoc Pennington  <hp@pobox.com>
10657
10658         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
10659         destroy
10660
10661         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
10662
10663         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
10664         implemented in platform-specific code
10665
10666         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
10667
10668         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
10669         underscore in front
10670
10671         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
10672         put an underscore in front
10673
10674         * gdk/gdkcursor.c: new file, implements
10675         gdk_cursor_ref/gdk_cursor_unref
10676
10677         * gdk/gdkcursor.h: Refcount GdkCursor
10678
10679         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
10680
10681 2000-01-29  Tor Lillqvist  <tml@iki.fi>
10682
10683         * gdk/gdkwindow.h
10684         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
10685
10686 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10687
10688         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
10689         structures to properly inherit from GtkWidget not GtkBin.
10690
10691 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
10692
10693         * gtk+.spec.in: Added lib/gtk+/include/* to %files
10694         (bug #5178 - Peter Wainright)
10695         
10696         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
10697         so that it will be installed.
10698         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
10699
10700 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
10701
10702         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
10703         for the GtkStyleClass vtable const.
10704
10705         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
10706         take a const string argument like GtkTranslateFunc. This will
10707         require changes in use code.
10708
10709 2000-01-19  Tor Lillqvist  <tml@iki.fi>
10710
10711         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
10712         semantics (to mimic the X11 backend, which just calls XClearArea)
10713         is to check for zero width (and height), and in that case use the
10714         window's width minus x (height minus y). This fixes for instance
10715         some redraw problems with gtkclist, which were easily noticeable
10716         in the gtk file selection widget.
10717
10718         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
10719         windows.
10720
10721 2000-01-13  Tor Lillqvist  <tml@iki.fi>
10722
10723         * configure.in
10724         * gdk/Makefile.am
10725         * gdk/x11/Makefile.am
10726         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
10727         (bug #5177).
10728         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
10729         out later.
10730
10731 2000-01-09  Tor Lillqvist  <tml@iki.fi>
10732
10733         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
10734         WM_MOVE for iconified or invisible windows. This fixes various
10735         problems when minimising windows. Thanks to Bernd Herd.
10736
10737 2000-01-05  Tor Lillqvist  <tml@iki.fi>
10738
10739         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
10740         backend's draw_lines method, not draw_points.
10741
10742 2000-01-02  Tor Lillqvist  <tml@iki.fi>
10743
10744         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
10745         before Owen's reorganisation: Don't have queued_events and
10746         queued_tail statics in this file, but use gdk_queued_events and
10747         gdk_queued_tail. This makes exposure event compression work again.
10748
10749         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
10750         seem to be needed?
10751
10752 1999-12-30  Tor Lillqvist  <tml@iki.fi>
10753
10754         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
10755         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
10756         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
10757         doesn't do anything.
10758
10759         * gdk/gdk.def: Add gdk_xid_table_insert.
10760
10761         * gdk/win32/gdkprivate-win32.h
10762         * gdk/win32/gdkevents-win32.c
10763         * gdk/win32/gdkinput-win32.c
10764         
10765         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
10766         extension_events field in the GdkWindowWin32Data struct. Use only
10767         the extension_events field in GdkWindowPrivate. Previously one was
10768         set, and the other one tested, which broke tablet
10769         functionality. Thanks to Keishi Suenaga for pointing this out.
10770
10771 1999-12-18  Tor Lillqvist  <tml@iki.fi>
10772
10773         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
10774         When handling a single character (text length == 1), don't handle
10775         it as if it was UTF-8.
10776
10777 1999-12-11  Tor Lillqvist  <tml@iki.fi>
10778
10779         * Makefile.am: Distribute README.win32.
10780         
10781         * gdk/Makefile.am
10782         * gdk/win32/Makefile.am: Distribute Win32 files.
10783
10784         * gdk/makefile.msc: New file.
10785
10786         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
10787         after label).
10788
10789         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
10790         gdk_error_code as GDKVAR, as they are referred outside GDK.
10791
10792         * gdk/win32/makefile.msc: Update.
10793
10794         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
10795         tweaks. Check only if at least one of those Unicode subrange bits
10796         we care for is set. If no code page bits are set, guess (wildly)
10797         based on the charset.
10798
10799         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
10800
10801         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
10802         non-NULL.
10803
10804         * gtk/gtkdnd.c
10805         * gtk/gtklayout.c
10806         * gtk/gtkplug.c
10807         * gtk/gtkselection.c
10808         * gtk/gtksocket.c
10809         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
10810         appropriate. There must be a cleaner way to handle this?
10811
10812         * gtk/gtkrc.c: Must include windows.h on Win32.
10813
10814         * gtk/testgtk.c: No need to include gdkx.h.
10815
10816         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
10817
10818 1999-12-07  Tor Lillqvist  <tml@iki.fi>
10819
10820         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
10821         the rbearing is set to the same as the width, but this should be
10822         fixed.
10823
10824 1999-12-06  Tor Lillqvist  <tml@iki.fi>
10825
10826         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
10827         function. If Windows doesn't tell us what Unicode subranges a font
10828         covers, guesstimate based on the codepages it covers. This will
10829         hopefully help those Windows versions or fonts that don't give us
10830         any useful Unicode subrange information with GetTextCharsetInfo.
10831         Call this function in gdk_font_load_internal.
10832
10833         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
10834         minor changes.
10835
10836 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
10837
10838         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
10839         New function, long needed.
10840
10841 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
10842
10843         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
10844         only_if_exists argument of gdk_atom_intern to
10845         bool.
10846
10847 1999-11-25  Tor Lillqvist  <tml@iki.fi>
10848
10849         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
10850         Fix two copy&paste errors.
10851
10852         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
10853         win32 has changed.
10854
10855         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
10856         GdkWin32SingleFont struct.
10857
10858         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
10859         subranges of loaded fonts. Clear font signature first, in case
10860         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
10861         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
10862
10863         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
10864         Unoffset clip region.
10865
10866 1999-11-23  Tor Lillqvist  <tml@iki.fi>
10867
10868         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
10869         event->any.window before calling filter functions.
10870
10871 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
10872
10873         * gtk/gtkgamma.h: Adapt cast macros to standard.
10874
10875 [ Merges from 1.2 ]
10876
10877 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
10878
10879         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
10880         If translation does not include a '/', use entire
10881         translation instead of crashing.
10882
10883 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
10884
10885         * docs/gtk_tut.sgml:
10886         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
10887
10888 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
10889
10890         * gtk/gtkselection.c (gtk_target_list_remove): Use
10891         g_list_remove_link, not g_list_remove.
10892
10893         [ From Geert Bevin <gbevin@thunderstorms.org> ]
10894         
10895 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
10896
10897         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
10898         statement upon unselection (how the heck did that slip in?).
10899
10900 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
10901
10902         * gtk/gtktext.c (gtk_text_freeze): 
10903         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
10904         in frozen state (and aparently crashes). patch provided by Anders
10905         Melchiorsen <and@kampsax.dtu.dk>.
10906
10907 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
10908
10909         * fix insensitive default/focus widget activation,
10910         reported by Matt Goodall <mgg@isotek.co.uk>.
10911
10912         * gtk/gtkwindow.c (gtk_window_key_press_event): 
10913         (gtk_window_activate_default):
10914         (gtk_window_activate_focus):
10915         return handled=FALSE for actiavtion of insensitive default
10916         widgets. return handled=TRUE for activation of insensitive
10917         focus widgets. don't activate in either case.
10918
10919 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
10920
10921         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
10922         and $glib_cflags to match library order and in the
10923         theory that an old version of GLib is more likely to
10924         be in the include directory for X then vice-versa.
10925         (Bug #2776)
10926
10927 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
10928
10929         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
10930         to determine the locale for fontsets, not LC_MESSAGES;
10931         the user may want English messages with a handling
10932         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
10933         will still be broken) (Bug #2891)
10934
10935 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10936
10937         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
10938
10939 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10940
10941         * gtk/gtkrc.ko: Changed the Korean default fontset.
10942
10943 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
10944
10945         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
10946         where when scrolling to the left or top double exposes
10947         were done, causing major slowdowns.
10948
10949 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
10950
10951         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
10952         names to lowercase and alphanumeric, before looking
10953         them up.
10954
10955         * gtk/Makefile.am: Install codeset variant gtkrc files
10956         with normalized names.
10957
10958 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
10959
10960         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
10961         popup menus when the menu is already visible, but its parent
10962         is still hidden, (happens after tornoff window got hidden).
10963
10964 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
10965
10966         * gtk/Makefile.am (install-data-local): Fix
10967         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10968         deleted, causing error messages on install.
10969
10970 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
10971
10972         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10973         the handle as well, since we now sometimes ignore
10974         exposes on the handle while resizing.
10975
10976 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
10977
10978         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10979         extra g_free introduced in one of the last one or two 
10980         commits.
10981
10982 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
10983
10984         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10985         consistent, put each style that a gtkrc.* file creates
10986         in a unique namespace, remove old files before installing.
10987
10988 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
10989
10990         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10991         gtk_rc_init is called multiple times. (Yes, people who
10992         do that have bugs in their code.)
10993
10994 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10995
10996         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10997         Remove it since it's generated by the Makefile anyway
10998
10999 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
11000
11001         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
11002         device->info.axes for core pointer.
11003
11004 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
11005
11006         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
11007         idle_id, to deal with obsolete, broken C libraries.
11008
11009 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
11010
11011         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
11012         allocation->x/y twice!
11013
11014         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
11015         consistent with gtk_vscale_pos_trough().
11016
11017 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
11018
11019         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
11020         be queueing a resize on a toplevel container between
11021         the time we show it and when we map it. So, we need
11022         to test GTK_WIDGET_VISIBLE() for toplevels, and only
11023         use GTK_WIDGET_DRAWABLE() for child windows.
11024
11025 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
11026
11027         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
11028         (fixes bug #2144)
11029
11030 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
11031
11032         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
11033         container DRAWABLE (instead of VISIBLE), so we don't queue
11034         resizes on non-toplevel containers.
11035
11036 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
11037
11038         * gtk/gtkselection.[ch]: Make the data argument
11039         const guchar *.
11040
11041 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
11042
11043         * gtk/gtkwindow.c: Try to behave sensibly if 
11044         the focus widget is the window itself. (Should
11045         we allow this at all?)
11046
11047 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11048
11049         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
11050         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
11051         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
11052         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
11053         in prototypes and implementations consistent (Tomas Ogren).
11054
11055         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
11056         before the widget is unparented (reported by damon).
11057
11058         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
11059         since we provide unsigned data anyways.
11060
11061 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
11062
11063         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
11064         the call to gtk_tooltips_layout_text() until later.
11065
11066         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
11067         Call gtk_widget_ensure_style() before using the style.
11068
11069 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
11070
11071         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
11072         for old widgets that don't propagate draws to all
11073         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
11074
11075 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
11076
11077         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
11078         for a redraw but just the widget that requested the resize.
11079
11080 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
11081
11082         * gtk/gtkcontainer.c: added new widget level method
11083         gtk_container_set_reallocate_redraws() and a GtkContainer flag
11084         reallocate_redraws : 1 to reflect the setting, exported this through
11085         the argument system as a boolean ::reallocate_redraws.
11086
11087         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
11088         on the widget because the allocation changes, do so as well for
11089         widget->parent if the parent has reallocate_redraws set to TRUE.
11090         with that containers requesting reallocation redraws get automatically
11091         redrawn if their children changed allocation (this unfortunately
11092         affects also other children that didn't change allocation, but we
11093         cannot work around that before 1.3).
11094
11095 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11096
11097         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
11098         _and_ height are >0 (not _or_).
11099
11100         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
11101         instead of gtk_container_queue_resize(), which is a core gtk internal
11102         function (must have been on crack when i queued that).
11103
11104         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
11105         we can check more reliably if we want to discard expose events.
11106         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
11107         flag.
11108         
11109         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
11110         we simply trust these events. for deciding whether to discard exposes,
11111         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
11112         
11113 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
11114
11115         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11116         queues of areas that are completely off screen.
11117
11118         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
11119         logic for handleboxes.
11120
11121         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
11122         check on width/height.
11123
11124 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
11125
11126         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
11127         we are fine with using $@ the way we do (if we actually encounter
11128         brokeness with $@ in VPATH builds because of additional path prefixes,
11129         we need to use $(@F) actually).
11130
11131 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
11132
11133         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
11134         short lived bugs, that would allow language bindings to do surgeries
11135         to our guts.
11136
11137 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
11138
11139         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
11140         where comparison was being done against an uninitialized
11141         value causing intermittant results depending on
11142         compiler flags. Also make it clearer that we aren't
11143         ever initializing the child as 0x0 (though this will
11144         be caught in gtk_widget_size_allocate())
11145
11146 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
11147
11148         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
11149         gtk_window_unset_transient_for() call after we do checks
11150         involving the old transient parent.
11151         [ From Lance Capser <lmc@cyberhighway.net> ]
11152
11153 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
11154
11155         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
11156         an empty file.
11157
11158 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
11159
11160         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
11161         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
11162
11163 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
11164
11165         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
11166         `$@' is valid only in the build dir, not after we've done 
11167         `cd $srcdir'.  Also use `test -f' instead of less portable
11168         `test -e'.
11169
11170 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
11171
11172         * gtk/gtktext.c (correct_cache_insert): Rewrite
11173          for simplicity, and hopefully correctness.
11174          (Fixes bug #1322, which was a segfault when
11175           on some insertions with the properties around
11176           the insertion set up just wrong.)
11177
11178         * gtk/gtktext.c (gtk_text_adjustment): When we receive
11179          a "changed" signal, clamp the new value to the adjustment
11180          bounds to avoid segfaulting if someone tries to change
11181          the adjustment to a bogus value. (Bug #1795)
11182
11183 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11184
11185         * gtk/gtkmain.c: Ignore unexpected destroy notifies
11186         for children, for toplevel windows handle them
11187         like delete_event.
11188
11189         * gtk/gtkplug.c: Add an unrealize handler so that
11190         we unref plug->socket_window when we are done
11191         with it.
11192
11193 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
11194
11195         * gtk/gtktext.c (clear_area): Fix stupid signedness
11196          problem that was causing background to sometimes
11197          be misaligned.
11198
11199 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
11200
11201         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
11202         
11203         * gtk/gtkmenu.c (gtk_menu_position): Make
11204          sure we never position menus with negative x, y,
11205          since gtk_widget_set_uposition() can't handle that.
11206
11207         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
11208          Modify the positioning code a bit so that we always
11209          put the top-left corner onscreen. (This is for
11210          UI reasons, gtk_menu_position() now takes care of
11211          gtk_widet_set_uposition() brokeness.)
11212
11213 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
11214
11215         * gtk/Makefile.am: fixed up things for -jx, x > 1.
11216
11217 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
11218
11219         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
11220           RC style that is passed in. The lack of the ref
11221           before was a bug. If people worked around this
11222           bug, this will introduce a slight memory leak
11223           in their code. The code should typically look like:
11224
11225             rc_style = gtk_rc_style_new ();
11226             [...]
11227             gtk_widget_modify_style (widget, rc_style);
11228             gtk_rc_style_unref (rc_style);
11229
11230         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
11231           the style if it was already set.
11232
11233         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
11234           style if it was set before.
11235
11236 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11237
11238         * gtk/testgtk.c (main): Add a check to see if we
11239           are being run from the correct directory and
11240           to quit nicely if we are not.
11241
11242         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
11243           static.
11244
11245 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
11246
11247         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
11248
11249         * gtk/gtkwindow.c:
11250         queue resizes unconditionally (gtk_widget_queue_resize will figure
11251         what to do if the window is not realized).
11252         (gtk_window_move_resize): only recenter the window
11253         for GTK_WIN_POS_CENTER_ALWAYS.
11254         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
11255         the same way as GTK_WIN_POS_CENTER.
11256
11257 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
11258
11259         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
11260         with (!(info->last_flags & GDK_HINT_POS)) instead of
11261         (!info->last_flags & GDK_HINT_POS).
11262
11263         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
11264         new_height unconditionally, because we use these values even if
11265         !default_size_changed && !hints_changed.
11266         comented the (default_size_changed || hints_changed) case with
11267         respect to resize rejects from the window manager.
11268
11269         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
11270         in the zvt condition hack, since this includes the window hints, set
11271         the hints after the handling_resize case.
11272
11273         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
11274         window is initially shown with to the geometry.
11275
11276 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
11277
11278         * gtk/gtkwindow.c (gtk_window_move_resize):
11279         s/size_changed/default_size_changed/g so i know what's
11280         really going on (frying brain on smaller flame now).
11281
11282 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
11283
11284         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
11285         we have size_changed upon handling_resize. this is a gross
11286         workaround for the broken zvt widget and should be removed in
11287         1.3 again (search for FIXME).
11288         Owen provided an accurate comment for this:
11289
11290         /* We could be here for two reasons
11291          *  1) We coincidentally got a resize while handling
11292          *     another resize.
11293          *  2) Our computation of size_changed was completely
11294          *     screwed up, probably because one of our children
11295          *     is broken. It's probably a zvt widget.
11296          *
11297          * For 1), we could just go ahead and ask for the
11298          * new size right now, but doing that for 2)
11299          * might well be fighting the user (and can even
11300          * trigger a loop). Since we really don't want to
11301          * do that, we requeue a resize in hopes that
11302          * by the time it gets handled, the child has seen
11303          * the light and is willing to go along with the
11304          * new size. (this happens for the zvt widget, since
11305          * the size_allocate() above will have stored the
11306          * requisition corresponding to the new size in the
11307          * zvt widget)
11308          *
11309          * This doesn't buy us anything for 1), but it shouldn't
11310          * hurt us too badly, since it is what would have
11311          * happened if we had gotten the configure event before
11312          * the new size had been set.
11313          */
11314
11315 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
11316
11317         * gtk/gtkrc.c: deal properly with the fact that RC
11318           style lists may include rc styles more than once.
11319
11320         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
11321           unused static function.
11322
11323         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
11324           stack of directories of RC files currently being
11325           parsed and implicitely add them to pixmap path.
11326           
11327           This fixes a bug where the directory would get
11328           appended then overwritten by pixmap_path declarations.
11329
11330           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
11331
11332         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
11333           theme's exit function. (Patch from Peter Wainwright,
11334           bug #1454)
11335
11336         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
11337           Add a destroy() handler to take care of removing
11338           group for menu item. (Fixes bug #1197)
11339
11340         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
11341           in warning message.
11342
11343 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
11344
11345         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
11346         roundtrip to figure window's width and height, since we know that
11347         anyways from widget->allocation.
11348
11349 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
11350
11351         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
11352           the hints after we request the new size.
11353
11354 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
11355
11356         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
11357           GTK_WIDGET_REALIZED() assertion - we can compute the
11358           hints before we are realized.
11359
11360         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
11361           hint changing so that we have a value of hints_changed
11362           when we decide whether to constrain the window size.
11363
11364         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
11365
11366         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
11367         change back to G_MAXINT.
11368
11369 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
11370
11371         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
11372         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
11373         contain uncluttered values.
11374         (gtk_window_compute_hints): simply assert that window is realized
11375         and that geometry_info is valid, since we rely on this anyways.
11376         (gtk_window_constrain_size): major cleanups to the code.
11377         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
11378         for the base size, instead of the minimums. use 32767 as max width
11379         and height (like in gtkwindow.c) instead of G_MAXINT.
11380
11381 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
11382
11383         * cleaned up the GtkContainer.need_resize flag handling mess, we
11384         only need to force resize requests when we were prematurely
11385         realized, or our widget tree was modified when we were temporarily
11386         hidden. handling these cases directly upon showing the window (i.e.
11387         while the GdkWindow is still unmapped) avoids the need to wait for
11388         a configure event response and therefore makes the GUI more snappier
11389         and avoids blank windows during the roundtrip.
11390
11391         * gtk/gtkwidget.c:
11392         (gtk_widget_hide): 
11393         (gtk_widget_show): don't queue resizes on toplevels, they know how
11394         to deal with matters.
11395
11396         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
11397         flag directly for not visible resize containers and spare us unecessary
11398         signal emissions.
11399
11400         * gtk/gtkwindow.c:
11401         (gtk_window_realize): if we need to enforce premature size allocation,
11402         queue a container resize so we are correctly resized later on.
11403         (gtk_window_init):
11404         (gtk_window_size_request):
11405         don't freak around with the ->need_resize flag,
11406         gtk_container_queue_resize() will care about that.
11407         (gtk_window_show):
11408         handle initial resizing issues here, we can handle matters better in
11409         this place, especially since we know that our GdkWindow is still
11410         unmapped.
11411         (gtk_window_move_resize):
11412         don't care about ->need_resize at all.
11413         handle size changes properly that occoured while we waited for a
11414         configure event.
11415
11416 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
11417
11418         * gtk/gtkwidget.c (gtk_widget_set_uposition):
11419         * gtk/gtkwindow.[hc] (gtk_window_reposition):
11420         Move the hint setting code from gtk_widget_set_uposition
11421         to here; set the hints so that we respect any previously
11422         set geometry hints.
11423
11424         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
11425         change the window hints here or move the window here,
11426         let that happen in gtk_window_move_resize().
11427
11428 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
11429
11430         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
11431         to already queued resizes (and therefore redraws) on a widget, check
11432         its anchestry as well.
11433
11434         * gtk/gtkcontainer.c:
11435         (gtk_container_queue_resize): clear resize widgets for resize
11436         containers before aborting prematurely. this is especially important
11437         for toplevels which may need imemdiate processing or their resize
11438         handler to be queued.
11439         (gtk_container_dequeue_resize_handler): added new internal function for
11440         gtkwindow.c.
11441
11442         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
11443         configure event, take possible changes in window position into account
11444         as well.
11445         if we request a new window size, queue up a resize handler that will
11446         last until the configure event response arrives.
11447         combined the ->need_resize case (initial show) with the general size
11448         (hints) changed case and added even more comments.
11449         if !auto_shrink, only revert to the old allocation if the new size
11450         is smaller than the current allocation.
11451
11452 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
11453
11454         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
11455                            gtk_window_set_geometry_hints
11456                            gtk_window_set_default_size):
11457         When hints are set, queue a resize so that the hints will
11458         be eventually reset on the toplevel.
11459
11460         * gtk/gtkwindow.c (gtk_window_show): Use
11461         gtk_window_compute_default_size(). Clear the need_resize flag
11462         on the initail map so that we don't unnecessarily trigger the
11463         resize code.
11464
11465         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
11466         into separate functions. Compare the hints we are setting
11467         with what we set last time so that we can accurately
11468         tell when we need to reset the hints.
11469
11470         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
11471         function to figure out the size from requisition
11472         and default_size.
11473
11474         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
11475         from fvwm to constrain a size to the geometry hints.
11476
11477         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
11478         to compare two sets of geometry hints.
11479
11480         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
11481         from gtk_window_set_hints(), just compute the hints,
11482         don't set them.
11483
11484         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
11485         code from gtk_window_move_resize() to separate function,
11486         rationalize a bit.
11487
11488 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
11489
11490         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
11491         structure into a new private structure.
11492
11493         * gtkrc.c: Split GtkRcStyle into public/private.
11494         In the private part, add a list of pointers to the
11495         RcStyle lists this RcStyle participates in.
11496
11497         * gtkrc.c: When a RcStyle is free, remove all
11498         lists referencing it from the 
11499         realized_style_ht hash, and free those lists.
11500         
11501         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
11502         gtk_rc_init(), since that adds the default styles
11503         to the list of parsed RC files again.
11504
11505         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
11506         
11507 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
11508
11509         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
11510         checks that ensure that a widget's allocation is at least 1 in width
11511         and height. (GNOME note: this doesn't affect old panel code anymore,
11512         because GtkSocket will request width and height of at least 1 since
11513         Fri Jul 23).
11514
11515         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
11516         allocated yet (happens if the user realizes the window prematurely),
11517         size request and allocate it.
11518         (gtk_window_size_allocate): guard against guint underflows.
11519
11520 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
11521
11522         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
11523         in gtk_built_sources, so gtk.defs gets built prior to all other
11524         sources.
11525
11526 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11527
11528         * gtk/Makefile.am:
11529         invoke indent on gtkmarshal.*. 
11530         rewrote source generation rules, use COPYING as oldest source tag for
11531         a piggyback rule to generate all sources from (don't touch it ;).
11532         major cleanups, strip spaces on build rules for GNU Make.
11533
11534         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
11535         source and target files from commandline arguments. don't invoke indent.
11536
11537 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11538
11539         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11540         notebook after switch to avoid drawing problems.
11541         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11542         
11543         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11544         show them instead. 
11545         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11546
11547 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
11548
11549         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
11550         notebook after switch to avoid drawing problems.
11551         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
11552         
11553         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
11554         show them instead. 
11555         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
11556
11557 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
11558
11559         * gtk/gtkwindow.c:
11560         we use window->need_resize from configure_event now, to indicate that
11561         the gtkwindow should keep its allocation (e.g. because the user resized
11562         the window through window manager handles). resize_count is now reliably
11563         used to figure whether we got the allocation we requested from the
11564         window manager.
11565         configure events get queued as resizes now, the real stuff (size
11566         computation and allocation) now only goes on in gtk_window_move_resize().
11567         GtkWindow's requisition now contains its *real* requisition (like all
11568         other widgets), *not* taking usize into account.
11569         geometry_info->last_{width|height} is now updated from set_hints() only
11570         so it always contains the last hints we set for the window manager.
11571         made some event handlers return TRUE instead of FALSE.
11572         the overall code should be much more straight forward now, and the
11573         significant code portions are accompanied by comments now.
11574         (gtk_window_set_hints):
11575         removed requisition argument and made it
11576         fetch the requisition through gtk_widget_get_child_requisition.
11577         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
11578         does that now.
11579         (gtk_window_show):
11580         ensure that the widget is realized before calling 
11581         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
11582         ensure that we got properly size requested and allocated before
11583         realization.
11584         (gtk_window_configure_event):
11585         ignore plain window moves, or reallocate the widget tree through the
11586         resize queue otherwise.
11587         (gtk_window_move_resize):
11588         mostly rewrote this function to figure window manager hints more
11589         reliably, coalesce window moves and resizes to reduce configure events
11590         and do actuall size allocations.
11591
11592 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11593
11594         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
11595         that have a resize pending, because a redraw is already queued for them.
11596
11597         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
11598         hack to clear resize_widgets.
11599
11600         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
11601         for resize containers prior to size allocation. (this is also a bit
11602         ugly, but avoids side effects for stopped emissions and is thus more
11603         reliable).
11604         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
11605
11606         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
11607         function from gtk_tooltips_expose, as we connect to ::expose_event
11608         *and* ::draw now.
11609
11610 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11611
11612         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
11613         checks.
11614         (gtk_target_list_unref): Likewise.
11615
11616         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
11617
11618 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
11619
11620         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
11621         guard against division by zero. (Fixes bug #1339)
11622
11623 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
11624
11625         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
11626         Prevent the trivial leak of information of allowing
11627         word motion when the entry is not visible.
11628
11629 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
11630
11631         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
11632         modality to error dialog as well as confirmation dialogs.
11633         (Bug #1803, reported by Rosanna Wing Sze Yuen)
11634
11635 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11636
11637         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
11638         tree->view_lines.
11639         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
11640
11641         * gtk/Makefile.am (install-data-local): Solaris apparently
11642         has various troubles with ln -f; use rm first instead.
11643         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
11644
11645 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
11646
11647         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
11648         use `cp' followed by `rm' (the `rm' was already there).
11649
11650 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11651         
11652         * configure.in: Fix autoconf warnings about cross compilation by
11653         trying to provide sane defaults for AC_TRY_RUN.
11654         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
11655         put them into $(srcdir) when generated. Also add a dependency of
11656         gtksignal.h on gtkmarshal.h for -j builds. 
11657         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
11658
11659 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
11660
11661         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
11662         GDK_THREADS_{LEAVE,ENTER} pair.
11663         (From Paul Fisher <pnfisher@redhat.com>)
11664
11665 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
11666
11667         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
11668         width and height are always >0 (owen).
11669
11670 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
11671
11672         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
11673         change that assured that a widget's allocated with and height are
11674         always >1, since this breaks *buggy* panel code. unfortunately this
11675         back-breaks the gimp's color selector.
11676
11677         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
11678         allocation is always >0 in width and height, before sending the
11679         configure event; this is a *gross* hack to get the gimp back to work.
11680         
11681         * marked both cases with TODO-1.3
11682
11683 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
11684
11685         * gtk/gtktext.c: Don't display wrap indicators when
11686         text is not editable and word wrap is on.
11687
11688 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
11689
11690         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
11691         option menus here as they are not derived from menu shell, assure that
11692         the option menu has a menu we can add items to.
11693
11694 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
11695
11696         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
11697         width/height to (gint) before calculations and check against < 0 to
11698         avoid guint wraparounds.
11699
11700 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
11701
11702         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
11703         width and height is never zero. sanity check both dimensions against
11704         32767 and issue a warning if the allocation is greater than that.
11705
11706 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
11707
11708         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
11709         to g_main_pending() as well.
11710
11711 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
11712
11713         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
11714         call to g_main_iteration() - since that will regrab
11715         GTK+ lock to process events.
11716
11717 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
11718
11719         * gtk/gtkwindow.c
11720         - Regularize with the rest of GTK+ by making widget->requisition
11721           not reflect the set_usize()
11722         - Always recompute geometry hints, then check if they
11723           changed before sending them to the X server. The
11724           previous checks for changes would fail in a number
11725           of circumstances. 
11726
11727 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
11728
11729         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
11730
11731 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
11732
11733         * gtk/gtkdnd.c:
11734         - Code cleanups
11735         - Instantaneously update on modifier key presses
11736         - Allow cancellation of the drag with Escape.
11737
11738 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
11739
11740         * gtk/testgtk.c (create_handle_box): Set the policy
11741         to auto_shrink - otherwise the appearance is rather
11742         strange when flipping between horizontal and vertical.
11743
11744 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
11745
11746         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
11747         (gtk_window_set_default_size): don't change a value if it's < 0.
11748         queue a resize.
11749
11750 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
11751
11752         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
11753
11754 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
11755
11756         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
11757         add an extra "/" when concating "/" + filename.
11758         (From Matt Grossman <mattg@oz.net>)
11759
11760 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
11761
11762         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
11763         for fg_gc if we set it for drawing pixmap.
11764
11765 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
11766
11767         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
11768         
11769         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
11770         already set, call old engine's destroy function and
11771         unref the old engine.
11772
11773 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
11774
11775         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
11776
11777 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
11778
11779         * gtk/gtkaccelgroup.h: mark certain functions as internal.
11780
11781 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
11782
11783         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
11784         expand behaviour changed.
11785
11786         * gtk/gtklabel.c (gtk_label_set_pattern):
11787         (gtk_label_set_justify):
11788         (gtk_label_set_line_wrap):
11789         don't bother invoking queue_clear, the reallocation does
11790         that for us, always free_words so the upcoming resize will
11791         relayout the label's contents.
11792
11793 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
11794
11795         * applied argument implementation patches from Elena Devdariani
11796         <elena@cogent.ca>.
11797
11798         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
11799         ::space_style, ::relief
11800         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
11801         * gtk/gtkpreview.c: ::expand
11802         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
11803         * gtk/gtknotebook.c: ::homogeneous
11804         * gtk/gtklabel.c: ::wrap
11805         * gtk/gtklist.c: ::selection_mode
11806         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
11807         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
11808         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
11809         * gtk/gtkclist.c: ::sort_type
11810         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
11811         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
11812
11813 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
11814
11815         * gtk/gtkstyle.c: Removed ill-thought-out part of last
11816         comment.
11817
11818 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
11819
11820         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
11821         counting right when we have to attach a new style
11822         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
11823
11824         * gtk/gtkstyle.c: Documented the refcounting
11825         peculularities of gtk_style_attach.
11826
11827 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11828
11829         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
11830         window types.
11831
11832         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
11833         of GTK_TOPLEVEL for creating the window.
11834
11835 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11836
11837         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
11838         the last argument (reported by Per Winkvist).
11839         
11840 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
11841
11842         Fixes for invisible XOR lines (Frank Loemker
11843         <floemker@TechFak.Uni-Bielefeld.DE>)
11844         
11845         * gtk/gtkclist.c (gtk_clist_realize): Always use
11846         a non-zero pixel for GDK_XOR.
11847
11848         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
11849         Use GDK_INVERT instead of GDK_XOR.
11850
11851 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
11852
11853         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
11854         signals if h/voffsets differ from adjustment values.
11855         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
11856
11857 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
11858
11859         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
11860         ::selection-done emissions up to the topmost menu shell.
11861
11862 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
11863
11864         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
11865         the user data on the window before destroying it.
11866
11867         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
11868         unrealize handler to take care of destroying 
11869         notebook->panel properly. 
11870         (Bug #1198 - Morten Welinder <terra@diku.dk>)
11871
11872         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
11873         of g_new and g_realloc to stop memory leak. (Actually,
11874         we could just use g_realloc(), but I'm not 100% sure
11875         that is portable).
11876         (Bug #1196 - Morten Welinder <terra@diku.dk>)
11877
11878 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11879
11880         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
11881
11882         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11883         for fontsets.
11884
11885         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
11886         with bin/button confusion.
11887
11888 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
11889
11890         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
11891         and show how preselection of radio items is done.
11892
11893 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
11894
11895         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
11896         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
11897         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
11898         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
11899         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
11900         * gtk/gtktable.c (gtk_table_attach): 
11901         * gtk/gtklist.c (gtk_list_insert_items): 
11902         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
11903         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
11904         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
11905         * gtk/gtkbin.c (gtk_bin_add): 
11906         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
11907         * gtk/gtkfixed.c (gtk_fixed_put): 
11908         * gtk/gtklayout.c (gtk_layout_put):
11909         general fixups to container_add logic. always realize child if
11910         child->parent is realized, only map the child and queue a resize
11911         if child and child->parent are both visible.
11912
11913 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
11914
11915         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
11916         instead of gtk_container_foreach to walk and unrealize children, so
11917         composite children get also unrealized.
11918         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
11919         (gtk_widget_map): assert that the widget is visible (basic constrain).
11920         (gtk_widget_real_map): assert that the widget is realized (basic
11921         constrain).
11922
11923 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
11924
11925         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
11926
11927 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
11928
11929         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
11930         file for iso-8859-2 locales.
11931
11932         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
11933
11934 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
11935
11936         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
11937          (Pointed out by andy@rz.uni-karlsruhe.de and others).
11938          Remove some suspicious and useless lines. 
11939
11940 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
11941
11942         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
11943         width,height = 0, 0 to mean - here to edge of window,
11944         instead of -1, -1, since the former is all we support.
11945
11946 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
11947
11948         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
11949         when removing from quit_functions list.
11950
11951 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
11952
11953         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
11954
11955 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
11956
11957         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
11958          When redrawing characters on non-visible entry, use appropriate
11959          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
11960
11961 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
11962
11963         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
11964         from drag coordinates.
11965         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
11966         use drag_dest_cell.
11967
11968         * gtk/gtktree (drag_dest_cell)
11969         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11970         (Bug #1129)
11971
11972 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
11973
11974         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11975         translate_* fields.
11976         (gtk_item_factory_finalize): invoke translate_notify independant from
11977         translate_data.
11978         (gtk_item_factory_set_translate_func): likewise.
11979         (gtk_item_factory_destroy): only remove ifactory pointer from those
11980         widgets that belong to us (stupid me).
11981
11982 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
11983
11984         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11985         rc_style list when lookup succeeeds.
11986
11987 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
11988
11989         * gtk/gtkctree.c (resync_selection): 
11990         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11991         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11992         bug.
11993
11994 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
11995
11996         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11997         Add some missing GDK_THREADS_ENTER()/LEAVE around
11998         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11999
12000 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
12001
12002         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
12003         rather than emit_by_name.
12004
12005         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
12006         on the widget across multiple signal emissions.
12007         (gtk_editable_delete_text): same here.
12008         (gtk_editable_class_init): set widget_class->activate_signal after
12009         editable_signals[ACTIVATE] has been created.
12010
12011 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
12012
12013         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
12014         position here prematurely -- we might not have the
12015         right ->min_position and ->max_position yet.
12016
12017 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12018
12019         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
12020         Add error traps so if the other end of the connection
12021         dies, we survive.
12022
12023         * gtk/gtkselection.c (gtk_selection_notify): Clean
12024         up properly when selection property retrieval fails.
12025         
12026         * gtk/gtkselection.c (gtk_selection_request): Correctly
12027         reject SelectionRequest notifies where the handler
12028         returns no data.
12029
12030 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12031
12032         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
12033         when we've previously highlighted.
12034
12035         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
12036         emit two "drag_leave" signals for Motif drops.
12037
12038         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
12039         back the correct status messages when dropping from
12040         Motif onto a proxy window that is rejecting the
12041         drop.
12042
12043 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
12044
12045         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
12046         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
12047         to compare two argument values. added gtk_arg_to_valueloc() to set a
12048         variable from an arg through its location (pointer).
12049
12050         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
12051         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
12052         as gfloat*, uchars are collected as guchar*, ints are collected as
12053         gint*, etc...
12054
12055 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
12056
12057         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
12058         Include <string.h> instead of <strings.h>.
12059
12060         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
12061         (actually, a lot more duplicate includes occur if
12062          you trace through the sequence of #include's)
12063         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
12064         
12065 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12066
12067         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12068         gtk-a-higuti-990322-[0-3]
12069
12070         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12071         that was causing -DX_LOCALE not to work.
12072
12073         * gtk/gtkrc.c (gtk_rc_init):
12074         X_LOCALE will never have LC_MESSAGES defined
12075
12076 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
12077
12078         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
12079         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
12080
12081         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
12082         left/right as well (gtk-michael-980726-0.patch.gz).
12083
12084         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
12085         for pointer values, use gchar instead of char. fixed uline allocation
12086         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
12087         chunks instead of G_ALLOC_ONLY.
12088         (gtk_label_size_request): always alter requisition as passed and leave
12089         widget->requisition alone.
12090         (gtk_label_set_text): allow NULL strings.
12091         (gtk_label_new): likewise.
12092
12093 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
12094
12095         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
12096
12097 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
12098
12099         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
12100         *and* mapped (i.e. drawable).
12101         (gtk_bin_expose): only send exposes to drawable children.
12102
12103         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
12104         (gtk_box_expose): only send exposes to drawable children.
12105
12106         * gtk/gtkhscale.c (gtk_hscale_draw): 
12107         * gtk/gtkvscale.c (gtk_vscale_draw):
12108         hm, this is an ugly one. we first compute the size of our trough area
12109         here (window relative) and then check intersection with the draw_area
12110         which is parent relative because we're a NO_WINDOW widget, so we need
12111         to offset the trough area by allocation.x and allocation.y before the
12112         check. (this must not be done for the background area though, since
12113         that's already computed parent relative).
12114
12115 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
12116
12117         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
12118         unrealize title buttons.
12119
12120 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
12121
12122         * gtk/gtkclist.c (gtk_clist_column_title_passive)
12123         (gtk_clist_column_title_active): 
12124         only connect/disconnect to GtkWidgetClass::event to block mouse events.
12125
12126         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
12127         zero initialize event, removed superfluous gdk_window_get_pointer call
12128
12129         * gtk/gtklist.c (gtk_list_vertical_timeout)
12130         (gtk_list_horizontal_timeout): removed superfluous
12131         gdk_window_get_pointer call
12132
12133 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12134
12135         * plugging problems reported by "Bruce Mitchener, Jr."
12136         <bruce@puremagic.com> due to a purify session.
12137
12138         * gtk/gtkstyle.c:
12139         (gtk_style_ref): 
12140         (gtk_style_unref): assert ref_count to be > 0.
12141
12142         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
12143         the requisition.
12144         (gtk_clist_set_shift): likewise.
12145
12146         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
12147         adjustments.
12148
12149         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
12150         event before sending it and set send_event to TRUE (which needs to
12151         be done for *all* synthesized events).
12152         (gtk_list_vertical_timeout): likewise.
12153
12154         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
12155         leaks.
12156
12157         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
12158         to TRUE when synthesizing events.
12159
12160 [ *** end of merges from 1.2 *** ]      
12161         
12162 1999-11-21  Tor Lillqvist  <tml@iki.fi>
12163
12164         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
12165         (or copied from gdkconfig.h.win32 on Win32, sigh).
12166
12167         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
12168
12169         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
12170
12171         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
12172
12173         * gdk/gdkconfig.h.win32: New file.
12174
12175         * gdk/win32/makefile.cygwin: Build just a static archive here.
12176
12177         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
12178         for the DLL from the static archive built above.
12179
12180         * gdk/gdk.def: Moved here from the win32 subdirectory.
12181
12182         * gdk/win32/*: Adapt for the changed private struct organisation.
12183
12184         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
12185
12186 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
12187
12188         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
12189         for wheel mice (buttons 4 and 5).
12190
12191 1999-11-18  Tor Lillqvist  <tml@iki.fi>
12192
12193         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
12194         drawables use just the pixel field in the foreground and
12195         background GdkColor of the GdkGC.
12196
12197         gdk_gc_set_{fore,back}ground() are called in the GIMP with
12198         GdkColors containing uninitialized (red,green,blue) fields, and
12199         just the pixel field filled in, and furthermore in the
12200         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
12201         It thus turns out that we really don't need to have the full
12202         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
12203         it later to have just the pixel values.
12204
12205 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12206
12207         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
12208
12209 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
12210
12211         * docs/gtkfaq.sgml: threads example from Erik Mouw.
12212         New question on GtkLabel background colors.
12213
12214         * docs/gtk_tut.sgml:
12215           - Correct the example code callback
12216             function definitions.
12217           - Update the gtkdial example code, from Frans van Schaik.
12218           - Update setselection.c to current API.
12219
12220         * examples/Makefile examples/*/*.c: Update to code
12221         listed in tutorial.
12222
12223 1999-11-10  Tor Lillqvist  <tml@iki.fi>
12224
12225         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
12226         subrange table (from the "Developing International Software for
12227         WIndows 95 and Windows NT" book) was missing the Hangul syllable
12228         block... Get the loaded font's charset correctly.
12229
12230         (Note that this, and the other *-win32.c files, still really are
12231         the old ones, the win32 subdirectory is not ready for compilation
12232         yet after the reorg.)
12233
12234 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
12235
12236         * gtk/gtkclist.c: Fix off-by-one bug in parameter
12237         check.
12238
12239 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
12240
12241         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
12242         on results of XQueryDeviceState().
12243
12244 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
12245
12246         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
12247         we need to accesss only ->children. We need an accessor
12248         for the children.
12249
12250         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
12251         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
12252         to get rid of gdkx.h include.
12253         
12254         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
12255         and random references to 'None'.
12256
12257         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
12258         Get rid of unused #include <gdk/gdkx.h>
12259
12260         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
12261         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
12262         gdkconfig.h.
12263
12264 1999-11-08  Tor Lillqvist  <tml@iki.fi>
12265
12266         * gdk/win32/gdkdraw.c
12267         * gdk/win32/gdkfont.c
12268         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
12269         following yesterday's changes. (Unrelated to Owen's reorg.)
12270
12271 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
12272
12273         * gdk/x11/gdkinput-gxi.c: Add missing include,
12274           fix GdkWindowPrivate => GdkDrawablePrivate.
12275
12276         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
12277
12278         * gdk/x11/Makefile.am (xinput_sources): Add missing
12279         backslash to fix building with --with-xinput=none
12280
12281 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
12282
12283         Move all X specific code into the x11/ directory.
12284         Aside from shuffling things around, did the following:
12285
12286        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
12287          gdk_arg_context_* - a simple argument parsing system
12288          in the style of popt.
12289
12290        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
12291          gdk/x11/gdkprivate-x11.h:
12292          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
12293          add ->klass and ->klass_data fields. The klass_data
12294          field points to an auxilliary structure that is
12295          windowing system dependent.
12296
12297        * gdk/gdkfont.c: Make most of the measurement functions
12298          simply wrappers around gdk_text_extents().
12299
12300        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
12301          _gdk_font_strlen() function that hides the weird
12302          behavior in gtk+-1.[02] where a string is interpreted
12303          differently for 8-bit and 16-bit fonts.
12304
12305        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
12306          to store common code for synthesizing double/triple
12307          press events.
12308         
12309        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
12310          Make all the function that modify an existing GC
12311          simply wrappers around gdk_gc_set_values().
12312          
12313        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
12314          for throwing out later.
12315
12316        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
12317          GdkImagePrivate and GdkColormapPrivate to have a
12318          windowing system dependent part (GdkFontPrivateX etc.)
12319          that "derives" from the system-independent part.
12320
12321        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
12322          Got rid of the included-source-files for XInput in
12323          favor of automake conditionals. (Which didn't exist
12324          when XInput support was originally added.)
12325
12326        * gdk/gdkrgb.c: Remove the visual id from the debugging
12327          statements since that is X11 specific; print out
12328          type/depth info instead.
12329          
12330
12331 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
12332
12333         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
12334         loading duplicates of hashed fonts.
12335
12336         * gdk/gdk.c (gdk_keysym_convert_case): rename
12337         gdk_XConvertCase to gdk_keysym_convert_case, allow
12338         results to be NULL in the GTK+ style.
12339
12340         * gdk/gdkcompat.h: Started compatibility header
12341         for renames.
12342
12343 1999-11-07  Tor Lillqvist  <tml@iki.fi>
12344
12345         * gdk/win32/gdkprivate.h: New font private structures, related to
12346         fontsets.
12347
12348         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
12349         gdk_font_list_free(). On X11, will just be wrappers to
12350         XListFonts() and XFreeFontNames(). On Win32, the code previously
12351         in gtkfontsel.c is now here.
12352
12353         New function gdk_font_xlfd_create(). On X11 will get the FONT
12354         property of the font (for GDK_FONT_FONTs), or call
12355         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
12356         builds a XLFD style name from the font information in the LOGFONT
12357         struct(s).
12358
12359         New function gdk_font_xlfd_free(), which correspondingly frees the
12360         string returned by gdk_font_xlfd_create().
12361
12362         Implement fontsets on Win32. Add a function that iterates over a
12363         wide char string and calls a callback function for each substring
12364         of wide chars from the same Unicode subrange (and thus probably
12365         available in the same real font).
12366
12367         Improve the XLFD emulation a bit.
12368
12369         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
12370
12371         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
12372         Beta3, WM_IME_CHAR messages don't seem to contain the composed
12373         multi-byte char as with the Active IMM on Win9x. Oh well, handle
12374         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
12375         ImmGetCompositionStringW() to get the composed Unicode chars.
12376
12377         * gdk/win32/gdkgc.c
12378         * gdk/win32/gdkdraw.c: Changes needed because of the font private
12379         struct changes.
12380
12381         * gdk/win32/gdk.def: Add the new functions.
12382
12383 1999-11-04  Tor Lillqvist  <tml@iki.fi>
12384
12385         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
12386         get the Platform SDK to get <dimm.h>.
12387
12388         * gdk/win32/gdkevents.c: More event handling fixes and
12389         simplification. Never generate motion events with is_hint true. We
12390         used to do that on bogus grounds earlier. Windows sends
12391         WM_MOUSEMOVE messages on button events even if the mouse hasn't
12392         moved, ignore these.
12393
12394         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
12395
12396         * gdk/win32/gdkglobals.c
12397         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
12398         the TrackMouseEvent function, and use it.
12399
12400         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
12401         char before calling WideCharToMultiByte in order to get a string
12402         for the window title.
12403
12404         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
12405
12406         * gdk/win32/gdk.def: Remove obsolete functions.
12407
12408         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
12409         /nodefaultlib and /defaultlib switches.
12410
12411         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
12412
12413 1999-10-31  Tor Lillqvist  <tml@iki.fi>
12414
12415         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
12416         EuroSign).
12417
12418         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
12419         same type as GdkWChar, especially on Win32.
12420
12421         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
12422
12423         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
12424         before passing to Windows GDI for drawing etc. Convert to the
12425         system default codepage before passing to Windows as window
12426         titles.
12427
12428         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
12429         support changing input locale on the fly.
12430
12431         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
12432         on-the-fly changes. Convert incoming characters from the current
12433         codepage to Unicode (and then to a UTF-8 multi-byte string) based
12434         on the current input language. Use keysym<->Unicode mapping tables
12435         and functions borrowed from xterm sources.
12436
12437         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
12438         editions of Win9x, use the ActiveX-based Active IMM (Input Method
12439         Manager) if available. IMEs and the Active IMM are available under
12440         the disguise of Chinese, Korean and Japanese support for IE and
12441         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
12442         support is present in all editions (as long as you install it).
12443
12444         Call DispatchMessage from gdk_events_queue() (and thus
12445         gdk_WindowProc()), instead of duplicating the code in
12446         gdk_WindowProc().
12447
12448         Reworked the grab handling and propagation code, factored out
12449         duplicated code snippets into separate functions. Other cleanups,
12450         too.
12451
12452         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
12453         the <dimm.h> header describing the Active IMM.
12454
12455         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
12456         just do the same as for "single" fonts.
12457
12458         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
12459         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
12460         the new keysyms from gdkkeysyms.h.
12461
12462         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
12463         fontset, so that gtkentry uses wide characters.
12464
12465         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
12466         GTk+'s system directory "gtk+", not "gtk".
12467
12468 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
12469
12470         * docs/gtkfaq.sgml: FAQ update
12471
12472 1999-10-21  Tor Lillqvist  <tml@iki.fi>
12473
12474         * gdk/win32/gdkprivate.h: Add more font private data.
12475
12476         * gdk/win32/gdkfont.c
12477         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
12478         fonts and strings. Now works much better. You still have to
12479         have a correct font selected, though. No fontset emulation yet.
12480
12481 1999-10-19  Tor Lillqvist  <tml@iki.fi>
12482
12483         * gtk/maketypes.awk: Use G_OS_WIN32.
12484
12485         * gtk/gtk.def: Add some missing entry points. Also some non-public
12486         ones, but PyGTK porter claims to need them.
12487
12488         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
12489         built-in type generation.
12490
12491 1999-10-14  Tor Lillqvist  <tml@iki.fi>
12492
12493         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
12494         GDK_FONT_FONT fonts (which is all we have for now, we don't
12495         emulate fontsets). The X11 version uses plain XDrawString in that
12496         case, too. The string passed to gdk_draw_text_wc seems to be in
12497         fact (at least, when used by gtkentry and gtktext) either in a
12498         single-byte charset, or a DBCS. Not Unicode.
12499
12500         This fixes the problem in gtkfontsel, where even if you had
12501         selected a font with a non-Latin1 charset (windows-greek, for
12502         instance), the preview still used Latin-1 glyphs.
12503
12504         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
12505         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
12506         (gdk_font_load): Recognize the demibold etc weights, even if we
12507         don't have the corresponding constants in the headers.
12508         (gdk_font_hash_insert): Use same hash mechanism as in the X11
12509         version. Should save font resources a bit, when we don't have
12510         multiple HFONTs for the same font.
12511
12512         * gdk/win32/gdkprivate.h: Add the names field as in the X11
12513         version.
12514
12515 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
12516
12517         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
12518         X values
12519
12520 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
12521
12522         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
12523         layout support (as mentioned on
12524         http://www.jcinteractive.com/gnome-ui/software/widgets/)
12525
12526 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
12527
12528         * gtk/fnmatch.c
12529         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
12530
12531 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
12532
12533         * configure.in (ALL_LINGUAS): Added Galician (gl)
12534
12535 1999-10-05  Tor Lillqvist  <tml@iki.fi>
12536
12537         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
12538
12539         * gdk/win32/gdkcompat.c: New file, actually provide an
12540         implementation for the deprecated functions. (Just temporarily.)
12541
12542         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
12543
12544         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
12545
12546         * gdk/win32/gdk.def gtk/gtk.def: Updates.
12547
12548 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
12549
12550         * configure.in: Added "uk" to ALL_LINGUAS.
12551         
12552 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
12553
12554         * configure.in: correct checking for BeOS check
12555
12556         * gdk/gdktypes.h
12557         * gtk/fnmatch.c
12558         * gtk/gtkfilesel.c
12559         * gtk/gtkitemfactory.c
12560         * gtk/gtkmain.[ch]
12561         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
12562
12563 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12564
12565         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
12566         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
12567         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
12568         by Bulgarian). 
12569
12570 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
12571
12572         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
12573         Fix a reference to window_private->destroyed.   
12574
12575         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
12576         (ugly) setting of an internal GdkWindow member to use
12577         a _slightly_ cleaner macro.
12578
12579         * gdk/gdkprivate.h: Split GdkWindowPrivate into
12580         GdkDrawablePrivate and GdkWindowPrivate.
12581         Add extra macros for accessing GDK_DRAWABLE_ components.
12582
12583         * *.[ch]: Massive adjustments for the above, use the
12584         new macros in a lot of places.
12585
12586 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
12587
12588         * gdk/gdktypes.h: Make GdkDrawable the base type,
12589         not GdkWindow.
12590
12591 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
12592
12593         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
12594
12595 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
12596
12597         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
12598
12599 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
12600
12601         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
12602         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
12603
12604         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
12605
12606         * docs/gtk-config.1: Now autogenerated.
12607         * docs/Changes-1.4.txt: started
12608         
12609 1999-10-03  Tor Lillqvist  <tml@iki.fi>
12610
12611         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
12612         to #ifdef also here.
12613
12614         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
12615         Owen did to the X11 backend.
12616
12617         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
12618         ScrollWindowEx when blitting inside a window, it can't be correct
12619         in the general case.
12620
12621         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
12622         WM_GETMINMAXINFO is easier.
12623
12624         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
12625         depth equal to the bitspixel value, not the visual's depth.
12626
12627         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
12628         to 24 even if the bitspixel value is 32.
12629
12630         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
12631         need to check for depth==32 when bpp==32, depth will always be 24.
12632
12633 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
12634
12635         * docs/Changes-1.4.txt: Started
12636         
12637         * gtk/Makefile.am (gdk_headers): Include all the new headers.
12638
12639         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
12640         
12641         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
12642         into C file.
12643         
12644         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
12645         header to gdkinputprivate.h.
12646
12647         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
12648         unused since before 1.2.
12649
12650 1999-09-30  Tor Lillqvist  <tml@iki.fi>
12651
12652         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
12653         expand possible hex escapes in the font family (put there by
12654         logfont_to_xlfd if the font name isn't a legal XLFD font family,
12655         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
12656         On Win32, add hex escapes here, too.
12657
12658 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
12659
12660         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
12661         to #ifdef GDK_WINDOWING_X11.
12662
12663 [ Merges from gtk-1-2 ]
12664
12665 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
12666
12667         * configure.in: fixed "GNU Make" check to pass with new make version
12668         3.77.95.
12669
12670 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
12671
12672         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
12673         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
12674         AM_PATH_GTK() macros don't get confused by the -pre1.
12675
12676 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12677
12678         * configure.in (REBUILD): Change check for perl5
12679           to check explicitely for v >= 5.002. (5.001
12680           does not work with our scripts.)
12681
12682 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
12683
12684         * configure.in: evaluate $PERL for the perl version check. added
12685         --disable-rebuilds to give the user an option to completely disable
12686         any source autogeneration rules.
12687
12688 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
12689
12690         * configure.in: evaluate $ac_make when checking for GNU Make.
12691
12692 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12693
12694         * docs/Makefile.am: added generation.txt.
12695
12696         * Makefile.am: require automake 1.4, build README from README.in and
12697         INSTALL from INSTALL.in in dist-hook.
12698         
12699         * README.in:
12700         * INSTALL.in: new files to autogenerate README and INSTALL from.
12701
12702         * configure.in: figure whether we have GNU Make
12703
12704         * docs/generation.txt: minor additions/corrections.
12705
12706 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12707
12708         * docs/gtkfaq.sgml: FAQ Update
12709
12710 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12711         
12712         * configure.in: Fix autoconf warnings about cross compilation by
12713         trying to provide sane defaults for AC_TRY_RUN.
12714
12715 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
12716
12717         * ltconfig
12718         * ltmain.sh: upgrade to libtool 1.3.3
12719
12720 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
12721
12722         * INSTALL: Indicate that the --with-glib= configure
12723         time flag is unsupported.
12724
12725 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
12726
12727         * docs/generation.txt: Added a file that gives
12728         documenation about the autogeneration process for
12729         various autogenerated files.
12730         
12731 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12732
12733         * configure.in (LIBS): Look for libgmodule in the
12734         right location.
12735
12736 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
12737
12738         * docs/gtk_tut.sgml: Removed references to
12739         code examples in my directory on gtk.org as
12740         they should all be in the tutorial now.
12741
12742         * docs/gtk_tut.sgml: Added sources for dial-test
12743         and scribble-xinput programs that were previously
12744         missing.
12745
12746 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
12747
12748         * TODO: Added entry about menu keyboard navigation, removed
12749         some finished items.
12750
12751 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
12752
12753         * acinclude.m4: Standardize on func_dgettext
12754         not func_gettext, so that the checks for dgettext
12755         actually are paid attention to.
12756
12757 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
12758
12759         * configure.in (LIBS): Add $INTLLIBS into $LIBS
12760         directly, rather than repeating the checks for
12761         gettext.
12762
12763         * INSTALL: Added information about gettext and
12764         NLS support.
12765
12766         * acinclude.m4 (LIBM): Check for dgettext, not
12767         just gettext. This should hopefully fix things wrt
12768         systems with old versions of GNU gettext installed.
12769
12770 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
12771
12772         * configure.in (LIBS): Look for libgmodule in the
12773         right location.
12774
12775 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12776
12777         * autogen.sh: add --enable-maintainer-mode
12778
12779         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
12780
12781 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
12782
12783         * docs/gtk-config.1.in:
12784           docs/Makefile.am:
12785           configure.in: gtk-config is now generated.
12786
12787         * docs/gtk-config.1: Removed, now generated.
12788
12789 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
12790
12791         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
12792         handle CreateNotify itself, still put out a debuging message for
12793         --gdk-debug=events. made the ReparentNotify debugging message more
12794         verbose.
12795         wrap xcoords translation for ConfigureEvents into an error trap,
12796         a destroy event may already be pending, and in that case, the
12797         actuall coordinate values are not at all critical.
12798
12799 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
12800
12801         * gdk/gdkcc.c: Stop leaking the color_hash all over
12802         the place. Simplify and improve the logic.
12803
12804 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12805
12806         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
12807         for prototypes and function implementations consistent (reported
12808         by Tomas Ogren).
12809
12810 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12811
12812         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
12813         send_event set in debugging output.
12814         (gdk_compress_exposures): default initialize the event so we don't
12815         operate on bogus values (namely send_event).
12816
12817 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12818
12819         * gdk/gdkwindow.c: When we receive an unexpected
12820         destroy notify on one of our windows, don't just
12821         warn about it, also mark our windows as destroyed.
12822
12823 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
12824
12825         * gdk/gdkfont.c (gdk_font_hash_insert): Add
12826           name => font and name => fontset hashes. The 
12827           name => fontset hash is a _big_ win since we
12828           weren't previously caching fontsets at all and loading
12829           fontsets is expensive. The name => font hash
12830           is less of a win, but it does save us from doing
12831           repeated XQueryFont calls on the same font.
12832
12833         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
12834           list so we can remove font/fontset from hash.
12835
12836 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12837
12838         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
12839           and slightly confusing test. [ XInternAtom (,,TRUE)
12840           will never return None ].
12841
12842 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
12843
12844         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
12845           gdk/gdkwindow.c (gdk_window_set_hints):
12846
12847         Don't omit setting the properties if flags == 0 -
12848         there may be an existing set of properties there
12849         already. (Very old bug. Would it be better to
12850         delete the property instead?)
12851
12852         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
12853           spelling error in comment.
12854
12855 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
12856
12857         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
12858           to avoid stomping over gdk_error_warnings.
12859
12860         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
12861           as (bits_per_pixel + 7) / 8. This gives the same
12862           result as before for multiples of 8, but actually
12863           a "reasonable" value for 1bit or 4bit displays.
12864
12865 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12866
12867         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
12868         GNU Make.
12869
12870 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12871
12872         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
12873         discarding configure events.
12874
12875 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12876
12877         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
12878         refcount is greater than zero.
12879
12880         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
12881
12882         * gdk/gdkfont.c (gdk_font_unref): Likewise.
12883
12884         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
12885
12886         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
12887
12888 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12889
12890         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
12891         that format 32 => sizeof(item) == 4. It really is
12892         sizeof(long).
12893
12894 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
12895
12896         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
12897         core dump at all on X IO errors, only core dump
12898         if --enable-debug for X errors.
12899
12900 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
12901
12902         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
12903         unknown window:" message. disabled ConfigureNotify discarding code,
12904         because it led to events being processed out of order.
12905
12906 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
12907
12908         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
12909
12910         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
12911         we export this function, supress error warnings and don't reset the
12912         error code in the first half of this function.
12913
12914         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
12915         code (instead of just -1) so gdk_error_trap_pop() reveals something
12916         actually informative about the error that happened.
12917
12918         * gdk/*.c:
12919         don't rely on gdk_error_code being -1 if an error occoured, but just
12920         gdk_error_code != 0.
12921
12922 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
12923
12924         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
12925         pointer *before* invoking the filter function, so we at least don't
12926         crash if a filter is removed that is currently executed. window filters
12927         *really* need to be made truely reentrant at some point.
12928
12929 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
12930
12931         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
12932         PropertyNotify debug messages.
12933
12934 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
12935         
12936         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
12937         
12938         * gdk/gdkim.c: Fix cut-and-paste errors for 
12939         x/y and PreeditAttributes/StatusAttributes.
12940
12941 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12942
12943         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
12944         G_MAXINT to 2^16 to alleviate overflow problems in
12945         various window managers.
12946
12947 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12948
12949         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12950         for fontsets.
12951
12952 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
12953
12954         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
12955         Initialize size_hints.x and size_hints.y because kwm
12956         brokenly pays attention to them.
12957         (Bug #1181 -  Lars Heete <hel@admin.de>)
12958
12959 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
12960
12961         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
12962         return value of gdk_list_visuals(). 
12963         (Bug #1193 - Morten Welinder <terra@diku.dk>)
12964
12965 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
12966
12967         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12968         XSetIMValues to (void *) when comparing to NULL, to workaround
12969         the problem of some compilers barfing since older X headers don't
12970         have the prototype for it.
12971
12972 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
12973
12974         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12975         for pseudocolor where colormap->colors was double
12976         allocated.
12977
12978         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12979         color value in the hash table with the pixel filled
12980         in so when we do later hash table lookups, the color
12981         value is correct.
12982         
12983 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12984
12985         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12986         making the call
12987
12988 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
12989
12990         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12991         pointed out by Morten Welinder <terra@diku.dk>.
12992
12993 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12994
12995         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12996           default filter from the list
12997
12998 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12999
13000         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13001           default filter from the list
13002
13003 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
13004
13005         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
13006
13007         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
13008         g_strdup_printf instead of calcing the length separately
13009
13010 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
13011
13012         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
13013         that we don't do in many other places. (Fixing duplicate 
13014         #include of config.h)
13015
13016         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
13017         Otherwise, #ifndef XINPUT_NONE check in the latter
13018         doesn't work. (Bug #546)
13019
13020 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
13021
13022         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
13023         "None" case insensitive.
13024
13025 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13026
13027         * gdk/gdkselection.c: 
13028         Add error traps so if the other end of the connection
13029         dies, we survive.
13030
13031 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13032
13033         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
13034         dest_xid field into two fields - one for the window
13035         to send in messages, one to indicate the last looked
13036         up window for caching purposes. This is needed, so
13037         that Leave messages get the correct window.
13038
13039 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
13040
13041         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
13042         Fix warning created by people mucking around
13043         with the gsource API.
13044
13045         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
13046         Change mapping between GIOCondition and GdkInputCondition
13047         to match the way the Linux kernel does it. This should
13048         fix problems where closed pipes were no longer signalling
13049         GDK_INPUT_READ on systems with a native poll().
13050
13051 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
13052
13053         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
13054         explicitly for the string "None" - it is in the XPM
13055         spec and some servers treat unknown colors in odd ways
13056         (like asking the user!)
13057
13058 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13059
13060         * gdk/gdkevents.c: made "->" into a "." of previous change so
13061         it compiles
13062
13063 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
13064
13065         * gdk/gdkevents.c (gdk_compress_exposures): Set the
13066         window field of the event structure before calling
13067         user filters.
13068
13069 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13070
13071         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
13072         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
13073
13074 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
13075
13076         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
13077         intermediate text property - prevents major memory
13078         leak when gdk_use_mb.
13079         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
13080
13081 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13082
13083         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13084         gtk-a-higuti-990322-[0-3]
13085
13086         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
13087         sizeof(wchar_t) != sizeof (GdkWChar)
13088
13089         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13090         that was causing -DX_LOCALE not to work.
13091
13092         * gtk/gtkrc.c (gtk_rc_init):
13093         X_LOCALE will never have LC_MESSAGES defined
13094
13095         * gdk/gdk.c (gdk_init_check):
13096         Remove --xim-preedit and --xim-status from argv properly.
13097
13098         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
13099         that the client window is present on the X server
13100         before we pass it to the input method.
13101
13102 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
13103
13104         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
13105         if --display is specified on the command line, than
13106         the drag window will not be created on that display.
13107         
13108 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
13109
13110         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
13111         lookups with only_if_exists == TRUE were inserting
13112         bogus values into the atom cache.
13113
13114 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13115
13116         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
13117         then reset it to NULL.
13118
13119         * gdk/gdkcolor.c:
13120         (gdk_colors_free): 
13121         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
13122         key for g_hash_table_remove() in both functions, this prevents us
13123         from accessing possibly uninitialized portions of a GdkColor structure
13124         where we are only interested in its pixel value.
13125
13126 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13127
13128         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13129         font hash table, if we have a GdkFontPrivate entry for this font
13130         already, simply increment its reference count, provided by Olaf Dietsche
13131         <olaf.dietsche+list.gtk@netcologne.de>.
13132
13133 1999-09-21  Tor Lillqvist  <tml@iki.fi>
13134
13135         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
13136         just to be sure.
13137
13138         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
13139         unused variables, leftovers from the X11 version.
13140
13141         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
13142
13143         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
13144         downcase fields on X11.
13145
13146 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13147         
13148         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
13149         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
13150
13151 1999-09-17  Tor Lillqvist  <tml@iki.fi>
13152
13153         * gdk/win32/gdk.def: Add gdk_threads_mutex.
13154
13155         * gtk/makefile.msc: Correct path to libintl.
13156
13157         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
13158         use of gint vs. int, and gint vs. gboolean in headers and
13159         definitions. Use GtkType for the *_get_type functions. Note that
13160         these changes preserve binary compatibility.
13161
13162         * gdk/gdk.c
13163         * gdk/win32/gdk.c
13164         * gdk/gdk.h: Fix inconsistencies: gint vs int.
13165
13166         * gtk/gtkmain.c
13167         * gtk/gtkclist.c
13168         * gtk/gtkmenufactory.c
13169         * gtk/gtknotebook.c
13170         * gtk/gtkwidget.c: Fix inconsistencies, also gint
13171         vs. gboolean.
13172
13173         * gtk/gtkcolorsel.[ch]
13174         * gtk/gtkcombo.[ch]
13175         * gtk/gtkdrawingarea.[ch]
13176         * gtk/gtkgamma.[ch]
13177         * gtk/gtkhandlebox.[ch]
13178         * gtk/gtkhpaned.[ch]
13179         * gtk/gtkhruler.[ch]
13180         * gtk/gtkplug.[ch]
13181         * gtk/gtkpreview.[ch]
13182         * gtk/gtkruler.[ch]
13183         * gtk/gtksocket.[ch]
13184         * gtk/gtkstatusbar.[ch]
13185         * gtk/gtktoolbar.[ch]
13186         * gtk/gtkvbbox.[ch]
13187         * gtk/gtkvpaned.[ch]
13188         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
13189         functions.
13190
13191         * gtk/gtkgamma.h: Fix bug, missing () in call of
13192         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
13193
13194 1999-09-14  Tor Lillqvist  <tml@iki.fi>
13195
13196         * gdk/gdkcolor.c (gdk_colormap_new)
13197         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
13198         colormap->colors was allocated twice.
13199
13200         * gdk/win32/gdk.c: Remove some unused stuff.
13201
13202         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
13203         colormap.
13204
13205         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
13206         * gtk/gtklabel.h (gtk_label_get_type)
13207         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
13208         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
13209         in a couple of places, not guint.
13210
13211 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13212
13213         * configure.in,po/et.po: added Estonian language file
13214
13215 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
13216
13217         * configure.in,po/da.po: added Danish file
13218
13219 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
13220
13221         * docs/gtkfaq.sgml: Minor FAQ Update
13222
13223 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
13224
13225         * docs/gtkfaq.sgml: FAQ update
13226
13227 1999-08-27  Tor Lillqvist  <tml@iki.fi>
13228
13229         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
13230         way to get window contents continually refreshed while resizing. I
13231         didn't like the effects myself, so it's not on by default.
13232
13233         * gdk/win32/gdkprivate.h: New flag variable
13234         gdk_event_func_from_window_proc, FALSE by default.
13235
13236         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
13237         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
13238         are passed --gdk-event-func-from-window-proc.
13239
13240         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
13241         and we have am event_func, call it instead of enqueing the event.
13242
13243 1999-08-23  Tor Lillqvist  <tml@iki.fi>
13244
13245         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
13246         Kelley: Set expose_count in GdkEventExposes correctly.
13247
13248         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
13249         MULTIPLE_WINDOW_CLASSES).
13250
13251         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
13252         for bug in NT, apparently NT *does* draw the end pixel, too, in
13253         LineTo with a one-pixel pen, so we don't have to do it ourselves.
13254
13255 1999-08-21  Tor Lillqvist  <tml@iki.fi>
13256
13257         Improvements by Hans Breuer: 
13258
13259         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
13260
13261         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
13262         CS_?REDRAW flags as they cause lots of (late) redraws when "show
13263         window contents while dragging" is turned on. Allocate at least
13264         one unique class for every GdkWindowType. If support for single
13265         window-specific icons is ever needed (eg. Dialog specific), every
13266         such window should get its own class.
13267
13268 1999-08-19  Tor Lillqvist  <tml@iki.fi>
13269
13270         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
13271         error that caused crashes.
13272
13273 1999-08-17  Tor Lillqvist  <tml@iki.fi>
13274
13275         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
13276         window, use ScrollWindowEx, and call UpdateWindow. This prevents
13277         bugs when for instance part of the window was outside the
13278         display. Thanks to Philippe Colantoni for finding and fixing this.
13279
13280 1999-08-16  Tor Lillqvist  <tml@iki.fi>
13281
13282         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
13283         endpoint calculations which were totally wrong. (A little RTFMing
13284         helps a lot ;-)
13285
13286         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
13287         from a separate directory, not from gettext, because of licensing
13288         issues (we want to use the LGPL version).
13289
13290         * README.win32: Mention the intl from glibc vs from gettext issue.
13291
13292 1999-08-13  Tor Lillqvist  <tml@iki.fi>
13293
13294         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
13295         in the key event handling: Now AltGr chars work again. Also,
13296         now Alt-digits are passed up as well as Control-digits.
13297         Pass keypad plus and minus as normal plus and minus.
13298
13299 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13300
13301         * docs/gtkfaq.sgml: FAQ Update
13302
13303 1999-07-25  Tor Lillqvist  <tml@iki.fi>
13304
13305         * README.win32
13306         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
13307         the Wintab SDK.
13308
13309         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
13310         OK, but getting closer. Guard against bogus tilt data from Wacom
13311         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
13312         enable easier building without Wintab.
13313
13314         * gdk/win32/gdkinput.h
13315         * gdk/win32/gdkevents.c 
13316         * gdk/win32/gdkwindow.c: Minor changes related related to above.
13317         
13318         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
13319         code. As we have just one visual on Win32, no sense to have it in a
13320         table, and no need for the hash table.
13321
13322         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
13323         better on white background.
13324
13325 1999-07-21  Tor Lillqvist  <tml@iki.fi>
13326
13327         * README.win32: Update gcc build instructions. Mention gettext is
13328         GPL.
13329
13330         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
13331         supported cursor size with GetSystemMetrics.
13332
13333         * gdk/win32/gdkfont.c
13334         * gtk/gtkfontsel.c: Guard against some font weight and charset
13335         symbols being undefined (in mingw32 headers).
13336
13337         * gdk/win32/makefile.cygwin
13338         * gtk/makefile.cygwin
13339         * gtk/gtkthemes.c: No longer need to have differently named
13340         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
13341
13342 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
13343
13344         * docs/gtkfaq.sgml: Long awaited FAQ update.
13345
13346 1999-07-15  Tor Lillqvist  <tml@iki.fi>
13347
13348         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
13349         it. Obscure bit manipulation needed.
13350
13351         * gdk/win32/gdkevents.c: Logging.
13352         
13353         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
13354         style (file name include compiler name) for theme engines.
13355
13356 1999-07-13  Tor Lillqvist  <tml@iki.fi>
13357
13358         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
13359
13360         * gdk/win32/gdkevents.c: Fix long-standing bug in key
13361         events. The key.string wasn't zero-terminated, still we strdup'ed
13362         it in gdk_event_copy(). Synthesize crossing events for button
13363         events before possible propagation.
13364
13365         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
13366
13367         * gdk/win32/makefile.cygwin
13368         * gtk/makefile.cygwin: Use new DLL naming style for the
13369         GCC-compiled ones.
13370
13371         * gdk/win32/makefile.msc
13372         * gtk/makefile.msc: Cosmetics mostly.
13373
13374         * gtk/gtk.def: Add missing entry points.
13375
13376         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
13377
13378 1999-07-09  Tor Lillqvist  <tml@iki.fi>
13379
13380         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
13381         or height is zero. Don't print a warning if Pie or Arc fails, they
13382         always fail (?) for very narrow ellipses.
13383
13384         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
13385         the part or the destination window corresponding to source area
13386         outside of the source drawable's boundary.
13387
13388         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
13389         anything if less than two points.
13390
13391         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
13392         return NULL. Gtk cut-and-paste inside a single program works
13393         better this way. (It always gets the clipboard contents from
13394         Windows, not from its own copy, which is cleared anyway. I can't
13395         say I fully understand what happens... Emulating the X selection
13396         and property stuff is a bit of a mess.)
13397
13398         * gdk/win32/gdkevents.c
13399         * gdk/win32/gdkproperty.c: A bit more verbose logging.
13400
13401         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
13402         that never got deleted). Revamp gdk_region_shrink.
13403
13404         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
13405         after use.
13406
13407         * gtk/gtk.def: Add some missing entry points.
13408
13409         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
13410         component.
13411
13412 1999-07-04  Tor Lillqvist  <tml@iki.fi>
13413
13414         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
13415         Control-digits specially.
13416
13417 1999-07-03  Tor Lillqvist  <tml@iki.fi>
13418
13419         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
13420
13421 1999-06-28  Tor Lillqvist  <tml@iki.fi>
13422
13423         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
13424         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
13425         finding this.)
13426
13427 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
13428
13429         * gtk+.spec.in: Corrected some typos in files section.
13430         
13431 1999-06-15  Tor Lillqvist  <tml@iki.fi>
13432
13433         * README.win32: Mention using GNU gettext.
13434         * config.h.win32: Enable NLS stuff.
13435         * gtk/makefile.msc: Use GNU gettext.
13436         * gdk/win32/gdkdnd.c: Minor header reorg.
13437         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
13438         cosmetics.
13439         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
13440         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
13441
13442 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
13443
13444         * acinclude.m4
13445         * config.guess
13446         * config.status
13447         * ltconfig
13448         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
13449
13450 1999-05-30  Tor Lillqvist  <tml@iki.fi>
13451
13452         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
13453         SafeAdjustWindowRectEx. Don't override all calls to
13454         AdjustWindowRectEx by it, but use it only in two places: When
13455         creating a new top-level window and when moving a top-level
13456         window.
13457
13458         Use screen coordinate rectangle, not client rectangle, in
13459         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
13460         when we try to place a window so that the decoration (mainly,
13461         title bar) isn't visible.
13462
13463         These changes fix the bug that showed up for instance as the
13464         GIMP's saved top-level windows moving right and down (by an amount
13465         equal to the window decoration) for each session. This bug showed
13466         up also in testgtk's "Saved Position".
13467
13468         gdk_window_resize also redone a bit.
13469
13470 1999-05-25  Tor Lillqvist  <tml@iki.fi>
13471
13472         * gtk/testgtkrc: Add (commented out) Windows-style theme
13473         include line.
13474
13475         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
13476
13477 1999-05-18  Tor Lillqvist  <tml@iki.fi>
13478
13479         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
13480         gdkx.h to a gdk subdirectory, so that applications can include
13481         these with <gdk/*.h> without trouble.
13482
13483         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
13484         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
13485         have their bitmap destroyed.
13486
13487         * gdk/win32/gdk.def: Add gdk_root_parent.
13488
13489 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
13490
13491         * configure.in
13492           gtk-config.in
13493           ltconfig
13494           ltmain.sh     
13495           gtk/Makefile.am: changes to compile nicely (with xlib) 
13496           on BeOS
13497
13498 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
13499
13500         * acinclude.m4
13501         * config.guess
13502         * config.sub
13503         * ltconfig
13504         * ltmain.sh: upgrade to libtool 1.3
13505
13506 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
13507
13508         * gtk/gtkclist.c:
13509         * gtk/gtkctree.c: merges from gtk-1-2
13510
13511 1999-04-25  Tor Lillqvist  <tml@iki.fi>
13512
13513         Support added for building using a GNU toolchain on Win32,
13514         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
13515
13516         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
13517         * config.h.win32: Changes for gcc.
13518         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
13519         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
13520         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
13521         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
13522         Protect shl stuff unavaiilable with mingw32 headers.
13523         * gdk/win32/gdkevents.c: Fix typo.
13524         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
13525         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
13526         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
13527         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
13528         the mingw32 headers.
13529         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
13530         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
13531         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
13532         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
13533         Test for NATIVE_WIN32, not _MSC_VER.
13534         * gtk/gtkmain.c: No use warning about developer version on Win32,
13535         there aren't any non-developer versions anyhow.
13536         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
13537         * gtk/makefile.msc: Use pthread from another directory. Minor other
13538         changes. 
13539
13540 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
13541
13542         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
13543           default filter from the list
13544
13545 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
13546
13547         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
13548          when gtk_widget_grab_default() is called for a widget that
13549          is not within a GtkWindow.
13550
13551 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
13552
13553         * docs/gtk_tut.sgml, examples/clist.c: use a
13554           scrolled window in the clist example. Minor
13555           tutorial fixes.
13556
13557 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
13558
13559         * docs/gtk_tut.sgml: Style check from David King
13560           <dking@youvegotmail.net>
13561
13562 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
13563
13564         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
13565         compile with unknown value of GDK_WINDOWING
13566
13567 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
13568
13569         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
13570         after the rule is fired.
13571         (install-exec-local): Install gdkconfig.h only if the contents are
13572         different from the currently installed gdkconfig.h.
13573
13574 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
13575
13576         * gdk/Makefile.am (configexecincludedir): Rename from 
13577         configincludedir so that gdkconfig.h will be installed 
13578         as part of `make install-exec'. 
13579
13580 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
13581
13582         * acinclude.m4
13583         * config.guess
13584         * config.sub
13585         * ltconfig
13586         * ltmain.sh: upgrade to libtool 1.2f
13587
13588         * autogen.sh: libtool is not required to autogen gtk+
13589
13590         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
13591         needed)
13592
13593 1999-03-18  Tor Lillqvist  <tml@iki.fi>
13594
13595         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
13596         declaring gdk variables exported/imported from the DLL. New image
13597         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
13598         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
13599         GDK_DRAG_PROTO_OLE2.
13600
13601         * gdk/gdk.h: Merge in Win32 version: Two new functions,
13602         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
13603         declared only for the Win32 version, but could be in the X11
13604         version as well. (Needed for a Xlib-less gdk_imlib.)
13605         gdk_color_hash should have only one parameter. Declare
13606         gdk_threads_mutex with GDKVAR.
13607         
13608         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
13609         just one parameter.
13610
13611         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
13612         per pixel, not bits.
13613
13614         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
13615         Fetch bpp (which means bits-per-pixel here) from another place on
13616         Win32. Accept also depth==32 (which we might get on Win32) with
13617         bpp==32.
13618
13619         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
13620         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
13621         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
13622         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
13623         in the backend-dependent directory, not in the common gdk
13624         directory.
13625
13626         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
13627         headers.
13628
13629 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
13630
13631         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
13632         want to use the Gtk+ devel version (which is true, and yes - even i am
13633         currently working with the 1.2.x branch). so everyone reading this, you
13634         probably want to issue
13635         cvs checkout -r glib-1-2 glib
13636         and
13637         cvs checkout -r gtk-1-2 gtk+
13638         as your next two comands.
13639
13640 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
13641
13642         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
13643         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
13644
13645         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
13646         file. strongly deprecated the GTK_HAVE_* macros, we provide
13647         GTK_CHECK_VERSION() for people that need to check for certain
13648         Gtk+ versions.
13649
13650         * gtk/gtkcompat.h: removed this from CVS.
13651         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
13652         idea right from the start, it just didn't seem like that back then.
13653
13654 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
13655
13656         * merges from gtk-1-2:
13657
13658 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
13659
13660         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
13661         item factory class has been created.
13662         (gtk_item_factory_parse_rc): likewise.
13663
13664         * gtk/gtkmenu.c:
13665         keep proper references for old_active_menu_item.
13666         (gtk_menu_reparent): unset the usize of the new parent,
13667         so the menu can sanely be size requested and we don't get nasty screen
13668         artefacts upon next reparentation.
13669         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
13670         enter notify. only synthesize enter notifies if the pointer really is
13671         inside the event window.
13672         (gtk_menu_popdown): use gtk_menu_shell_deselect().
13673         (gtk_menu_popup): move the background setting stuff into
13674         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
13675
13676         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
13677         gtk_menu_shell_select_item() to select the new item.
13678         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
13679         do the right thing for deselection as well.
13680
13681 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
13682
13683         * gtk/gtkwidget.[hc]:
13684         (gtk_widget_accelerators_locked): return whether a widget's accelerators
13685         are locked.
13686
13687         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
13688         existing accelerators if the widget's accelerators are locked.
13689
13690 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
13691
13692         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
13693
13694         * gtk/gtkmenu.c: truely forward key press and key release events to
13695         the menu widget from the toplevel or tearoff window. we can't simply
13696         connect to that, we need to stop further processing of the events as
13697         well.
13698
13699 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
13700
13701         * gtk/gtkmenu.c:
13702         (gtk_menu_key_press): pass event->keyval, event->state to
13703         gtk_accelerator_valid, instead of event->keyval twice.
13704         refuse to install single letter accelerators for menus that use
13705         single letter shortcuts.
13706
13707         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
13708         gtk_menu_ensure_uline_accel_group().
13709
13710         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
13711         which will always return an uline accel group, made
13712         gtk_menu_get_uline_accel_group() return NULL if the group isn't
13713         yet created.
13714
13715 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
13716
13717         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
13718
13719         * gtk/gtkclist.c (gtk_clist_column_title_passive):
13720         Leave button sensitive, trap  button_press, button_release,
13721         motion_notify, enter_notify and leave_notify events instead.
13722         (gtk_clist_column_title_active): disconnect event handler.
13723         (gtk_clist_drag_data_get): fixed memory leak. Reported by
13724         Guillaume Laurent <glaurent@worldnet.fr>
13725
13726 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
13727
13728         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
13729         width/height mixups.
13730
13731         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
13732         if needed.
13733
13734 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
13735
13736         * gtk/testgtk.c (create_item_factory): unref the item factory after
13737         window's destruction.
13738
13739         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
13740         count on the menu shell around the menu item's activation, since the
13741         signal emission may cause menu shell destruction.
13742
13743         * gtk/gtkitemfactory.c:
13744         the previous code leaked one accel group per menu. we use
13745         gtk_menu_get_uline_accel_group() now to fix that, and with that
13746         also create the underline accelerator group of the menus only if
13747         required (i.e. an underline accelerator has been specified).
13748         (gtk_item_factory_construct):
13749         (gtk_item_factory_create_item): removed code that would create an
13750         extra accel group for the menu (and leak references).
13751         (gtk_item_factory_create_item): adapted the underline accelerator
13752         installation code to properly feature gtk_menu_get_uline_accel_group().
13753
13754         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
13755         menu->accel_group, this may return NULL if the accelerator group
13756         hasn't been set yet.
13757         added gtk_menu_get_uline_accel_group() to retrive the underline
13758         accelerator group of the menu, this will be created on demand
13759         and proper care is taken about its reference count.
13760
13761         * gtk/gtkitemfactory.h:
13762         * gtk/gtkitemfactory.c:
13763         dumped the approach of keeping a widgets by action list on the
13764         factory since the factory<->widget destroy negotiation didn't work
13765         and would be hard to get going at all. instead we keep a list of
13766         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
13767         persistant throughout a program's life time).
13768         also, i removed the static const gchar *key_* variables, and made
13769         them inline strings (they weren't actually used anyways).
13770         (gtk_item_factory_add_item): update ifactory->items.
13771         (gtk_item_factory_destroy): destroy ifactory->items (and remove
13772         the item factory pointer from the remaining ifactory widgets).
13773         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
13774         list to find the widget.
13775         (gtk_item_factory_get_item): new function that works around
13776         gtk_item_factory_get_widget() limitations, this function will only
13777         return menu items, even for <Branch> entries.
13778
13779 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13780
13781         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13782         font hash table, if we have a GdkFontPrivate entry for this font
13783         already, simply increment its reference count, provided by Olaf Dietsche
13784         <olaf.dietsche+list.gtk@netcologne.de>.
13785
13786         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13787         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13788
13789 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
13790
13791         * gtk/gtkcontainer.c:
13792         (gtk_container_add_with_args):
13793         (gtk_container_addv):
13794         (gtk_container_add): before adding a child to a conatiner, make sure
13795         it is (default) constructed, this is neccessary because under certain
13796         circumstances the child will get relized and mapped immediatedly, in
13797         which case it has to be constructed already.
13798
13799 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
13800
13801         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
13802         values > 1 as TRUE also.
13803
13804 1999-03-16  Tor Lillqvist  <tml@iki.fi>
13805
13806         * README.win32: New file.
13807                 
13808         * configure.in: Check for lstat.
13809
13810         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
13811         completeness.
13812
13813         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
13814
13815         * gtk/gtk.def: Removed CRs.
13816
13817         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
13818         ..\gdk\win32).
13819
13820         * gdk/win32/makefile.msc: Correct upwards relative paths.
13821         
13822 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
13823
13824         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
13825           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
13826           it was connecting a void function to expose_event and the int
13827           returning function to the draw signal
13828
13829 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
13830
13831         * configure.in:
13832         Use correct path to libgmodule.la when ref'ing uninstalled copy
13833         of glib.  (Already in stable branch, Bug #417)
13834
13835 1999-03-15  Tor Lillqvist  <tml@iki.fi>
13836
13837         Win32 merge and general portability stuff:
13838                 
13839         * acconfig.h,configure.in: Check for <sys/time.h>.
13840
13841         * gdk/win32: New directory (actually, been there for a while).
13842         
13843         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
13844         NATIVE_WIN32, and use these. Always case fold on Win32. No
13845         backslashed escapes on native Win32.
13846
13847         * gtk/{gtk.def,makefile.msc}: New files.
13848
13849         * gtk/Makefile.am: Add above new files.
13850         
13851         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
13852         instead of <strings.h>.
13853
13854         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
13855         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
13856         <unistd.h> appropriately.
13857
13858         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
13859         Use ABS() (from <glib.h>) instead of abs().
13860         
13861         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
13862         of gtk (and thus glib) headers, so that WIN32 will be
13863         defined. With MS C, include <direct.h> for mkdir prototype.
13864
13865         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
13866         some casts, needed by MS C.
13867
13868         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
13869         implemented).
13870
13871         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
13872         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
13873         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
13874
13875         * gtk/gtkmain.h: Mark variables for export/import on Win32.
13876                 
13877         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
13878         the event is not a hint, or its window is not the slider. Needed
13879         on Win32, at least.
13880
13881         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
13882         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
13883         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
13884         a subdirectory of the Windows directory as gtk system
13885         configuration directory.
13886
13887         * gtk/gtkselection.c: No chunks on Win32.
13888
13889         * gtk/gtksocket.c: Not implemented on Win32.
13890
13891         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
13892
13893         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
13894
13895         * gtk/maketypes.awk: Declare variables with a macro that expands to
13896         necessary export/import magic in the case of Win32.
13897                 
13898         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
13899
13900 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
13901
13902         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
13903         since those were meant only for gdki18n.h.  
13904         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
13905         for widechar tests.
13906         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
13907
13908 1999-03-13  Tor Lillqvist  <tml@iki.fi>
13909
13910         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
13911         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
13912
13913         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
13914         installed) to CFLAGS.
13915
13916         * gdk/Makefile.am: Add rules for gdkconfig.h.
13917
13918         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
13919         APIs.
13920
13921         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
13922         gdkx.h anyway when compiling for X11.
13923         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
13924         general): Merge in Win32 version.
13925         
13926         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
13927         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
13928         expansion (if we don't have HAVE_PWD_H), allow for drive
13929         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
13930         included code from Craig Setera's port to Win32 (the one that uses
13931         X11, and the cygwin dll), even if it probably will be abandoned.
13932
13933         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
13934         the user entered one herself.  This way one can complete *.h and
13935         don't get matches on any .help files, for instance.
13936         
13937 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13938
13939         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13940         font hash table, if we have a GdkFontPrivate entry for this font
13941         already, simply increment its reference count, provided by Olaf Dietsche
13942         <olaf.dietsche+list.gtk@netcologne.de>.
13943
13944         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13945         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13946
13947 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13948
13949         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
13950         the number of calls to gdk_draw_point() (and thus to X) by
13951         clipping the points by hand.
13952
13953         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
13954         the clip parameter.
13955         (gtk_handle_box_paint): Only paint the handle if the expose area
13956         intersects it.
13957
13958 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13959
13960         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
13961
13962 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
13963
13964         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
13965         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
13966
13967 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13968
13969         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13970          textmode (O_TEXT) for OS/2 version.
13971
13972 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
13973
13974         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
13975         GtkSpinButton, "input" and "output", to make the output more flexible.
13976         The user has to provide a mapping between adjustment->value and the
13977         output string (and vice versa, if the spin button is editable). 
13978         See testgtk for examples.
13979
13980 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
13981
13982         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13983         new one.
13984         
13985         * configure.in: set gtk+ version to 1.3.0.