]> Pileus Git - ~andy/gtk/blob - ChangeLog
test was backward, so deprecated functions were excluded by default
[~andy/gtk] / ChangeLog
1 2001-02-19  Havoc Pennington  <hp@redhat.com>
2
3         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4         excluded by default
5
6         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
7         clean up the old code a bit
8
9         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
10         inconsistent state
11
12         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
13         draw inconsistent state
14
15         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
16         (create_menu): add inconsistent test
17
18         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
19         new function
20         (gtk_check_menu_item_get_inconsistent): new function
21         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
22         state (using etched in for now)
23
24         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
25         draw inconsistent state
26
27         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
28         function, used when the user has selected a range of stuff in
29         different states
30         (gtk_toggle_button_get_inconsistent): accessor for that
31         (gtk_toggle_button_paint): draw inconsistent state (etched in?
32         don't know what else to do)
33
34 2001-02-19  Hans Breuer <hans@breuer.org>
35
36         * gtk/gtk.def : updated exported symbols
37
38         * gtk/makefile.msc.in : updated
39
40         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
41         a colormap, when invoked from testgtk::entry. I'm not sure where
42         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
43         avoids immediate crashing ...
44
45         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
46         any objections ?
47
48         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
49         0 parameter. At least msvc doesn't like macros with var args. 
50         I simply removed the extra 0, was it a feature or a typo ?
51
52         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
53         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
54         because the value assignment to the internal struct wasn't working.
55         I'm not absolutely sure. The problem could have been resolved by
56         changing the "func" declartion in the struct, but was the pointer
57         to the function pointer intended ?
58
59         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
60
61         * gdk/gdk.def : updated exported symbols
62
63         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
64         only use SetDIBitsToDevice if there is a palette at the drawable
65         and the image is GDK_VISUAL_PSEUDO_COLOR
66
67         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
68
69         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
70
71         * gdk/*/makefile.msc : updated
72
73 2001-02-19  Havoc Pennington  <hp@redhat.com>
74
75         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
76         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
77
78         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
79         (gdk_key_repeat_restore): nuke
80
81         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
82         (gdk_init_check): no atexit func
83
84         * gdk/gdkrgb.h: mark some stuff deprecated
85
86         * gdk/gdkcolor.h: mark some stuff deprecated
87         
88         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
89
90         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
91
92 2001-02-16  Havoc Pennington  <hp@redhat.com>
93
94         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
95         scroll steps.
96
97         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
98         steps, and add Ctrl-arrow shortcuts for paging visually as with
99         HScale, since Page Up and Page Down move logically.
100
101         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
102         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
103         
104         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
105         steps
106         (gtk_range_scroll): handle the visual steps
107
108         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
109         scroll steps
110
111         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
112         steps, not the logical ones.
113
114         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
115         (scroll_vertical): handle up/down steps
116
117 2001-02-19 Alexander Larsson  <alexl@redhat.com>
118
119         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
120         Copy data and free data with free().
121
122         * gdk-pixbuf/gdk-pixbuf.c:
123         * gdk-pixbuf/io-jpeg.c:
124         * gdk-pixbuf/io-png.c:
125         Use g_try_malloc/g_free instead malloc/free.
126         
127         * gdk-pixbuf/test-gdk-pixbuf.c:
128         Must... initialize... gobject...
129         
130         * gdk-pixbuf/pixops/timescale.c:
131         * gtk/gtkcalendar.c:
132         Use g_malloc instead of malloc.
133         
134 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
135
136         * gtk/testgtkrc:
137         Comment out property assignments, these don't work yet.
138
139 2001-02-17  Havoc Pennington  <hp@pobox.com>
140
141         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
142         bit.
143
144 2001-02-17  Havoc Pennington  <hp@pobox.com>
145
146         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
147         shadowed variables that had broken size request in some cases,
148         leading to bogus tooltips (#50996)
149
150 2001-02-06  Jon K Hellan  <hellan@acm.org>
151
152         Implement fast browsing of tooltips, bug #50619
153         
154         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
155         and last_popdown
156         
157         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
158         use_sticky_delay and last_popdown.
159         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
160         time of popdown.
161         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
162         is NULL.
163         (gtk_tooltips_recently_shown): New static function.  Return true
164         if < sticky_delay has elapsed since last popdown.
165         (gtk_tooltips_event_handler): Display window after sticky_delay
166         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
167         since last popdown.
168         
169 2001-02-17  Havoc Pennington  <hp@pobox.com>
170
171         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
172         instead of (). #6394
173
174         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
175         G_CONST_RETURN, make it return by reference, #50473
176         
177 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
178
179         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
180         generated ENTER_NOTIFY event with 0, otherwise not explicitely
181         setup fields contain garbage (e.g. subwindow, breaking
182         gdk_drawable_ref() upon event copy).
183         (gtk_menu_stop_navigating_submenu_cb): same here.
184
185         * gtk/gtklist.c (gtk_list_vertical_timeout): 
186         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
187         * gtk/gtkclist.c (vertical_timeout): 
188         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
189         default-zero-intialization for unions to memset(,0,), as unions are
190         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
191         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
192
193         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
194         g_closure_sink() warning.
195
196         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
197         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
198         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
199         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
200         
201 >>>>>>> 1.1728
202 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
203
204         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
205         gtk_*_store_get, and moved to GtkTreeModel.
206
207         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
208
209         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
210
211         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
212
213         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
214         set the func.
215
216         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
217         freeze/thaw notify between setting all the properties for a cell.
218
219         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
220
221 2001-02-15  Havoc Pennington  <hp@redhat.com>
222
223         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
224         the X coordinates so they're with respect to the line, rather than 
225         with respect to the layout.
226
227         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
228         Mallabone
229
230         * gtk/testgtk.c (create_range_controls): add vscale tests, 
231         and inverted test
232
233         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
234         #50806
235
236         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
237
238         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
239         gtk_text_iter_is_end
240
241         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
242         rename gtk_text_buffer_get_end_iter
243
244         * gtk/testgtk.c (create_labels): Add test for selectable
245
246         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
247         the selection stuff. This code is kind of broken since it doesn't 
248         use the theme engine.
249
250         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
251         fix infinite loop and y offset problem
252         (gdk_draw_layout_line_with_colors): fix foreground color handling
253
254         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
255         that makes the label selectable.
256         
257         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
258         layout when the style is set, since fonts etc. could have changed.      
259
260 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
261
262         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
263
264         * gtk/gtktreemodelsimple.[ch]: removed.
265
266 2001-02-16  Alexander Larsson  <alexl@redhat.com>
267
268         * gtk/gtktreemodelmapping.[ch]:
269         New files. Implement GtkTreeModelMapping.
270         
271         * gtk/Makefile.am:
272         Add gtktreemodelmapping.[ch].
273         
274         * gtk/gtk.h:
275         Add gtktreemodelmapping.h
276
277         * gtk/treestoretest.c:
278         Test the GtkTreeModelMapping
279
280 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
281
282         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
283         have a demo, we might as well pass in real values.  Thanks to
284         clahey for pointing this out.
285
286 2001-02-14  Havoc Pennington  <hp@pobox.com>
287
288         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
289         "static" to a private function
290         (gtk_image_menu_item_class_init): remove destroy handler,
291         add "image" object property
292
293 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
294
295         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
296         Add a shortcut if the window and the current clip_region doesn't
297         overlap. This is needed when there are a lot of windows in a
298         window. The layout test in testgtk is a good test.
299
300         * gdk/linux-fb/gdkwindow-fb.c:
301         Whitespace fix.
302
303 2001-02-13  Sven Neumann  <sven@convergence.de>
304
305         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
306
307 2001-02-13  Alexander Larsson  <alexl@redhat.com>
308
309         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
310         Don't reference last_cursor if it is null. Fixes crash when rotating
311         the screen before having moved the mouse.
312
313         * gdk/linux-fb/gdkcc-fb.c: Zapp!
314
315         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
316
317         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
318         when using 90 or 270 degrees rotation.
319
320 2001-02-12  Havoc Pennington  <hp@pobox.com>
321
322         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
323         it always set the foreground, even if we were only using
324         a stipple.
325         (gdk_draw_layout_line_with_colors): new function, allow
326         override colors
327         (gdk_draw_layout_with_colors): new function, allow override
328         colors
329         (gdk_pango_layout_line_get_clip_region): function to get the clip
330         region for a logical text range
331         (gdk_pango_layout_get_clip_region): get the clip region for a
332         logical text range
333
334         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
335         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
336         the right number of arguments.
337
338         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
339         enhance the function to check that node data corresponds to a 
340         view still belonging to the tree.
341
342         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
343         GtkTreePath
344         (gtk_tree_view_inserted): ditto
345         (gtk_tree_view_child_toggled): ditto
346
347         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
348         simplify this code.
349
350         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
351         a PangoAttrList
352
353         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
354
355         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
356
357         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
358         size in the size request 
359         (gtk_menu_bar_size_allocate): consider toggle size here
360
361         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
362         that displays a widget in the toggle slot
363
364         * gtk/testgtk.c: test GtkImageMenuItem
365
366         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
367         
368         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
369         request and allocation
370
371         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
372
373         * gtk/gtkcheckmenuitem.c
374         (gtk_check_menu_item_toggle_size_request): ditto
375         
376 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
377
378         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
379         reference.
380
381         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
382         and refuse to initialize GTK+ if they fail.
383
384 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
385
386         * configure.in: Add check for gtk-doc version.
387
388 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
389
390         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
391         where the xpad/ypad was only being used on one side!
392
393 2001-02-11  Tor Lillqvist  <tml@iki.fi>
394
395         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
396         function, copied from X11 version.
397
398         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
399         DestroyCursor failures. The reason for the problem (despite the
400         inconsistent messages from GetLastError()) was that
401         DestroyCursor() cannot be called while a cursor is set in a
402         window. Set the new cursor first and then destroy the old one.
403         Thanks to jpe@archaeopteryx.com.
404
405         * gdk/win32/gdkcc-win32.c: Remove.
406
407         * gdk/win32/Makefile.am: Remove from here, too.
408         
409         * gdk/gdk.def
410         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
411
412         * gtk/gtk.def
413         * gtk/makefile.mingw.in: Updates.
414
415 2001-02-08  Havoc Pennington  <hp@redhat.com>
416
417         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
418         add a widget to a bin that already has a child.
419
420         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
421
422         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
423         
424         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
425
426         * gdk/gdk.h: remove gdkcc.h
427
428         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
429
430         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
431         GdkPixbuf, since the previous implementation was GdkColorContext
432         dependent.
433
434         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
435         
436 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
437
438         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
439         a sane value!
440
441 2001-02-08  Havoc Pennington  <hp@redhat.com>
442
443         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
444         lighten them.
445
446 2001-02-08  Havoc Pennington  <hp@redhat.com>
447
448         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
449         validation idle
450
451         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
452         cell renderer
453
454         * demos/pixbuf-demo.c (timeout): remove deprecated
455         gtk_widget_draw
456
457         * demos/testpixbuf-save.c (main): remove deprecated
458         gtk_drawing_area_size
459
460         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
461         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
462         at the start of the allocation.
463         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
464         unsetup or NULL model.
465
466         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
467         even/odd/sorted cells in the tree view.
468
469         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
470         bugfixes
471
472         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
473         backgrounds with draw_flat_box using different detail for even/odd
474         rows.
475
476         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
477         row, so we can draw the alternating colors thing
478
479         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
480         property from a synonym property, notify for the synonym.
481         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
482         (gtk_text_tag_get_property): Always return the font, even if
483         all its fields aren't set
484
485         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
486         store the attr list; it leaves us with no way to change attributes
487         in _render according to the render flags, and no way to implement
488         get_property. Instead store all the specific text attributes. 
489         Separate whether an attribute is enabled from its value. Sync all
490         properties with GtkTextTag, make them all consistent, etc.
491
492         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
493         renderers can highlight the sort row/column     
494
495         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
496         accessor functions to get values; this has the side effect of
497         showing up which accessor functions were missing. Added those.
498
499         * gtk/gtktreeviewcolumn.h: Replace set_justification with
500         set_alignment, to be consistent with GtkLabel, GtkMisc
501
502         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
503         arrow.
504
505         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
506
507         * gtk/gtktreesortable.h: updates in here
508
509 2001-02-07  Sven Neumann  <sven@convergence.de>
510
511         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
512         pango dimensions after painting the background. We used to draw
513         gigantic flat boxes here.
514
515 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
516
517         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
518         error introduced with earlier commit) (pointed out by
519         Ollie Lho)
520
521 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
522
523         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
524         which are no longer necessary.
525
526 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
527
528         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
529
530 2001-02-04  Tor Lillqvist  <tml@iki.fi>
531
532         * gdk/gdk.def
533         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
534         Provide dummy implementations.
535
536 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
537
538         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
539
540         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
541         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
542         deprecated this function.
543
544         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
545         argument.
546
547 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
548
549         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
550
551 2001-02-03  Havoc Pennington  <hp@pobox.com>
552
553         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
554         Mikael Hermansson with patch from Mikael (if there was a toggle
555         start one after the first character in the range, this function
556         was broken). Bug #50380
557
558 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
559
560         * configure.in: Remove confusing comment about X11.
561
562 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
563
564         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
565         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
566         
567 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
568
569         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
570         it breaks things on BSD. If you want to compile GTK+ with
571         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
572         when configuring, since GTK+ simply can't be "pure ANSI" 
573         in the header files it uses. (#8170, Greg Hudson)
574
575 2001-02-02  Havoc Pennington  <hp@redhat.com>
576
577         * gtk/gtkwindow.c: docs
578
579         * gtk/gtkwidget.c: docs
580         (gtk_widget_set_colormap): add a reference to the colormap
581         (gtk_widget_get_default_colormap): add a reference to the colormap
582
583         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
584
585         * gtk/gtktextiter.c: docs
586
587         * gtk/gtkmain.c (gtk_propagate_event): docs
588
589         * gtk/gtkpaned.c (gtk_paned_get_position): docs
590         (gtk_paned_set_position): docs
591
592         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
593         sort interface, no implementation yet.
594
595         * demos/testpixbuf.c (new_testrgb_window): replace
596         gtk_drawing_area_size() with gtk_widget_set_usize()
597
598         * demos/testpixbuf-drawable.c (main): ditto
599         
600         * gtk/testgtk.c: remove use of GtkStatusbarMsg
601
602         * gtk/gtktextbuffer.c: docs
603
604         * gtk/gtkstock.c: docs
605
606         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
607
608         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
609
610         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
611         
612         * gtk/gtkimage.c: add some docs in here
613         (gtk_image_size_request): change name of
614         gtk_widget_render_stock_icon
615         (gtk_image_get_icon_set): don't dup returned string
616         (gtk_image_get_icon_set): don't dup returned string
617
618         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
619         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
620         and gtkiconfactory.h functions
621
622         * gtk/gtkiconfactory.c: add some docs in here
623
624         * gtk/gtkmain.c (gtk_get_default_language): document
625         (gtk_get_current_event): document
626         (gtk_get_current_event_state): document
627         (gtk_get_event_widget): document
628
629         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
630
631         * gtk/gtkcontainer.c: Add some documentation
632         (gtk_container_add): give a more explanatory warning on adding an
633         already-parented widget, this is kind of a FAQ and also a common
634         typo that's easier to debug with a nice warning 
635
636         * gtk/gtkcellrenderertoggle.c
637         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
638         adding this, it's useless
639         (gtk_cell_renderer_toggle_set_active): remove
640         (gtk_cell_renderer_toggle_get_radio): add
641
642         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
643         the NULL cell renderer, that doesn't make any sense to me. 
644
645         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
646         demo code should never use deprecated features.
647
648         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
649         code should never use deprecated features.
650
651         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
652         gtk_widget_queue_clear_area deprecated
653
654         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
655         deprecated
656
657         * gtk/gtklabel.h: mark gtk_label_get() deprecated
658
659         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
660         a GdkImage deprecated, replaced by new consistently-named
661         functions       
662
663         * gtk/gtkmain.h: Mark gtk_exit() deprecated
664
665         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
666
667         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
668         deprecated
669
670         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
671         so it won't appear in docs and confuse people.
672
673         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
674
675         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
676         macros deprecated. (can't mark the type itself deprecated, since
677         GtkProgressBar is not deprecated and we need the type decl to use
678         GtkProgressBar)
679
680         * gtk/gtkpixmap.h: Mark deprecated
681
682         * gtk/gtkoldeditable.h: Mark deprecated
683
684         * gtk/gtklist.h: Mark deprecated
685
686         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
687         for anything anymore.
688
689         * gtk/gtkctree.h: Mark deprecated
690
691         * gtk/gtkclist.h: Mark deprecated
692
693         * gtk/gtkpreview.h: Mark deprecated
694
695         * gtk/gtkpacker.h: Mark deprecated
696
697         * gtk/gtktipsquery.h: Mark deprecated
698
699         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
700
701         * gtk/gtkvruler.h: Add comment that it will move out of GTK
702
703         * gtk/gtkhruler.h: Add comment that it will move out of GTK
704
705         * gtk/gtkruler.h: Add comment that it will move out of GTK
706
707         * gtk/gtkgamma.h: Add comment that it will move out of GTK
708
709         * gtk/gtkcurve.h: Add comment that it will move out of GTK
710
711 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
712
713         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
714         gdk_colormap_sync private since it was never exported
715         in a header file.
716
717         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
718         colormap->colors[] for StaticGray, StaticColor colormaps.
719
720         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
721         was being used as if it was image->bits_per_pixel.
722
723         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
724         for the image in the GdkImage structure since it isn't
725         reconstructable, and we need it to handle packed types
726
727         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
728         the assumption that on Win32 image->bits_per_pixel == image->depth,
729         always.
730
731         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
732
733         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
734         warning message if no converter can be found. 
735
736 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
737
738         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
739         chars to isupper() / tolower(). (#567)
740
741         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
742         to clear up 64-bit warnings. (#567)
743
744 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
745
746         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
747         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
748
749         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
750         since some people set $(libdir) separately. (#1290, David Kaelbling)
751
752 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
753
754         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
755         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
756         MAXPATHLEN, but the code here depends on a fixed value.)
757         (#4524)
758
759 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
760
761         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
762         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
763
764 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
765
766         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
767         viewable there is no way that moving the node will cause the 
768         focus row to become not viewable, so omit check on the visibility
769         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
770
771 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
772
773         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
774         selection before inserting new text.
775
776 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
777
778         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
779         Make the sensitivity of the reparented child track that of
780         the original parent menu item. (#34218, David Hodson)
781
782         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
783         the case where the current item is destroyed properly.
784
785         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
786         some edge cases with child-less menuitems.
787         
788 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
789
790         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
791         key pop down window. (#12074, Jon K Hellan)
792
793 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
794
795         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
796         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
797         The solution here isn't perfect - you get an extraneous
798         emission of "toggle", which could conceivably confuse an app,
799         but better than the current situation. LXR search seems to
800         indicate that no apps in GNOME CVS connect to "toggle".
801
802 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
803
804         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
805         gtk_public_h_sources to directly here to avoid warning when
806         building srcdir != builddir. (#9656)
807
808 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
809
810         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
811         handlers in gtkrange.c return the proper values (TRUE == handled)
812         (#10316).
813
814         This is just the tip of the iceberg, but gtkrange.c is the
815         most common place where the propagation is problematical,
816         and also a place where it is almost certainly safe to change
817         this in the stable branch.
818
819         (You don't want right click popups on a range control or anything...)
820
821 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
822
823         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
824         area on focus out, even if a background pixmap isn't set.
825         (#13941)
826         
827 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
828
829         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
830         to deal with setting the shape properly when scrolling arrows are
831         turned on, but not visible because there is sufficient space.
832         (#13432)
833
834 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
835
836         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
837         items with submenus, destroy the item along with the submenu.
838         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
839         properly.
840
841         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
842         later.
843
844 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
845
846         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
847         the focus widget sometimes wasn't drawn with the default if there
848         was no default widget.
849
850         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
851         unreference pixmaps. 
852
853         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
854         for some extra safety.
855
856 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
857
858         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
859         the text of a cell to the old pointer value better, by
860         copying the new text before freeing the old text. Some code
861         cleanup. (#8079, Karl Nelson)
862
863 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
864
865         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
866         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
867
868 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
869
870         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
871         item from a menu, check to see if it matches 
872         menu->old_active_menu_item, and if so, unref and clear
873         old_active_menu_item (Patch from Pavel Cisler)
874
875         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
876         menu_shell->active_menu_item, if it is the child being
877         removed. (Patch based on that of Gene Ragan, #50337)
878
879 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
880
881         * gdk/linux-fb/gdkselection-fb.c: 
882         * gdk/linux-fb/gdkcolor-fb.c: 
883         * gdk/linux-fb/gdkdrawable-fb2.c: 
884         * gdk/linux-fb/gdkfont-fb.c: 
885         * gdk/linux-fb/gdkim-fb.c: 
886         * gdk/linux-fb/gdkinput.c: 
887         * gdk/linux-fb/gdkkeyboard-fb.c: 
888         * gdk/linux-fb/gdkmain-fb.c: 
889         * gdk/linux-fb/gdkrender-fb.c: 
890         A bunch of whitespace cleanup.
891         
892 2001-01-30  Havoc Pennington  <hp@pobox.com>
893
894         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
895         #ifdef GTK_ENABLE_BROKEN.
896
897         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
898         GTK_ENABLE_BROKEN just before including the broken headers.
899         
900         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
901         deprecated types registered.
902
903         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
904         we have to test the broken stuff.
905
906         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
907         
908 2001-01-30  Havoc Pennington  <hp@redhat.com>
909
910         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
911         here where prev pointer was set to the wrong thing
912
913         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
914         (gtk_tree_path_is_descendant): new function
915
916         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
917         cached length
918         (gtk_list_store_get_iter): don't modify iter if we can't get the
919         path.
920
921         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
922         
923         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
924         GtkTreeDragDest
925
926         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
927         was causing segfault
928
929         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
930         pointer to NULL
931
932         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
933
934         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
935         on returning FALSE
936         (gtk_list_store_iter_children): ditto
937         (gtk_list_store_iter_nth_child): ditto
938         (gtk_list_store_iter_nth_child): ditto
939         (gtk_list_store_iter_parent): ditto
940
941         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
942         on iter->user_data != NULL instead of silently accepting it.
943         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
944         we are returning TRUE.
945         (gtk_tree_store_iter_children): ditto
946         (gtk_tree_store_iter_nth_child): ditto
947         (gtk_tree_store_iter_parent): ditto
948         (gtk_tree_store_insert): remove handling of parent->user_data ==
949         NULL, replace with parent == NULL       
950
951         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
952         and a comment explaining things
953
954         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
955         interface support to GtkTreeStore.
956
957         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
958         FALSE if no prev, fix
959
960         * gtk/gtktreeview.c (set_source_row): use a row reference
961         (set_dest_row): use a row reference
962
963 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
964
965         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
966         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
967         (gtk_tree_selection_select_iter): The same as above.
968
969 2001-01-26  Havoc Pennington  <hp@redhat.com>
970
971         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
972         which holds a handle to a specific row (particular set of values
973         in the model, i.e. pointer-identity row).
974
975         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
976         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
977         Still need to use it for the src/dest row saved on the drag context.
978
979 2001-01-26  Havoc Pennington  <hp@redhat.com>
980
981         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
982
983         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
984         not offset by TREE_VIEW_HEADER_HEIGHT
985         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
986         TREE_VIEW_HEADER_HEIGHT
987
988         * configure.in (included_loaders): for me, --with-included-loaders
989         generates the error "the specified loader yes does not exist",
990         i.e. the arg defaults to "yes", so change test for value ""
991         to test for value "yes", and include all loaders in that case.
992
993         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
994
995         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
996         handle TREE_VIEW_VERTICAL_SEPARATOR
997         (gtk_tree_view_bin_expose): fix to consider the row offset as
998         pointing halfway into vertical separator.       
999         (gtk_tree_view_draw_node_focus_rect): ditto
1000
1001         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
1002         --gtk-debug=updates, which causes gdk_window_set_debug_updates
1003         (TRUE) to be called.
1004
1005         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
1006         debug mode where the invalid region is colored in on invalidate,
1007         so you can see the flicker and know whether your redraw code is 
1008         doing a good job.
1009
1010         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
1011         tree window coordinates (clip rect is in tree window coords)
1012
1013         * gtk/Makefile.am: add gtktreednd.[hc]
1014
1015         * gtk/gtkliststore.c: implement gtktreednd interfaces.
1016
1017         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
1018         drag-and-drop data operations on a model (so we can set up tree
1019         drag-and-drop automatically)
1020
1021         * gtk/testgtk.c: Add a window to change sensitivity in the
1022         GtkLabel test; add a way to change the entry frame in GtkEntry
1023         test
1024
1025         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
1026         (gtk_entry_get_has_frame): new functions to remove the frame
1027         around an entry
1028         (gtk_entry_size_request): shrink requisition if no frame
1029         (gtk_entry_draw_focus): don't draw frame if no frame
1030
1031         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
1032         checks inside a cell renderer
1033         (gtk_default_draw_option): ditto for options
1034
1035         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
1036         children from the alignment, not the button
1037         (gtk_tree_view_column_init): ref/sink the column, to emulate
1038         GObject refcounting.
1039
1040         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
1041         
1042         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1043         Use theme functions to draw the toggles 
1044
1045         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
1046
1047         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
1048         GdkPangoAttrEmbossed to use in rendering insensitive text
1049
1050         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
1051
1052         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
1053         using new GDK features
1054         
1055 2001-01-24  Alexander Larsson  <alexl@redhat.com>
1056
1057         * gtk/gtkimage.c:
1058         Splitted gtk_image_clear into gtk_image_clear() and
1059         gtk_image_reset(). Call gtk_image_clear() in ::destroy
1060         to avoid leaks.
1061
1062         * gtk/gtklabel.c (set_markup):
1063         Don't leak text.
1064
1065         * gtk/gtktextlayout.c:
1066         Always free display->shaped_objects.
1067
1068         * gtk/testgtk.c (create_clist):
1069         Don't leak custom style.
1070
1071 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1072
1073         * gtk/gtkcolorsel.c (grab_color_at_mouse):
1074         Don't leak image. Simplify using gdk_colormap_query_color().
1075         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
1076
1077         * linux-fb/gdkcolor-fb.c:
1078         Implemented gdk_colormap_query_color.
1079
1080 2001-01-23  Alexander Larsson  <alexl@redhat.com>
1081
1082         * linux-fb/gdkcursor-fb.c:
1083         Don't leak built-in cursors.
1084
1085         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
1086         Don't leak tmp_points.
1087
1088         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
1089         Don't modify desc. Don't leak font if the PangoFont
1090         isn't found.
1091         
1092         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
1093         Free dash_list.
1094
1095         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
1096         Don't leak string.
1097         
1098 2001-01-20  Havoc Pennington  <hp@pobox.com>
1099
1100         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
1101         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
1102         me, matches Pango
1103
1104 2001-01-22  Havoc Pennington  <hp@redhat.com>
1105
1106         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
1107
1108         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
1109
1110         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
1111         Remove, move back to gdk-pixbuf
1112
1113         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
1114         to all the word functions
1115
1116         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
1117         before doing anything on NULL layout or if we don't have the focus
1118
1119         * gtk/testtext.c (fill_example_buffer): "justification"
1120
1121         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
1122         to be called "justification" not "justify"
1123
1124         * demos/gtk-demo/textview.c (create_tags): "justification"
1125         
1126         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
1127
1128 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1129
1130         * gdk/gdkwindow.c (gdk_window_invalidate_region):
1131         Don't leak visible_region. Use visible_region instead of region.
1132         
1133         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1134         Don't do extra gdk_drawable_ref(). This is not X.
1135         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
1136         gdk_fb_focused_window is ref:ed.
1137         (gdk_fb_window_send_crossing_events): Watch out for destroyed
1138         windows.
1139
1140 2001-01-22  Alexander Larsson  <alexl@redhat.com>
1141
1142         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
1143         Don't leak the PangoFontDescriptor.
1144
1145 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
1146
1147         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1148         when not realized.
1149         (gtk_tree_view_scroll_to_cell): Make work when not realized.
1150         (gtk_tree_view_realize): add scroll_to support
1151         (gtk_tree_view_finalize): add a finalize method.  Populate.
1152         (gtk_tree_view_insert_column): ref and sink the column.
1153         (gtk_tree_view_append_column): ref and sink the column.
1154         (gtk_tree_view_queue_draw_node): New function to handle redrawing
1155         individual nodes.  Should make the code much more efficient, if
1156         actually used.
1157
1158 2001-01-19  Havoc Pennington  <hp@redhat.com>
1159
1160         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1161         byte_offset variable was being used to mean both "offset into
1162         layout" and "offset into buffer line" which was no longer true
1163         with addition of preedit string; fix
1164
1165 2001-01-19  Havoc Pennington  <hp@redhat.com>
1166
1167         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1168
1169         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1170         function
1171
1172         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1173         implement
1174
1175         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
1176         scroll_to_cell, matches TextView scroll functions better
1177         (gtk_tree_view_tree_to_widget_coords): new function
1178         (gtk_tree_view_widget_to_tree_coords): new function
1179         (gtk_tree_view_get_visible_rect): new function
1180         (gtk_tree_view_get_path_at_pos): accept negative coordinates
1181         (gtk_tree_view_draw_node_focus_rect): new function moved from
1182         draw_focus, also, use width of bin_window as width of the focus
1183         rect
1184         (gtk_tree_view_expand_row): fix bug where it didn't recognize
1185         already-expanded rows
1186         (gtk_tree_view_get_cell_rect): new function
1187         (gtk_tree_view_get_path_at_pos): return the click position
1188         relative to the passed-in cell
1189         (gtk_tree_view_set_expander_column): new function
1190
1191         * configure.in: remove gtk-config-2.0 chmod
1192
1193         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
1194         and properly handle drags with targets we don't understand
1195         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
1196         scrolling anyway
1197         (gtk_text_view_drag_drop): stop scrolling here though, and set the
1198         mark invisible
1199
1200         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
1201         function
1202         (gtk_drag_dest_get_target_list): new function
1203         (gtk_drag_dest_set_target_list): new function
1204         
1205         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
1206
1207         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
1208         related to drag-and-drop
1209
1210 2001-01-19  Alexander Larsson  <alexl@redhat.com>
1211
1212         * gdk/linux-fb/gdkprivate-fb.h:
1213         Define EMULATE_GDKFONT.
1214         Add extra pango_font stuff to GfkFontPrivate.
1215         
1216         * gdk/linux-fb/gdkdrawable-fb2.c:
1217         * gdk/linux-fb/gdkfont-fb.c:
1218         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
1219         emulation using PangoFont.
1220
1221 2001-01-17  Havoc Pennington  <hp@pobox.com>
1222
1223         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
1224         all the non-deprecated set_foo functions. Added missing object
1225         properties, and added g_object_notify() to setters. 
1226         Wrote docs.
1227         
1228 2001-01-18  Tor Lillqvist  <tml@iki.fi>
1229
1230         * gtk/gtkmain.c
1231         * gtk/gtkrc.c: (Win32) Use the new
1232         g_win32_get_package_installation_(sub)directory() functions.
1233
1234         * config.h.win32.in: New file.
1235         
1236         * config.h.win32: Removed.
1237
1238         * configure.in: Output config.h.win32.
1239
1240         * Makefile.am: Add it to EXTRA_DIST.
1241
1242         * gtk/gtk.def: Update.
1243
1244 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
1245
1246         * gtk/gtklabel.c (gtk_label_size_request): Set the
1247         attributes onto the PangoLayout even if they are newly
1248         created from label->pattern.
1249
1250 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
1251
1252         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
1253
1254         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
1255         structures in functions. Fixes bug where gtk_dataset_*
1256         was accidentally still being used in one place, causing
1257         every dest side event to be treated independently.
1258
1259         * gtk/gtkdnd.c: Remove last vestages of handling
1260         ::draw (fixes warning)
1261         
1262         * gtk/gtkentry.[ch]: Add drag and drop support.
1263
1264         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
1265         new function gtk_check_drag_threshhold() for checking
1266         to check if (dx,dy) has exceeded the threshhold for starting
1267         a drag and use it everywhere.
1268
1269 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
1270
1271         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
1272         add -I{includedir}/gtk-2.0.
1273
1274         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
1275         gdk/gdk-pixbuf.h: Doc fixups.
1276         
1277         * gtk/gtkobject.h: Remove trailing , from enum
1278
1279 2001-01-17 Alexander Larsson <alexl@redhat.com> 
1280
1281         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
1282         Doh! Mixed up x and y.
1283
1284         * gdk/linux-fb/gdkglobals-fb.c:
1285         Removed gdk_fb_pointer_grab_window_events,
1286         added _gdk_fb_pointer_grab_owner_events and
1287         _gdk_fb_keyboard_grab_owner_events.
1288
1289         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
1290         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
1291         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
1292         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
1293         Send crossing events after ungrab finished.
1294         (gdk_keyboard_grab): Set ..._owner_events
1295         (type_masks): Move out of function.
1296         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
1297         gdk_fb_keyboard_event_window): New functions, return the
1298         window an event should be targeted at. Handles grabs and
1299         event propagation. Can return NULL.
1300         (gdk_event_make): Remove event_mask checking. Now always
1301         returns an event.
1302                 
1303         * gdk/linux-fb/gdkkeyboard-fb.c:
1304         * gdk/linux-fb/gdkproperty-fb.c:
1305         * gdk/linux-fb/gdkselection-fb.c:
1306         Use new event_window/gdk_event_make() behaviour.
1307         
1308         * gdk/linux-fb/gdkmouse-fb.c:
1309         Use new event_window/gdk_event_make() behaviour.
1310         Only send motion events if in the same window.
1311         If grabbed, use cursor from window if sibling of grabbed
1312         window, and cursor from grabbed window otherwise.
1313
1314         * gdk/linux-fb/gdkprivate-fb.h:
1315         Update gdk_fb_window_send_crossing_events, gdk_event_make
1316         and grab varaible declarations. Add gdk_fb_*_event_window().
1317
1318         * gdk/linux-fb/gdkwindow-fb.c:
1319         Use new event_window/gdk_event_make() behaviour.
1320         Keep correct track of focus window.
1321         (gdk_window_set_events): Set all specific button motion masks
1322         if GDK_BUTTON_MOTION_MASK set.
1323
1324         * gtk/gtkdnd.c (gtk_drag_update):
1325         Free info->last_event if gdk_drag_motion returned FALSE.
1326
1327 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1328
1329         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
1330         Eliminate redraws when input-only windows are shown or
1331         hidden. Thanks to jpe@archaeopteryx.com.
1332
1333 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
1334
1335         * docs/faq/gtk-faq.sgml: FAQ update:
1336           - Update to bugzilla
1337           - Add GTK+ and security/SUID/SGID
1338           - Add DnD question
1339
1340 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
1341
1342         * gdk/linux-fb/gdkdnd-fb.c:
1343         Some cleanups.
1344         
1345 2001-01-15  Havoc Pennington  <hp@pobox.com>
1346
1347         * tests/testtreeview.c: add test stuff for CellRendererToggle
1348
1349         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
1350         accessor
1351
1352         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
1353         only toggle on button press (would do release like GtkButton, but
1354         we'd need implicit grab code for treeview cells)
1355
1356 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1357
1358         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
1359
1360         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
1361         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
1362
1363         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
1364         to g_{locale,filename}_{to,from}_utf8 to match current API.
1365
1366         * gtk/makefile.msc.in (gtk_OBJECTS)
1367         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
1368
1369         * gtk/gtk.def: Update.
1370
1371 2001-01-15  Tor Lillqvist  <tml@iki.fi>
1372
1373         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
1374         implementaion that more closely mimics the events that an X server
1375         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1376         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1377         with nested preview widgets, for instance, more responsive when
1378         you move the mouse quickly into them.
1379         (find_window_for_pointer_event): Make it actually compile.
1380         (gdk_event_translate): Set send_event to the value of
1381         InSendMessage (). This doesn't really mean the same as X11's
1382         send_event flag, but is close enough, says jpe@archaeopteryx.com
1383
1384 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1385
1386         * gdk/linux-fb/gdkdnd-fb.c:
1387         Implemented drag and drop.
1388         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
1389         when it tries to free and then copy the same event (info->last_event).
1390         I am not sure about why this happens, but will continue looking.
1391
1392 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1393
1394         * gdk/linux-fb/gdkwindow-fb.c:
1395         Use gdk_window_invalidate_rect instead of
1396         gdk_window_invalidate_rect_clear to minimise flashing.
1397         When hiding windows you need to clear the root window though.
1398
1399 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1400
1401         * gdk/linux-fb/gdkdrawable-fb2.c:
1402         For optization, add an full_shapes argument to gdk_fb_clip_region.
1403         If this is false, only the cliprects of the shapes are used.
1404
1405         * gdk/linux-fb/gdkprivate-fb.h:
1406         Export gdk_fb_window_peek_shape.
1407         Add full_shapes to gdk_fb_clip_region.
1408
1409         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1410         When moving a window, don't clear everything under the it, just the
1411         root window. Makes stuff faster and flash less.
1412         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1413         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1414         offset of the shape.
1415         
1416
1417 2001-01-12  Havoc Pennington  <hp@redhat.com>
1418
1419         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
1420         current invalid region, fixes redraw bug while scrolling the 
1421         text widget
1422
1423         * gtk/gtktextview.c, gtk/gtktextview.h:
1424         Rearrange the scrolling/validation/etc. code in a major way, 
1425         so it seems to make sense to me. Probably isn't genuinely that
1426         much better, but...
1427
1428         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1429         notifies
1430
1431         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1432
1433 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
1434
1435         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1436         Hide mouse pointer while rotation. Show it afterwards.
1437
1438 2001-01-12  Alexander Larsson  <alexl@redhat.com>
1439
1440         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1441         windows in consideration when generating clip region.
1442
1443         * gdk/linux-fb/gdkfb.h:
1444         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1445
1446         * gdk/linux-fb/gdkprivate-fb.h:
1447         Add shape to GdkWindowFBDatat.
1448         exported gdk_fb_window_get_abs_shape().
1449         removed gdk_fb_draw_lines declaration.
1450
1451         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1452         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1453         send focus changes when there is a grabbed window.
1454         (gdk_window_get_pointer): Handle shaped windows.
1455         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1456         (gdk_fb_window_peek_shape): Returns the shape for a window,
1457         handles GDK_FB_USE_CHILD_SHAPE.
1458         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1459         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1460         (gdk_window_shape_combine_mask): Implement.
1461
1462         * gtk/gtkwindow-decorate.c:
1463         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1464         setting the shape of a window makes the window transparent.
1465
1466 2001-01-11  Havoc Pennington  <hp@redhat.com>
1467
1468         * gtk/gtktreemodelsimple.h: Oops, broke some macros
1469
1470 2001-01-10  Havoc Pennington  <hp@redhat.com>
1471
1472         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1473         add this function, bug 40251
1474
1475         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1476         of type macro   
1477
1478 2001-01-11  Alexander Larsson  <alexl@redhat.com>
1479
1480         * acconfig.h:
1481         Added ENABLE_SHADOW_FB
1482
1483         * configure.in:
1484         Added --disable-shadowfb
1485
1486         * gdk/linux-fb/gdkcursor-fb.c:
1487         Update shadowfb when updating cursor
1488
1489         * gdk/linux-fb/gdkdrawable-fb2.c:
1490         Added wrappers for shadowfb that calls  the normal drawable
1491         methods, but calls gdk_shadow_fb_update(bounding box) when
1492         GdkWindows are drawed to.
1493         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1494         which also returns the bounding box.
1495
1496         * gdk/linux-fb/gdkfb.h:
1497         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1498
1499         * gdk/linux-fb/gdkgeometry-fb.c:
1500         Update shadowfb when scrolling window.
1501
1502         * gdk/linux-fb/gdkglobals-fb.c:
1503         Add _gdk_fb_screen_angle.
1504         
1505         * gdk/linux-fb/gdkkeyboard-fb.c:
1506         Test code for screen rotation. Shift-F2 in the xlate driver
1507         rotates the screen.
1508
1509         * gdk/linux-fb/gdkmain-fb.c:
1510         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1511
1512         * gdk/linux-fb/gdkmouse-fb.c:
1513         Use fb_width/height instead of modeinfo.xres/yres.
1514
1515         * gdk/linux-fb/gdkprivate-fb.h:
1516         Added fb_men, fb_width, fb_height & fb_stride. When using
1517         shadow fb these can differ from the framebuffer stuff.
1518         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1519         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1520         _gdk_fb_screen_angle. Removed CM, RP.
1521
1522         * gdk/linux-fb/gdkrender-fb.c:
1523         Added code for shadowfb handling and screen rotation using
1524         shadowfb.
1525
1526         * gdk/linux-fb/gdkwindow-fb.c:
1527         Use fb_mem, fb_stride, fb_width, fb_height.
1528         Added recompute_rowstride to reset the rowstride of all windows.
1529         Added gdk_fb_recompute_all() which recomputes rootwindow size,
1530         window abs positions and window rowstrides. Usefull when the
1531         rotation has changed.
1532
1533 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
1534
1535         * docs/faq/gtk-faq.sgml: update to make web site updating easier
1536
1537 2001-01-10  Havoc Pennington  <hp@redhat.com>
1538
1539         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
1540         where sibling == iter
1541         (gtk_tree_store_insert_after): handle sibling == iter
1542         (gtk_tree_store_prepend): remove stamp checks
1543         (gtk_tree_store_insert_before): ditto
1544         (gtk_tree_store_append): ditto
1545         (gtk_tree_store_get_path): ditto
1546         (gtk_tree_store_get_value): ditto
1547         (gtk_tree_store_iter_has_child): ditto
1548         (gtk_tree_store_iter_n_children): ditto
1549         (gtk_tree_store_iter_nth_child): ditto
1550         (gtk_tree_store_insert_after): ditto
1551         (gtk_tree_store_is_ancestor): ditto
1552         (gtk_tree_store_iter_depth): ditto
1553         (gtk_tree_store_insert_before): assert that sibling's parent is
1554         the same as the passed-in parent
1555         (gtk_tree_store_insert_after): assert that sibling's parent is
1556         the same as the passed-in parent
1557
1558         
1559         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
1560         function to get the first iterator in a model
1561         
1562         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
1563         conventionally the "root" in this sense is just NULL afaict.
1564
1565         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
1566         where sibling == iter
1567         (gtk_list_store_insert_after): handle case where sibling == iter
1568
1569         * tests/testtreeview.c (run_automated_tests): fairly lame basic
1570         automated tests for ListStore, TreeStore
1571
1572         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
1573         (gtk_list_store_insert): update tail pointer, and fix it to work
1574         (gtk_list_store_insert_before): update tail pointer, and fix it to work
1575         (gtk_list_store_append): use tail to be faster
1576         (gtk_list_store_prepend): fix it, update tail pointer
1577         (gtk_list_store_insert_after): fix it, update tail pointer
1578
1579         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
1580         the list
1581
1582 2001-01-09  Havoc Pennington  <hp@redhat.com>
1583
1584         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
1585         is NULL due to a pending resize
1586
1587         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
1588         column width to values less than 1
1589
1590         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
1591         width to be between min/max width, and still set the width 
1592         even if autosize is turned on, so the tree view can use this 
1593         function in order to autosize.
1594         (gtk_tree_view_column_init): set initial width to 1 not 0
1595
1596         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
1597         setter function to modify column width, so we get notification
1598         (gtk_tree_view_insert_iter_height): ditto
1599         (gtk_tree_view_calc_size): ditto
1600         (gtk_tree_view_check_dirty): ditto
1601
1602         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
1603         properties to change all the interesting attributes of the tree
1604         view column.
1605         (gtk_tree_view_column_set_header_clickable): rename set_clickable
1606         (gtk_tree_view_column_get_clickable): add
1607         (gtk_tree_view_column_set_cell_renderer): don't unset the current
1608         attributes; assume a cell renderer with equivalent object
1609         properties has been swapped in. Do g_object_notify().
1610         (gtk_tree_view_column_set_visible): g_object_notify
1611         (gtk_tree_view_column_get_sizing): rename from get_col_type
1612         (gtk_tree_view_column_set_sizing): g_object_notify
1613         (gtk_tree_view_column_set_width): add g_object_notify
1614         (gtk_tree_view_column_set_min_width): ditto
1615         (gtk_tree_view_column_set_max_width): ditto
1616         (gtk_tree_view_column_set_title): ditto
1617         (gtk_tree_view_column_set_clickable): ditto
1618         (gtk_tree_view_column_set_widget): ditto
1619         (gtk_tree_view_column_set_justification): ditto
1620
1621 2001-01-09  Havoc Pennington  <hp@redhat.com>
1622
1623         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
1624         there are no rows in the model
1625
1626         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
1627         NULL, then return the start of the list
1628
1629         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
1630         if we can't get any rows from an empty model 
1631
1632         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
1633         extraneous * after function pointer typedef usage
1634
1635         * Makefile.am: don't specify full path to cp and rm
1636
1637         * gtk/gtkcellrenderertextpixbuf.c
1638         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
1639         NULL before dereferencing, fixes a segfault that happened from
1640         time to time
1641
1642         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
1643         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
1644         and reindent the function
1645         (gtk_cell_renderer_pixbuf_get_size): indentation
1646
1647         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
1648         we quit it
1649         (gtk_dialog_add_buttons_valist): add g_return_if_fail
1650         (gtk_dialog_set_default_response): New function, to set default
1651         button
1652         (gtk_dialog_set_response_sensitive): New function, to set 
1653         sensitivity of buttons
1654
1655         * gtk/gtkcellrendererpixbuf.c
1656         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
1657         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
1658
1659         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1660         handle any G_TYPE_OBJECT subclass, not just the base class, and 
1661         also boxed types.
1662         (_gtk_tree_data_list_value_to_node): ditto
1663
1664         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
1665         --gtk-debug=tree
1666
1667         * gtk/gtkmain.c: add GTK_DEBUG_TREE
1668
1669         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
1670
1671 2001-01-09  Tor Lillqvist  <tml@iki.fi>
1672
1673         * gdk/win32/gdkevents-win32.c: Implement better mouse
1674         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
1675         (find_window_for_pointer_event): New function.
1676         (gdk_event_translate): Use it when handling mouse events.
1677
1678 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
1679
1680         * configure.in:
1681         Added --with-included-loaders option
1682
1683         * gdk-pixbuf/Makefile.am:
1684         * gdk-pixbuf/gdk-pixbuf-io.c:
1685         Add support for including selected gdk-pixbuf loaders only.
1686
1687         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
1688         gtk_window_set_has_frame):
1689         Added inline documentation.
1690
1691         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
1692         * docs/reference/gdk/tmpl/windows.sgml:
1693         Added inline documentation.
1694
1695 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
1696
1697         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
1698         realizing buttons that have already been realized.
1699
1700 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
1701
1702         * tests/testtreeview.c (main): Show menu items before adding to
1703         option menu.
1704
1705         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
1706         around if we kill them.
1707
1708         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1709         Return if we pass in a NULL model.
1710
1711 2001-01-08  Havoc Pennington  <hp@redhat.com>
1712
1713         * tests/testtreeview.c: hack on this some
1714
1715         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
1716         gtk_tree_store_set_valist, v is for arrays, valist for varargs
1717         list
1718         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
1719
1720         * gtk/gtkliststore.h: Add varargs set() and get() convenience
1721         functions
1722
1723 2001-01-08  Alexander Larsson  <alexl@redhat.com>
1724
1725         * gtk/gtkwindow-decorate.[hc]:
1726         * gtk/Makefile.am:
1727         New files. Contains an implementation of a minimal WM for
1728         linux-fb.
1729
1730         * gtk/gtkwindow.h:
1731         Add the possibility for GtkWindows to specify a frame. This
1732         is used for the window decoration code, but could concievably
1733         be used for X programs too (xmms style windows).
1734         GtkWindow->frame is the toplevel window if the window is framed.
1735         The signal frame_event gets all events that are targeted to
1736         GtkWindow->frame.
1737         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
1738         
1739         * gtk/gtkwindow.c:
1740         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
1741         Call out to gtkwindow-decorate.c for WM support in linx-fb.
1742
1743 2001-01-08  Alexander Larsson  <alexl@redhat.com>
1744
1745         * docs/README.linux-fb:
1746         Correct filename ~/.pangoft2_aliases
1747
1748         * gdk/gdkwindow.h:
1749         Added new function gdk_window_get_decorations.
1750
1751         * gdk/linux-fb/gdkfb.h:
1752         Removed _gdk_window_get_decorations declaration.
1753         Renamed _gdk_window_set_child_handler to
1754         gdk_fb_window_set_child_handler.
1755
1756         * gdk/linux-fb/gdkwindow-fb.c:
1757         Renamed _gdk_window_set_child_handler to
1758         gdk_fb_window_set_child_handler.
1759
1760         * gdk/x11/gdkwindow-x11.c:
1761         New function gdk_window_get_mwm_hints().
1762         Implemented gdk_window_get_decorations.
1763
1764         * docs/reference/gdk/tmpl/windows.sgml:
1765         * docs/reference/gdk/gdk-sections.txt:
1766         Added gdk_window_get_decorations docs.
1767         
1768 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
1769
1770         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
1771         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
1772         gdk_fb_window_send_crossing_events):
1773         Possibly send focus events when the mouse moves from one
1774         window to another.
1775
1776 2001-01-07  Tor Lillqvist  <tml@iki.fi>
1777
1778         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
1779         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
1780         to match current API.
1781
1782         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
1783         environment variable is set, don't call g_error when on a
1784         palettized (PseudoColor) display. Some people want to use GTK+ 
1785         in 256-colour mode even though works only partially.
1786
1787         * gdk/gdk.def
1788         * gtk/gtk.def
1789         * gtk/makefile.mingw.in: Update.
1790
1791 2001-01-05  Havoc Pennington  <hp@redhat.com>
1792
1793         * tests/testtreeview.c: hack on this a bit
1794
1795         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
1796         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
1797
1798         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
1799         was spelled incorrectly
1800         (GTK_IS_TREE_MODEL_SIMPLE): ditto
1801
1802         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
1803         from gtk_tree_view_set_headers_active   
1804
1805         * gtk/gtktexttag.c:
1806         (gtk_text_tag_get_property): handle PROP_DIRECTION
1807         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
1808         properties, bug 40235
1809
1810         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
1811         forward_to_line_end
1812
1813 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
1814
1815         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
1816         modules/input/gtkimcontextxim.c: Adapt to new prototypes
1817         for unicode,locale,filename conversion functions.
1818
1819 2001-01-05  Havoc Pennington  <hp@redhat.com>
1820
1821         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
1822         broken if called on the first position in the buffer.
1823
1824         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
1825         forward_to_delimiters to be called only if we aren't already at
1826         the delimiters.
1827
1828 2001-01-05  Havoc Pennington  <hp@redhat.com>
1829
1830         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
1831
1832 2001-01-05  Alexander Larsson  <alexl@redhat.com>
1833
1834         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
1835         colormap in here. Sync from X port.
1836         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
1837         Sync from X port.
1838         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
1839         This happens now and then, and i don't think it is a bug.
1840         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
1841         != endpoint.
1842         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
1843         GDK_LINE_SOLID.
1844
1845         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
1846         some of the fields filled in at least.
1847
1848         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
1849         miLineArcD is no more, remove it from the function definition.
1850
1851 2001-01-04  Havoc Pennington  <hp@redhat.com>
1852
1853         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
1854         this
1855
1856         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
1857         user_data instead of tree_node
1858
1859         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
1860         TREE_VIEW_COLUMN_SIZE
1861
1862         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
1863         "size" field to "width" finishes bug 40061
1864
1865         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
1866         for bitfields, bug 40268
1867
1868 2001-01-04  Havoc Pennington  <hp@redhat.com>
1869
1870         Rename some stuff:
1871         
1872         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
1873
1874         s/GtkModelSimple/GtkTreeModelSimple/g;
1875         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
1876         s/gtk_model_simple/gtk_tree_model_simple/g;
1877         s/gtkmodelsimple/gtktreemodelsimple/g;
1878
1879         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
1880
1881         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
1882         s/column_set_col_type/column_set_sizing/g;
1883
1884         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
1885         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
1886
1887         s/GtkCellRendererType/GtkCellRendererState/g;
1888         
1889         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
1890         (gtk_cell_renderer_toggle_class_init): change "state" property to
1891         "active", to match GtkToggleButton
1892         (gtk_cell_renderer_toggle_get_active): new function, bug
1893         40269
1894         (gtk_cell_renderer_toggle_set_active): new function
1895         (gtk_cell_renderer_toggle_set_property): route changes to toggle
1896         state through gtk_cell_renderer_set_active
1897
1898 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
1899
1900         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
1901         temporarily until they work again.  Brought up to date with
1902         changes in the model.
1903         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
1904         model.
1905
1906 2001-01-04  Havoc Pennington  <hp@redhat.com>
1907
1908         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
1909         equal to the line length, then position iterator before paragraph 
1910         separators. Fixes crash reported by Mikael Hermansson when
1911         pressing left arrow from the start of a line.   
1912
1913         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
1914         about byte indexes off the end
1915         (iter_set_from_char_offset): add g_error about char offsets
1916         off the end
1917
1918 2001-01-03  Havoc Pennington  <hp@redhat.com>
1919
1920         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
1921
1922         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
1923         of private functions; remove inclusion of private headers.
1924
1925         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
1926         function, so we don't need private functions in gtktextdisplay.c
1927
1928         * gtk/gtktextiterprivate.h: underscore-ification
1929
1930         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
1931         to instead say "only useful to implement widgets"
1932
1933         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
1934         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
1935         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
1936
1937         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
1938         This function was completely broken
1939
1940         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
1941
1942         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
1943
1944         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
1945
1946         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
1947
1948         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
1949
1950         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
1951
1952         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
1953         gtk_paint_layout
1954
1955         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
1956         gtk_paint_layout
1957
1958         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
1959         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
1960         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
1961         which were not implemented.     
1962
1963         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
1964         insert_pixbuf signal. Rename delete_text to delete_range since it
1965         also deletes pixbufs and child anchors. This almost closes bug
1966         40245 (still need to deal with child anchors)
1967
1968         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
1969         insert_pixbuf, change signal names as appropriate, change types of
1970         signals taking marks/tags to have the specific type, not just
1971         G_TYPE_OBJECT
1972         
1973         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
1974         closes bug 40051
1975
1976         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
1977         unnecessary remove_contents() call
1978         (gtk_option_menu_class_init): add a "changed" signal, closes
1979         bug 40039
1980         (gtk_option_menu_update_contents): emit "changed" if the 
1981         active menu item changes
1982
1983         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
1984         cast to GtkObject, reported by Jonas Borgstrom
1985         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
1986         we can't do stuff with side effects in finalize. Instead, spew a
1987         warning if the loader isn't closed.
1988
1989         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
1990         colormap in here, non-X ports probably need to sync to this change
1991
1992         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
1993         assertion that colormap != NULL, you can set the colormap to NULL
1994         if you like.
1995         
1996         * Makefile.am: remove gtk-config-2.0
1997
1998         * configure.in: Use pkg-config to locate GLib. Remove
1999         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
2000         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
2001         Use pkg-config to locate Pango. Output correct Pango libs to
2002         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
2003
2004         * Makefile.am (pkgconfig_DATA): install only target-specific pc
2005         files
2006         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
2007         X11 pc files
2008
2009         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
2010         unref from here
2011
2012 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
2013
2014         * configure.in:
2015         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
2016
2017 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2018
2019         * gtk/gtktextlayout.c
2020         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
2021         variable when moving back onto a single line.
2022
2023 2001-01-01  Havoc Pennington  <hp@redhat.com>
2024
2025         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2026
2027         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
2028
2029         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
2030         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
2031
2032 2001-01-01  Havoc Pennington  <hp@redhat.com>
2033
2034         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
2035
2036         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
2037         GtkTextAttributes
2038
2039         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
2040         #40246
2041         (gtk_text_attributes_copy_values): rename from 
2042         gtk_text_attributes_copy
2043         (gtk_text_attributes_copy): a more standard GTK copy function, 
2044         which returns a new object
2045
2046 2001-01-01  Havoc Pennington  <hp@redhat.com>
2047
2048         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
2049         
2050         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
2051         don't fill in tree_view->priv->selection, kind of an unexpected
2052         side effect
2053
2054         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
2055         gtkintl.h
2056         
2057         * gtk/gtkcellrenderer.c: Remove definition of _ and include
2058         gtkintl.h
2059         (gtk_cell_renderer_get_property): remove calls to g_value_init
2060
2061         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
2062         gtkintl.h
2063
2064         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
2065         and include gtkintl.h
2066         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
2067         property names
2068
2069         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
2070         GtkTreeSelection
2071         (_gtk_tree_selection_new_from_with_view): rename, return
2072         GtkTreeSelection
2073         (_gtk_tree_selection_set_tree_view): rename with uscore
2074         (gtk_tree_selection_get_selected): fill in the "model" out param
2075         first, so it gets filled in even if we return at the top of the 
2076         function
2077         (gtk_tree_selection_real_select_all): add a comment and an else{}
2078         to clarify this a bit
2079         (gtk_tree_selection_real_unselect_all): add the same else{}
2080
2081         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
2082         set_tree_view to have underscore prefixes, move them to the
2083         private header, fix return type of new_with_tree_view
2084         (struct _GtkTreeSelection): mark struct
2085         fields private  
2086
2087         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
2088         GtkTreeModelFlags, not a guint
2089         (gtk_tree_path_prev): return gboolean not gint
2090         (gtk_tree_path_up): return gboolean not gint
2091
2092         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
2093         return GtkTreeModelFlags, not a guint
2094
2095         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
2096         that child model is non-null before unrefing it
2097         (g_value_int_compare_func): make this a qsort compare func, not 
2098         a boolean predicate
2099
2100         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
2101         (add -umn to the end), and mark it unimplemented
2102         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
2103         I don't see what it's for - doesn't the model always sort itself?
2104         (gtk_tree_model_sort_set_compare): this had the wrong signature
2105
2106         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
2107         Fix the docs to say that it destructively replaces existing
2108         attributes (previously said that it added attributes).
2109         (gtk_tree_view_column_set_visible): canonicalize bool before
2110         equality testing. Also, check for realization before
2111         hiding/showing the tree_column->window; if this window could exist
2112         before realization, then it's busted and needs fixing, we can't 
2113         create GDK resources pre-realization. Also, remove
2114         superfluous queue_resize(), since set_size() does that for us.
2115         (gtk_tree_view_column_set_col_type): check realization before 
2116         using tree_column->window
2117
2118         * gtk/gtktreedatalist.c: fix filename in copyright notice
2119
2120 2000-12-31  Havoc Pennington  <hp@pobox.com>
2121
2122         * gtk/gtktextview.c: Rearrange all the
2123         scroll-while-dragging-or-selecting code to be different, not
2124         necessarily better. ;-)
2125         (gtk_text_view_scroll_to_mark): Change this
2126         function to take within_margin as a fraction instead of a pixel
2127         value, and to take alignment arguments (indicating where to align 
2128         the mark inside the visible area)
2129         
2130         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
2131         to GtkObject
2132
2133         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
2134         behavior so that offsets past the end of the line are not 
2135         allowed, and an offset equal to the line length moves the iterator
2136         to the next line
2137         (gtk_text_iter_set_line_index): make parallel change
2138         (gtk_text_iter_get_bytes_in_line): add this function
2139         
2140         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
2141         of byte indexes off the end of the line; byte index at the end of
2142         the line now returns FALSE and doesn't fill in the requested
2143         values, byte index past the end of the line is an error.  Also,
2144         don't allow -1 offset anymore, since its meaning is unclear.
2145
2146         This change exposes some bug in visual cursor motion, where we
2147         end up with a huge invalid byte index; needs fixing. Symptom of 
2148         bug is a crash when you hit up arrow.
2149         
2150         (_gtk_text_line_char_locate): match the change to byte_locate
2151
2152         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2153         from start of line properly. fixes bug reported by Mikael
2154         Hermansson where backspace would delete all text before the
2155         cursor.
2156
2157 2000-12-30  Tor Lillqvist  <tml@iki.fi>
2158
2159         * gdk/win32/gdkwindow-win32.c
2160         (gdk_window_impl_win32_get_visible_region): New function, as in
2161         the X11 backend.
2162         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2163         instead of duplicating the same code here.
2164
2165         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2166         GDK_COLORMAP macro.
2167
2168         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2169         destroy function.
2170         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2171         access that.
2172
2173         * gtk/gtk.def: Update.
2174
2175         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
2176
2177 2000-12-30  Havoc Pennington  <hp@pobox.com>
2178
2179         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
2180         colormap on input only windows, to avoid special cases all over
2181         the code for these windows.
2182
2183 2000-12-26  Tor Lillqvist  <tml@iki.fi>
2184
2185         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
2186         we are on a palettized display ("PseudoColor" in X11), as the code
2187         for that doesn't work anyway, and never has.
2188
2189 2000-12-22  Alexander Larsson  <alexl@redhat.com>
2190
2191         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
2192         Don't use isprint() for chars > 255.
2193
2194 2000-12-21  Havoc Pennington  <hp@redhat.com>
2195
2196         * tests/testtreeview.c: more work
2197
2198 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2199
2200         * docs/README.linux-fb:
2201         Update the docs to the new pangoft2 way.
2202
2203 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2204
2205         * configure.in:
2206         For linux-fb get the pangoft2 cflags and libs. This needs a recent
2207         pango version.
2208         Remove modules/linux-fb/Makefile.
2209
2210         * gdk/linux-fb/gdkdrawable-fb2.c:
2211         Render glyphs using freetype.
2212
2213         * gdk/linux-fb/gdkfb.h:
2214         Add new fb-specific functions needed for managing windows.
2215
2216         * gdk/linux-fb/gdkmain-fb.c:
2217         Remove gdk_font_init/fini() calls.
2218
2219         * gdk/linux-fb/gdkpango-fb.c:
2220         Remove old implementation. Use pangoft2 instead.
2221
2222         * gdk/linux-fb/gdkprivate-fb.h:
2223         Remove PangoFBFont and related stuff.
2224
2225         * gdk/linux-fb/gdkwindow-fb.c:
2226         Implement drawable->get_visible_region.
2227         Implement support for _gdk_window_set_child_handler () and
2228         _gdk_window_get_decorations().
2229
2230         * modules/Makefile.am:
2231         Remove linux-fb subdir.
2232
2233         * modules/linux-fb/*:
2234         Removed all.
2235         
2236 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
2237
2238         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
2239         calls, as they are no longer needed.
2240
2241         * gtk/gtktreemodelsort.c: Fix up the comparison code.
2242         
2243         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
2244         figure out how to emit a signal on an interface.
2245
2246 2000-12-20  Havoc Pennington  <hp@redhat.com>
2247
2248         * tests: new directory to contain tests, gtk/test* should move
2249         here sometime (with appropriate on-cvs-server hackery)
2250
2251         * tests/testtreeview.c, tests/Makefile.am: a test
2252         
2253         * configure.in (AC_OUTPUT): add tests/Makefile
2254
2255         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
2256         and "invisible_set" which were missing
2257
2258         * gtk/gtkrbtree.h: some cheesy indentation fix
2259         
2260 2000-12-20  Alexander Larsson  <alexl@redhat.com>
2261
2262         * gtk/gtkinvisible.c (gtk_invisible_realize):
2263         Attach the style to the window so that the style it is not
2264         leaked when unrealizing the window.
2265
2266 2000-12-18  Havoc Pennington  <hp@redhat.com>
2267
2268         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
2269         begin/end user action where appropriate
2270         (gtk_text_view_commit_handler): add begin/end user action
2271
2272         * gtk/gtktextbuffer.c: add begin/end user action signals, and
2273         bracket interactive operations with begin/end user action pair.
2274         
2275         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
2276         "interactive" arg from insert_text and delete_text signals.
2277         Add begin_user_action, end_user_action signals
2278         (gtk_text_buffer_begin_user_action): 
2279         (gtk_text_buffer_end_user_action): New functions to delimit 
2280         a user-visible action
2281
2282         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
2283         signals.
2284         
2285 2000-12-18  Havoc Pennington  <hp@redhat.com>
2286
2287         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
2288         was pretty non-working.
2289
2290         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
2291         by passing the length to g_utf8_validate().
2292
2293 2000-12-16  Havoc Pennington  <hp@pobox.com>
2294
2295         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
2296         Port to GObject, can go back in gdk-pixbuf after setting up 
2297         a gdk-pixbuf-marshal.h header over there.
2298
2299         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
2300         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
2301         args
2302         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
2303         set
2304         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
2305         here, do it when we create the buttons later
2306         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
2307         (gtk_tree_view_map): paranoia checks that column->button is shown 
2308         and unmapped
2309         (gtk_tree_view_size_request): only request visible children.
2310         Move header size calculation in here, for cleanliness, and 
2311         to maintain invariants for child widgets if we eventually 
2312         let users set different children inside the buttons
2313         (gtk_tree_view_map_buttons): factor out code to map buttons,
2314         since it was being called several times
2315         (gtk_tree_view_size_allocate_buttons): move_resize the drag
2316         windows instead of just moving them; their height may change 
2317         if we allow random widgets in there, or the theme changes.
2318         (gtk_tree_view_size_allocate): move button size allocation 
2319         above emitting the scroll signals, to ensure a sane state when we
2320         hit user code
2321         (gtk_tree_view_button_release): remove queue_resize after
2322         tree_view_set_size(), set_size() will handle any resize queuing
2323         that's needed
2324         (gtk_tree_view_focus_in): just queue a draw, don't fool with
2325         draw_focus goo
2326         (gtk_tree_view_focus): use gtk_get_current_event() and
2327         gdk_event_get_state()
2328         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
2329         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
2330         semicolon
2331         (gtk_tree_view_create_button): show the button here
2332         (gtk_tree_view_button_clicked): actually emit the clicked signal
2333         on the column
2334         (_gtk_tree_view_set_size): return right away if the size is
2335         unchanged, as a cheesy optimization
2336         (gtk_tree_view_setup_model): rename set_model_realized to 
2337         setup_model to match the flag that indicates whether we've 
2338         called it
2339         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
2340         exist, because set_scroll_adjustment does that and it shouldn't
2341         matter what order you call these in
2342         (gtk_tree_view_get_vadjustment): ditto
2343         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
2344         for paranoia
2345         (gtk_tree_view_set_headers_visible): call
2346         gtk_tree_view_map_buttons() instead of using cut-and-paste code
2347         (gtk_tree_view_append_column): clarify whether the return value
2348         is the count of columns before or after, and do the increment 
2349         separately from the return statement so you can tell from the code.
2350         (gtk_tree_view_remove_column): ditto
2351         (gtk_tree_view_insert_column): ditto
2352         (gtk_tree_view_get_column): remove g_return_if_fail for columns
2353         outside the existing range, the docs say that outside-range
2354         columns are allowed, so we handle them as documented. (Presumably
2355         this allows a nice loop with column != NULL as test.)
2356         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
2357         mean (left/right/center etc.).
2358         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
2359         (gtk_tree_view_expand_row): add docs
2360         (gtk_tree_view_collapse_row): add docs
2361
2362         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
2363         function to emit the clicked signal on a column
2364         
2365         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
2366         state of an event
2367         (gdk_event_get_time): don't treat GDK_SCROLL 
2368         as a button event, remove default case from switch so gcc 
2369         will whine if we don't explicitly handle all event types
2370
2371         * gtk/gtktreeselection.h: added some FIXME 
2372         
2373         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
2374         "columns" to "n_columns" and "column" to "columns" for clarity
2375
2376 2000-12-16  Havoc Pennington  <hp@pobox.com>
2377         
2378         * gtk/gtktextiter.c: General cleanup of the log attr iteration
2379         stuff. This should make e.g. the delete key work again in the
2380         text widget...
2381         (gtk_text_iter_forward_cursor_positions): handle negative count
2382         (gtk_text_iter_backward_cursor_positions): handle negative count
2383         (gtk_text_iter_forward_word_ends): handle negative count
2384         (gtk_text_iter_backward_word_starts): handle negative count
2385
2386         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
2387         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
2388         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
2389         GObject. No doubt will cause breakage.
2390
2391         * demos/gtk-demo/textview.c: remove hacks around
2392         non-GObject-ification of the text objects
2393
2394         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
2395         the text tag
2396         
2397 2000-12-14  Havoc Pennington  <hp@pobox.com>
2398
2399         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2400         that we have Xrender
2401
2402 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
2403
2404         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2405         Add two virtualized functions gdk_drawable_get_clip_region - to
2406         get the clip region when drawing.
2407         
2408         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2409         use invalidate_region.
2410
2411         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2412         region.
2413
2414         * acconfig.h configure.in: Check for Xft. For now, assume
2415         that if Xft is found, Pango was compiled with Xft support
2416         as well.
2417
2418         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
2419         gdk_colormap_query_color().
2420         
2421         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2422         with Xft if appropriate.
2423
2424         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2425         a pangoxft context if we have XFT and the environment
2426         variable GD_USE_XFT is set.
2427         
2428         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2429         and also possibly an XftDraw structure.
2430
2431         * gtk/gtkfontsel.c: Handle the case where the font from the
2432         style doesn't match any of the fonts a bit better.
2433         
2434         * gtk/testgtk.c: Add tabs between directional segments for
2435         hebrew/arabic test. (Not really necessary, just a little
2436         prettier.)
2437
2438 2000-12-14  Havoc Pennington  <hp@redhat.com>
2439
2440         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2441         reading a file
2442
2443 2000-12-14  Havoc Pennington  <hp@redhat.com>
2444
2445         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2446         unused call to get_last_line()
2447
2448         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2449         here until boxed is working (and maybe after that - we should
2450         really not gratuitously break old code)
2451
2452         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2453         specific types for font_desc and tabs args, move them to
2454         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
2455         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2456
2457         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2458         use GTK_TYPE_POINTER for signal signatures as a hack-around
2459
2460         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2461         PangoTabArray
2462
2463         * gtk/gtktextlayout.c (line_display_iter_to_index): 
2464         make static
2465         (line_display_index_to_iter): make static
2466
2467         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2468         to marshal a string not a boxed
2469
2470         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2471
2472         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2473         since the UTF-8 isn't validated yet
2474
2475         * gtk/gtktextsegment.c (char_segment_check_func): don't require
2476         lines to end in '\n'
2477         
2478         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2479         forward_to_delimiters, and grapheme boundaries
2480         (gtk_text_view_delete_from_cursor): properly handle non-newline
2481         delimiters, and grapheme boundaries
2482
2483         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2484         to gtk_text_iter_forward_to_delimiters, and make it work properly
2485         if empty lines end with a character other than '\n'
2486
2487         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2488         position
2489
2490 2000-12-15  Tor Lillqvist  <tml@iki.fi>
2491
2492         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2493
2494         * gtk/gtk.def
2495         * gdk/gdk.def: Update.
2496
2497         * gdk/win32/gdkmain-win32.c
2498         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2499         gdkmain-win32.c here.
2500
2501         * gdk/win32/makefile.mingw.in (all): No need to make
2502         gdk-win32res.o here, the makefile one step up will call us to make
2503         it.
2504
2505         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2506         gdkkeys-win32.
2507
2508         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2509
2510         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2511         call to g_source_add().
2512
2513         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2514         leak. Thanks to Andreas Kemnade.
2515
2516 2000-12-13  Havoc Pennington  <hp@pobox.com>
2517
2518         * gtk/gtktextbtree.h: Remove double _ in front of some functions
2519
2520         * gtk/gtktext*.[hc]: update accordingly
2521         
2522 2000-12-13  Havoc Pennington  <hp@pobox.com>
2523
2524         * gtk/gtktextbtree.h: Put _ in front of every function in this 
2525         header file
2526
2527         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2528
2529 2000-12-13  Alex Larsson  <alexl@redhat.com>
2530
2531         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2532         Add support for ps2 intellimouse.
2533
2534         * gdkkeyboard-fb.c:
2535         Move shift-F1 repaint handling to xlate handler only.
2536         
2537         * docs/README.linux-fb:
2538         Add imps2 to docs.
2539         Document the new refresh keys.
2540         
2541 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
2542
2543         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
2544
2545         * gtk/gtkbox.c: change property types from (u)long to (u)int for
2546         ::position and ::padding.
2547
2548         * gtk/gtkcontainer.c: make ::border_width an INT property.
2549
2550         * gtk/gtkpacker.c: make ::position an INT property.
2551
2552         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2553         guard against NULL h/v scrollbars, since this is used at construction
2554         time.
2555
2556         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
2557         internal gtk_clist_constructor().
2558
2559         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
2560         gtk_ctree_constructor().
2561
2562         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
2563         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
2564
2565         * docs/reference/Makefile.am: fun stuff, disabled docs generation
2566         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
2567
2568         * gtk/gtkwidget.[hc]:
2569         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
2570         and gtk_widget_get().
2571         (gtk_widget_new): use g_object_new_valist().
2572         (gtk_widget_set): use g_object_set_valist().
2573
2574         * gtk/gtkobject.[hc]:
2575         removed gtk_object_arg_get_info(), gtk_object_getv(),
2576         gtk_object_query_args(), gtk_object_newv(),
2577         gtk_object_class_add_signals(),
2578         gtk_object_class_user_signal_new(),
2579         gtk_object_class_user_signal_newv(),
2580         gtk_object_arg_set(), gtk_object_arg_get(),
2581         gtk_object_args_collect(),
2582         gtk_object_default_construct(),
2583         gtk_object_constructed(),
2584         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
2585         removed nsignals, signals and n_args members from GtkObjectClass.
2586         (gtk_object_new): use g_object_new_valist().
2587         (gtk_object_set): use g_object_set_valist().
2588         (gtk_object_get): use g_object_get_valist().
2589         
2590         * gtk/gtkcompat.h: define gtk_object_default_construct().
2591         
2592         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
2593         g_object_new().
2594
2595         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
2596         fucntions, cleaned up method assignments (make sure your structures
2597         are setup properly before calling out). removed all GTK_CONSTRUCTED
2598         hacks ;)
2599
2600 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
2601
2602         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
2603         off-by-one error in checks. (Dave Lambert)
2604
2605 2000-12-12  Alexander Larsson  <alexl@redhat.com>
2606
2607         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
2608         Don't free gdk_fb_keyboard twice.
2609
2610 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
2611
2612         * gtk/testgtk.c:
2613         (create_tooltips): 
2614         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
2615         use GObject swapped_signal:: properties instead.
2616
2617         * gtk/gtkcellrenderertoggle.c: 
2618         * gtk/gtkcellrenderertextpixbuf.c: 
2619         * gtk/gtkcellrenderertext.c: 
2620         * gtk/gtkcellrendererpixbuf.c: 
2621         * gtk/gtkcellrenderer.c:
2622         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
2623         missing warnings for invalid property ids, install properties
2624         with g_object_class_install_property() now.
2625         
2626         * gtk/gtksignal.c:
2627         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
2628         
2629 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
2630         
2631         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
2632         to determine if a window is the focus widget within
2633         its toplevel.
2634
2635         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
2636         to be boolean.
2637
2638         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
2639         of the case where the container CAN_FOCUS to here instead
2640         of having it in each individual move-the-focus place.
2641
2642         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
2643         focusing to be geometric in a much more obvious sense. Arrowing
2644         around is still non-intuitive because it isn't perfect and
2645         because entries, etc, grab the arrow keys, but it at least
2646         usually will do what you expect now.
2647         
2648         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
2649         file.
2650
2651         * gtk/gtknotebook.c: Change tabs to be a single item in
2652         the focus chain. Make movement of focus on tabs with arrow
2653         keys wrap around.
2654         
2655         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
2656         CHECK_FIND_CHILD macro to give informative error messages
2657         instead of silent returns.
2658
2659         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
2660         flag since we handle GdkReturn on the tabs.
2661
2662         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
2663         windows rather than sending expose events directly.
2664
2665         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
2666         definition for GtkNotebookPage into .c file, since it is private.
2667
2668         * gtk/testgtk.c (create_notebook): Add option for 
2669         testing borderless notebook.
2670
2671         * gtk/testgtk.c (page_switch): Removed egregious poking
2672         around in GTK+ internals.
2673
2674         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
2675
2676         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
2677         properly through gtk_clist_focus. Make the title headers a
2678         single item in the tab-focus chain, and make left-right wrap
2679         around.
2680
2681         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
2682         focus method so that wrapping around works properly.
2683
2684         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
2685         that is handled for the widget now. 
2686
2687 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
2688
2689         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
2690         widgets as TOPLEVEL.
2691
2692         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
2693         TOPLEVEL widgets are containers.
2694
2695         * gtk/gtkinvisible.h: Remove useless include.
2696
2697 2000-12-11  Havoc Pennington  <hp@redhat.com>
2698
2699         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
2700         Handle chopping off \r\n and 0x2029 in addition to \n before
2701         passing to PangoLayout
2702
2703         * gtk/gtkimcontextsimple.c
2704         (gtk_im_context_simple_get_preedit_string): 
2705         return an empty string if no match is pending
2706
2707         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
2708         assertion that the returned preedit string was sane
2709
2710         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
2711         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
2712         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
2713
2714 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
2715
2716         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
2717         Fix up finalizer to chain to its parent.
2718
2719 2000-12-11  Alexander Larsson  <alexl@redhat.com>
2720
2721         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
2722         Clearified the difference between the keyboard types. Wrote a note
2723         about the magic sysrq key to get out of raw mode.
2724
2725 2000-12-09  James Henstridge  <james@daa.com.au>
2726
2727         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
2728         member to hold masks for detecting the start of a protocol packet.
2729         (mouse_devs): add packet start masks for ps2 and ms device types.
2730         Left the mask for fidmour blank, as I have no idea what it should
2731         be.
2732         (handle_mouse_io): skip bytes until we get to the start of a
2733         packet.  My Logitech mouse seems to be passing an extra NULL pad
2734         byte, and GPM does a similar thing here.
2735         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
2736         this is the ms mouse driver.
2737         (gdk_fb_mouse_ms_packet): fix up button handling, which was
2738         completely broken except for button1.  It was checking the wrong
2739         bit in the packet for the status of the right mouse button, and
2740         wrongly assuming right == button2 rather than 3.  I fixed that and
2741         also added support for middle button (button2).
2742
2743 2000-12-08  Havoc Pennington  <hp@redhat.com>
2744
2745         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
2746         that cause a segfault on text insertion
2747
2748         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
2749         warning
2750
2751         * gtk/gtktextiter.c (test_log_attrs): use
2752         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
2753
2754         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
2755         Get log attrs for a line, using a cache stored on the buffer
2756         
2757         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
2758         reported by Jeff Franks
2759
2760 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2761
2762         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
2763         /dev/ttyS0 -> /dev/mouse
2764
2765 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2766
2767         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
2768         Added dummy gdk_fontset_load.
2769
2770 2000-12-08  Alexander Larsson  <alexl@redhat.com>
2771
2772         * docs/README.linux-fb:
2773         * docs/Makefile.am:
2774         Initial GtkFB docs.
2775         
2776         * gdk/linux-fb/Makefile.am:
2777         Define GDK_DATA_PREFIX.
2778
2779         * gdk/linux-fb/gdkmain-fb.c:
2780         Fix typo.
2781         Change default display to /dev/fb0.
2782
2783         * gdk/linux-fb/gdkpango-fb.c:
2784         Add $(prefix)/share/fonts/ to font path.
2785         
2786 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2787
2788         * gdk/linux-fb/gdkkeyboard-fb.c:
2789         New file containing the abstracted keyboard driver. Most code
2790         taken from gdkinput-ps2.c
2791
2792         * gdk/linux-fb/gdkinput-ps2.c:
2793         Removed file.
2794         
2795         * gdk/linux-fb/Makefile.am:
2796         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
2797
2798         * gdk/linux-fb/gdkcolor-fb.c:
2799         display->fb was renamed to display->fb_fd.
2800
2801         * gdk/linux-fb/gdkcursor-fb.c:
2802         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2803
2804         * gdk/linux-fb/gdkinput.c:
2805         Moved gdk_input_init here from gdkinput-ps2.c
2806
2807         * gdk/linux-fb/gdkmain-fb.c:
2808         display->fb was renamed to display->fb_fd.
2809         Now the tty and the console is opened here instead
2810         of in the keyboard driver. Also check GDK_VT to see what
2811         tty to open.
2812         Move gdk_beep () here from gdkinput-ps2.c
2813         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2814
2815         * gdk/linux-fb/gdkmouse-fb.c:
2816         Add header.
2817         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2818         Return correct keyboard modifiers.
2819         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
2820
2821         * gdk/linux-fb/gdkprivate-fb.h:
2822         Add tty and vt info to display.
2823         Add orignal modeinfo storage to display
2824         Update global functions
2825
2826         * gdk/linux-fb/gdkwindow-fb.c:
2827         Added gdk_fb_window_find_focus().
2828         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2829
2830 2000-12-07  Havoc Pennington  <hp@pobox.com>
2831
2832         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
2833         function, noticed by Alex
2834
2835 2000-12-06  Elliot Lee  <sopwith@redhat.com>
2836
2837         * configure.in: Detect freetype properly
2838
2839         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
2840         above.
2841
2842 2000-12-06  Alexander Larsson  <alexl@redhat.com>
2843
2844         * gdk/linux-fb/Makefile.am:
2845         Add gdkmouse-fb.c
2846         
2847         * gdk/linux-fb/gdkmouse-fb.c:
2848         New file. Abstracted the mouse drivers a bit.
2849
2850         * gdk/linux-fb/gdkcursor-fb.c:
2851         The cursor hide/show functions was moved here from gdkinput-ps2.c.
2852
2853         * gdk/linux-fb/gdkinput-ps2.c:
2854         Removed old mouse handling code. Moved cursor handling code
2855         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
2856         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
2857         gdk_mouse_get_info.
2858
2859         * gdk/linux-fb/gdkmain-fb.c:
2860         Pass NULL pointers for x,y in gdk_mouse_get_info call.
2861
2862         * gdk/linux-fb/gdkprivate-fb.h:
2863         Removed public gdk_fb_find_common_ancestor, added and renamed
2864         functions for the new mouse handling code.
2865
2866         * gdk/linux-fb/gdkwindow-fb.c:
2867         Moved gdk_fb_window_send_crossing_events here. added global
2868         variable gdk_fb_window_containing_pointer. made
2869         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
2870         renamed to gdk_mouse_get_info.
2871
2872 2000-12-06  Alexander Larsson  <alexl@redhat.com>
2873
2874         * gdk/linux-fb/gdkevents-fb.c:
2875         Update to match latest gmain/gsource changes.
2876
2877         * gdk/linux-fb/gdkinput-ps2.c:
2878         Bogus gdk_keymap_get_entries_for_keycode implementation so that
2879         it links. Will be implemented later.
2880
2881 2000-12-03  Havoc Pennington  <hp@pobox.com>
2882
2883         * gdk/Makefile.am: add gdkkeys.[hc]
2884
2885         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
2886         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
2887
2888         * acconfig.h, configure.in: add checks and command line options
2889         for XKB
2890
2891         * gdk/x11/gdkkeys-x11.c: Implement the above functions
2892         
2893         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
2894         and group in the key event
2895
2896         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
2897         field with the low-level hardware key code, and a group
2898         field with the keyboard group
2899
2900         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
2901         and declare a couple globals used for keymap handling
2902         
2903         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
2904         hold down Shift-Control and type a hex number to get a Unicode 
2905         character corresponding to the hex number
2906         (gtk_im_context_simple_get_preedit_string): Fix cursor position
2907         (return bytes not chars)
2908
2909 2000-12-05  Elliot Lee  <sopwith@redhat.com>
2910
2911         * gdk/gdkcolor.h: Make GdkColor specify element sizes
2912         to avoid waste on 64-bit platforms.
2913
2914 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
2915
2916         * INSTALL: Fix link to PNG home, remove reference
2917         to fribidi.
2918
2919         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
2920         
2921         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
2922         tested.)
2923
2924         * gtk/gtkcheckmenuitem.c: Permanently turn on
2925         always_show_toggle.
2926
2927         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
2928         be NULL. (Vladimir Klebanov, #26545)
2929
2930         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
2931         some signed/unsigned comparison problems. (#6510,
2932         David Kaelbling)
2933
2934         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
2935         return type to boolean (Oskar Liljeblad, #18648)
2936
2937 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2938
2939         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
2940         Remove bogus colormap setting.
2941
2942 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2943
2944         * gdk/linux-fb/gdkcolor-fb.c:
2945         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
2946
2947         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
2948         Must set colormap.
2949         
2950 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
2951
2952         * docs/tutorial/gtk-tut.sgml: DND updates
2953
2954 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
2955
2956         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2957         Remove old debug g_warning().
2958         (gdk_fb_draw_drawable): The src argument can be either a wrapper
2959         or an implementation, just pass the implementation to draw_drawable_2.
2960         
2961         * gdk/linux-fb/gdkprivate-fb.h:
2962         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
2963
2964         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2965         clear and invalidate area when window is destroyed.
2966         (send_map_events): Remove old commented out code.
2967
2968 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2969
2970         * gdk/linux-fb/gdkpango-fb.c:
2971         Use italic instead of oblique in font aliases.
2972         
2973         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
2974         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
2975         other unsupported functions.
2976
2977 2000-12-04  Havoc Pennington  <hp@redhat.com>
2978
2979         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
2980
2981         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
2982
2983         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
2984
2985         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
2986         hack to avoid infinite loops (synthetic expose event) - 
2987         Owen has more appropriate fixes in a branch he'll check in later.
2988
2989         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
2990         separator, CR, and CRLF as line ends
2991
2992         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
2993         into lines using pango_find_paragraph_boundary(); other bits of
2994         the widget are still going to be broken if the boundary isn't '\n'
2995         though
2996
2997 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2998
2999         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
3000         multiply.
3001
3002         * gdk/linux-fb/gdkpango-fb.c:
3003         Copied some 26.6 scaling macros from pango to clean up the rounding.
3004         (pango_fb_font_get_glyph_info): Correct sign on x value.
3005
3006         * gdk/linux-fb/gdkprivate-fb.h:
3007         Removed unreferenced external functions.
3008
3009         * modules/linux-fb/Makefile.am: Use ` instead of '.
3010
3011         * modules/linux-fb/basic.c:
3012         Remove dead code. In particular the dummy lang engine which broke all
3013         pango layouts in GtkFB. Don't include tables-big.i anymore.
3014
3015         * modules/linux-fb/tables-big.i:
3016         Upgrade to latest version from pango. Left for reference, basic_ranges
3017         moved to basic.c.
3018         
3019 2000-12-04  Havoc Pennington  <hp@redhat.com>
3020
3021         Fix bugs Alex found:
3022         
3023         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
3024         to "draw"
3025
3026         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
3027
3028         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
3029
3030         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
3031         implementation in here, apparently the expose() implementation was
3032         dead code.
3033
3034 2000-12-04  Alexander Larsson  <alexl@redhat.com>
3035
3036         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3037         Return positive descent.
3038
3039 2000-12-02  Havoc Pennington  <hp@pobox.com>
3040
3041         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
3042         method and signal
3043         
3044         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
3045         calls gdk_window_process_updates() to push the exposes through
3046         (gtk_widget_class_init): No more draw signal, no
3047         gtk_widget_real_draw()  
3048         
3049         * gtk/gtkbin.c (gtk_bin_draw): remove
3050
3051         * gtk/gtkbox.c (gtk_box_draw): remove
3052
3053         * gtk/gtkbutton.c (gtk_button_draw): remove
3054
3055         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
3056
3057         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
3058
3059         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
3060
3061         * gtk/gtkclist.c (gtk_clist_draw): remove
3062
3063         * gtk/gtkentry.c (gtk_entry_draw): remove
3064
3065         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
3066
3067         * gtk/gtkfixed.c (gtk_fixed_draw): remove
3068
3069         * gtk/gtkframe.c (gtk_frame_draw): remove
3070
3071         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
3072
3073         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
3074
3075         * gtk/gtklayout.c (gtk_layout_draw): remove
3076
3077         * gtk/gtklist.c (gtk_list_draw): remove
3078
3079         * gtk/gtklistitem.c (gtk_list_item_draw): remove
3080
3081         * gtk/gtkmenu.c (gtk_menu_draw): remove
3082
3083         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
3084
3085         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
3086
3087         * gtk/gtknotebook.c (gtk_notebook_draw): remove
3088
3089         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
3090
3091         * gtk/gtkpacker.c (gtk_packer_draw): remove
3092
3093         * gtk/gtkrange.c (gtk_range_draw): remove
3094
3095         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
3096
3097         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
3098
3099         * gtk/gtktable.c (gtk_table_draw): remove
3100
3101         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
3102
3103         * gtk/gtktext.c (gtk_text_draw): remove
3104
3105         * gtk/gtktextview.c (gtk_text_view_draw): remove
3106
3107         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
3108
3109         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
3110
3111         * gtk/gtktree.c (gtk_tree_draw): remove
3112
3113         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
3114
3115         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
3116
3117         * gtk/gtkviewport.c (gtk_viewport_draw): remove
3118
3119         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
3120
3121         * gtk/gtkvscale.c (gtk_vscale_draw): remove
3122
3123         * gtk/gtkwindow.c (gtk_window_draw): remove
3124
3125 2000-20-01  Anders Carlsson  <andersca@gnu.org>
3126
3127         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
3128         a GtkToggleButton is both insensitive and active, it was being
3129         drawn by the GtkButton draw handler which doesn't check the
3130         state. Now it's calling gtk_toggle_button_paint instead.
3131         
3132 2000-12-01  Havoc Pennington  <hp@redhat.com>
3133
3134         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
3135         dangling pointers to the appearance attributes from the 
3136         line display
3137
3138         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
3139         width/height to mean "full width/height of drawable"
3140
3141         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
3142         click to select word/line
3143         
3144         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
3145         when getting log attrs. Get a slice, so that pixmaps and stuff
3146         are properly handled.
3147
3148         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3149         paste into the selection (replaces selection now, previously
3150         crashed or added to selection). Reveals longstanding btree bug -
3151         select multiple lines, middle-click on the selection, boom. This
3152         isn't related to my changes though.
3153
3154         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3155         PangoLogAttrs changes
3156         (gtk_entry_move_backward_word): ditto
3157
3158         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3159         functions return bool whether the iter moved onto a
3160         dereferenceable position.
3161  
3162         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3163         functions for motion in terms of display lines.
3164
3165         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3166         get the buffer a mark is inside
3167         
3168 2000-12-01  Alexander Larsson  <alexl@redhat.com>
3169
3170         * gdk/linux-fb/Makefile.am:
3171         * modules/linux-fb/Makefile.am:
3172         Freetype 2 final uses freetype-config
3173
3174         * gdk/linux-fb/gdkpango-fb.c:
3175         Upgrade to use Freetype 2 final.
3176         More flexible support for font aliases, this also fixes a bug with
3177         GtkFontSelector, as the aliases must be visible in the font/family list,
3178         or GtkFontSelector reads uninitialized memory.
3179
3180 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
3181
3182         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
3183         XGetIMValues to properly terminate variable argument list, and do
3184         NULL return check for ic_values and xim_styles.
3185
3186         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
3187         Restore preedit state after XmbResetIC().
3188         
3189         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
3190         XvaCreateNestedList() should take XvaNestedList, but not
3191         XvaNestedList*.
3192
3193         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
3194         preedit_draw_callback, preedit_caret_callback): Match
3195         "preedit-changed" signal name to "preedit_changed" to be
3196         consistent to the spec.
3197
3198         * gtk/gtkimcontextsimple.c (check_table):
3199         Match "preedit-changed" to "preedit_changed" to be consistent
3200         to the spec.
3201
3202 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
3203
3204         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
3205         gc->clip_region == NULL>
3206
3207 2000-11-30  Tor Lillqvist  <tml@iki.fi>
3208
3209         Changes by Hans Breuer:
3210         
3211         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3212         Dont't use negative width and height as max_hints. This fixes
3213         Owen's recent testgtk changes for win32.
3214
3215         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
3216         gdk_win32_hdc_release): These are exported and may be called with
3217         other drawable types than our GdkDrawableImplWin32 (?).
3218
3219         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
3220         so always #define USE_BACKING_STORE.
3221
3222         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
3223         of printf for debugging output.
3224
3225         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
3226         
3227         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
3228
3229         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
3230         declaration.
3231
3232         * gtk/gtktexttypes.h: Ditto.
3233
3234         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
3235         (GDK_VoidSymbol) also if in case of arg check failure.
3236
3237         * gtk/gtkimcontextsimple.c
3238         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
3239         position to the pointer, but to the variable it points to.
3240
3241         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
3242
3243         * gtk/gtk.def: Updates.
3244
3245 2000-11-29  Elliot Lee  <sopwith@redhat.com>
3246
3247         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
3248         GTK_TYPE_TREE_MODEL.
3249
3250 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3251
3252         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
3253         Set the size of the font from the description.
3254         (gdk_text_width): Gross hack that calculates the width
3255         of text by text_length * size/2. This is necessary because
3256         GtkLabel does some ugly gtk_string_width call to calculate
3257         an good size.
3258         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
3259
3260 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
3261
3262         * docs/tutorial/gtk-tut.sgml: DND updates
3263
3264 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3265
3266         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3267         If you pass width or height == 0 to gdk_window_clear_area they
3268         should be calculated from the window size.
3269
3270 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3271
3272         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
3273         a grab, but no grab-cursor, use the cursor from the grabbed
3274         window. (gdk_fb_window_send_crossing_events): Send normal
3275         enter/leave notifications if grab and owner_events == TRUE.
3276
3277 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3278
3279         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3280         Do implicit button grabs, even if the window doesn't
3281         want the event.
3282         (gdk_fb_window_send_crossing_events): If there is a
3283         grab, only the grabbed window gets normal enter/leave
3284         notifications. On ungrab go from grabbed window to current.
3285         Don't send any notification to b when propagating from c -> b.
3286         If setting a grab on window, don't set prev_window.
3287         (handle_mouse_input): Send enter/leave events to the window the
3288         mouse is over, not the grabbed one.
3289         
3290 2000-11-28  Elliot Lee  <sopwith@redhat.com>
3291
3292         * gdk/gdkregion-generic.c: Zap warning.
3293         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
3294         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
3295
3296 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
3297
3298         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3299         The cursor should be hidden if it is part of either the
3300         source or destination region. Not only if it is in both.
3301         (gdk_window_set_transient_for): Silence warnings.
3302
3303 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3304
3305         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
3306         The default mode in X is Pie Arcs, therefore that is
3307         what Gtk+ uses.
3308
3309 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3310
3311         * gdk/linux-fb/gdkinput-ps2.c:
3312         Implement correct EnterNotify/LeaveNotify:
3313         (gdk_fb_window_send_crossing_events): New function that sends
3314         all GdkCrossingEvents from the last mouse-window to the specified
3315         destination.
3316         (gdk_fb_window_visibility_crossing): Removed function.
3317         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
3318         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
3319         instead of gdk_window_get_pointer() for better readability.
3320
3321         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
3322         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
3323
3324         * gdk/linux-fb/gdkprivate-fb.h:
3325         removed gdk_fb_window_visibility_crossing, added
3326         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
3327
3328         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
3329         New function that finds the least common ancestor of two windows.
3330         (gdk_window_show, gdk_window_hide):
3331         Use gdk_fb_window_send_crossing_events.
3332         (gdk_fb_window_move_resize): Send configure events to toplevel
3333         windows. Use gdk_fb_window_send_crossing_events.
3334
3335 2000-11-27  Havoc Pennington  <hp@redhat.com>
3336
3337         * gtk/gtkprivate.h (enum): Remove a trailing comma
3338
3339 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
3340
3341         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
3342         the "changed" callback of the adjustment.  We need to redraw the
3343         spin button's arrows when the adjustment's range changes.
3344         (adjustment_changed_cb): Draw the arrows.
3345         (gtk_spin_button_value_changed): Draw the arrows.
3346
3347 2000-11-23  Alexander Larsson  <alexl@redhat.com>
3348
3349         * gdk/linux-fb/gdkselection-fb.c:
3350         Initial selection implementation.
3351
3352         * gtk/gtkselection.c:
3353         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
3354         requestor in gtk_selection_request.
3355         
3356         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
3357         Added gdk_selection_property atom.
3358
3359         * gdk/linux-fb/gdkprivate-fb.h:
3360         Export _gdk_selection_window_destroyed.
3361         Removed mask_off_x/y from GdkCursorPrivateFB.
3362         Removed hbearing, added top, left to PangoFBGlyphInfo.
3363
3364         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3365         Call _gdk_selection_window_destroyed
3366         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
3367         the root window has been created.
3368         (static_dx_hack, static_dy_hack, compare_draw_rects,
3369         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
3370         in region. They are already sorted. Instead just traverse them in
3371         reverse if draw_direction < 0.
3372         
3373         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3374         Double-clicks must be sent after the normal button_press.
3375         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3376         
3377         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
3378         Pass _gdk_fb_screen_gc instead of NULL.
3379
3380         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3381         Initialize gdk_selection_property.
3382         (gdk_event_make): Remove unused code.
3383
3384         * gdk/linux-fb/gdkcursor-fb.c:
3385         Make the pixmap for the cursor the same size as the mask. Also remove
3386         the mask_off_x/y fields in GdkCursorPrivateFB and combine
3387         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
3388         Now the whole cursor is visible.
3389
3390         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3391         Fix bug where xdest+height instead of ydest+height was used
3392         to calculate if the source and dest overlapped. This fixes the
3393         redraw bug when the main window in testgtk was scrolled when
3394         partially covered by a tall window.
3395         Copy rectangles in region in order depending on draw_direction.
3396         Also moved the draw_direction flipping of start_y and end_y into
3397         the gc functions, as this might not be what all of them want.
3398         (gdk_fb_draw_lines): Support dashed lines.
3399         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3400         so that the text is positioned correctly (was 1 pixel high).
3401
3402         gdk/linux-fb/gdkgc-fb.c:
3403         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3404         all lines were drawn a pixel to short. Also checked the default of
3405         the rest of the values, and they're the same as X now.
3406
3407         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3408         Clean up pixel positioning of the glyphs. Just use bgy->top and
3409         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3410         to all divisions to get correct rounding behaviour.
3411
3412         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3413         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3414         Moved start_y/end_y flip into draw_drawable implementations.
3415         Flip also x rendering when draw_direction < 0.
3416         Remove unneccesary multiply with draw_direction.
3417
3418 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
3419
3420         * docs/tutorial/gtk-tut.sgml:
3421           - get rid of gtk_toggle_button_toggled FUD
3422           - start DND section - needs work - based on:
3423                 http://wolfpack.twu.net/docs/gtkdnd/
3424
3425 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3426
3427         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3428         Correct calculation of font metrics. Now GtkEntrys have sane
3429         size.
3430
3431 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3432
3433         * gdk/gdktypes.h:
3434         Add new type GdkSpan
3435         
3436         * docs/reference/gdk/gdk-sections.txt,
3437         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3438         gdk/gdkregion.h:
3439         Implement and document gdk_region_spans_intersect_foreach.
3440
3441         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3442         Add new file gdkrender-fb.c which contains all core
3443         rendering code.
3444         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3445         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3446         (optimized rectangle fillers).
3447
3448         * gdk/linux-fb/gdkdrawable-fb2.c:
3449         Move all rendering code to gdkrender-fb.c.
3450         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3451         Use the new span intersection functions in gdk_fb_fill_spans.
3452         gdk_fb_draw_rectangle() clips filled rectangles and calls
3453         gc->fill_rectangle with the result.
3454         gdk_fb_fill_spans() gets extra argument "sorted".
3455
3456         * gdk/linux-fb/gdkevents-fb.c:
3457         Remove unused includes and defines.
3458         New function gdk_fb_get_time() to get correct time for events.
3459
3460         * gdk/linux-fb/gdkinput-ps2.c:
3461         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3462         Make sure to set the time of all events.
3463
3464         * gdk/linux-fb/gdkmain-fb.c:
3465         Use gdk_fb_get_time ().
3466
3467         * gdk/linux-fb/gdkprivate-fb.h:
3468         New virtual GC calls: fill_span & fill_rectangle.
3469         Export gdk_fb_get_time().
3470         gdk_fb_fill_spans() gets extra argument "sorted".
3471
3472         * gdk/linux-fb/mi*.c:
3473         Use GdkSpan instead of GdkRectangle.
3474         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3475         from XFree 4 source)
3476         
3477 2000-11-22    <jrb@redhat.com>
3478
3479         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3480         reversing the order in an if statement will do.  Doing so managed
3481         to make the treemodelsort half work.  Other half will follow after
3482         I get the insert function fully fixed.
3483
3484 2000-11-21  Elliot Lee  <sopwith@redhat.com>
3485         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3486         more than 2 bits. Besides, I need to implement an evil hack. :)
3487
3488 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
3489
3490         * docs/tutorial/gtk-tut.sgml: minor corrections
3491
3492 2000-11-20  Jonathan Blandford <jrb@redhat.com>
3493         * gtk/gtktreemodelsort.h: Add convertion functions to let you
3494           convert to and from relative path's and iters.
3495
3496         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
3497           testing sorting functions a bit better.  Currently broken -- will
3498           fix in morning.
3499
3500 2000-11-20  Havoc Pennington  <hp@redhat.com>
3501
3502         * gtk/gtkwidget.c: Documented a bunch of functions in here
3503         (gtk_widget_realize): Warn if you try to realize
3504         a widget with no parent that isn't a toplevel
3505         (gtk_widget_intersect): return a gboolean
3506
3507 2000-11-20  Havoc Pennington  <hp@redhat.com>
3508
3509         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3510         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3511         scrolling to be implemented in GDK to finish. Also, right now
3512         we just size_allocate all children on every layout change,
3513         which is pretty lame. Test commented out of testtext.c, 
3514         until it works better.
3515
3516 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
3517
3518         * gdk/linux-fb/gdkdrawable-fb2.c:
3519         Removed unused arguments from gdk_fb_drawable_get_pixel().
3520
3521         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3522         Renamed fidur specific mouse packet data in MouseDevice to
3523         generic. Used it in ps2 mouse handling code to avoid blocking
3524         reads.
3525
3526 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
3527
3528         * demos/gtk-demo/main.c: Changed to have the list become
3529         non-italic when the demo window is destroyed through an external
3530         event (like a close button).  Doing so found three bugs in the
3531         widget.
3532
3533         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
3534
3535         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
3536         we actually set the cell.
3537
3538         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
3539
3540         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
3541         free a leaked path.  Thanks memprof.
3542
3543 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
3544
3545         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
3546         off-by-one error when destroying allocated segments
3547         on failure. (Elliot)
3548
3549 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
3550
3551         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
3552         memleaks found by Evan Martin.
3553
3554 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
3555
3556         * Released 1.3.2
3557         
3558         * NEWS: Updates for 1.3.2
3559
3560 2000-11-17  Tor Lillqvist  <tml@iki.fi>
3561
3562         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
3563         but in general for window system specific events.
3564
3565         * gtk/gtk.def
3566         * gtk/makefile.mingw.in
3567         * gtk/makefile.msc.in: Update.
3568         
3569         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
3570
3571 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
3572
3573         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
3574         distribute gtk.immodules.
3575
3576         * gtk/Makefile.am (install-data-local): Don't install the
3577         gtk.immodules file created for the uninstalled modules;
3578         instead run gtk-query-immodules after install
3579
3580 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
3581
3582         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
3583         -rpath to the right install location.
3584
3585         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
3586         -export-dynamic.
3587
3588         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
3589         properly.
3590
3591 2000-11-15  Havoc Pennington  <hp@pobox.com>
3592
3593         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
3594         patch from Mikael Hermansson to temporarily stop blinking while
3595         the user is using the keyboard to type or navigate. 
3596
3597         Also, when blinking, stay on for longer than we stay off. Also,
3598         return from start_cursor_blink if !cursor_visible, to save
3599         checking that flag all over the place before we call
3600         start_cursor_blink.
3601
3602 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
3603
3604         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
3605         only contain a "fontset" line, which is now ignored.
3606
3607         * gtk/gtkentry.c (gtk_entry_button_release): Make 
3608         double-click-to-select-word work.
3609         
3610 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
3611
3612         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
3613         Don't move back one char when we are actually at the end of the 
3614         paragraph.
3615
3616 2000-11-15  Robert Brady  <robert@suse.co.uk>
3617
3618         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
3619         'o' < 'p'.
3620         
3621         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
3622         bind_textdomain_codeset.
3623
3624         (gtk_init_check): Make the warning about translating default:LTR
3625         sterner.
3626         
3627 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
3628
3629         * **/Makefile.am : remove unecessary rules for win32-specific
3630         config-substituted targets. If you want these rules, use
3631         --enable-maintainer-mode (called automatically by autogen.sh).
3632         Stops a lot of unneccessary make-time warnings.
3633
3634         * gtk/gtktext{layout,display}.c: Factor in total width as
3635         well as screen when figuring alignment for word-wrap as well as
3636         no wrap; this is necessary to handle lines that cannot be wrapped
3637         at all.
3638
3639 2000-11-15  Havoc Pennington  <hp@redhat.com>
3640
3641         * gtk/testtext.c: Implement essential color cycling feature
3642
3643 2000-11-15  Havoc Pennington  <hp@redhat.com>
3644
3645         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
3646         when we invalidate the main window.
3647
3648         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
3649         GtkTextView will now invalidate the side windows for us when text
3650         changes.
3651
3652 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
3653
3654         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
3655         unconditionally, since we may need to update the horizontal
3656         scrollbars even if the height didn't change.
3657
3658         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
3659         the extra attrs, since some of them affect size.
3660
3661         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
3662         x_offset correctly.
3663
3664 2000-11-15  Havoc Pennington  <hp@redhat.com>
3665
3666         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
3667         don't move the first line out into the margin, instead move the
3668         whole paragraph in order to make space for the first line within 
3669         the margin
3670
3671 2000-11-15  Havoc Pennington  <hp@redhat.com>
3672
3673         * gtk/gtktextview.c (changed_handler): offset redraw rect by
3674         xoffset in addition to yoffset, so horizontal scrolling doesn't
3675         break redraws
3676
3677 2000-11-15  Havoc Pennington  <hp@redhat.com>
3678
3679         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
3680         from the cursor
3681         (render_layout_line): fix reversed test that caused weird
3682         underlines to get drawn
3683
3684 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
3685
3686         * gdk/linux-fb/gdkprivate-fb.h:
3687         Fix debug macros.
3688         
3689 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
3690
3691         * gdk/linux-fb/gdkprivate-fb.h:
3692         Added virtual functions set_pixel, get_color,
3693         fill_span and draw_drawable to the GC.
3694         Added global _gdk_fb_screen_gc to use instead of
3695         NULL when drawing to the screen.
3696         Added _gdk_fb_gc_calc_state() prototype.
3697
3698         * gdk/linux-fb/gdkgc-fb.c:
3699         Call _gdk_fb_gc_calc_state() on any gc state change.
3700
3701         * gdk/linux-fb/gdkglobals-fb.c:
3702         Add _gdk_fb_screen_gc
3703                 
3704         * gdk/linux-fb/gdkdrawable-fb2.c:
3705         _gdk_fb_gc_calc_state() calculates best functions
3706         for the GC state and depth.
3707         Moved bpp specialized code to separate functions.
3708         Added optimized 24 bpp AA draw_drawable.
3709
3710         * gdk/linux-fb/gdkevents-fb.c:
3711         Silence gcc warning.
3712
3713         * gdk/linux-fb/gdkimage-fb.c:
3714         Use _gdk_fb_screen_gc
3715
3716         * gdk/linux-fb/gdkwindow-fb.c:
3717         Init and use _gdk_fb_screen_gc
3718
3719         * gdk/linux-fb/mitypes.h:
3720         Remove unused types.
3721
3722 2000-11-14  Havoc Pennington  <hp@pobox.com>
3723
3724         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
3725         to pixels
3726
3727 2000-11-14  Havoc Pennington  <hp@pobox.com>
3728
3729         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
3730
3731         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
3732         unknown char, no real reason we were using a variable. 
3733         Remove gtk_text_unknown_char variable. Fix all the text widget
3734         files accordingly.
3735
3736         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
3737         since the Unicode spec seems to prefer that character for our
3738         purposes.
3739
3740 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
3741
3742         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
3743         value of g_getenv() isn't freeable, so g_strdup it.
3744
3745         * modules/input/inuktitut.c: Inuktitut input method.
3746
3747         * modules/input/Makefile.am: Build this.
3748         
3749 2000-11-14  Elliot Lee  <sopwith@redhat.com>
3750
3751         * gtk/Makefile.am: Install gtk.immodules, needed for operation
3752         of gtk programs.
3753
3754 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
3755
3756         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
3757         reversed > that was causing Home to go to end of previous line.
3758
3759         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
3760         modified-keypresses (leave for bindings.)
3761
3762         * modules/input/Makefile.am: Remove useless -export-dynamic
3763         from module LDFLAGS.
3764
3765 2000-11-14  Havoc Pennington  <hp@redhat.com>
3766
3767         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
3768         higher.
3769
3770         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
3771         account. Also, render rise, underline, background, etc. for
3772         pixbufs as well as text. Also, draw underlines one pixel higher.
3773
3774         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
3775         PangoAttribute for the rise, so it gets drawn properly. Also,
3776         add the GtkTextAppearance attribute for pixbuf/widget segments
3777         as well; we should go ahead and have rise, underline, background,
3778         stipple work for those
3779
3780         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
3781         Pango
3782
3783 2000-11-15  Tor Lillqvist  <tml@iki.fi>
3784
3785         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
3786
3787         * gtk/gtk.def: Update.
3788
3789         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
3790         included.
3791         (gtk_rc_get_im_module_file): Use run-time installation directory
3792         on Win32.
3793
3794         * gdk/win32/rc/gdk.rc: Remove.
3795         * gdk/win32/rc/gdk.rc.in: New file.
3796         * gdk/win32/rc/Makefile.am: New file
3797         * gdk/win32/Makefile.am: Corresponding changes.
3798
3799         * gtk/gtk.rc: Remove.
3800         * gtk/gtk-win32.rc.in: New file.
3801         * gtk/Makefile.am: Corresponding changes.
3802
3803         * configure.in: Corresponding changes.
3804
3805         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
3806         has a built gtkcompat.h. Developers using CVS code on Win32 can
3807         hand-edit it from gtkcompat.h.in.
3808
3809         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
3810         gtkcompat.h from gtkcompat.h.win32.
3811
3812 2000-11-14  Havoc Pennington  <hp@redhat.com>
3813
3814         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
3815         to default to GDK_ACTION_MOVE if the drag is within a single
3816         widget. Defaults to GDK_ACTION_COPY between widgets.
3817
3818 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
3819
3820         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
3821
3822         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
3823
3824         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
3825         srcdir != builddir
3826
3827         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
3828
3829         * configure.in (GTK_VERSION): Up to 1.3.2
3830
3831         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
3832         gtkimcontextxim.h
3833
3834         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
3835         missing doc comment.
3836
3837 2000-11-14  Alexander Larsson  <alexl@redhat.com>
3838
3839         * modules/linux-fb/basic.c:
3840         Use the glib iconv wrappers.
3841
3842 2000-11-13  Havoc Pennington  <hp@pobox.com>
3843
3844         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
3845         still more bugs.
3846
3847         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
3848         scroll the GdkWindows before realization.
3849
3850 2000-11-13  Havoc Pennington  <hp@redhat.com>
3851
3852         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
3853         where GC didn't always get updated properly
3854
3855         * demos/gtk-demo/textview.c (create_tags): Use subattributes
3856         of fonts instead of setting the entire font
3857
3858         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
3859         setting entire font
3860
3861         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
3862
3863         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
3864         a bunch of individually-settable font attributes. You can still 
3865         use the "font" and "font_desc" args, they just set all the font
3866         attributes at once.
3867
3868 2000-11-13 Elliot Lee <sopwith@redhat.com>
3869
3870         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
3871
3872 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
3873
3874         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
3875         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
3876
3877         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
3878         work better.
3879
3880 2000-11-13  Havoc Pennington  <hp@redhat.com>
3881
3882         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
3883         the module file.
3884
3885         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
3886         dest->language
3887
3888         * gtk/testtext.c: Test pixels above/below/inside paragraphs
3889         settings
3890
3891         * gtk/gtktextview.c: Implement object args and setters/getters for
3892         all the aspects of the GtkTextAttributes that are not set from
3893         GtkWidget attributes. This is spacing, justification, margins,
3894         etc.
3895
3896         (gtk_text_view_set_arg)
3897         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
3898         args
3899         (gtk_text_view_class_init): Add args for justify, left_margin,
3900         right_margin, indent, and tabs
3901         
3902
3903         * gtk/gtktextlayout.c (set_para_values): fix to display indent
3904         attribute properly
3905
3906         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
3907         replace with indent attribute
3908
3909         * gtk/gtktextlayout.c (set_para_values): multiply indent by
3910         PANGO_SCALE
3911
3912         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
3913         rearranging code to do that
3914         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
3915         i.e. don't subtract the top_margin first, just to keep
3916         all margin-futzing in one place.
3917
3918         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
3919
3920         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
3921         special case of last line, Pango now handles this itself.
3922         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
3923         Y coordinate
3924         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
3925         (find_display_line_above): wasn't moving the byte index as it
3926         iterated over lines, so always returned byte 0. Also, port to use
3927         PangoLayoutIter.
3928         (find_display_line_below): same problem as
3929         find_display_line_above. Also, port to use PangoLayoutIter.
3930
3931 2000-11-13  Alexander Larsson  <alexl@redhat.com>
3932
3933         * gdk/linux-fb/*.[ch]:
3934         Massive reindent to gtk+ standard. My hands hurt.
3935
3936         * gdk/linux-fb/gdkcolor-fb.c:
3937         Move GdkColorPrivateFB from inherited to windowing_data
3938
3939         * gdk/linux-fb/gdkcursor-fb.c:
3940         _gdk_cursor_new_from_pixmap made static
3941
3942         * gdk/linux-fb/gdkdnd-fb.c:
3943         GdkDragContextPrivate moved to windowing_data
3944
3945         * gdk/linux-fb/gdkdrawable-fb2.c:
3946         Removed endian.h, use glib endianness macros instead
3947         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
3948         and GDK_DRAWABLE_IMPL_FBDATA
3949
3950         * gdk/linux-fb/gdkfont-fb.c:
3951         Add empty gdk_font_load(). Needed for linking of Gtk+.
3952
3953         * gdk/linux-fb/gdkimage-fb.c:
3954         Removed endian.h, use glib endianness macros instead
3955         Moved GdkImagePrivateFB to windowing_data
3956         gdk_image_new_bitmap didn't always allocate enough
3957         memory.
3958
3959         * gdk/linux-fb/gdkinput-ps2.c:
3960         Added semi-working support for MS serial mice.
3961
3962         * gdk/linux-fb/gdkprivate-fb.h:
3963         s/GdkWindowPrivate/GdkWindowObject/
3964         Removed GdkWindowPrivate typedef
3965         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
3966         Removed GDK_DRAWABLE_P
3967         Move GdkColorPrivateFB from inherited to windowing_data
3968         Moved GdkImagePrivateFB to windowing_data
3969
3970         * gdk/linux-fb/gdkvisual-fb.c:
3971         Removed some unused debug code.
3972
3973         * gdk/linux-fb/gdkwindow-fb.c:
3974         Use stock cursors instead of including X headers.
3975         s/GdkWindowPrivate/GdkWindowObject/
3976
3977         * gdk/linux-fb/mitypes.h:
3978         Removed unused types.
3979
3980         * modules/linux-fb/basic.c:
3981         Use the pango fribidi wrappers.
3982
3983 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3984
3985         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
3986         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
3987         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
3988         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
3989         GEqualFunc where applicable.
3990         
3991         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
3992         pango_font_description_equal as changed in pango.
3993         
3994         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
3995
3996         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
3997
3998         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
3999
4000         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
4001
4002         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
4003
4004         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
4005
4006         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
4007         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
4008
4009         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
4010         gtk_rc_styles_compare -> gtk_rc_styles_equal.
4011
4012 2000-11-12  Havoc Pennington  <hp@pobox.com>
4013
4014         * demos/gtk-demo/Makefile.am (democodedir): change demo install
4015         dir to datadir/gtk+-2.0/demo
4016
4017         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
4018         sorts of text widget and Pango font bugs. Urgh.
4019
4020         * demos/gtk-demo/Makefile.am (demos): Add textview.c
4021
4022         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
4023         tree that you should double click to see the demo. Fix 
4024         types of variables to reflect changed return values from 
4025         GtkTreeStore and GtkTreeViewColumn constructors.
4026
4027         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
4028         newly-created buffer to prepare for GObject semantics
4029
4030         * gtk/testtext.c: don't leak the buffer with GObject semantics
4031
4032         * gtk/testtextbuffer.c: ditto
4033         
4034 2000-11-12  Havoc Pennington  <hp@pobox.com>
4035
4036         Rename this testgtk to gtk-demo to avoid confusion, and 
4037         install it so people can use it as a supplement to 
4038         the documentation.
4039         
4040         * demos/gtk-demo: Moved from demos/testgtk
4041
4042         * demos/testgtk: Removed
4043
4044         * configure.in: make Makefile in gtk-demo
4045         
4046         * demos/gtk-demo/Makefile.am: Install sample source to 
4047         datadir/gtk-demo (maybe there's a better place?), and 
4048         rename the binary to gtk-demo
4049         
4050         * demos/gtk-demo/main.c (load_file): Load installed sample
4051         source if source isn't found in pwd.
4052
4053 2000-11-09  Havoc Pennington  <hp@pobox.com>
4054
4055         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
4056         argument to set the char displayed when visibility == FALSE
4057         (gtk_entry_create_layout): If !entry->visible, replace 
4058         all chars with the "invisible char"
4059
4060         * gtk/testgtk.c: Test the invisible_char deal
4061         
4062 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
4063
4064         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
4065         can't get a native font in the right encoding.
4066
4067 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
4068
4069         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
4070         respectively.
4071
4072 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
4073
4074         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
4075         Fix warning when moving between paragraphs.
4076
4077         * gtk/gtkentry.[ch]: Change move => move_cursor, 
4078         delete => delete_from_cursor, insert => insert_at_cursor
4079
4080 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
4081
4082         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
4083
4084         * modules/input/imthai-broken.c: A Thai input method for use if
4085         Thai keys are really generating Latin1 keysyms.
4086
4087         * modules/input/Makefile.am: Build these.
4088
4089 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
4090
4091         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
4092         g_filename_{to,from}_utf8 now takes an extra parameter.
4093
4094         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
4095         strftime into UTF-8.
4096
4097         (column_from_x, gtk_calendar_paint_day_names): Support RTL
4098         calendars.
4099
4100         (gtk_calendar_paint_day_names): Draw day names in the right 
4101         place.
4102         
4103 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
4104
4105         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
4106         problem with using result of g_get_charset() backwards -
4107         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
4108
4109         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
4110         negative min_width/height and max_width/height to
4111         mean "requisition"; this allows setting a window
4112         to be user-resizable in only one direction easily.
4113
4114         * gtk/testgtk.c (create_main_window): Remove hard-coded
4115         usize - set a default size in the vertical direction.
4116
4117 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
4118
4119         * gtk/gtkrange.c: Add some missing casts. Support 
4120         2 and 3 button clicks on the arrows to mean 
4121         "move by pages" and "jump to end". (Like gtkspinbutton)
4122
4123 2000-11-12 Hans Breuer <Hans@Breuer.Org>
4124
4125         * gdk/win32/makefile.msc : reflect build module changes
4126
4127         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
4128         from GdkPixmap*, cast implementation member instead.
4129
4130         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
4131         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
4132         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
4133         more Gdi functions return value checking. 
4134         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
4135         GdkImagePrivateWin32 *.
4136
4137         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
4138         menus useable again. Add #pragma message to keep reminded on this issue.
4139         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
4140         windows. This allows to enable backing store on Win32!
4141
4142         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
4143         in drawable is of impl type. Correct specific type checks appropriate.
4144  
4145         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
4146         GDK_WINDOW_DESTROYED before allocating new resources.
4147
4148         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4149
4150         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4151         (gdk_window_foreign_new) initialize parent handle.
4152         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4153
4154         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4155         Let the GDI invalidate the window on MoveWindow call to fix scrolling
4156         problems (e.g. main buttons in testgtk). 
4157
4158 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
4159
4160         * gtk/gtkentry.c (gtk_entry_key_press): Call 
4161         gtk_widget_activate for GDK_Return.
4162
4163         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4164         of preedit cursor position.
4165
4166 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
4167
4168         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4169         static.
4170
4171 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
4172
4173         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4174         out support for multiple locales; that simple doesn't
4175         work reliably with current Xlib
4176
4177         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
4178         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
4179         Add support for positioning the cursor within the preedit string.
4180
4181 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
4182
4183         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
4184         at XIM input method module.
4185
4186         * gtk/gtktextview.c: Check for bindings after passing
4187         events to im context filter.
4188
4189 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
4190
4191         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
4192         empty attribute lists properly.
4193
4194 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
4195
4196         * gtk/queryimmodules.c (main): Return non-zero exit
4197         status if errors were encountered querying any
4198         modules.
4199
4200         * modules/input/Makefile.am (moduledir): remove
4201         leftover bin program target.
4202
4203         * docs/make-todo: Fix typo in error message.
4204
4205 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
4206
4207         * configure.in: Add modules/input/Makefile
4208
4209 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
4210
4211         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
4212         don't include gtkthemes.h.
4213
4214         * gtk/testgtk.c gtk/testtext.c: Set environment variables
4215         to point
4216
4217         * gtk/Makefile.am: Add new .c and .h files, build 
4218         gtk-query-immodules and use it to create a gtk.immodules
4219         file for use of test programs.
4220
4221         * gtk/gtkpreview.c: remove extra blank line.
4222
4223 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
4224
4225         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
4226         Add the ability to add extra tables beyond the default
4227         one, and also the ability to have compose sequences 
4228         that are prefixes of other compose sequences. 
4229
4230         * gtk/gtkimcontextsimple.c: Export a preedit string which
4231         consists of possible candidates for keystrokes that have
4232         been entered but not yet committed.
4233
4234         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
4235         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
4236
4237         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
4238         Add a function to add input-method switching menu items
4239         to a menu.
4240
4241         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
4242         when switching input methods.
4243
4244         * gtk/gtkimcontextsimple.[ch]: Change the format of
4245         the compose table to allow compose tables of different
4246         lengths / sequence.
4247
4248 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
4249
4250         * gtk/gtkimmodule.[ch]: Support routines for loading
4251         GtkIMContext implementations dynamically at runtime.
4252
4253         * modules/input/imcyrillic-translit.c: A sample input
4254         method (based on GtkIMContextSimple with an extra table),
4255         which demonstrates preedit strings and the module
4256         system for input modules
4257
4258         * gtk/queryimmodules.c: Program to query the available
4259         input modules and write the results into a file.
4260          
4261         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
4262         extra config options "im_module_file" (cache file for
4263         input method modules), and "im_module_path" - path
4264         to look for modules when generating cache file.
4265
4266         This doesn't scale.
4267
4268 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
4269
4270         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
4271         generic code from gtkthemes into a new abstraction
4272         GtkModule which has the logic for implementing
4273         a loadable module which implements a number of 
4274         GObject types.
4275
4276 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
4277
4278         * gtk/gtkeditable.[ch]: Convert GtkEditable from
4279         a class into an interface  
4280         
4281         * gtk/gtkoldeditable.[ch]: Move the old editable
4282         implementation into here, so legacy widgets can
4283         still rely on the implemenation. GtkOldEditable
4284         exports GtkEditable. Make selection handling
4285         code use new text conversion functions (and
4286         handle UTF-8 as a side-effect). Use GtkClipboard
4287         for CLIPBOARD.
4288
4289         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
4290         Adopt to match above changes.
4291
4292         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
4293         avoid GtkOldEditable implementation. Restructure
4294         to reduce number of places that modify state directly.
4295         Move to GtkBindingSet. Display the preedit string.
4296         Queue recomputation of PangoLayout and scroll position
4297         to improve effiency of doing complex changes naively.
4298         Add a menu with cut/copy/paste and input method selection.
4299
4300 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
4301
4302         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
4303         to set preedit string and attributes; display preedit string by
4304         inserting string and attributes at cursor when creating the
4305         GtkTextLineDisplay.
4306
4307         * gtk/gtktextlayout.c: Move all conversions between byte
4308         positions in PangoLayout and GtkTextIter into new functions
4309         line_display_iter_to_index/index_to_iter that properly
4310         handle the preedit string.
4311
4312         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
4313         it to return const char * (eventually will end up
4314         as GCONST char *, most likely.)
4315
4316         * gtk/gtktextview.[ch]: Handle the preedit string, call
4317         gtk_im_context_reset() as necessary, add a menu to switch
4318         input methods.
4319         
4320         * gtk/gtktextlayout.[ch]: Remove useless
4321         gtk_text_layout_get_log_attrs() function.
4322
4323 2000-11-11  Tor Lillqvist  <tml@iki.fi>
4324
4325         * gdk/gdk.def
4326         * gtk/gtk.def: Update.
4327
4328         * gdk/win32/*.c: Add last argument to g_type_register_static()
4329         calls.
4330
4331         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
4332
4333         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
4334         generated by older wheel mouse drivers. Get the correct y
4335         coordinate from WM_MOUSEWHEEL messages.
4336
4337         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
4338         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
4339         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
4340         Debugging functions.
4341
4342         * gdk/win32/gdkprivate-win32.h: Declare them.
4343
4344         * gdk/win32/gdkinput-win32.h: Add declaration for
4345         gdk_input_window_destroy().
4346
4347         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
4348
4349 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
4350
4351         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
4352         function to help handle keeping things in sync.
4353
4354 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
4355
4356         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
4357         BOXED marshallers.
4358
4359         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
4360         (gtk_list_store_class_init): use the new BOXED marshallers.
4361
4362         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
4363         new_with_values to new_with_types.
4364         (gtk_tree_store_get_column_type): add this.
4365         (gtk_tree_store_class_init): use the new BOXED marshallers.
4366
4367         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
4368         mirror some POINTER marshallers.
4369
4370 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
4371
4372         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
4373         allow more interesting iterators.  Also, made the lifecycle of
4374         iterators more explicit.
4375
4376         * gtk/gtktreemodelsort.[ch]: New model for sorting.
4377
4378         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
4379         types.
4380
4381 2000-11-09  Alexander Larsson  <alexl@redhat.com>
4382
4383         * demos/testgtk/menus.c:
4384         Changes to make the new testgtk compile after
4385         gtk_menu_append was removed.
4386
4387         * gdk/linux-fb/gdkdrawable-fb2.c
4388         (gdk_fb_get_depth, gdk_fb_get_visual,
4389         gdk_drawable_impl_fb_class_init): Implement
4390         these drawable functions. Now GtkImages work again.
4391
4392         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
4393
4394         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4395         
4396         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4397         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4398         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4399         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4400
4401 2000-11-08  Havoc Pennington  <hp@pobox.com>
4402
4403         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4404         visible_set args, don't know where these had gone, I thought they
4405         used to be there
4406
4407         * gtk/testtext.c: Add a menu item to apply invisibility tag;
4408         now we can test the feature and see that it's totally broken.
4409
4410 2000-11-08  Havoc Pennington  <hp@pobox.com>
4411
4412         Make DND copy pixbufs and tags when source and target share a 
4413         tag table.
4414         
4415         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4416         in-process GTK_TEXT_BUFFER_CONTENTS target
4417         (gtk_text_view_drag_data_received): Paste from
4418         GTK_TEXT_BUFFER_CONTENTS if we receive it.
4419
4420 2000-11-08  Alexander Larsson  <alexl@redhat.com>
4421
4422         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4423         API changes.
4424
4425         * gtk/gtkmenu.c: Add support for scrolling menus.
4426         Remove gtk_menu_append/prepend/insert, these have been moved to
4427         gtkcompat.h as #defines.
4428
4429         * gtk/gtkcompat.h.in:
4430         Add compatibility #defines for gtk_menu_append/prepend/insert
4431
4432         * gtk/gtkmenu.h: Add data needed for scrolling menus.
4433         GtkMenuPositionFunc gets an extra argument push_in.
4434         gtk_menu_append/prepend/insert removed.
4435         
4436         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4437         positioning behaviour to fit to scrolling menus.
4438
4439         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4440         into menuitem->submeny. That is wrong, and broke torn
4441         off submenus of torn off menus, since they were unrealized
4442         when the first menu was unrealized.
4443
4444         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4445         gtk_menu_shell_select_item() since these need to be overridden in
4446         GtkMenu.
4447
4448         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4449         positioning behaviour to fit to scrolling menus.
4450         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4451         the current item so that it is prelighted when the menu pops up.
4452         This is a workaround to the fact that the menu doesn't get the
4453         initial enter event (due to grabs).
4454
4455         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4456         s/gtk_menu_append/gtk_menu_shell_append/
4457
4458         * gtk/gtknotebook.c:
4459         s/gtk_menu_insert/gtk_menu_shell_insert/
4460
4461         * gtk/testgtk.c (create_menu, create_menus):
4462         Create the first menu with 50 items so that menu scrolling
4463         can be tested.
4464         
4465         
4466         Patch from Jonathan Blandford  <jrb@redhat.com>
4467
4468         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4469         system to handle size requests.  First, we ask what the size of
4470         the toggle is.  Then, when allocating the size, we allocate the
4471         toggle_size first.  This way we can have multiple menu-item
4472         classes w/o needing a seperate class for each.
4473
4474         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4475         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4476
4477         * gtk/gtkcheckmenuitem.c
4478         (gtk_check_menu_item_toggle_size_request): New function to handle
4479         the toggle size-request.
4480
4481 2000-11-07  Havoc Pennington  <hp@redhat.com>
4482
4483         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4484         Half-ass somewhat fix this function, so that scrolling to the
4485         insertion point works. Pango hacking is in the future to really
4486         fix it.
4487
4488         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4489         length of data, no longer used.
4490
4491         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4492         method contents in here, get rid of destroy method
4493         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4494         that were backward. Remove debug spew.
4495         (cut_or_copy): Make the clipboard work with insert_range to
4496         preserve tags and pixbufs, not just the primary selection.
4497
4498 2000-11-07  Havoc Pennington  <hp@redhat.com>
4499
4500         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
4501         to gtk_text_mark_get_visible
4502
4503         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4504         bug that was generating an invalid iterator
4505
4506         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4507         ensure_char_offsets() in front of code placing the iter in an
4508         invalid state.
4509
4510         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4511         make override_location arg const
4512         (paste): Replace the selection if we paste into the 
4513         current selection
4514
4515         * gtk/gtkselection.h: Remove "GtkSelectioData"
4516         (struct _GtkSelectionData): move the definition here.
4517
4518         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4519         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4520
4521         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4522
4523         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4524         (gtk_text_buffer_insert_range_interactive): implement
4525         (gtk_text_buffer_get_tags): Remove, replaced by
4526         gtk_text_iter_get_tags()
4527
4528         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4529         limit parameter, to avoid infinite linear scan.
4530         (gtk_text_iter_backward_search): Add search limit
4531         (gtk_text_iter_forward_find_char): Add search limit
4532         (gtk_text_iter_backward_find_char): Add search limit
4533
4534 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
4535
4536         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4537         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
4538         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
4539         gdk/linux-fb/gdkwindow-fb.c:
4540         use g_object_new() instead of g_type_create_instance() which
4541         is a private function for fundamental type implementations.
4542
4543         * gdk/linux-fb/gdkinput-ps2.c:
4544         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
4545         instead just store the current modifier state. Add a (somewhat broken)
4546         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
4547         Rename exported function gdk_input_ps2_get_mouseinfo to
4548         gdk_input_get_mouseinfo.
4549
4550         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
4551         gdk/linux-fb/gdkwindow-fb.c:
4552         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
4553         
4554
4555 2000-11-02  Havoc Pennington  <hp@redhat.com>
4556
4557         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
4558         use stock buttons. Should be 100% source compatible, appropriate
4559         filesel fields now point to dialog->vbox and dialog->action_area.
4560         On the bizarre side, dialog->action_area and filesel->action_area
4561         are not the same widget.
4562         (gtk_file_selection_init): Put some padding around the selection
4563         entry, so it isn't touching the GtkDialog separator.    
4564
4565         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
4566         use stock buttons, etc. Should also be source compatible.
4567         Set the dialog default title in _init not _new().
4568         
4569         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
4570         Use stock buttons; don't put a button box inside the existing
4571         dialog button box. Don't bother with push/pop colormap anymore.
4572
4573         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
4574         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
4575         for message dialog, and necessary for the font selection and color
4576         selection with help and apply buttons.
4577         
4578         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
4579         to the created button widget. Set GTK_CAN_DEFAULT on the button.
4580         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
4581         between buttons, put less padding around the action area.
4582         (gtk_dialog_run): Exit on unmap rather than on destroy. 
4583         This will also exit the loop if the widget is hidden.
4584         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
4585         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
4586         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
4587         special-case delete event.
4588
4589         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
4590         formatting
4591         
4592 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
4593
4594         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
4595         button to temporarily disable position recording in the
4596         "saved position" test.
4597
4598 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
4599
4600         * gtk/gtkthemes.c: added compat code that temporarily implements
4601         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
4602         going to be revamped by owen's upcoming GtkModule patches, but
4603         untill then people want gtk to build, right? ;)
4604
4605 2000-11-04  Havoc Pennington  <hp@pobox.com>
4606
4607         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
4608         list
4609
4610         * docs/Changes-2.0.txt: Add note about
4611         gtk_container_get_toplevels()
4612
4613         * gtk/gtktextview.h: formatting
4614         
4615         * gtk/gtktextview.c: don't start descriptions with "Returns",
4616         confuses gtk-doc
4617
4618 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
4619
4620         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
4621         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
4622
4623 2000-11-03  Havoc Pennington  <hp@redhat.com>
4624
4625         * gtk/gtktexttagtable.c: Docs
4626         (gtk_text_tag_table_size): return a signed int
4627
4628         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
4629         (gtk_text_tag_event): make the event_object a GObject
4630
4631         * gtk/gtktextview.c: Write API docs for all functions.
4632
4633         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
4634         for gtk_text_view_get_window_type() called on one of the private
4635         windows.
4636
4637         * gtk/gtktextview.c: Instead of accessing text_view->buffer
4638         directly, call get_buffer() which demand-creates a default
4639         buffer. So gtk_text_view_new() can be used to create a view with a
4640         default buffer in it, if you just want an empty text box users can
4641         put data in. Useful for GUI builders also.
4642
4643 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
4644
4645         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
4646         the charset encodign portion MUST be in lowercase.
4647         * gtk/gtkrc.az: added file for Azeri language
4648
4649 2000-11-03  Havoc Pennington  <hp@redhat.com>
4650
4651         Get widgets working on the btree/buffer side. Display of them 
4652         still doesn't work.
4653         
4654         * gtk/gtktextview.c: start implementing child widget stuff
4655
4656         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
4657
4658         * gtk/gtktextlayout.c: handle embedded widgets
4659
4660         * gtk/gtktextdisplay.c: handle embedded widgets
4661
4662         * gtk/gtktextchild.c: Implement all the child anchor goo
4663
4664         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
4665         function
4666
4667         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
4668         (insert_pixbuf_or_widget_segment): abstract out common portions of 
4669         creating a child anchor or a pixbuf segment.
4670         (gtk_text_btree_create_child_anchor): new function
4671         (gtk_text_btree_unregister_child_anchor): new function
4672
4673         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
4674         allocate_child signal on GtkTextLayout
4675
4676         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
4677         values
4678         (gtk_text_iter_get_child_anchor): new function
4679
4680         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
4681         default handler for the changed signal, which calls
4682         gtk_text_buffer_set_modified(), instead of just always emitting
4683         changed then calling set_modified() manually. I guess this is
4684         maybe more flexible. It seems logical.
4685
4686 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
4687
4688         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
4689         now.
4690
4691         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
4692
4693 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
4694
4695         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
4696         been marked static.
4697
4698 2000-11-02  Havoc Pennington  <hp@redhat.com>
4699
4700         * gtk/testgtk.c (create_labels): had a test backward
4701
4702         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
4703         fields, so the dest GC ends up with the correct clip origin, 
4704         etc. Fixes a bug where colored labels didn't redraw 
4705         properly.
4706
4707 2000-11-02  Alexander Larsson  <alexl@redhat.com>
4708
4709         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4710         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
4711         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
4712         Add last argument to t_type_register_static call.
4713         
4714         * gdk/linux-fb/gdkdrawable-fb2.c:
4715         Add last argument to t_type_register_static call.
4716         export the get_image drawable virtual function.
4717
4718         * gdk/linux-fb/gdkimage-fb.c:
4719         Add last argument to t_type_register_static call.
4720         rename gtk_image_get to _gdk_fb_get_image and
4721         export it for use by gdkdrawable-fb2.
4722
4723         * gdk/linux-fb/gdkprivate-fb.h:
4724         export _gdk_fb_get_image.
4725
4726         * gdk/linux-fb/gdkselection-fb.c:
4727         Add new api call stubs.
4728
4729         * gtk/Makefile.am:
4730         Missing ( in linux-fb part.
4731
4732         * modules/linux-fb/Makefile.am:
4733         Must link with gdk_pixbuf or get unresolved symbol.
4734
4735 2000-11-01  Havoc Pennington  <hp@pobox.com>
4736
4737         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
4738         GTK_TYPE_TEXT_ITER and BOXED marshallers
4739
4740         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
4741
4742         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
4743         
4744         * gtk/gtk-boxed.defs: add GtkTextIter
4745
4746         * gtk/gtkmarshal.list: Add marshallers for text widget that 
4747         properly use OBJECT and BOXED
4748
4749 2000-11-01  Havoc Pennington  <hp@redhat.com>
4750
4751         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
4752
4753         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
4754         before returning it. 
4755         
4756 2000-11-01  Havoc Pennington  <hp@redhat.com>
4757
4758         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4759         Clip the rectangle to be rendered to the drawable, since
4760         get_from_drawable() requires a region within the drawable
4761
4762 2000-11-01  Havoc Pennington  <hp@redhat.com>
4763
4764         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
4765         from coordinates.
4766
4767 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
4768
4769         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
4770         it isn't NULL.
4771
4772 2000-11-01  Havoc Pennington  <hp@pobox.com>
4773
4774         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
4775         on a label
4776         (gtk_label_finalize): unref the attr list if any.
4777
4778         * gtk/testgtk.c (create_get_image): close test on second click
4779         (make_message_dialog): close dialog if it exists
4780
4781         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
4782
4783         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
4784         gdk-pixbuf
4785
4786         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
4787         from Pango markup format
4788         (gtk_label_set_markup_with_accel): ditto but with accelerator
4789         parsing
4790
4791         * gtk/gtkimage.c (gtk_image_expose): reformatting.
4792
4793         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
4794         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
4795         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
4796         call gdk_window_get_origin().
4797
4798         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4799         implement GDK_PIXBUF_ALPHA_FULL
4800         
4801 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
4802
4803         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
4804         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
4805         g_signal_handlers_disconnect_matched to block/unblock and disconnect
4806         multiple handlers respectively, instead of only treating the
4807         first handler found (bug reported by owen).
4808
4809 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
4810
4811         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
4812
4813         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
4814
4815         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
4816         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
4817         gtk/gtktreeviewcolumn.h: Fixed inline docs.
4818
4819         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
4820         widget.  Needs writing someday.
4821
4822         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
4823         the docs.
4824
4825 2000-10-30  Havoc Pennington  <hp@redhat.com>
4826
4827         * gtk/gtktextview.h, gtk/gtktextview.c:
4828         Rename delete_at_cursor delete_from_cursor, and 
4829         move to move_cursor.
4830
4831 2000-10-30  Havoc Pennington  <hp@redhat.com>
4832
4833         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
4834         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
4835         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
4836         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
4837         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
4838         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
4839         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
4840         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
4841         gtktexttypes.h, gtktextview.c, gtktextview.h:
4842
4843         Massive reindentation and reformatting. Arg alignment and comments
4844         still need fixing in various places.
4845
4846 2000-10-30  Havoc Pennington  <hp@redhat.com>
4847
4848         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
4849         to be named insert_at_cursor and delete_at_cursor so C++ can
4850         handle them.
4851
4852 2000-10-28  Tor Lillqvist  <tml@iki.fi>
4853
4854         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
4855         to get a double directory separator in case the home directory
4856         ends with one. This would cause trouble especially on Windows,
4857         where the path will be confused with the syntax for an an UNC
4858         (network share) path \\server\share\path.
4859         (gtk_rc_add_initial_default_files): Ditto.
4860
4861 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
4862
4863         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
4864
4865         * gtk/gtktextview.c: Use correct marshallers.
4866
4867 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
4868
4869         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
4870         use new iter stuff, and added all the appropriate signals et al.
4871
4872         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
4873         code is internal to gtk only.
4874
4875 2000-10-28  Tor Lillqvist  <tml@iki.fi>
4876
4877         * gtk/gtk.def
4878         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
4879         glib-genmarshal etc.
4880
4881 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
4882
4883         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
4884         parallel builds.
4885
4886 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
4887
4888         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
4889
4890 2000-10-27  Robert Brady  <robert@suse.co.uk>
4891
4892         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
4893         en_GB (British), ia (Interlingua).
4894
4895 2000-10-26  Havoc Pennington  <hp@redhat.com>
4896
4897         * gtk/gtktextiter.c (my_strrstr): fix constness warning
4898
4899         Fixed output of:
4900         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
4901         
4902         * gtk/gtktextsegment.c (char_segment_new): rename
4903         (_char_segment_new_from_two_strings): rename
4904         (_toggle_segment_new): rename
4905         
4906         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
4907         (make_clipboard_widget): make it static
4908         (text_get_func): static
4909         (text_clear_func): static
4910
4911         * gtk/gtkcolorsel.c (adjustment_changed): make this function
4912         static
4913         (hex_changed): make it static
4914         (hsv_changed): make it static
4915         (opacity_entry_changed): make it static
4916
4917         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
4918         (toggle_segment_check_func): rename with _gtk
4919
4920         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
4921         (_widget_segment_new): rename
4922         (_widget_segment_add): rename
4923         (_widget_segment_remove): rename
4924         (_widget_segment_ref): rename
4925         (_widget_segment_unref): rename
4926
4927         * gtk/gtktextmark.c (_mark_segment_new): Rename
4928         _gtk_mark_segment_new   
4929
4930 2000-10-26  Havoc Pennington  <hp@redhat.com>
4931
4932         * gtk/gtkmarshal.list: add new marshallers used by the text widget
4933         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4934         types
4935
4936         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
4937         marshaller types
4938
4939         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
4940         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
4941         license on these files.
4942
4943         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
4944         work.
4945
4946         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
4947         runtime random number different for each tree, instead of 
4948         a constant I made up.
4949
4950 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
4951
4952         * gtk/Makefile.am: buncha cleanups, kludged build sources
4953         dependencies with a Makefile: oldest-source-stamp dependancy
4954         for the moment. automake is really fighting us here, with
4955         intentionally not allowing user-defined rules or dependancies
4956         prior to it's -include $(DEP_FILES) statement. sucks rocks!
4957
4958         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
4959         to public headers. tehy have a comment stating that they are
4960         "semi-public" aren't included by gtk.h and if enums popup there,
4961         they can be /*< skip >*/-ed.
4962
4963         * gtk/gtktextlayout.h: 
4964         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
4965         added LGPL... <SIGH>
4966
4967 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
4968
4969         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
4970         GtkTreeIter.  Added iterators everywhere.
4971
4972         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
4973
4974         * gtk/gtktreeviewselection.c: Changed to use the iterators.
4975
4976         * gtk/gtktreestore.c: Changed to use the iterators.
4977
4978         * gtk/gtkliststore.c: Commented out the code.  Will convert to
4979         iterators tomorrow.
4980
4981         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
4982         iterators tomorrow.
4983
4984         * gtk/treestoretest.c: Changed to use iterators.
4985
4986         * demos/testgtk/main.c: Moved to use the new iterator system.
4987
4988 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
4989
4990         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
4991         localization misbehaviour.
4992
4993         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
4994         a useless type without copy/free.
4995
4996         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
4997         of GTK_TYPE_CTREE_NODE.
4998
4999 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
5000
5001         * gtk/gtksignal.c:
5002         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
5003         applicable.
5004
5005         * gtk/gtk-boxed.defs (GtkSelectionData): specify
5006         gtk_selection_data_copy and gtk_selection_data_free
5007         do GtkSelectionData work as params in signals.
5008
5009 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
5010
5011         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
5012         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
5013         couldn't they at least give it a non-standard name?
5014         
5015         * gtk/gtktextlayout.c: arg! yet another implementation of
5016         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
5017
5018         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
5019         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
5020         home. now i know this _is_ a conspiracy.
5021
5022         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
5023         ::state-changed.
5024
5025         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
5026         (gtk_accel_group_create_add): marshaller signature fixups.
5027
5028         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
5029         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
5030
5031         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
5032         anymore.
5033
5034 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
5035
5036         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
5037         due to the signal system changes, it wouldn't build currently. to
5038         be fixed soon.
5039
5040         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
5041
5042         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
5043         so it needs gtk_marshal_VOID__ENUM() instead of
5044         gtk_marshal_NONE__UINT().
5045
5046         * gdk/gdk*.c: adapted type registration functions.
5047
5048         * gtk/gtkbindings.c:
5049         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
5050         gone.
5051
5052         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
5053
5054         * gtk/gtkobject.c:
5055         (gtk_object_destroy):
5056         (gtk_object_shutdown): fixed recursion guards. basically we have to
5057         catch the case where any of GObject.shutdown() or gtk_object_destroy()
5058         is called during ::destroy, and avoid recursion there.
5059
5060         * gtk/gtktypeutils.c:
5061         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
5062         boxed_copy/boxed_free. this needs a more general solution based on a
5063         publically installed code-generator utility.
5064
5065         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
5066         glib's gobject has support for that now.
5067         define GtkSignalMarshaller in terms of GSignalCMarshaller.
5068
5069 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
5070
5071         * gtk/gtksignal.[hc]:
5072         * gtk/gtkmarshal.[hc]:
5073         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
5074         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
5075         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
5076         care of that.
5077
5078         * *.c: marshaller name fixups.
5079
5080         * gtk/gtkmarshal.list: added a comment briefing the format.
5081
5082 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
5083
5084         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
5085         compatibility macros here now. more specifically, most of
5086         the API is preserved (yes, _most_, nonwithstanding the
5087         following exceptions listed, the API is stil lHUGE ;)
5088         things that got removed completely:
5089         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
5090         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
5091         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
5092         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
5093         gtk_signal_remove_emission_hook().
5094         non-functional functions variants:
5095         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
5096         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
5097         not supported anymore.
5098         (gtk_signal_compat_matched): new internal function to aid
5099         implementation of the compatibility macros, it  provides
5100         functionality to block/unblock/disconnect handlers based
5101         on func/data.
5102
5103         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
5104
5105         * *.c: adaptions to new type registration API signatures.
5106
5107 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
5108
5109         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
5110
5111 2000-10-25  Robert Brady  <robert@suse.co.uk>
5112
5113         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
5114         gdk_property_delete): If window == NULL, assume the root window.
5115         (restoring the behaviour that was in 1.2).
5116         
5117         * gtk/testtext.c (save_buffer): Allow creation of new files when
5118         saving.
5119
5120         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
5121         calls to read().
5122
5123 2000-10-25  Tor Lillqvist  <tml@iki.fi>
5124
5125         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
5126
5127         * gdk/win32/gdkdrawable-win32.c
5128         * gdk/win32/gdkimage-win32.c
5129         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
5130         X11 backend.
5131
5132         * gdk/win32/gdkcc-win32.c
5133         * gdk/win32/gdkcolor-win32.c
5134         * gdk/win32/gdkfont-win32.c
5135         * gdk/win32/gdkinput-win32.c
5136         * gdk/win32/gdkmain-win32.c
5137         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
5138
5139 2000-10-24  Havoc Pennington  <hp@redhat.com>
5140
5141         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
5142         it a static function
5143
5144         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5145         redraw text when a tag is applied to it.
5146
5147         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5148         (gtk_text_tag_affects_nonsize_appearance): private functions to
5149         see if a tag requires various kinds of redraw/layout to be queued
5150         up.
5151
5152         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5153
5154         * gtk/testtext.c (fill_example_buffer): Put the cursor 
5155         at the start of the buffer, so search works by default
5156
5157         * gtk/gtktextiter.c (lines_match): init match_start always
5158
5159         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5160         function, get iter at a line + a byte index
5161
5162         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5163         to set byte position within a line
5164         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5165
5166 2000-10-23  Havoc Pennington  <hp@redhat.com>
5167
5168         * gtk/testtext.c: Re-enable the "find" dialog
5169
5170         * gtk/testgtk.c: Add test for gdk_drawable_get_image
5171         
5172         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5173         the arguments to gdk_draw_drawable were in the wrong order
5174         (gdk_window_paint_init_bg): This function was ignoring the
5175         init_region, instead of clipping to it, so the entire backing
5176         pixmap was cleared on every begin_paint()
5177         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
5178         was in here again, the loop kept using the same GtkWindowPaint
5179         over and over.
5180         (gdk_window_begin_paint_region): Fix a bug where we had two
5181         x_offset instead of x_offset and y_offset
5182
5183         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
5184         before we get the image.
5185         (gdk_draw_drawable): get the composite before we draw the drawable.
5186         (gdk_drawable_real_get_composite_drawable): default
5187         get_composite_drawable implementation that returns the drawable 
5188         itself
5189
5190         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
5191         get_composite_drawable virtual function
5192
5193         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
5194         list-walking bug
5195
5196         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
5197         make this work if the source drawable is a GdkDrawableImplX11
5198         instead of a public drawable type. This is really broken; the
5199         problem is that GdkDrawable needs a virtual method get_xid(), but
5200         of course that doesn't work in practice. Enter RTTI.
5201
5202         Also, improve mismatched depth message.
5203
5204         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
5205         GdkPixmap
5206
5207         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
5208         install _gdk_x11_get_image as our implementation of get_image
5209         
5210         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
5211         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
5212
5213         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
5214         gdk_drawable_get_image
5215
5216         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
5217
5218         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
5219         get_image
5220
5221         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
5222         trailing semicolon after for loop
5223
5224 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
5225
5226         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
5227         where font_desc for widget's context lagged widget's font_desc by
5228         one step.
5229
5230 2000-10-22  Tor Lillqvist  <tml@iki.fi>
5231
5232         * gdk/win32/gdkgc-win32.c
5233         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
5234
5235         * gtk/makefile.mingw.in
5236         * gtk/gtk.def: Updates.
5237
5238         * gtk/testgtk.c: sleep() is called _sleep in MS's C
5239         library.
5240
5241         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
5242
5243         * gtk/makefile.msc: Remove
5244
5245         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
5246
5247         * gtk/Makefile.am: Add it.
5248
5249         * configure.in: Generate it.
5250
5251         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
5252         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
5253         something even if not implemented, to satisfy picky MSVC.
5254
5255         Patches by Hans Breuer:
5256         
5257         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
5258         SetBkMode() and SetTextAlign() before calling
5259         pango_win32_render().
5260
5261         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
5262         Set hcliprgn to NULL after destroying it.
5263         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
5264
5265         * gdk/win32/gdkgeometry-win32.c
5266         (_gdk_windowing_window_queue_antiexpose): More effective
5267         implementation.
5268
5269         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
5270         depth as default, not the visual's.
5271
5272         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
5273         against empty title.
5274
5275         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
5276         IMAGE_PRIVATE_DATA.
5277
5278         * gdk/win32/gdkimage-win32.c: Use it.
5279
5280 2000-10-22  Robert Brady  <robert@suse.co.uk>
5281
5282         * configure.in: Check for bind_textdomain_codeset
5283
5284         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
5285         present, make use of it.
5286
5287         Add a translatable string "default:LTR" which, if translated
5288         to "default:RTL", will cause the default direction to be
5289         Right-to-Left.
5290
5291         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
5292         direction if marked as flippable.
5293
5294         * gtk/gtkhscale.c: Mark widget as flippable.
5295         
5296 2000-10-04  Havoc Pennington  <hp@redhat.com>
5297
5298         * gtk/testgtk.c (create_buttons): create some stock buttons
5299         with the default accel group
5300         (create_image): test some new GtkImage features
5301         (make_message_dialog): test GtkMessageDialog
5302         (create_modal_window): fix someone's bizzarro indentation
5303
5304         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
5305         GTK_WIN_POS_CENTER_ON_PARENT. 
5306         Add "destroy with parent" setting, which means the window goes
5307         away with its transient parent.
5308         (gtk_window_get_default_accel_group): get the default accel group
5309         for the window.
5310         (gtk_window_set_destroy_with_parent): set/unset destroy with
5311         parent flag
5312         (gtk_window_read_rcfiles): invalidate icon set caches
5313         after reloading rcfiles 
5314
5315         * gtk/gtkenums.h (GtkWindowPosition): add
5316         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
5317         on its parent window when the dialog is mapped for the first time.
5318
5319         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
5320         a simple message dialog class
5321         
5322         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
5323         handler to emit response signal, and maybe later it would
5324         honor a hide_on_delete flag - though that isn't there yet.
5325         Set border width on the vbox to 2, so we get some padding.      
5326         Use a button box for the action area.
5327         (gtk_dialog_key_press): synthesize a delete event if Esc
5328         is pressed and the GtkWidget key press handler didn't 
5329         handle the escape key.
5330         (gtk_dialog_new_with_buttons): new function creates a dialog
5331         with some default buttons in it.
5332         (gtk_dialog_add_action_widget): add an activatable widget
5333         as a button in the dialog - you can also add a non-activatable
5334         widget by accessing the action area directly.
5335         (gtk_dialog_add_button): add a simple button - stock ID or 
5336         label - to the action area
5337         (gtk_dialog_response): emit response signal
5338         (gtk_dialog_run): block waiting for the dialog, return 
5339         the response. Override normal delete_event behavior, so that 
5340         delete_event does nothing inside gtk_dialog_run().
5341
5342         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
5343         emitted when an action widget is clicked or the dialog gets
5344         delete_event
5345
5346         * gtk/gtk.h: add gtkmessagedialog.h
5347
5348         * gtk/Makefile.am: add gtkmessagedialog.[hc]
5349
5350 2000-10-18  Havoc Pennington  <hp@redhat.com>
5351
5352         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
5353         where any number of empty lines would get skipped
5354
5355         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
5356         edge.
5357
5358         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
5359         warning about invalid iterators (explain more thoroughly)
5360         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
5361
5362         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
5363         big
5364
5365         * demos/*.c: Add error handling
5366
5367         * gtk/gtktextbuffer.c: don't modify const iterators
5368
5369         * gtk/gdk-pixbuf-loader.c: Add full error handling here
5370
5371         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
5372         on file load
5373
5374         * gtk/gtkiconfactory.c: Update to reflect addition of error
5375         handling to gdk-pixbuf loaders
5376
5377 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
5378
5379         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
5380         move to new modularized testgtk.
5381
5382 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
5383
5384         * gtk/gtktreeview.c: Draw the arrows correctly.
5385
5386         * gtk/gtktreemodel.c: Added user docs.
5387
5388         * gtk/gtk.h: remove gtktreedatalist.h.
5389
5390         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
5391         parent when generating my type.
5392
5393         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5394         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5395
5396 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5397
5398         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5399         GtkTreeModel from object to interface.
5400
5401 2000-10-16  Havoc Pennington  <hp@redhat.com>
5402
5403         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
5404         compilation
5405
5406 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5407
5408         * gtk/gtktreeselection.c: Add API documentation to all public
5409         functions.
5410
5411         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5412         functions.
5413
5414 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
5415
5416         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5417         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
5418         docs to all public functions.
5419
5420         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5421         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5422         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5423         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5424         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5425         issue.
5426
5427 2000-10-14  Robert Brady  <robert@suse.co.uk>
5428
5429         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5430
5431 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
5432
5433         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5434         values other then G_TYPE_STRING.
5435         * gtk/gtktreeselection.c: Minor commenting updates.
5436         * gtk/gtktreeview.c: Format updates.
5437
5438 2000-10-09  Tor Lillqvist  <tml@iki.fi>
5439
5440         * README.win32: Update.
5441
5442         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5443         lines that had been deleted by mistake (?).
5444
5445         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5446         also the case fg==white and bg==black (but still not randomly
5447         coloured cursors). Thanks to Wolfgang Sourdeau.
5448
5449         * gdk/win32/*.c: Silence gcc -Wall.
5450
5451         * gtk/gtk.def: Add missing entry points.
5452
5453         Fixes by Hans Breuer:
5454
5455         * gdk/makefile.msc
5456         * gdk/win32/makefile.msc: Update.
5457
5458         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5459         some MSVC thing, presumably), cause breakpoint on failures. Add
5460         GDK_NOR case. Call g_log_set_always_fatal.
5461
5462         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5463         should be pased by reference.
5464         
5465         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5466         
5467         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5468
5469         * gdk/win32/gdkevents-win32.c
5470         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5471
5472         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5473         implementation object.
5474
5475         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5476         not just windows.
5477         
5478         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5479         Use the wrapper object.
5480         
5481 2000-10-06  Havoc Pennington  <hp@redhat.com>
5482
5483         * Makefile.am (SRC_SUBDIRS): contrib subdir
5484
5485         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5486         so it can be used in Xlib version
5487
5488         * demos/testpixbuf.c (update_timeout): error checking from 1.0
5489         tree
5490
5491         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5492         change from 1.0 tree that returns first frame of animation
5493         if the loaded file is an animation.
5494
5495         * contrib: add new directory to hold stuff that comes with GTK+
5496         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5497         
5498         * configure.in: add contrib/*
5499
5500 2000-10-05  Havoc Pennington  <hp@redhat.com>
5501
5502         * demos/testpixbuf-save.c: add pixbuf save test
5503
5504         * demos/Makefile.am: add testpixbuf-save.c
5505
5506 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
5507
5508         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5509         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5510         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5511         * gtk/gtktreeselection.[ch]: Replaced
5512         "node_selected"/"node_unselected" signal with "selection_changed"
5513         signal.
5514
5515 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5516
5517         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5518         tree widget.
5519
5520 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5521
5522         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5523         drawing.
5524
5525 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
5526
5527         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5528         Move list pointer forwards before removing item from
5529         list. (Crash reported by Salmaso Raffaele)
5530
5531         * gdk/gdkwindow.h: Remove spurious trailing ,
5532
5533         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
5534         dependencies on uninstalled libraries, sorry folks.
5535
5536 2000-10-04  Havoc Pennington  <hp@redhat.com>
5537
5538         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5539         gtk/gtkiconfactory.c: Fix copyrights    
5540
5541         * demos/testpixbuf.c: add inline pixbuf test
5542         
5543 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
5544
5545         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
5546         Add gdk_window_iconify.
5547
5548         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
5549         (gdk_window_set_geometry_hints): Add win_gravity
5550         to geometry structure.
5551
5552         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
5553         Implement _NET_WM_PING.
5554
5555         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
5556         Set _NET_WM_PID on the client leader.
5557
5558         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
5559         Handle UTF-8 better.
5560
5561         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
5562         UTF-8 better, set _NET_WM_NAME as well. Only set
5563         icon name if it hasn't previously been explicitely 
5564         set.
5565
5566 2000-10-03  Havoc Pennington  <hp@redhat.com>
5567
5568         * gtk/testtextbuffer.c: clean up trailing whitespace,
5569         add extensive tests for tag toggle iteration.
5570         
5571         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
5572         distance
5573
5574         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5575         optimize case where the tag root is on level 1
5576         (gtk_text_line_previous_could_contain_tag): attempt to implement
5577         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
5578         functionality
5579
5580         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
5581         Implement this, though not very efficiently.
5582
5583         * gtk/gtktextiterprivate.h: reformat
5584
5585         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
5586         iterator
5587
5588         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
5589         this to properly revalidate the iterators.
5590
5591         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
5592         properly at the end of the line (and therefore on empty lines)
5593
5594         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
5595         maybe we should return a value...
5596
5597 2000-10-03  Tor Lillqvist  <tml@iki.fi>
5598
5599         * config.h.win32: Guard definition of alloca(). glib.h now handles
5600         that.
5601
5602         * gdk/gdk.def
5603         * gtk/gtk.def: Add new entry points.
5604
5605         Changes just to make GTK+ build without errors on Win32. No hope
5606         of it working in its current state, though...:
5607         
5608         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
5609         some functions from the X11 backend, just to make GTK+ build.
5610
5611         * gdk/makefile.mingw.in
5612         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
5613         number. Add new object files.
5614
5615         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
5616         GetMessageTime to get timestamp (where on X11 uses
5617         gdk_x11_get_server_time()).
5618
5619 2000-10-02  Havoc Pennington  <hp@pobox.com>
5620
5621         * gtk/gtktextview.c: text_window_* weren't static and should have
5622         been.
5623         Start work on child widgets; not yet complete, syncing to 
5624         office computer.
5625
5626         * gtk/gtktextchild.h: change this to contain a public interface,
5627         starting work on child interfaces.
5628         * gtk/gtktextchildprivate.h: move private interfaces here
5629
5630         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
5631
5632         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
5633         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
5634         gtk/gtktextmark.c: copyright notices
5635
5636         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
5637         internal functions      
5638
5639         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
5640         internal function
5641
5642         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5643         Reformatting    
5644
5645 2000-09-30  Havoc Pennington  <hp@pobox.com>
5646
5647         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
5648         NULL start/end pointers
5649
5650         * gtk/gtktextbuffer.c: Write some docs
5651         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
5652         NULL, so you can just check whether there's a selection.        
5653
5654         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
5655         cleanup_line or segments_changed ourselves, it gets done 
5656         in unlink_segment
5657
5658         * gtk/gtktextmark.h:
5659         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
5660         
5661         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
5662
5663         * gtk/gtktextmark.c: delete some more old Tk cruft
5664
5665         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
5666         mark before removing it, so we can emit MARK_DELETED with a valid
5667         pointer.
5668         (gtk_text_buffer_mark_set): hold ref across signal emission
5669
5670         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
5671         whining about attempts to delete special marks
5672
5673         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
5674         underscore, since it's internal.
5675
5676         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
5677         now implemented in terms of iterators in gtktextiter.h
5678
5679         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
5680         New function, destructively sets contents of buffer. Also 
5681         a convenient way to clear the buffer by setting text to ""
5682
5683         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
5684         multiline string literal
5685
5686         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
5687         text changes.
5688
5689         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
5690         is not dereferenceable
5691         (gtk_text_iter_forward_lines): fix return value
5692
5693 2000-09-29  Havoc Pennington  <hp@redhat.com>
5694
5695         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
5696
5697         * gtk/gtktextview.c: Implement drag thresholding; change functions 
5698         that set border window size to have nicer name
5699         (gtk_text_view_mark_set_handler):  Fix this to have the 
5700         right signature.
5701
5702         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
5703
5704         * gtk/testtext.c: Update with API changes, put line numbers on 
5705         both sides.
5706         
5707         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
5708         with this
5709
5710         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
5711         pixbuf; delete a big block of #if 0 Tk code
5712
5713         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
5714         insert_pixmap with insert_pixbuf
5715
5716 2000-09-29  Martin Baulig  <baulig@suse.de>
5717
5718         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
5719         confusion with the GdkPixbuf of the GNOME 1.x platform.
5720
5721 2000-09-29  Havoc Pennington  <hp@pobox.com>
5722
5723         * gtk/gtktextview.c: Implement the side windows.
5724
5725         * gtk/testtext.c: Implement simple line numbering in the 
5726         left side window; seems to make scrolling sloooow. Oops.
5727         Also, cursor blink is for some reason causing redraws
5728         of the line numbers. Should investigate...
5729
5730 2000-09-28  Havoc Pennington  <hp@redhat.com>
5731
5732         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
5733         scrolling child windows, and draw focus rectangle properly.
5734         
5735         (gtk_text_view_buffer_to_window_coords):
5736         Coordinate transformation to deal with all these freaking windows
5737         and offsets
5738         (gtk_text_view_window_to_buffer_coords): transform the other way
5739
5740         * gtk/testtext.c (create_buffer): Update to match Pango API change
5741
5742         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
5743         anonymous tags
5744         (foreach_unref): don't emit remove signal from finalize, just
5745         set tag's parent to NULL
5746
5747 2000-09-26  Havoc Pennington  <hp@redhat.com>
5748
5749         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
5750         Fix some warnings       
5751
5752 2000-09-26  Havoc Pennington  <hp@redhat.com>
5753
5754         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
5755         headers into the private header list
5756
5757         * Makefile.am (pkgconfig_DATA): install pkg-config files
5758
5759         * configure.in: add pkg-config files
5760
5761         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
5762
5763         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
5764         outstanding icon caches on theme change.
5765
5766         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
5767         important types:
5768
5769         (GtkIconSource): Specification for creating a pixbuf 
5770         appropriate for a direction/state/size triplet from 
5771         a source pixbuf or filename
5772
5773         (GtkIconSet): List of GtkIconSource objects that are used to
5774         create the "same" icon (e.g. an OK button icon), and cache for
5775         rendered icons
5776
5777         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
5778         up the icon set for a given stock ID.  GTK maintains a stack of
5779         GtkIconFactory to search, and applications or libraries can add
5780         additional icon factories on top of the stack
5781         
5782         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
5783         the set of GtkIconSource specified for a given stock ID into 
5784         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
5785         RcStyle, under the specified stock ID.
5786
5787         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
5788         render_icon used to derive a GdkPixbuf from a GtkIconSource.
5789         This allows people to theme how prelight, insensitive, etc. are
5790         done.
5791
5792         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
5793         icon factories for a style, and return the resulting 
5794         icon set if any.
5795
5796         (gtk_style_render_icon): Render an icon using the render_icon 
5797         method in the GtkStyleClass.
5798
5799         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
5800         Use the style for a given widget to look up a stock ID, get the
5801         icon set, and render an icon using the render_icon method 
5802         of the style
5803
5804         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
5805         (contains information about a stock item), the built-in stock item
5806         IDs, and functions to add/lookup stock items.
5807
5808         * gtk/stock-icons/*: Stock icons that come with GTK
5809
5810         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
5811         a button based on a GtkStockItem
5812         (gtk_button_new_accel): Takes a uline string and accel group, and
5813         installs the accelerator.
5814
5815         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
5816         image-display widget.
5817
5818 2000-09-25  Havoc Pennington  <hp@redhat.com>
5819
5820         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
5821
5822         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
5823         Fix a bug when removing node data, we didn't properly 
5824         re-splice the linked list after removing the data.
5825
5826         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
5827         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
5828
5829         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
5830
5831         * gtk/gtktextlayout.c (set_para_values): Set tab array 
5832         for the layout from the GtkTextTag.
5833
5834         * gtk/gtktexttypes.h: delete tab and search cruft, 
5835         remove g_convert() in favor of GLib version
5836
5837         * gtk/gtktexttypes.c: remove tab implementation from here,
5838         move to Pango
5839
5840         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
5841         tab stuff using new PangoTabArray from Pango
5842
5843         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
5844         unused border_width stuff
5845
5846 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
5847
5848         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
5849         glib) and now useless utf_to_latin1() latin1_to_utf()
5850
5851         * gtk/gtktextview.[ch]: Change ::move_insert and
5852         ::delete_text action signals to ::move and ::delete;
5853         create the signals with the right enumeration type,
5854         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
5855         C-v bindings, change Home, End to move to beginning/end
5856         of line, Add C-Home C-End to move to beginning/end
5857         of buffer. Change ::cut_text to ::cut_clipboard, etc;
5858         combine ::scroll_text into ::move; use new GtkSelectionData
5859         functions to simplify DND text handling.
5860         
5861         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
5862         deletion enumerations here, rename enumeration values to 
5863         be consistently plural.
5864
5865         * gtk/gtktextbuffer.c: Use new clipboard interfaces
5866         for cut/copy/paste and primary selection.
5867
5868         * gtk/gtktextbuffer.[ch]: Remove excess time and
5869         'interactive' arguments from cut/copy/paste;
5870         rename cut to cut_clipboard, etc; remove
5871         gtk_text_buffer_get_clipboard_contents().
5872
5873         * gtk/gtktextlayout.[ch]: Add 
5874         gtk_text_layout_move_iter_to_line_end() to move the iter to 
5875         line ends.
5876
5877         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
5878         Functions to set or get a UTF-8 string on the selection
5879         data.
5880
5881         * gtk/gtkclipboard.[ch]: New, simplified selection handling
5882         interfaces.
5883
5884         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
5885         created widgets - one of these is useless if we don't.
5886
5887         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
5888         a public function clear all targets registered for the
5889         widget.
5890
5891         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
5892         Never call gtk_widget_realize() - that was just asking
5893         for bizarre side-effects.
5894
5895         * gtk/gtkselection.c (gtk_selection_owner_set): Call
5896         gdk_selection_owner_set even if the widget is the
5897         same so that we reliably update the timestamp on
5898         the server.
5899
5900         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
5901         gdk_x11_get_server_time() function.
5902         
5903         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
5904         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
5905         Add some tricky filtering on serial numbers for
5906         selection clear events to fix up long-standard
5907         race condition FIXME's in gtkselection.c.
5908
5909         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
5910         routines to convert from utf8 to compound text or
5911         STRING and from a text property to UTF-8.
5912
5913         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
5914         a convenience function gdk_get_current_event_time().
5915
5916         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
5917         and free selection_data->data properly
5918
5919 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
5920
5921         * gtk/gtkthemes.c: Remove some unecessary includes.
5922
5923 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
5924
5925         * gtk/gtktextdisplay.c
5926         * gtk/gtktextlayout.c
5927         * gtk/gtktexttag.c
5928         * gtk/gtktexttag.h
5929         * gtk/testtext.c: Change the overstrike property to strikethrough,
5930         to closer match pango.
5931
5932 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
5933
5934         * gtk/gtktextview.c: Fix up visibility so that focus,
5935         cursor_visible and blink interact properly.  Reenable cursor blink
5936         which had been roughly disabled. Make blink and focus
5937         properly per-view.
5938
5939         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
5940         Add a flag for whether to display insertion cursor and
5941         a function to set the flag.
5942
5943         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
5944         get_line_y() to get_line_yrange(), to be a bit more generally
5945         useful.
5946
5947 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
5948
5949         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
5950           do stop_navigating_submenu, to clear last timeout properly.
5951           Also in gtk_menu_motion_notify move ignore_enter above
5952           the conditional to make it always happen as suggested by Owen
5953
5954 2000-09-07  Tor Lillqvist  <tml@iki.fi>
5955
5956         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
5957
5958         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
5959         w32api headers.
5960
5961         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
5962         declarations.
5963
5964         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
5965         (gdk_win32_get_colormap): A line had been deleted by mistake.
5966
5967         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
5968         (gdk_event_translate): Handle more virtual keycodes to be able to
5969         generate GDK events for Control-comma, Control-period, etc.
5970
5971         * gtk/gtk.def: Add some missing entry points.
5972
5973 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
5974
5975         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
5976         Doc comment fixing. (Mostly non-matching parameter names.)
5977
5978         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
5979         comments a little to avoid looking like a doc comment.
5980
5981         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
5982         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
5983         conversions be changed to GError?)
5984
5985         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
5986         Move private #defines into .c file.
5987
5988         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
5989         order of argument addition, remove duplicates.
5990
5991         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
5992         parent class is FrameClass, not BinClass.
5993
5994         * gtk/gtk.h: Add gtkinvisible, which was missing.
5995         (It's occasionalyl useful for client apps, if seldom.)
5996
5997         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
5998         #define.
5999
6000 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
6001
6002         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
6003         coordinates when creating window, instead of GDK-space
6004         coordinates. (Avoid BadValue on too large windows.)
6005
6006 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6007
6008         * configure.in (use_mmx_asm): Remove conftest* after use along the
6009         lines of AC_TRY_COMPILE.        
6010         
6011         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
6012         of g_dirname, which is deprecated.
6013         (gtk_rc_parse_any): Removed calls to
6014         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
6015
6016         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
6017         Removed calls to g_hash_table_{freeze,thaw}, as they are
6018         deprecated now.
6019
6020         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
6021         instead of g_basename.
6022         
6023 2000-09-04 Elliot Lee <sopwith@redhat.com>
6024         
6025         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
6026         ANSI warning.
6027
6028 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
6029
6030         * gtk/gtkwidget.h:  Add some documenting comments about 
6031           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
6032           just as owen said on irc.
6033
6034         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
6035           set HAS_DEFAULT.  Only set it if there isn't another window
6036           holding it (a focus window which RECEIVES_DEFAULT) and only unset
6037           it if the widget is not the focused window with RECEIVES_DEFAULT.
6038           This fixes weird double default bugs in dialogs which has things
6039           call gtk_window_set_default at times.
6040
6041 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
6042
6043         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
6044         Nils Barth and David Santiago to improve submenu
6045         navigation. The patch does this by creating a triangular
6046         region from the point where the pointer leaves the
6047         menu to the submenu.  While the pointer is in
6048         that region and a timeout has not expired, events 
6049         that would cause the active submenu to change are
6050         ignored.
6051
6052 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
6053
6054         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
6055         moving a toplevel window immediately after sizing it would
6056         result in it being sized back to the old size since 
6057         impl->width, impl->height aren't updated until we hear
6058         back from the server. There is still a (longstanding) bug
6059         here that gdk_window_get_size() will give the wrong size
6060         until we do hear back.
6061
6062 2000-08-31  Havoc Pennington  <hp@redhat.com>
6063
6064         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
6065         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
6066         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
6067         Rename GtkTextStyleValues to GtkTextAttributes
6068
6069 2000-08-31  Havoc Pennington  <hp@pobox.com>
6070
6071         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
6072         for rapid testing whether an iterator is the end iterator
6073         (gtk_text_btree_new): init end line cache
6074         (gtk_text_line_is_last): use fast cached line to 
6075         see if we're the last line.
6076         (get_last_line): use cached line here too, should 
6077         speed up some random unrelated code.
6078         
6079 2000-08-30  Havoc Pennington  <hp@pobox.com>
6080
6081         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
6082         signals.
6083
6084         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
6085         delete_text signals. This allows the signals to be used for
6086         implementing undo.
6087
6088         * gtk/gtktextbuffer.c: Change signal handler signatures; 
6089         provide "interactive" argument when emitting insert_text or
6090         delete_text signal.
6091         
6092 2000-08-30  Havoc Pennington  <hp@pobox.com>
6093
6094         * gtk/gtktextbuffer.c: Docs
6095
6096 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
6097
6098         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
6099         from switch statements, since Tor removed the enumeration
6100         value.
6101         
6102         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6103         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
6104
6105 2000-08-29 Elliot Lee <sopwith@redhat.com>
6106         * */*.h: Use G_GNUC_CONST.
6107
6108 2000-08-27  Havoc Pennington  <hp@pobox.com>
6109
6110         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
6111         minor indentation fixes, inserted some FIXME about stuff I
6112         realized was broken while documenting it.
6113         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
6114         GTK convention  
6115
6116 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
6117
6118         * gtk/testgtk.c (create_styles): Fix double free of
6119         font desc.
6120
6121 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
6122
6123         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
6124         
6125         * gtk/testgtk.c (create_styles): Add a test for modifying
6126         the style through gtk_widget_modify_*.
6127
6128         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
6129         a function to get the current modifier style.
6130
6131         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
6132         of the passed in GtkRcStyle instead of ref'ing it.
6133
6134         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
6135
6136 2000-08-20  Tor Lillqvist  <tml@iki.fi>
6137
6138         * gdk/gdkimage.h
6139         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
6140         shared memory image+pixmap GdkImage type, or
6141         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
6142         I am dropping that.
6143
6144         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6145         actually call gtk_init_abi_check(), passing also
6146         sizeof(GtkWindow). Ditto for gtk_init_check(). 
6147
6148         * gtk/gtk.def
6149         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6150         New functions, used to check that the GTK+-using code has been
6151         compiled using the correct compiler and switches. In particular,
6152         with gcc one has to use the -fnative-struct switch as GTK+ is
6153         compiled with that.
6154
6155 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
6156
6157         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6158         ->prev fields when merging lists. (Found simultaneously
6159         by Pawel Salek and Jakub Jelinek)
6160
6161 2000-08-12  Tor Lillqvist  <tml@iki.fi>
6162
6163         * gdk/gdk.def
6164         * gtk/gtk.def: Add missing entries.
6165
6166         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6167         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6168
6169         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6170         function. Dummy implementation at this point.
6171
6172         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6173         rules. Undefine GTK_COMPILATION when compiling the test programs.
6174         
6175         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
6176
6177 2000-08-11  Tor Lillqvist  <tml@iki.fi>
6178
6179         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
6180         to convert back and forth from UTF-8 and the "system" (or "current
6181         locale") charset when necessary. Indentation/spacing cleanup.
6182
6183 2000-08-10  Havoc Pennington  <hp@redhat.com>
6184
6185         * Makefile.am (snapshot): Change the format of the snapshot
6186         version to match glib
6187
6188         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
6189         from EXTRA_DIST since it doesn't seem to exist
6190
6191 2000-08-10  Tor Lillqvist  <tml@iki.fi>
6192
6193         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
6194         version of the directory name (not the UTF-8 one) when building
6195         the path name to stat().
6196
6197 2000-08-03  Elliot Lee  <sopwith@redhat.com>
6198
6199         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
6200         PANGO_ATTR_SHAPE set.
6201
6202 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
6203
6204         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
6205         Peter Osterlund to simplify the code while keeping the
6206         functionality the same.
6207
6208 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
6209
6210         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
6211         is_viewable() test further inside the function, since removing the 
6212         window from the redraw list without clearing ->update_area
6213         was also very broken.
6214
6215 2000-08-02  Tor Lillqvist  <tml@iki.fi>
6216
6217         * configure.in: Check for <unistd.h>.
6218
6219 2000-08-01  Martin Baulig  <baulig@suse.de>
6220
6221         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
6222         to display the message that this is a development version of GTK+.
6223
6224 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
6225
6226         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
6227         was depending on widget->allocation instead of the width of text_area,
6228         which was incorrect for subclasses like GtkSpinButton.
6229
6230         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
6231         with width == 1 tests that should be width == -1.
6232
6233 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
6234
6235         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
6236         (broken, Elliot, every single window blank on X) custom code with call
6237         to gdk_window_is_viewable() which a) prevents code duplicate and
6238         b) works. 
6239
6240 2000-07-31  Elliot Lee  <sopwith@redhat.com>
6241
6242         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
6243         to get the GDK_PARENT_ROOT() macro to work.
6244         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
6245         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
6246         of, windows that aren't shown.
6247         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
6248         pointer grab stuff.
6249
6250 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
6251
6252         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
6253           s/gtk_main_iteration/g_main_iteration/
6254
6255           Did this already in change:
6256                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
6257           don't know how it got reverted.
6258
6259 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
6260
6261         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
6262         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
6263
6264         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
6265         not gdk_pixbuf.
6266
6267 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
6268
6269         * configure.in,po/{sp,sr}.po: Added Serbian files
6270
6271 2000-07-30  Tor Lillqvist  <tml@iki.fi>
6272
6273         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
6274
6275         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
6276         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
6277         GIOChannel implementation.
6278
6279         * gdk/win32/gdkinput.c
6280         * gdk/win32/gdkpango-win32.c: Update license name here, too.
6281
6282         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
6283         definition to match prototype.
6284
6285         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
6286
6287 2000-07-27  Elliot Lee  <sopwith@redhat.com>
6288
6289         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
6290         function, to allow handling image formats that cannot be detected
6291         by looking at content alone.
6292
6293 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
6294
6295         * docs/tutorial/*.gif *.jpg *.eps
6296           Update these to the same look-n-feel.
6297           Why does including images in DocBook suck so badly?
6298
6299 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
6300
6301         * gtk/gtktable.c: applied patch from Phil Thompson
6302         <phil@river-bank.demon.co.uk> that enables space settings for
6303         the last row/columns as well.
6304
6305 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
6306
6307         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
6308         updates the license headers to the GNU Lesser General Public License,
6309         as well as updating the copyright year to 2000.
6310
6311 2000-07-26  Robert Brady  <rwb197@zepler.org>
6312
6313         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
6314           and po/Makefile, was installing and looking for them under gtk20
6315           and gtk2 respectively.
6316
6317 2000-07-25  Havoc Pennington  <hp@redhat.com>
6318
6319         * gtk/testtext.c: Comment out some stuff that depends on the rest
6320         of my patches.
6321
6322 2000-07-25  Havoc Pennington  <hp@redhat.com>
6323
6324         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
6325         buffer
6326
6327 2000-07-25  Havoc Pennington  <hp@redhat.com>
6328
6329         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
6330         widget changes.
6331
6332         * gtk/gtktextview.h: To be consistent with usage of "line"
6333         throughout the API to mean "newline-terminated thingy", change
6334         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
6335         to MOVEMENT_LINE.
6336
6337         (GtkTextView): Add flags for default editability, and whether to
6338         show the cursor. Add functions to get/set that. Add 
6339
6340         (gtk_text_view_get_iter_location): new function
6341
6342         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
6343         gtktextlayout.h
6344         (g_convert): Add g_convert temporarily, will go in glib in a bit
6345         
6346         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
6347         GtkTextTagTableForeach instead of brokenly using GHFunc.
6348         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
6349
6350         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
6351         moved to public header.
6352
6353         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
6354         "invisible", since "elide" was a bad name.
6355         (gtk_text_tag_get_priority): Added
6356
6357         (GtkTextStyleValues): put this in public header, along with
6358         functions to use it.
6359
6360         * gtk/gtktextmarkprivate.h: Include more headers, since we no
6361         longer include gtktextbtree.h.
6362
6363         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
6364         gtk_text_mark_deleted
6365
6366         * gtk/gtktextlayout.h: Don't include the "really private" headers,
6367         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
6368         to make this possible. Now we only need to install
6369         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
6370         (However the Makefile.am isn't changed yet because of the
6371         logistics of merging gtk-hp-patches piecemeal)
6372
6373         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
6374         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6375         gtk_text_iter_get_line is now used in the public API for a
6376         different purpose.
6377
6378         * gtk/gtktextiter.h: Clean up function names to be more
6379         consistent. Always call char offset "offset" and byte index
6380         "index". A "line" is always a line number. 
6381
6382         (gtk_text_iter_is_last): new function, more efficient than 
6383         the existing way to check
6384         (gtk_text_iter_is_first): new function, also more efficient
6385
6386         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
6387
6388         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
6389         gtk_text_iter_forward_char, etc.
6390
6391         (gtk_text_iter_forward_to_tag_toggle): Renamed from
6392         forward_find_tag_toggle, since this isn't a linear search
6393
6394         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6395
6396         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
6397         New functions, search for a buffer substring.
6398
6399         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6400         interactive and default editable (since we need to store that info
6401         until we receive the selection data).
6402
6403         Remove all the _at_char and at_line etc. versions of functions;
6404         only have iterator versions.
6405
6406         Add _interactive() versions of functions, that consider the
6407         editability of text. (FIXME add interactive flag to the 
6408         insert/delete signals per Darin's suggestion)
6409
6410         (gtk_text_buffer_get_tag_table): new function, demand-creates the
6411         tag table if necessary
6412
6413         Remove declaration of gtk_text_buffer_get_iter_from_string
6414
6415         (_gtk_text_buffer_get_btree): private/internal function, added.
6416         
6417
6418         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6419         (gtk_text_line_is_last): new function
6420
6421 2000-07-25  Havoc Pennington  <hp@redhat.com>
6422
6423         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6424         using GtkProgressBar. See Changes-2.0.txt for details.
6425
6426         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6427         "pulse_step" which are the equivalent of
6428         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6429         Implement new API.
6430         
6431         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6432         (use_text_format) to mark whether text set on the progress bar is
6433         a format string. Deprecate entire GtkProgress interface.
6434
6435         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6436         (gtk_progress_build_string): make this a no-op if use_text_format
6437         is FALSE
6438
6439         * docs/Changes-2.0.txt: Describe progress bar changes.
6440
6441 2000-07-25  Tor Lillqvist  <tml@iki.fi>
6442
6443         * Makefile.am: Include the build directory.
6444
6445         * configure.in: Generate build/Makefile, build/win32/Makefile,
6446         gdk/, gdk/win32/, and gtk/makefile.mingw.
6447
6448         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6449         Add GETTEXT_PACKAGE.
6450         
6451         * gdk/gdk.def
6452         * gtk/gtk.def: Updates.
6453
6454         * gdk/gdkfont.h
6455         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6456         need them any longer.
6457
6458         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6459
6460         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6461         PANGOWIN32_LIBS and gdk_pixbuf.
6462
6463         * gdk/win32: Compiles, but no doubt doesn't work at all.
6464
6465         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
6466
6467         * gdk/win32/gdkinput.c: New file, temporarily.
6468         
6469         * gdk/win32/gdkinput-win32.h: New file
6470
6471         * gdk/win32/gdkinputprivate.h: Remove.
6472
6473         * gdk/win32/gdkpango-win32.c: New file.
6474
6475         * gtk/makefile.mingw.in: New file
6476
6477         * gtk/makefile.cygwin: Removed
6478         
6479         * gtk/Makefile.am: Update accordingly.
6480
6481         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6482         made externally visible.
6483
6484         * gtk/gtkmain.c: Use it.
6485         
6486         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6487         is enough.
6488
6489         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6490
6491 2000-07-24 Elliot Lee <sopwith@redhat.com>
6492         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6493         individual backends already.
6494         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6495         again. Yes, there really is a good reason for this, if you are using the gdkregion
6496         internals, and if you're not, why do you care?
6497         * gdk/gdkwindow.c: Fix inverted condition
6498         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6499         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6500         * gtk/gtkrange.c: Redraw trough when moving.
6501         * gtk/gtktypeutils.c: Fix warning by adding const cast.
6502         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6503
6504 2000-07-23  Tor Lillqvist  <tml@iki.fi>
6505
6506         * configure.in: Check for mkstemp and sigsetjmp. Output
6507         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6508
6509         More work on GDK for Win32. Still in an intermediate state.
6510
6511         * gdk/makefile.cygwin
6512         * gdk/win32/makefile.cygwin: Removed.
6513         
6514         * gdk/makefile.mingw.in
6515         * gdk/win32/makefile.mingw.in: New files.
6516
6517         * gdk/Makefile.am
6518         * gdk/win32/Makefile.am: Generate and distribute them.
6519
6520         * gdk/win32/gdkwindow-win32.h
6521         * gdk/win32/gdkdrawable-win32.h
6522         * gdk/win32/gdkpixmap-win32.h: New files.
6523
6524         * gdk/win32/gdkcolor-win32.c
6525         * gdk/win32/gdkcursor-win32.c
6526         * gdk/win32/gdkdrawable-win32.c
6527         * gdk/win32/gdkgc-win32.c
6528         * gdk/win32/gdkimage-win32.c
6529         * gdk/win32/gdkprivate-win32.h
6530         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6531         Rename fields and variables called xcursor, xid, etc (these names
6532         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
6533
6534 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
6535
6536         * gtk/gtkentry.[ch]: Fix some problems with vertical
6537         alignment.
6538
6539         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
6540         char/byte confusion.
6541
6542 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
6543
6544         * gtk/gtktextview.c (changed_handler): Fix bug where
6545         redraw wasn't being done properly when height of
6546         dirty region changed.
6547
6548         * demos/Makefile.am: Remove various references to
6549         -lgmodule
6550
6551 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
6552
6553         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
6554         PangoAttrShape to reserve space for pixmaps, add 
6555         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
6556         in the display functions.
6557         
6558         * gtk/testgtk.c (create_layout): Set some more exotic
6559         scrolled window options
6560
6561         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
6562         Add function to set the shadow type of a window, to allow
6563         putting a shadow around widgets such as GtkLayout or GnomeCanvas
6564         which don't draw their own frame.
6565
6566 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
6567
6568         * docs/tutorial/package-db-tutorial.sh: New file for
6569           packaging DocBook format tutorial
6570
6571 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
6572
6573         * docs/tutorial/gtk-tut.sgml: Minor updates
6574
6575         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
6576
6577 2000-07-19  Tor Lillqvist  <tml@iki.fi>
6578
6579         * gtk/gtksignal.c: Fix C++ comment.
6580
6581         * gtk/gtkimmulticontext.c
6582         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
6583         don't return value from void functions.
6584
6585         * gtk/gtk.def: Add gtk_rc_style_unref.
6586
6587 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6588
6589         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
6590         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
6591         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
6592         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
6593         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
6594         gtk/gtktypeutils.h: Include files outside of the extern "C"
6595         block. Makes some C++ compiler happy. Reported by Denis Vakatov
6596         <vakatov@peony.nlm.nih.gov>.
6597
6598 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
6599
6600         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
6601           Completes first pass. Hurrah!
6602
6603 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
6604
6605         * docs/tutorial/gtk-tut.sgml: More clean ups.
6606
6607 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
6608
6609         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
6610         paint the background of the text area which was accidentally
6611         removed at some point.
6612
6613         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
6614           
6615          - Move most of the functionality from the theme vtable
6616            into GtkRcStyleClass and GtkStyleClass. The moved
6617            vtable functions were changed a bit in the move to
6618            work better in their new home.
6619
6620          - Get rid of the engine and engine_data fields from
6621            GtkRcStyle and GtkStyle; instead the theme
6622            engine derives theme-specific subclasses of GtkRcStyle
6623            and GtkStyle
6624
6625          - Add extra dlsym() found entry point to themes,
6626            theme_create_rc_style().
6627
6628         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
6629         in gtk_style_real_copy.
6630
6631         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
6632         to register a type associated with an engine. (The engine
6633         won't be unloaded as there is an instance of the type.)
6634
6635
6636 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
6637
6638         * docs/tutorial/gtk-tut.sgml: Clean ups.
6639
6640 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
6641
6642         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
6643           of cleaning up to do.
6644
6645 2000-07-15  Tor Lillqvist  <tml@iki.fi>
6646
6647         * gdk/testgdk.c: New file, quick hack to test backends for
6648         pixel-by-pixel correctness of the most simple graphic operations.
6649
6650 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
6651
6652         * Really release 1.3.1
6653         
6654         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
6655         include structure.
6656
6657 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
6658
6659         * Released 1.3.1
6660
6661 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
6662
6663         * gtk/gtktextlayout.c: use FALSE for size_only most
6664         of the time when calling gtk_text_layout_get_line_display()
6665         to avoid causing double reshapes when a redraw follows
6666         immediately after.
6667
6668 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
6669
6670         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
6671         appropriate region and gdk_window_process_updates() so trough
6672         updating doesn't lag behind the window being scrolled.
6673
6674         * gdk/gdkgc.c: Make parent_class pointer static.
6675          
6676 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
6677
6678         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
6679         include <string.h>.
6680          
6681         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
6682         cut-and-paste error in computing memory offset for 4 channels.
6683
6684 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
6685
6686         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
6687         gtk_rc_append_default_pixmap_path(), since it wasn't
6688         adding an interesting path and we don't have a meaningful
6689         default for this value.
6690
6691 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
6692
6693         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
6694         gtk-config to gtk-config-2.0 move gtk_.m4 to
6695         gtk-2.0.m4
6696
6697         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6698         gdk/Makefile.am demos/Makefile.am: Change 
6699         library names to libgtk-1.3.la, etc, so that we
6700         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
6701
6702         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6703         gdk/Makefile.am gdk/x11/Makfile.am
6704         Move include files into /usr/include/gtk-2.0, 
6705         /usr/lib/gtk-2.0/include/
6706          
6707         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
6708         gtk/gtkintl.h: Change package for gettext from 
6709         gtk+ to gtk20. Put hack in autogen.sh to modify
6710         po/Makefile.in.in after gettextize to make this
6711         possible.
6712
6713         * gtk+.spec: Some updates, not tested.
6714
6715         * gdk-pixbuf/Makefile.am: Move loaders into
6716         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
6717
6718         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
6719         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
6720         to THEMENAME/gtk-2.0/. Move engine directory  to
6721         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
6722         
6723 2000-07-12  Tor Lillqvist  <tml@iki.fi>
6724
6725         Win32 changes, still doesn't build though.
6726
6727         * gdk/makefile.cygwin
6728         * gdk/win32/makefile.cygwin
6729         * gtk/makefile.cygwin: Updates.
6730
6731         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
6732         default values for fg and bg pixel as X11 does (0 and 1), not
6733         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
6734         Use 0 for pen width by default (treated as 1 anyway later, but for
6735         apps that might check the value in the GdkGC).
6736         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
6737         interface to gdk_gc_predraw and _postdraw.
6738
6739         * gdk/win32/gdkwin32.h
6740         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
6741
6742         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
6743         extraneous semicolon.
6744
6745         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
6746
6747         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
6748         not the Win32 bitspixel value.
6749
6750         * gdk/win32/gdkcc-win32.c:
6751         * gdk/win32/gdkcolor-win32.c 
6752         * gdk/win32/gdkprivate-win32.h
6753         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
6754         GDK object structure.
6755
6756 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
6757
6758         * docs/tutorial/gtk_tut_12.es.sgml (name): 
6759         * docs/tutorial/gtk_tut_it.sgml (name): 
6760         * docs/tutorial/gtk_tut_fr.sgml (name): 
6761         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
6762         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
6763
6764 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
6765
6766         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
6767           small changes.
6768
6769 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
6770
6771         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
6772         a bug here, never been here and never fixed anything ;(
6773         (don't segfault if tree->root_tree is NULL, which happens prior
6774         to widget realization, but puke instead).
6775
6776 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
6777
6778         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
6779         add the necessary tokens.
6780
6781         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
6782         (gtk_rc_style_to_style): copy thicknesses.
6783         (gtk_rc_init_style): apply thicknesses.
6784         (gtk_rc_parse_style): parse xthickness and ythickness.
6785
6786         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
6787
6788         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
6789         (gdk_window_new): 
6790         (_gdk_windowing_window_init): 
6791         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
6792         (gdk_pixmap_create_from_data): 
6793         (gdk_bitmap_create_from_data): 
6794         (gdk_pixmap_new): 
6795         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6796         (gdk_image_new): 
6797         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
6798         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
6799         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
6800         (gdk_colormap_get_system): 
6801         (gdk_colormap_new): 
6802         * gdk/gdkwindow.c (gdk_window_init): 
6803         * gtk/gtkstyle.c (gtk_style_new):
6804         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
6805         * gdk/gdkpixmap.c (gdk_pixmap_init): 
6806         * gtk/gtkrc.c (gtk_rc_style_new):
6807         use g_object_new() instead of g_type_create_instance() which
6808         is a private function for fundamental type implementations.
6809
6810 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
6811
6812         * configure.in: Add check for db2html
6813
6814 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
6815
6816         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
6817         hack to set glib_debug_objects based on gtk_debug_flags.
6818
6819 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
6820
6821         * INSTALL.in: Update the Prerequisites section.
6822
6823         * Makefile.am demos/Makefile.am docs/Makefile.am
6824         docs/tutorial/Makefile.am gdk/x11/Makefile.am
6825         gdk/linux-fb/Makefile.am: Dist fixes
6826
6827 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
6828
6829         * NEWS: 10,000 foot view of 1.3.1 changes.
6830
6831 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
6832
6833         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
6834         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
6835         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
6836         gdk/x11/gdkmain-x11.c: 
6837
6838         Patch from George Lebl to add a GdkGrabStatus enumeration to use
6839         as a return value of gdk_*_grab(). Previously, we just
6840         returned the X11 values directly.
6841
6842 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
6843
6844         * gdk/x11/Makefile.am: Patch from George Lebl to 
6845         install all the headers in the right place.
6846
6847 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
6848
6849         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
6850           initial conversion to DocBook.
6851
6852 2000-07-04  Tor Lillqvist  <tml@iki.fi>
6853
6854         * README.win32: Improve a bit.
6855
6856         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
6857         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
6858         Alt+0nnn on the numpad (used to enter characters by numeric code
6859         from current DOS or ANSI codepage) working correctly, as in other
6860         Windows apps.
6861
6862         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
6863         same argument validity tests as in X11 version.
6864         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
6865
6866         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
6867         definitions in case missing from headers.
6868
6869         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
6870         destroy the window-specific cursor.
6871         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
6872         calling GetModuleHandle(NULL).
6873         (gdk_window_set_cursor): Reworked to always copy the passed cursor
6874         with CopyCursor before setting it as the window-specific
6875         cursor. It is OK for the caller to destroy the GdkCursor (and thus
6876         also its Windows cursor) after calling this function. Destroy any
6877         previous window-specific cursor.
6878
6879 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
6880
6881         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
6882         font charset is iso8859-1, not iso-8859-1.
6883
6884 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
6885
6886         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
6887         Use g_get_charset() instead of g_get_codeset().
6888
6889         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
6890         Comment out some strdup'ing functions to keep timj
6891         happy until we finish fighting this out.
6892
6893 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
6894
6895         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
6896         <= width or height.
6897
6898         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
6899         from 1.2 for parent/child states.
6900
6901         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
6902         of typos.
6903
6904         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
6905         event structures, replace with a generic axes field. Replace 
6906         deviceid/sourec with GdkDevice *device.
6907
6908         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
6909         to extract particular axis use value from event. (Also
6910         can be used for normal X/Y.)
6911
6912         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
6913         allow for arbitrary number of axes, namespace everything
6914         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
6915         everywhere.
6916
6917         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
6918         Get rid of the gdk_input_vtable setup if favor of simply
6919         defining the functions in gdkinput-none/gxi/xfree.c in
6920         a similar fashion to the way that the port structure is 
6921         done.
6922
6923         * gtk/gtkdnd.c: Fix fields of synthesized button press event
6924         for new event structures. 
6925
6926         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
6927         new device interfaces.
6928
6929 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
6930
6931         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
6932         set the initial text.
6933
6934         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
6935         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
6936         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
6937         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
6938
6939         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6940         pango_layout_set_font_description to simplify.
6941
6942 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
6943
6944         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6945         pango_layout_set_font_description to simplify.
6946
6947 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
6948
6949         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
6950         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
6951         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
6952
6953         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
6954         PANGO_PIXELS() macro.
6955
6956 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
6957
6958         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
6959         that returns a PangoContext owned by the widget and updated to
6960         match future changes in the widget. Also, make 
6961         gtk_widget_create_pango_layout() use this context. If we ever
6962         add a ::changed signal to PangoContext, this will make things
6963         much more convenient. 
6964
6965         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
6966         in the appropriate places instead of destroying the layouts and
6967         creating new ones.
6968
6969         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
6970         in a few strategic places.
6971
6972 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
6973
6974         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
6975         gtk_widget_size_request() on reparented child, if one. Otherwise,
6976         queue_resize() on the child never results in it getting size-requested
6977         at all.
6978
6979         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
6980         in option menus, so that (with luck) people won't copy it into
6981         their apps in the future.
6982
6983         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
6984         to gtk_option_menu_calc_size. This isn't perfect, but should fix
6985         a lot of problems with changing the size of the menu's menu
6986         items after adding it to the option menu.
6987
6988         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
6989
6990         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
6991         the text direction for a widget changes.
6992
6993         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
6994         ::direction_changed to get rid of various hacks.
6995
6996 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
6997
6998         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
6999         name.
7000
7001 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
7002
7003         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
7004         flag to the structure. Do not call XFreePixmap on pixmaps created
7005         by gdk_pixmap_foreign_new().
7006
7007 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
7008
7009         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
7010         value using GdkRGB functionality given GdkColormap and GdkColor.
7011         (name not final, waiting for inspiration.)
7012         
7013         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
7014         set the foreground/background of a GC using the GC's colormap
7015         and GdkRGB. (name not final, waiting for inspiration.)
7016
7017         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
7018         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
7019
7020         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
7021         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
7022         purely a function of the corresponding colormap. Make
7023         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
7024
7025         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
7026         gdk_pixbuf_*create_from_xpm_* in terms of
7027         gdk_pixbuf_new_from_xpm_data(), move into platform independent
7028         code.
7029
7030         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
7031         advantage of the new draw_rgb_32_image_dithalign.
7032
7033         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
7034
7035         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
7036         on each created GC.
7037
7038         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
7039
7040         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
7041         which we initialize from the drawable when the GC is created,
7042         if the drawable has a colormap.
7043
7044         * gdk/x11/gdkgc-x11.c: include string.h for memset.
7045
7046         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
7047
7048         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
7049
7050 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
7051
7052         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
7053         actually returning expose events, make sure to set
7054         the count field properly.
7055
7056         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
7057         accidentally reintroced bug which always cleared
7058         the graphics_exposures value. 
7059
7060 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
7061
7062         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
7063
7064 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
7065
7066         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
7067
7068 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
7069
7070         * docs/faq/gtk-faq.sgml: Start of Section 6.
7071
7072 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
7073
7074         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
7075         
7076         (Fixes problem with drawing childless frames. Pointed out
7077         by and a first patch from Anders)
7078         
7079         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
7080         compute a child_allocation, even if we don't have a child.
7081
7082         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
7083         Always chain to the parent's impl, even if we don't have a child.
7084
7085 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7086
7087         * gdk/gdkrgb.c: If possible, create only a single shm segment and
7088         use multiple parts of it instead of creating a bunch of separate
7089         segments, since the maximum number of segments per system is not
7090         large. (This might be worth backporting to GTK+-1.2.x if we make a
7091         new release )
7092
7093         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
7094         structure in preparation for per-colormap GdkRGB.
7095
7096         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
7097         to False when we get EINVAL from shmget so that the caller of
7098         gdk_image_new can retry with a smaller segment size.
7099
7100 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
7101
7102         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
7103
7104 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
7105
7106         * configure.in: make the current version number 1.3.1 (binary age 0,
7107         interface age 0).
7108         
7109         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
7110         gtkcompat.h is all we want.
7111
7112         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
7113         GLib primitive types. fixed g_type_register_fundamental() argument
7114         ordering.
7115
7116         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
7117         compiles.
7118
7119         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
7120         object code cleanup, comment trigraph fixes, etc...
7121
7122 2000-06-23  Havoc Pennington  <hp@redhat.com>
7123
7124         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
7125         instead of making up a bogus name for first_para_mark
7126
7127         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
7128         0 as a context ID
7129
7130 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
7131
7132         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
7133
7134 2000-06-21  Havoc Pennington  <hp@pobox.com>
7135
7136         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
7137         we didn't check window->bg_pixmap != GDK_NO_BG.
7138
7139         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
7140         gdk-pixbuf
7141
7142 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
7143
7144         * docs/faq/gtk-faq.sgm: Move file to here.
7145           TODO: Update Makfile.am 
7146
7147 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
7148
7149         * docs/gtk-faq.sgm: Add Section 2
7150
7151 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
7152
7153         * docs/gtk-faq.sgm: New file. Start of DocBook
7154           version of the FAQ.
7155
7156 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
7157
7158         * configure.in (GDK_PIXBUF_MAJOR): Define version
7159         numbers for GDK_PIXBUF_*, as they get substituted
7160         into a header file. Need to consider versioning
7161         for gdk-pixbuf more carefully later.
7162
7163 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
7164
7165         Work with srcdir != builddir.   
7166         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
7167         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7168         * demos/testpixbuf.c: Likewise.
7169         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7170         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
7171         <gdk/x11/gdkx.h>.
7172         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
7173         "gdk-pixbuf.h".
7174         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7175
7176 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
7177
7178         * TODO.xml: Change 1.4 version numbers to 2.0.
7179
7180 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
7181
7182         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
7183         fixups to GTK+ standard.
7184
7185 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
7186
7187         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
7188         gdk-pixbuf.
7189
7190         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
7191         fixups for GObject.
7192
7193         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
7194         gdk-pixbuf with GDK dependencies moved into GDK.
7195         
7196         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
7197         move gdk-pixbuf-loader here until GObject has signals.
7198
7199         * demos/: New directory of demos. Move demos from
7200         gdk-pixbuf here.
7201
7202         * demos/pixbuf-init.c: Small bit of code to check for
7203         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
7204         set GDK_PIXBUF_MODULEDIR appropriately.
7205
7206         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
7207         define which no longer makes sense.
7208
7209 2000-06-21  Havoc Pennington  <hp@redhat.com>
7210
7211         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
7212         gtk_get_default_language
7213
7214         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
7215         new function to get the default language
7216
7217         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
7218         s/gtk_text_view_style_values/gtk_text_style_values/
7219
7220         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
7221         Add a "language" field to tags.
7222
7223         (gtk_text_tag_set_arg): Fix bug in setting
7224         "bg_full_height_set" tag.
7225
7226 2000-06-21  Havoc Pennington  <hp@redhat.com>
7227
7228         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
7229         in the interfaces
7230
7231         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
7232         stuff instead when possible.
7233
7234         * gtk/gtktexttypes.h: Delete some unused constants
7235
7236         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
7237         testtextbuffer.c: use glib instead of custom unicode routines
7238
7239 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
7240
7241         * docs/es/: Removed mistakenly added generated sgml
7242
7243         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
7244         Remove outdated info files.
7245
7246         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
7247         Moved tutorial files into subdir
7248
7249         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
7250         subdir.
7251
7252         * docs/man/gtk_button.pod: Remove. (contents will be
7253         integrated into gtk-reference button page.)
7254
7255         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
7256         docs/faq/Makefile.am: Adjust for new organization
7257
7258 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
7259
7260         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
7261         not $(MKINSTALLDIRS)
7262
7263 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
7264
7265         * gtk/testgtk.c (create_text): Finish the job Elliot started
7266         of removing font setting test for text widget. (Since text widget
7267         and GdkFont are not deprecated, and cause portability problems.)
7268
7269 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
7270
7271         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
7272         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
7273         Remove use of libunicode in favor of new GLib functions.
7274
7275         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
7276         nano-x, framebuffer. The X11 include is just a hack until we get
7277         the necessary functions in gdkcolor.h, so there is no reason to
7278         add other includes of platforms.
7279
7280         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
7281         window bigger than the screen change.
7282
7283         * gtk/testgtk.c: Revert some random changes from Elliot
7284         that had no particular point and were causing testgtkrc
7285         not to function correctly.
7286         
7287         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
7288         because GdkSegment and GdkRegionBox have the same fields,
7289         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
7290         results in clearer code.
7291
7292         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
7293         gdk_input_translate_coordinates): Fix missed GdkObjectification
7294
7295 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7296
7297         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
7298         * gtk/gtk{plug,socket}.h: Missed commits from previous.
7299
7300 2000-06-20  Havoc Pennington  <hp@redhat.com>
7301
7302         * modules/linux-fb/Makefile.am: Make this compile
7303         without framebuffer enabled
7304
7305         * gdk/linux-fb/Makefile.am: Add conditional to not build
7306         framebuffer unless specified in configure
7307
7308         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
7309         the size of the target instead of source if -1 was passed for
7310         width/height
7311
7312         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
7313         width/height confusion.
7314
7315 2000-06-19  Havoc Pennington  <hp@redhat.com>
7316
7317         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
7318         GDK_DRAWABLE_XID. In the future, we probably want to make it
7319         faster with G_DISABLE_CHECKS turned on.
7320
7321 2000-06-14  Havoc Pennington  <hp@redhat.com>
7322
7323         * gdk/Makefile.am: add gdkpixmap.c
7324
7325         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
7326         s/gdk_image_init/_gdk_windowing_image_init
7327
7328         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
7329         ref/unref
7330
7331         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
7332
7333         * gdk/gdkcompat.h: remove GdkWindowType compat, since
7334         GdkWindowType is now non-deprecated; 
7335         change gdk_window_get_type() compat to be
7336         gdk_window_get_window_type().
7337
7338         * gdk/gdkdnd.h: make GdkDragContext a GObject.
7339
7340         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
7341         virtual GObject. Make all functions call into the vtable.
7342         Move gdk_image_put() guts in here. Remove GdkDrawableType
7343         and gdk_drawable_get_type(), these are now GdkWindow-specific.
7344         draw_image, get_depth, get_size, set_colormap, get_colormap,
7345         get_visual added to the vtable.
7346         
7347         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
7348         GObject. Virtualize everything. 
7349         (gdk_gc_new_with_values): remove check for destroyed window,
7350         because now GdkWindow::create_gc will check this.
7351         (gdk_gc_set_values): New function to set GC values, this 
7352         was already implemented but wasn't in the header
7353
7354         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
7355
7356         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
7357         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
7358         remove _gdk_window_class; add _gdk_window_impl_get_type() and
7359         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
7360         _gdk_windowing_window_init, rename gdk_image_init to
7361         _gdk_windowing_image_init.
7362         
7363         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
7364         (gdk_draw_layout): Remove check for destroyed window, 
7365         because all the drawable methods already check it.
7366         
7367         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
7368         Add gdkpixmap.c which contains implementation of GdkDrawable
7369         virtual table (by chaining to a platform-specific implementation
7370         object).
7371         
7372         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
7373         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
7374         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7375         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7376         GdkColormapPrivate. 
7377
7378         * gdk/gdktypes.h: #include <glib-object.h>
7379
7380         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
7381         Move most functionality to platform-specific implementation
7382         object. GdkWindow itself now handles the backing store, then
7383         chains to the platform-specific implementation.
7384         (gdk_window_get_window_type): return GdkWindowType of the window.
7385         (gdk_window_peek_children): New routine, returns the children of 
7386         a GdkWindow
7387         (gdk_window_get_children): Was in X11-specific code and did 
7388         XQueryTree. Changed to simply return a copy of window->children; 
7389         so it can go in cross-platform code.
7390         
7391         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
7392
7393         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
7394         GdkColormap; just changed to use the new private data instead
7395         of casting to GdkColormapPrivate.
7396
7397         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
7398         gdk_cursor_new().
7399
7400         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
7401         (private data member in the GObject). 
7402         (xdnd_manager_source_filter): Function had broken 
7403         error handling, fix it (use gdk_error_trap_push).
7404
7405         * gdk/x11/gdkdrawable-x11.c: This file now implements
7406         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
7407         base class is purely for the convenience of the X port,
7408         and not part of the interface to cross-platform GDK.
7409
7410         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7411         
7412         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7413         specific to X, and returned by the create_gc virtual method
7414         of GdkDrawableImplX11. 
7415         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7416         rather than gchar, this was also changed in the GdkGC vtable.
7417         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7418         mask is 0, return immediately, instead of checking every flag.
7419         This is faster, and keeps us from segfaulting if values is NULL
7420         and the mask contains some nonzero flags.
7421
7422         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7423         GdkWindow.
7424
7425         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
7426         GdkWindowPrivate is gone.
7427
7428         * gdk/x11/gdkim-x11.c: rename things that got renamed.
7429
7430         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
7431         remove the image_put stuff that got transferred to GdkDrawable.
7432         
7433         * gdk/x11/gdkinput.c: renamings
7434
7435         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7436
7437         * gdk/x11/gdkpixmap-x11.c: GObject conversion
7438
7439         * gdk/x11/gdkprivate-x11.h: indentation fixes
7440
7441         * gdk/x11/gdkproperty-x11.c: renamings
7442
7443         * gdk/x11/gdkselection-x11.c: renamings
7444
7445         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
7446         implements the platform-specific "impl" object.
7447         Moved gdk_window_get_children to gdk/gdkwindow.c
7448
7449         * gdk/x11/gdkx.h: Remove all the private structs and private datas
7450         that no longer exist. Add declaration of GdkGCX11 object here.
7451         Fix all the macros to still work. 
7452
7453         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7454         GdkDragContext from the boxed types since they are now GObjects.
7455
7456         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7457         moved xthickness/ythickness into the instance. GtkStyleClass
7458         functions are now in the standard vtable for GtkStyle, so you have
7459         to create a GObject subclass to write a theme engine.
7460         (gtk_style_copy): fixed a leaked PangoFontDescription
7461         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7462         can be the standard GObject function.
7463         
7464         * Throughout GTK:
7465         s/style->klass->[xy]thickness/style->[xy]thickness
7466         s/pango_layout_unref/g_object_unref/
7467
7468         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7469         
7470         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
7471         accessing GDK internals.
7472
7473         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
7474         accessing GDK internals.
7475
7476 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7477
7478         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7479
7480         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7481         problem by calculating event position relative to the trough
7482         rather than the slider.
7483         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7484
7485         * gdk/gdkgc.h: Add GDK_NOR.
7486
7487         * configure.in, Makefile.am: Add modules top level dir
7488         * configure.in: Only use pangox library if building x11 target.
7489         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7490
7491 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7492
7493         * gtk/gtkcolorsel.c: Change private class member to be named
7494         private_data throughout the file.
7495
7496         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7497         private_data to avoid clashing with keyword.
7498
7499 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7500
7501         * gdk/gdkdnd.h: Add comment to remove warning.
7502
7503 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
7504
7505         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7506         Byelorussian language; changed the Makefile and file names 
7507         to reflect that.
7508
7509 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
7510
7511         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7512         rather than gdk_window_hide; this makes things work
7513         correctly if the window is programmatically hidden while
7514         iconified.
7515
7516 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
7517
7518         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7519         cut and paste typo where wrong pixmap was being
7520         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7521
7522 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
7523
7524         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7525         Add helper function to compute format / bytes 
7526         relationship. Use in a couple places to fix up
7527         errors which assume 8 * format.
7528
7529         * gtk/gtkselection.c (gtk_selection_request): Use 32
7530         rather than 8 * sizeof (GdkAtom), to work correctly
7531         on Alpha.
7532
7533 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
7534
7535         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
7536         libgtk.la
7537         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
7538         versions
7539
7540         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
7541         checking macros return NULL since the function has a return value.
7542
7543 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
7544
7545         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
7546         GTK+ from building at all.
7547
7548         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
7549
7550 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
7551
7552         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
7553         gtk/Makefile.am: make it possible to configure gtk for different
7554         targets on the same platform. The library name is now 
7555         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
7556         flag. Only the x11 target compiles right now.
7557         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
7558         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
7559         * gdk/nanox/gdk*generic*: delete generic region code.
7560         * gdk/linux-fb/gdk*generic*: delete generic region code.
7561         * README.nanox: update information.
7562         
7563 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
7564
7565         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
7566         prepend not append. (Pointed out by Brett Hall.)
7567
7568 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
7569
7570         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
7571
7572 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
7573
7574         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
7575         need this later, and this makes sure that the atexit for
7576         glib gets called after that for GDK, so atexits are
7577         properly ordered for object leak checking.
7578
7579         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
7580
7581         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
7582         pango_x_shutdown_display()
7583
7584         * gtk/simple.c (main): Close window on destroy.
7585
7586 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
7587
7588         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
7589         to treat initial creation different from setting with 
7590         regards to the graphics-exposures parameter, so add a parameter
7591         indicating whether this is initial or not.
7592
7593 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
7594
7595         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
7596         to sort of work by adding an extra return_exposes arg
7597         to gdk_event_translate() - it might be better to simply
7598         deprecate the function altogether and force people to rewrite
7599         without it. gdk_window_scroll() handles most of it, and where
7600         gdk_window_scroll() doesn't work, simply redrawing more does.
7601
7602         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
7603         assertion.
7604
7605         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
7606
7607         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
7608         bunch of pretty much useless /* Print debugging info */ comments 
7609         which had drifted away from the code they were commenting.
7610
7611 2000-06-02  Havoc Pennington  <hp@pobox.com>
7612
7613         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
7614         is in working order.
7615         
7616         * gtk/testtext.c: Change to reflect anonymous mark API
7617
7618         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
7619
7620         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
7621         field, which was unused.
7622
7623         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
7624         saves some typing.
7625
7626         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
7627
7628         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
7629         flag on the insertion point and selection bound
7630
7631         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
7632         make mark-manipulation functions take a GtkTextMark* instead of a
7633         mark name.
7634         
7635         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
7636         GtkTextMarkBody; will be used to detect attempts to delete
7637         the permanent marks (insert and selection bound)
7638
7639         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
7640
7641 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
7642
7643         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
7644         flag to on.
7645
7646         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
7647         Honor DOUBLE_BUFFRED_FLAG
7648
7649         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
7650         function to set the DOUBLE_BUFFERED flag.
7651
7652         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
7653         or not exposes done on the widget should be double-buffered.
7654
7655         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
7656         to be what would be expected. (Fixes problem with a
7657         g_return_if_fail() validating a TextDirection enumeration)
7658
7659 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
7660
7661         * gtk/gtkwidget.c: Remove all references to 
7662         offscreen flag which was no longer used.
7663
7664         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
7665
7666         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
7667         for non-null label_widget->parent.
7668
7669         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
7670         which no longer was used.
7671
7672         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
7673
7674         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
7675         for null arguments.
7676
7677         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
7678         check for destroyed windows.
7679
7680 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
7681
7682         * gtk/gtkimmulticontext.c: Add a finalize method and unref
7683         the slave context there.
7684
7685         * gtk/gtkinvisible.[ch]: Make reference counting behavior
7686         identical to GtkWindow.
7687
7688 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
7689
7690         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
7691         pangox to here, so we can write them independent of rendering
7692         system, using GDK primitives.
7693
7694         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
7695         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
7696         since we have a rendering-system independent implementation in
7697         terms of draw_glyphs().
7698         
7699         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
7700         function to render a single line.
7701
7702         * gdk/x11/gdkpango.c: Move the guts of this file mostly
7703         into ../gdkpango.c, which simplifies things, since we
7704         don't have to deal with raw X gc's.
7705
7706 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
7707
7708         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
7709         get the logical attributes for a given GtkTextLine.
7710
7711 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
7712
7713         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
7714         g_locale_get_codeset() to g_get_codeset() change.
7715
7716 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
7717
7718         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
7719         descriptions.
7720
7721         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
7722         the entry.
7723
7724         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
7725         redoing (vastly simplifying) for Pango. Still needs quite
7726         a bit of work. (Size selection is currently poor. List of 
7727         predefined sizes is not a good idea, since all of these
7728         sizes won't necessarily be distinct.)
7729
7730 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
7731
7732         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
7733         CODESET results for LANG=C.
7734
7735 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
7736
7737         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
7738         which takes a stringized pango font description;
7739         ignore the older 'font' and 'fontset' declarations.
7740
7741         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
7742         field with a GdkFont derived via gdk_font_from_description(),
7743         for compatibility. (Should we just remove it entirely?
7744         Probably too much compatibility breakage, but people
7745         should be migrating to the new Pango stuff as quickly
7746         as possible.)
7747
7748 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
7749
7750         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
7751
7752 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
7753
7754         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
7755         redoing; there are some bugs in size allocation right
7756         now, the semi-existant distinction between header / day
7757         fonts was removed, but, with Pango, could actually
7758         be made functional in a nice way.
7759         
7760         * gtk/testcalender: Move calender from examples into this
7761         directory as a test program. (We really need to restrcture
7762         testgtk into a whole directory full of tests for every
7763         widget or functionality group, separated into multiple .c
7764         files.)
7765
7766 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
7767
7768         * gtk/testgtk.c (file_exists): Fix stupid typo that
7769         was keeping RC file from being loaded.
7770
7771         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
7772         RC file font code.
7773
7774 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
7775
7776         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
7777         Add function to load a GdkFont from a PangoFontDescription.
7778
7779 2000-05-29  Tor Lillqvist  <tml@iki.fi>
7780
7781         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
7782         variable should be of type GdkEventPrivate.
7783
7784 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
7785
7786         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
7787         to have any widget for the label, use a GtkLabel widget
7788         to display the text. (Based partially on a patch from
7789         Anders Carlson.)
7790
7791         (Quite a bit of code reorganization - strip 90% of the
7792         guts out of gtkaspectframe and add a single virtual
7793         func to GtkFrameClass - compute_child_allocation.)
7794
7795 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
7796
7797         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
7798         (Removed clist->row_center_offset field because caching
7799         it wasn't saving time or code, added private function
7800         _gtk_clist_create_cell_layout()).
7801
7802 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
7803
7804         * gtk/gtkaccellabel.c: Pangoized.
7805
7806         * gtk/[hv]ruler.c: Pangoized
7807
7808 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
7809
7810         * gtk/gtkfilesel.c (gtk_file_selection_init):
7811         Use gtk_clist_set_column_auto_resize() to remove need
7812         need for manual column width computations.
7813
7814 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
7815
7816         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
7817         ensuring Pango correctness, and considerably simplifying the
7818         code.
7819         
7820         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
7821
7822         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
7823         getting of numbers of lines.
7824
7825         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
7826         to the actual requested width of the lable, not to the wrap
7827         width we set.
7828
7829         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
7830
7831         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
7832           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
7833
7834         * gtk/gtktextview.c: Fix structure inheritance.
7835
7836         * gtk/gtkprogressbar.c: Pangoize.
7837
7838 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
7839
7840         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
7841         in a function.
7842
7843         * gtk/gtktextlayout.c (find_display_line_above): Fixed
7844         bug with computing line tops.
7845
7846         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
7847
7848 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7849
7850         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
7851         and y_offset coordinates to do what we need now. (The offset between
7852         buffer and layout coordinates has been reintroduced, but is a 
7853         bit different than before.)
7854
7855         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
7856         handle the adjustments ourselves, and scroll as necessary using
7857         the new gdk_window_scroll().
7858         
7859         The advantage of this is that when we are incrementally revalidating,
7860         we are essentially rearranging things around the visible portion
7861         of the screen. With the old setup, the visible portion of the
7862         screen was moved around in the layout, so scrolling and redrawing
7863         to track that caused jumping of the display. Since we now
7864         control the scrolling ourselves, we can suppress this and
7865         only redraw when things actually change.
7866
7867 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
7868
7869         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
7870         the region not just redisplay it after-all, since we store the
7871         cursors in the LineDisplay. (Ugly interactions here between
7872         GtkLayout and GtkTextBTree here.)
7873         
7874         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
7875
7876 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
7877
7878         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
7879         Added function to scroll contents of a window while keeping the
7880         window constant. Works by XCopyArea or guffaw-scrolling depending
7881         on the details of how the window is set up. (guffaw-scrolling
7882         still needs to be filled in.)
7883
7884 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
7885
7886         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
7887         move the debugging that was tied to a global variable
7888         to that.
7889
7890         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
7891
7892         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
7893         validated flag, in line data instead of setting height/width to
7894         -1. This allows us to perform operations with partially invalid
7895         buffer (using the old size for invalid lines) and thus to do
7896         incremental vaidation. Keep height/width aggregates up to date
7897         when deleting text and rebalancing the tree.
7898
7899         * gtk/gtktextbtree.[ch]: Add functions validate a line
7900         (gtk_text_btree_validate_line), and to validate up
7901         to a number of pixels (gtk_text_btree_validate).
7902
7903         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
7904         that indicates that something is changed and a revalidation
7905         pass is needed. Change ::need_repaint to ::changed, and
7906         make it take old and new yranges instead of a rectangle.
7907
7908         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
7909         the line_data_destroy() function from 
7910         gtk_text_btree_add_view() to a virtual function in 
7911         GtkTextLayout
7912
7913         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
7914         since we are handling partial repaints in a different fashion
7915         now.
7916
7917         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
7918         of the selection instead of queueing a repaint on the
7919         entire widget.
7920
7921         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
7922         get_selection_bounds() down to btree, make the function
7923         in buffer a wrapper around the btree function.
7924
7925         * gtk/gtktextlayout.[ch]: Add functions to check if the
7926         layout is valid and to recompute either a range of pixels
7927         aroudn a line or a certain total number of pixels.
7928
7929         * gtk/gtktextlayout.[ch]: Cache a single line display;
7930         now that we only redraw the needed portions, the hit rate
7931         for this cache is quite high.
7932         
7933         * gtk/gtktextview.[ch]: Keep track of the first paragraph
7934         on the screen so that when re-laying-out the buffer, we can
7935         keep the same place. This requires connecting to ::value_changed
7936         on the adjustments
7937
7938         * gtk/gtktextview.[ch]: Add idle functions to revalidate
7939         the buffer after we receive an ::invalidated signal.
7940         
7941 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
7942
7943         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
7944         to max of allocation and layout size, not just to the
7945         layout size.
7946
7947         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
7948         Invalidate window so it gets redrawn properly.
7949
7950         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
7951         to mean the entire window.
7952
7953         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
7954         into public header.
7955
7956 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7957
7958         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
7959         to get the name of a mark.
7960
7961         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
7962         to find the paragraph from a y position.
7963
7964 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
7965
7966         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
7967         nodes have width/height >= 0, not > 0.
7968
7969 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
7970
7971         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
7972         Add a size_only flag, so when we only need the size, we don't create
7973         useless appearance attributes.
7974
7975         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
7976         duplicate setting of font description.
7977
7978         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
7979
7980 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
7981
7982         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
7983         EXTRA_DIST. It does not work well when the file that
7984         everything depends on is not in the tarball.
7985
7986 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
7987
7988         * gtk/testgtk.c: Some hacks and fixes so that it basically
7989         works when not sitting in the GTK+ build tree.
7990
7991 2000-05-03  Havoc Pennington  <hp@redhat.com>
7992
7993         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7994         Properly determine the ordering of the tag root and the current
7995         line within the tree. Previous algorithm only worked if the tag
7996         root's immediate parent was the common root of both the current
7997         line and the tag root.
7998
7999 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
8000
8001         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
8002         alignment.
8003
8004         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
8005         the widget text directional dynamically.
8006
8007         * gtk/gtktextview.[ch]: Added functions to get and set default
8008         wrap mode.
8009
8010 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
8011
8012         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
8013         in cursor location computation.
8014
8015 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
8016
8017         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
8018         vadjusment values properly when layout gets smaller.
8019
8020         * gtk/gtktextview.c (need_repaint_handler): Areas being
8021         passed in are far completely inaccurate, and sometimes
8022         too small, so, for now, just queue a redraw on the
8023         whole visible region.
8024
8025 2000-04-25  Havoc Pennington  <hp@redhat.com>
8026
8027         * gtk/gtktextbtree.c (summary_destroy): new function to 
8028         destroy tag summary nodes
8029         (gtk_text_line_next_could_contain_tag): this function was 
8030         totally broken if the line passed in wasn't below the tag
8031         root. Fix it.
8032         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
8033         "wildcard" case, we have to do a linear scan. Blah.
8034         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
8035         we have to do the linear scan
8036         (tag_removed_cb): When a tag is removed from the tag table, 
8037         remove the GtkTextTagInfo node from the btree.
8038         (gtk_text_btree_spew): Implement the spew function, for 
8039         our debugging pleasure.
8040
8041 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
8042
8043         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
8044         a problem with referring to the wrong buffer.
8045
8046         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
8047
8048         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
8049         font description to gtk_style_new() - otherwise things
8050         don't work without a .gtkrc file.
8051
8052         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
8053         tags table if we create it ourself, too.
8054
8055         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
8056         it was conflicting with XKB modifiers.
8057
8058         * gtk/gtktextview.[ch]: Add simple support for 
8059         GtkIMContext.
8060
8061 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
8062
8063         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
8064         with deletion from last commit.
8065
8066 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
8067
8068         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
8069         in the context from the current locale.
8070         
8071         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
8072         context, not hardcoded value.
8073
8074         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
8075         not logical.
8076
8077 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8078
8079         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
8080         attributes - that doesn't handle partial-glyph selection
8081         properly. Instead use new pango_layout_line_get_x_ranges()
8082         functionality to draw the selection.
8083
8084         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
8085         now properly handles out-of-range coordinates.
8086
8087         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
8088
8089         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
8090         public.
8091
8092         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
8093         for paragraphs opposite to the base direction of the widget.
8094
8095         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
8096
8097         * gtk/gtktextlayout.c: Don't split segments on marks, since that
8098         causes Arabic words to reshape as you cursor through.
8099
8100         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
8101         cursor position when moving vertically with the arrow keys and
8102         scrolling with page-up/page-down. (Arrow keys save only the X,
8103         scrolling saves both X and Y.)
8104
8105         This means you can line-up / line-down or page-up / page-down
8106         without losing your place, and also that moving vertically
8107         with the cursor keys keeps the same X position, not the same
8108         character count:
8109
8110         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
8111         arrow keys move by display lines, not paragraphs.
8112
8113 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8114
8115         * gtk/gtklayout.c: Make sure that the bin window is at least
8116         as big as the allocation. (Should we also make sure that the
8117         bin window is big enough to completely cover widget->window?)
8118
8119         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
8120         function to get the onscreen rectangle.
8121
8122         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
8123         for offsets in window coordinates.
8124
8125 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
8126
8127         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
8128         confusion.
8129
8130         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
8131         from the widget direction.
8132
8133         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
8134         Add a "direction" attribute.
8135
8136         * gtk/gtktextview.c: global s/tkxt/text_view/.
8137
8138         * gtk/testtext.c: Added long block of text in Arabic, to test out
8139         the direction attributes. (Some problems with the shaping system
8140         for arabic become obvious - like the fact the cursor splits words
8141         into unjoined pieces.)
8142
8143 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
8144
8145         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8146
8147         * gtk/gtktextlayout.c: Fix up alignment.
8148
8149         * gtk/testtext.c: Add some tests for centering, wrapping.
8150
8151 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
8152
8153         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8154         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8155         If we wrote GTK+-specific layout-render function this could just replace
8156         the draw_layout() operation in the vtable.
8157
8158         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
8159         pango_layout_get_cursor_pos() and use that function.
8160
8161         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8162         is a non-static symbol.
8163
8164         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8165         with gtk_text_btree_find_line_by_y()
8166
8167         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8168         renderer that handles GtkTextAppearance attributes.
8169
8170         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
8171
8172           - Move the values in the style that don't affect geometry into a
8173             GtkTextAppearance structure.
8174           - Change underline to take a PangoUnderline and "font" a string
8175             representation of a font description
8176           - Add a "font_desc" attribute which takes a FontDescription structure.
8177
8178         * gtk/gtktextlayout.[ch]:
8179
8180           - Get rid of the display-line list per each line. Instead, we
8181             generate, on demand, a GtkTextLineDisplay structure which]
8182             contains a PangoLayout * and other necesary information
8183             (offsets, cursor locations) for displaying a paragraph.
8184           - Get rid of the code to wrap lines, create display chunks,
8185             etc. Instead, we just go through a paragraph and convert
8186             it into the necessary inputs to a PangoLayout.
8187           - Implement a new attribute type, GtkTextAttrAppearance. This
8188             holds a GtkTextAppearance, and is used to pass colors, 
8189             stipple, etc, through from the layout to the display without
8190             having to use lots and lots of individual attributes.
8191           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
8192             in terms of PangoLayout functions.
8193         
8194         * gtk/gtktextview.c: 
8195          
8196           - Handle passing the necessary PangoContext to the layout
8197           - Some fixups in painting to deal with the automatic backing store
8198             and offsetting of GTK+-1.4
8199           - Add a style_set handler so that the default style reacts
8200             properly to theme changes.
8201         
8202         * gtk/gtktext?*.[ch]: Random code-style fixes.
8203
8204         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
8205
8206 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
8207
8208         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
8209         in original form preparatory to Pango-ization and gdkimcontext-ization.
8210
8211 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
8212
8213         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
8214         so that we can derive from gtkimcontext in language bindings properly.
8215
8216 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
8217
8218         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
8219         Add a compose table including (almost) all the compose combinations
8220         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
8221         data in the XIM implementation.
8222
8223         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
8224         Moved functions to convert keyvalues from and to unicode here from
8225         the win32 port and made them public.
8226
8227 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
8228
8229         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
8230
8231 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
8232
8233         * gtk/gtkimcontext.[ch]: Base class for new input context system
8234
8235         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
8236         the real input context implementation to be loaded from modules
8237         and switched on the fly.
8238
8239         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
8240         context that just does direct keysymbol => unicode translation.
8241
8242         * gtk/gtkentry.[ch]: Start switching editing over to using
8243         GtkInputContext. (No handling of preedit yet.)
8244
8245 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
8246
8247         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
8248         many substitutions. (klass should not be subsituted.)
8249
8250 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
8251
8252         * configure.in: Add checks for Pango
8253
8254         * configure.in docs/Makefile.am: Add test for sgml2html
8255         and allow 'make dist' without building html, but print out
8256         warnings in that case. (For making snapshots)
8257
8258         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
8259         Add Pango libraries and C flags
8260
8261         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8262         Add function (gdk_draw_layout) to draw a pango layout.
8263
8264         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
8265         for getting Pango contexts for GDK.
8266
8267         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
8268
8269         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
8270         editing.
8271
8272         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
8273         keysym => unicode translations. More languages can be added
8274         here, but real input-method support is needed.
8275
8276         * docs/Changes-1.4.txt: Added note about entry behavior.
8277         
8278         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
8279         to set the reading direction for a widget and the global direction.
8280         Add test which allows toggling the global direction. Two private
8281         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
8282
8283         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
8284           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
8285
8286         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
8287
8288         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
8289         underlining now handled by Pango.
8290
8291         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
8292         to RCStyle and Style. (Having both this and the old font name and GdkFont 
8293         is temporary.)
8294
8295         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
8296         convenience functions for creating contexts and layouts for widgets.
8297
8298         * gtk/testgtk.c: Enhance label tests with multilingual labels.
8299
8300 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
8301
8302         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
8303         titles to be active, even if they aren't visible.
8304         (gtk_clist_column_titles_passive):  Ditto.
8305
8306 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
8307
8308         * gtkmenu.c:
8309         * gtkmenu.h:
8310         * gtktypeutils.h: Spelling/grammar fixes in comments.
8311
8312 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
8313
8314         * gdk/nanox/*.h: add missing header files.
8315
8316 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
8317
8318         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
8319         send_event to TRUE.
8320         (gtk_drawing_area_size): queue a resize.
8321
8322 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
8323
8324         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
8325         the handlers, also invalidate them. bug nailed down by Karl Nelson
8326         <kenelson@ece.ucdavis.edu>.
8327
8328 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
8329
8330         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
8331         "(nil)" foundries, patch from Grigorios Magklis.
8332
8333         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
8334         on non-available fonts, based on a patch by Grigorios Magklis
8335         <maglis@cs.rochester.edu>.
8336
8337 2000-05-18  Elliot Lee  <sopwith@redhat.com>
8338
8339         * gdk/x11/gdkregion-generic.c: If a region does not have any
8340         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
8341         instead of GDK_OVERLAP_RECTANGLE_IN.
8342
8343 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
8344
8345         * gtk/gtklayout.c (gtk_layout_map): Remove references to
8346         OFFSCREEN, as it is no longer necessary.
8347
8348 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
8349
8350         * gtk/gtkcolorsel.c: Patch from David Santiago
8351         <mrcooger@cyberverse.com> to change things so that the 
8352         indicator of the active palette entry is done independently,
8353         not via the focus, since it should always be visible.
8354
8355 2000-05-17  Tor Lillqvist  <tml@iki.fi>
8356
8357         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
8358         refcount leaks as in the X11 backend.
8359
8360         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
8361         cosmetics.
8362
8363         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
8364         backend. Add _gdk_windowing_window_destroy().
8365
8366         * gtk/gtkcolorsel.c: Include correct backend-specific header.
8367         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
8368         either, but these probably do exist on nanox?)
8369         
8370         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
8371         which isn't necessarily defined by <math.h>.
8372
8373         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
8374         ancestry past GtkObject.
8375
8376         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8377         from DLL on Win32.
8378
8379         * gtk/gtk.def: Update corresponding to recent changes.
8380
8381         * gtk/makefile.{cygwin,msc}: Updates.
8382
8383 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
8384
8385         * docs/Changes-1.4.txt: A bit of editing.
8386
8387         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
8388         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
8389         to clear the update area for the window, and clear it
8390         when hiding a window.
8391
8392         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
8393         if window destroyed.
8394
8395         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8396
8397         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
8398         gdk_window_destroy() to the generic code, since there was a lot of 
8399         window-system-independent logic it in. Add a function:
8400         
8401          _gdk_window_destroy() 
8402
8403         to the internal API to destroy a window without unreferencing it.
8404         Add a function:
8405
8406          _gdk_windowing_window_destroy()
8407
8408         That does the windowing-system-dependent part of destroying 
8409         the window.
8410
8411 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
8412
8413         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8414
8415 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
8416
8417         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
8418         Make gtk_widget_shape_combine_mask() keep a reference count on
8419         the pixmap since it keeps it around.
8420
8421 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
8422
8423         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8424         leak.
8425
8426         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8427         leak with event filters.
8428
8429 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
8430
8431         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8432         signal handlers with the right data arguments. (Fixes
8433         some warnings when a widget was repeatedly set as a drag
8434         destination.)
8435
8436         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8437         window so we can avoid avoid setting the DND properties on the
8438         toplevel window repeatedly.
8439
8440 2000-05-13  Tor Lillqvist  <tml@iki.fi>
8441
8442         * gdk/win32/gdkwin32.h: Define more message types missing from
8443         mingw headers.
8444
8445         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8446         call gdk_window_destroy_notify(). It was never called. This
8447         probably meant that the GdkWindow was never freed. Thanks Owen for
8448         noticing (!).
8449
8450         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8451         window as destroyed before calling DestroyWindow(). DestroyWindow()
8452         causes a call to the window procedure (gdk_WindowProc), which
8453         calls gdk_event_translate(), which calls
8454         gdk_window_destroy_notify(), which gets confused unless the window
8455         is set as destroyed.
8456
8457         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8458         this function to indicate it's win32 only. Put inside #ifdef
8459         G_ENABLE_DEBUG.
8460
8461         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8462         debugging function. (gdk_event_translate:) Add a default branch
8463         that uses the above function to print debug messages with all
8464         Windows messages symbolically.
8465
8466         * gdk/win32/gdkprivate-win32.h: Declare it, and
8467         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8468
8469 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
8470
8471         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8472         public header file.
8473
8474 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
8475
8476         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8477
8478         * gtk/gtktext.c: made the adjustments no-construct args, simply
8479         provide default adjustments.
8480         (gtk_text_destroy): release adjustments.
8481
8482         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8483         adjustment argument non-construct.
8484
8485         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8486         instead of in finalize.
8487         (gtk_progress_get_text_from_value): 
8488         (gtk_progress_get_current_text): 
8489         (gtk_progress_set_value): 
8490         (gtk_progress_get_percentage_from_value): 
8491         (gtk_progress_get_current_percentage): 
8492         (gtk_progress_set_percentage): 
8493         (gtk_progress_configure): ensure an adjustment is present.
8494
8495 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
8496
8497         * gtk/gtkcolorsel.[hc]:
8498         * gtk/gtkcolorseldialog.[hc]:
8499         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8500         their parent implementation, use bit fields for boolean values, don't
8501         create unused widgets, usage of glib types, braces go on their own
8502         lines, function argument alignment, #include directives etc. etc. etc..
8503
8504         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8505
8506 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
8507
8508         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8509
8510         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8511         of NULL.
8512
8513         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8514         to freed data.
8515         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8516
8517         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8518         to NULL when the toplevel is getting destroyed.
8519         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8520         (gtk_menu_destroy): 
8521         (gtk_menu_init): store the information of whether we have to
8522         readd the initial child ref_count during destruction in a new
8523         GtkMenu field needs_destruction_ref_count.
8524
8525         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8526         here, those reading: learn from my mistake! ;)
8527         in order for set_?adjustment to support a default adjustemnt if
8528         invoked with an adjustment pointer of NULL, the code read (pseudo):
8529         if (v->adjustment) unref (v->adjustment);
8530         if (!adjustment) adjustment = adjustment_new ();
8531         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8532         now imagine the first unref to actually free the old adjustment and
8533         adjustment_new() creating a new adjustment from the very same memory
8534         portion. here, the latter comparision will unintendedly fail, and
8535         all hell breaks loose.
8536         (gtk_viewport_set_hadjustment):
8537         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
8538         after unreferencing it.
8539
8540         * gtk/gtkcontainer.[hc]: removed toplevel registration
8541         functions: gtk_container_register_toplevel(),
8542         gtk_container_unregister_toplevel() and
8543         gtk_container_get_toplevels() which had wrong semantics
8544         anyways: it didn't reference and copy the list.
8545
8546         * gtk/gtkwindow.c: we take over the container toplevel registration
8547         bussiness now. windows are registered across multiple destructions,
8548         untill they are finalized. the initial implicit reference count
8549         users are holding on windows is removed with the first destruction
8550         though.
8551         (gtk_window_init): ref & sink and set has_user_ref_count, got
8552         rid of gtk_container_register_toplevel() call. add window to
8553         toplevel_list.
8554         (gtk_window_destroy): unref the window if has_user_ref_count
8555         is still set, got rid of call to
8556         gtk_container_unregister_toplevel().
8557         (gtk_window_finalize): remove window from toplevel list.
8558         (gtk_window_list_toplevels): new function to return a newly
8559         created list with referenced toplevels.
8560         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
8561
8562         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
8563         adjustment a non-construct arg.
8564         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
8565         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
8566         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
8567
8568         * gtk/gtkrange.c: added some realized checks.
8569         (gtk_range_destroy): get rid of the h/v adjustments in the
8570         destroy handler instead of finalize. remove timer.
8571         (gtk_range_get_adjustment): demand create adjustment.
8572
8573         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
8574         we simply create them on demand now and get rid of them in
8575         the destroy handler.
8576         (gtk_viewport_destroy): get rid of the h/v adjustments in the
8577         destroy handler instead of finalize.
8578         (gtk_viewport_get_hadjustment): 
8579         (gtk_viewport_get_vadjustment): 
8580         (gtk_viewport_size_allocate): demand create h/v adjustment
8581         if required.
8582
8583         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
8584         gtk_widget_real_destroy () functionality.
8585         (gtk_widget_real_destroy): reinitialize with a new style, instead
8586         of setting widget->style to NULL.
8587
8588 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
8589
8590         * gtk/gtkcalendar.c:
8591         * gtk/gtkbutton.c: ported _get_type() implementation over to
8592         GType, either to preserve memchunks allocation facilities,
8593         or because Gtk+ 1.0 GtkTypeInfo was still being used.
8594
8595         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
8596         over. prepare for ::destroy to be emitted multiple times.
8597         removed reference tracer magic. chain into GObjectClass.shutdown()
8598         to emit ::destroy signal.
8599
8600         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
8601         fundamental.
8602
8603         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
8604         cludge.
8605
8606         * gtk/gtksocket.c:
8607         * gtk/gtkplug.c:
8608         * gtk/gtklayout.c:
8609         * gtk/gtklabel.c:
8610         * gtk/gtkargcollector.c:
8611         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
8612         not being a fundamental anymore, and to work with the new
8613         type system (nuked fundamental type varargs clutter).
8614
8615         * gtk/*.c: install finalize handlers in the GObjectClass
8616         part of the class structure.
8617         changed direct GTK_OBJECT()->klass accesses to
8618         GTK_*_GET_CLASS().
8619         changed direct object_class->type accesses to GTK_CLASS_TYPE().
8620
8621         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
8622         GType. made most of the GTK_*() type macros and Gtk* typedefs
8623         simple wrappers around macros and types provided by GType.
8624         most notably, a significant portion of the old API vanished:
8625         GTK_TYPE_MAKE(),
8626         GTK_TYPE_SEQNO(),
8627         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
8628         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
8629         GTK_TYPE_ARGS,
8630         GTK_TYPE_CALLBACK,
8631         GTK_TYPE_C_CALLBACK,
8632         GTK_TYPE_FOREIGN,
8633         GtkTypeQuery,
8634         gtk_type_query(),
8635         gtk_type_set_varargs_type(),
8636         gtk_type_get_varargs_type(),
8637         gtk_type_check_object_cast(),
8638         gtk_type_check_class_cast(),
8639         gtk_type_describe_tree(),
8640         gtk_type_describe_heritage(),
8641         gtk_type_free(),
8642         gtk_type_children_types(),
8643         gtk_type_set_chunk_alloc(),
8644         gtk_type_register_enum(),
8645         gtk_type_register_flags(),
8646         gtk_type_parent_class().
8647         replacements, where available are described in ../docs/Changes-1.4.txt.
8648         implemented compatibility functions for the remaining API.
8649
8650         * configure.in: depend on glib 1.3.1, use gobject module.
8651
8652 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
8653
8654         * TODO.xml: Various updates to current status.
8655
8656 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
8657
8658         * gtk.m4: Print out version when test succeeds.
8659
8660 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
8661
8662         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
8663         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
8664         
8665         (Original triangle color selector from Simon Budig
8666         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
8667         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
8668         Santiago <mrcooger@cyberverse.com>)
8669
8670         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
8671         out into a separate widget.
8672
8673         * gtk/testgtk.c: Add some checkbuttons for toggling palette
8674         and opacity controls.
8675
8676 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
8677
8678         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
8679         snuck in prematurely.
8680
8681 2000-05-07  Tor Lillqvist  <tml@iki.fi>
8682
8683         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
8684         had deleted a ! operator by mistake, which caused
8685         GDK_SELECTION_CLEAR events never to be generated, which caused
8686         only the first copy to the clipboard from an gtkeditable to
8687         actually cause a copy to the Windows clipboard.
8688
8689 2000-05-06  Tor Lillqvist  <tml@iki.fi>
8690
8691         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
8692         compilation, too. Current mingw gcc distributions include the
8693         necessary headers. Also the necessary IIDs are now in mingw
8694         headers/libraries, and own definitions unnecessary.
8695
8696         More hacking on OLE2 DND, still doesn't work though, and thus
8697         ifdeffed out.
8698
8699         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
8700         here, too.
8701
8702 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
8703
8704         * gdk/nanox/*: nano-X port work in progress.
8705         * gdk/simple.c: simple test for Gdk.
8706         * README.nanox: notes about the port: read this first!
8707         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
8708         with nano-X.
8709
8710 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
8711
8712         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
8713         gdk_window_clear() into common code, implement in terms of
8714         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
8715         not redirected to the backing rectangle.
8716
8717 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
8718
8719         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
8720         EXTRA_DIST. It does not work well when the file that
8721         everything depends on is not in the tarball.
8722
8723 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
8724
8725         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
8726         with recursion where process_updates() is called from
8727         an expose handler. (GtkTextView is highly broken in
8728         doing this, but it should work, so it is a nice test
8729         case.)
8730
8731 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8732
8733         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
8734         handle the case where updates are queued during processing of
8735         updates.
8736
8737 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8738
8739         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
8740         window is on gdk_display - use that instead of segfaulting.
8741
8742 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
8743
8744         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
8745         broken and require an empty arg, give it to them.
8746
8747 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
8748
8749         * gtk/gtklabel.h: indentation fixes.
8750
8751 2000-05-02  Tor Lillqvist  <tml@iki.fi>
8752
8753         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
8754         draw too narrow or too low arcs, they seem to fail, at least with
8755         some display drivers.
8756
8757         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
8758
8759         Large changes to the Win32 backend, partially made necessary by
8760         the changes to the backend-independent internal
8761         structures. Attempts to implement similar backing store stuff as
8762         on X11. The current (CVS) version of the Win32 backend is *not* as
8763         stable as it was before the no-flicker branch was merged. A
8764         zipfile with that version is available from
8765         http://www.gimp.org/win32/. That should be use by "production"
8766         code until this CVS version is usable. (But note, the Win32
8767         backend has never been claimed to be "production quality".)
8768
8769         * README.win32: Add the above comment about versions.
8770
8771         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
8772
8773         * gdk/gdk.def: Update.
8774
8775         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
8776         presumably be replaced by some more better mechanism as 1.4 gets
8777         closer to release shape.
8778
8779         * gdk/makefile.{cygwin,msc}: Update.
8780
8781         * gdk/win32/*.c: Correct inclusions of the backend-specific and
8782         internal headers. Change code according to changes in these. Use
8783         gdk_drawable_*, not gdk_window_* where necessary.
8784
8785         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
8786         our old DND.
8787
8788         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
8789         to interpret single characters as UTF-8. Thanks to Hans Breuer.
8790         Use correct function name in warning messages.
8791
8792         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
8793         GSourceFuncs gdk_event_prepare and gdk_event_check.
8794         (gdk_event_get_graphics_expose): Do implement, use
8795         PeekMessage. Thanks to Hans Breuer.
8796         (event_mask_string): Debugging function to print an GdkEventMask.
8797         (gdk_pointer_grab): Use it.
8798
8799         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
8800         (old) book I used claimed was Hangul actually is CJK Unified
8801         Ideographs Extension A. Also, Hangul Syllables were missing.
8802         Improve logging.
8803
8804         * gdk/win32/gdkgc-win32.c: Largish changes.
8805
8806         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
8807         g_win32_getlocale() from GLib, and not setlocale() to get current
8808         locale name.
8809
8810         * gdk/win32/gdkprivate-win32.h
8811         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
8812         gdkwin32.h, similarily as in the X11 backend.
8813
8814         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
8815         assignment was used instead of equals in if test. Thanks to Hans
8816         Breuer.
8817
8818         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
8819         the X11 version.
8820
8821         * gdk/win32/makefile.{cygwin,msc}
8822         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
8823         path to the Win32 headers that works also with the mingw compiler.
8824
8825         * gtk/gtkstyle.c: Include <string.h>.
8826
8827 2000-04-26  Havoc Pennington  <hp@redhat.com>
8828
8829         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
8830         replacing the broken gtk_label_get ()
8831
8832 2000-04-15  Havoc Pennington  <hp@pobox.com>
8833
8834         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
8835         this keeps scanner scripts from getting confused.
8836
8837         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
8838         data, rather than void
8839
8840 2000-04-15  Tor Lillqvist  <tml@iki.fi>
8841
8842         * gtk/gtkclist.c (gtk_clist_motion)
8843         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
8844         with is_hint FALSE, get x and y from the event. They used to be
8845         used uninitialised. The Win32 backend never sends motion events
8846         marked as hints. This for instance fixes the annoying file and
8847         font selector behaviour in the Win32 version.
8848
8849 2000-04-14  Tor Lillqvist  <tml@iki.fi>
8850
8851         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
8852         gtk_private_n_signals variables, they are used by some software,
8853         sigh.
8854
8855         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
8856         installation directory from the Registry, where the installer
8857         should have put it.
8858
8859 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
8860
8861         * gdk/x11/Makefile.am: Fix problem with installation directory for
8862         gdkx.h
8863
8864         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
8865         <mrcooger@cyberverse.com> so that when selecting menus with the
8866         mouse, the first item will not be selected, but when selecting
8867         with an accelerator, or navigating left-right on a menubar with
8868         the menus popped up, the first item will be selected.
8869
8870 2000-04-05  Dan Damian  <dand@dnttm.ro>
8871
8872         * configure.in: Added "ro" to ALL_LINGUAS.
8873
8874 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
8875
8876         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
8877         indentation.
8878
8879         * Makefile.am (EXTRA_DIST): Fix typo.
8880
8881         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
8882         to catch gdkconfig.h
8883
8884         * gtk/gtkitemfactory.c: Added FIXME.
8885
8886 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
8887
8888         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
8889         s/return_if_fail/return_val_if_fail/g and add a return value.
8890
8891 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8892
8893         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
8894         merge slipup.
8895
8896         * gdk/gdkinput.h: Fix missing line from merge.
8897
8898 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
8899
8900         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
8901         instead of gdkprivate.h.
8902
8903 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
8904
8905         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
8906         parent class to correctly be GtkDialogClass.
8907
8908 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
8909
8910         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
8911         toplevel windows and their immediate children by their parents,
8912         since the size of toplevel windows is out of our immediate
8913         control and we don't get any real benefit from trying to track
8914         this size for clipping.
8915
8916         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
8917         for input_only windows.
8918
8919         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
8920         to fix some hacks and make sure that we don't try to set the
8921         background of input only windows.
8922
8923 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
8924
8925         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
8926         the _really_ internal stuff, and leave gdkprivate.h for the fake private
8927         stuff that we've traditionally exposed.
8928
8929         * gdk/**.c: Use gdkinternals.h where appropriate.
8930
8931         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
8932         not include gdkprivate-x11.h, move all stuff of conceivable public
8933         interest into gdkx.h; keep all really private stuff in
8934         uninstalled header gdkprivate-x11.h.
8935
8936         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
8937         image->image_put on windows through a new function _gdk_window_draw_image()
8938         to allow us to do backing store for images. (Sort of ugly)
8939
8940         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
8941         contexts locally so that we can offset them properly when drawing 
8942         onto backing pixmaps.
8943
8944         * gdk/gdkinput.h: Reindented
8945
8946         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
8947         pixmap or color for the window, so we can properly initialize
8948         our double-buffer pixmaps, and also so that we temporarily set
8949         a background of None while scrolling.
8950
8951         * gdk/gdkregion.h: Revise region boolean operators to have an
8952         interface that is actually convenient - switch from creating new
8953         regions on every op, to "methods" that modify existing regions
8954         (A = A OP B). 3 argument forms which allow dest == src, would also
8955         be possible, but the current interfaces seem to map nicely
8956         onto what needs to be done. (There is quite a lot of region
8957         code in GDK now.)
8958
8959         * gdk/gdkregion.h: Add constructor from rectangle and a copy
8960         operator.
8961
8962         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
8963         gdkpoly-generic.h: Copy region code from Xlib, switch it over
8964         to 32 bit coordinates, modify it to be mostly GTK+ style
8965         and to have interfaces that match gdkregion.h.
8966
8967         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
8968         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
8969         create a backing pixmap and redirect all drawing to
8970         that backing pixmap until a matching gdk_window_end_paint().
8971
8972         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
8973         Create a special drawable class for GtkWindow's that 
8974         redirects the drawing to the backing pixmap as necessary
8975         and then calls the real operations in _gdk_windowing_window_class.
8976
8977         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
8978         Store invalid region for each window. Generate expose events for invalid
8979         region in an idle. This replaces both the expose compression
8980         and the redrawing queuing in GTK+. It is both more efficient and
8981         simpler than either one individually and far more so then the
8982         combination.
8983
8984         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
8985         Emulate 32 bit coordinates for windows with 16 bit coordinates
8986         by offsetting drawing, guffaw scrolling techniques and
8987         mapping/unmapping child windows as necessary.
8988
8989         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
8990         where, when invalid regions are processed, the region is stored,
8991         and if expose events come in that are detectably duplicate
8992         the processed exposes (by comparison of event serial numbers),
8993         the stored region is subtracted out of those exposes.
8994
8995         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
8996         regions newly exposed when scrolling or resizing windows.
8997         This, combined with forcing processesing of queued invalidated
8998         regions, gives nice flicker-free scrolling.
8999
9000         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
9001         invalidated regions after every scroll.
9002
9003         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
9004         emulation in GDK. Its, for all practical purposes just a
9005         GtkViewport/GtkFixed hybrid now.
9006
9007         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
9008         (16-bit) structures as necessary instead of just casting.
9009
9010         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
9011         in terms of the structures from gdkregion-generic.c, using appropriate
9012         offsets from GDK to X11 coordinates. Cache clip mask and
9013         origin and ts origin locally and only flush to the server
9014         when drawing, to avoid constantly setting and resetting these
9015         values when offsetting GC's for scrolling and backing pixmaps.
9016
9017         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
9018
9019         * gtk/gtkcontainer.c: Call process_all_updates at end
9020         of resizing to reduce flicker. (Avoids having redraw
9021         lag arbitrarily behind resize under some circumstances)
9022
9023         * gtk/gtkentry.c: Remove old backing store code, and simply take
9024         advantage of the new backing store capabilities of GDK.
9025
9026         * gtk/gtkmain.c: Simple implementation of widget backing
9027         store - simply push a paint while handling each expose.
9028         (Should really be configurable widget for widget.)
9029         
9030         * gtk/gtkwidget.c: Remove all the old complicated redraw
9031         code, and simply invalidate the GDK windows from
9032         gdk_window_queue_clear(), etc. (Sigh, so much carefully
9033         debugged complexity ... gone to the winds.)
9034
9035         Remove all the code for suppressing expose events while
9036         resizes are pending; this isn't needed since the invalid
9037         areas won't be processed until after the resizes are
9038         processed, since they are in a lower priority idle.
9039
9040 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
9041
9042         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
9043         and height of dest rectangle for non-intersecting rectangles.
9044
9045 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
9046
9047         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
9048         for GdkRectangle.
9049
9050 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
9051
9052         * gdk/gdk{events,image,private,types,window}.h
9053          gdk/x11/gdkinputprivate.h: Change all coordinates
9054          from int16 to int. Also, Change width and height from
9055          unsigned to signed to avoid all the stupid C 
9056          signedness bugs.
9057
9058 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
9059
9060         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
9061         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
9062         Add some more detailed checking.
9063
9064         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
9065         New function to retrieve the depth of a drawable.
9066
9067         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
9068         field, reorder fields to save memory. 
9069
9070 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
9071
9072         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
9073         of the background image instead of scaling the background down to
9074         a line.
9075
9076         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
9077         which temporarily set slider to wrong size.
9078
9079         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
9080         queue_clear().
9081
9082 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
9083
9084 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
9085
9086         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
9087
9088 2000-03-17  Tor Lillqvist  <tml@iki.fi>
9089
9090         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
9091         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
9092
9093         * gdk/win32/gdkfont-win32.c
9094         * gdk/win32/gdkproperty-win32.c
9095         * gdk/win32/gdkselection-win32.c
9096         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
9097         now declared such.
9098
9099 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
9100
9101         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
9102
9103 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
9104
9105         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
9106         is called without trapping X errors.
9107
9108 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
9109
9110         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
9111         way into the fontset lists.
9112
9113 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
9114
9115         * gtk/gtkthemes.h: add extern "C" scope.
9116
9117 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
9118
9119         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
9120         to make appends to the list constant. (gtk-guy-990901-0.patch)
9121
9122 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
9123
9124         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
9125         for the typename hash table.
9126
9127 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
9128
9129         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
9130         to make sure we never divide by zero. 
9131         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
9132
9133 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
9134
9135         * gtk/gtkfontsel.c: Apply patch from
9136         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
9137         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
9138
9139         Also, some cleanups in atom handling.
9140
9141 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
9142
9143         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9144         not GtkWidget.
9145
9146 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
9147
9148         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
9149         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
9150         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9151         more guint wrap-around bugs before going to bed.
9152
9153 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
9154
9155         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9156         guint wrap arounds in allocation.width.
9157
9158         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9159         process untill we fit the allocation given.
9160
9161 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
9162
9163         * gtk/gtkwidget.c:
9164         (gtk_widget_unrealize): guard widget access with ref/unref
9165         around signal emission.
9166         (gtk_widget_hide): same here, but also check its destroyed
9167         state before queueing a resize.
9168
9169 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
9170
9171         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9172         of gtk_default_insensitive_bg as insensitive base color.
9173
9174         * gtk/gtktext.c (gtk_text_style_set): set the background color according
9175         to the widget's state.
9176         (gtk_text_realize): same here.
9177         (gtk_text_state_changed): same here.
9178         (draw_bg_rect): compare background color against base[] from
9179         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
9180
9181 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
9182
9183         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
9184         grabs are active, unless a delete event is send to the toplevel
9185         of the currently grab holding widget.
9186
9187 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
9188
9189         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
9190         debugging g_print's.
9191
9192 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
9193
9194         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
9195         ever make the scrolled-window requisition ever depend on the 
9196         visibility state of the scrollbars for the AUTOMATIC policy. 
9197         This breaks the GTK+ requisition model, and causes loops.
9198
9199 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
9200
9201         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
9202         the default font to avoid problems with XFree86-4.0 where the
9203         default charset is iso10646-1, not iso8859-1.
9204
9205 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
9206
9207         * acinclude.m4
9208         * config.guess
9209         * config.sub
9210         * ltconfig
9211         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
9212
9213         * gtk/Makefile.am: minor cosmetic consistency tweak
9214
9215 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
9216
9217         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
9218         the activate_time to 0, so that we handle a quick
9219         press/release press/release properly and don't suppress
9220         the second release. (Red Hat bug #7545)
9221
9222 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
9223
9224         * gtk/gtkctree.c (row_delete):
9225         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
9226         bugs with destruction notifier, *always* update internal
9227         structures *before* calling user code.
9228
9229 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
9230
9231         A few more fixes for bug #5487, #2051, #2677.
9232         * gtk/gtkclist.c : 
9233         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
9234         not GDK_BUTTON_PRESS.
9235         (resync_selection): resync only if selection_mode is
9236         GTK_SELECTION_EXTENDED
9237         * gtk/gtkctree.c (resync_selection): same here
9238
9239 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
9240
9241         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
9242         gdk_drag_get_selection() and gtk_menu_detach().
9243
9244         [ From Jeroen Ruigrok/Asmodai ]
9245
9246 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
9247
9248         * gtk/gtknotebook.c (gtk_notebook_size_request): 
9249         page->tab_label can be NULL.
9250
9251 2000-01-25  Havoc Pennington  <hp@pobox.com>
9252         
9253         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
9254         arg is boolean
9255
9256         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
9257
9258         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
9259
9260         * gdk/gdkproperty.c (gdk_property_get): return boolean
9261
9262         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
9263
9264         * gdk/gdkim.c (gdk_im_ready): return boolean
9265
9266         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
9267
9268         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
9269         glib clash, should fix glib)
9270
9271         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
9272         (gdk_get_show_events): return gboolean, and canonicalize 
9273         to TRUE/FALSE
9274
9275         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
9276         colormap is private
9277         (gdk_colors_alloc): gboolean whether to be contiguous
9278         (gdk_color_equal): return gboolean since we are a predicate
9279         and not a qsort() (this looks semi-wrong due to glib breakage,
9280         IMO glib should be fixed)
9281         
9282         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
9283         (gdk_get_use_xshm): return gboolean
9284         (gdk_pointer_is_grabbed): return gboolean
9285
9286         * gdk/gdk.h: Change prototypes to match all the above changes,
9287         and re-run egtk-format-protos as required.
9288
9289 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
9290
9291         * gtk/gtkctree.c (resync_selection): 
9292         * gtk/gtkclist.c (resync_selection):
9293
9294         Return immediately if clist->drag_pos < 0. This is a workaround
9295         for the corrupt state that the clist gets into when a
9296         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
9297
9298         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
9299         
9300         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
9301         variable from recent commit.
9302
9303 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
9304
9305         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
9306
9307 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
9308
9309         * gtk/Makefile.am: prefix all autogenerated source that get build in
9310         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
9311         in builddir. since we subsequently cd into srcdir for autogeneration,
9312         the paths have to be stripped from the target file names, thusly we
9313         use $(@F) as target names now.
9314         put a comment about configure.in's --disable-rebuilds option,
9315         which can be used for non-writable source directories, for development
9316         setups though, srcdir has to be *writable*.
9317
9318 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
9319
9320         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
9321           Finish the job of allowing event to be NULL.
9322           (Fixes bug #4283, reported by Chris Blizzard)
9323
9324         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
9325           things so that the cursor appears on screen, properly
9326           take into account INNER_BORDER.
9327           (Fixes bug #4754, reported by Antonio Campos)
9328
9329 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
9330
9331         * gtk/gtknotebook.c (gtk_notebook_map): Don't
9332           show the tab_label unless it itself is visible.
9333
9334           gtk/gtknotebook.c (gtk_notebook_size_request):
9335           Do a better job of making sure that the visibility
9336           of the tab label corresponds to whether it should
9337           be mapped or not.
9338
9339 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
9340
9341         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
9342           Use the requisition, not the allocation, since the
9343           allocation has not necessarily been computed yet.
9344           (Pointed out by Eugene Osintsev)
9345
9346 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
9347
9348         * gtk/gtkstyle.c (gtk_style_new): Dont' set
9349           style/base[GTK_STATE_INSENSITIVE] both to
9350           gtk_default_insensitive_bg!
9351           (Bug #2187, reported by Jonathan Blandford)
9352
9353         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
9354           Add Alt_L, Alt_R to list of invalid accelerators.
9355           (Bug #3736, reported by Vlad Harchev)
9356
9357 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
9358
9359         * gtk/gtkfilesel.c (open_ref_dir): Fix several
9360         bugs which occured after an attempt to open 
9361         invalid home directory left cmpl_state->reference_dir == NULL.
9362
9363          - completion on files in home directory didn't work
9364          - completion on an empty string caused  segfault
9365
9366          (Bug #3678, reported by Steve Ratcliffe)
9367
9368         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
9369         cut and paste error that was causing scales to
9370         be incorrectly positioned.
9371         (Bug #2956,
9372          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
9373
9374 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
9375
9376         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9377         when checking for dcgettext, if we've found we needed
9378         it for dgettext.
9379 +
9380 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
9381
9382         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9383         queue_clear on NO_WINDOW widgets during a reparent,
9384         since at that point the window and widget heirarchies
9385         are out of sync. This stops crashing in some cases
9386         (the scrolled window reparent test, for instance), and
9387         _probably_ won't cause drawing errors.
9388
9389         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
9390         test do what it was supposed to do and be robust against
9391         window closings, etc. (Bug #2443)
9392
9393 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
9394
9395         * gtk/gtkentry.c: Fix return values on mouse events.
9396         (Bug #2686, Sky <seb_sky@yahoo.com>)
9397
9398         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9399         (pointed out by George Lebl)
9400
9401         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9402         (From Ettore Perazzoli  <ettore@helixcode.com>)
9403  
9404 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
9405
9406         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9407         clicks between rows or outside calender area correctly.
9408         (Patch from Damon Chaplin)
9409
9410         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
9411         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
9412           Call destroy function when overwriting existing data. 
9413           (Pointed out by Damon Chaplin)
9414
9415 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
9416
9417         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9418           which was causing problems on various systems with Xmu.
9419           This hasn't been needed for a very long time.
9420           (Fixes #1185 3167)
9421
9422 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
9423
9424         * gdk/gdki18n.h: Include <ctype.h> when defining
9425           gdk_isw* in terms of is* as a fallback.
9426           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9427
9428 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
9429
9430         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9431           realize the widget when it is size allocated!
9432           (old, old bug)
9433
9434         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9435           Removed unused call to gdk_window_get_size() that
9436           showed up when the above was fixed.
9437
9438 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
9439
9440         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9441           fix up widget->window when the widget is a
9442           NO_WINDOW container widget.
9443
9444 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
9445
9446         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9447           to account for the fact that feof() does _not_ 
9448           return TRUE on errors, and thus avoid infinite loops
9449           when trying to use gdk_pixmap_create_from_xpm()
9450           on unreadable values.
9451
9452 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
9453
9454         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9455
9456 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
9457
9458         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9459           gdk_gc_set_dashes to take gint8 instead of gchar to
9460           make it clearer that it is _not_ a NULL terminated string.
9461
9462         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9463           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9464           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9465           arguments.
9466
9467 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
9468
9469         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
9470         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9471         background size relative to our allocation, guard against small
9472         allocations, we may have not yet been size allocated.
9473
9474 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
9475
9476         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9477         not just version == 3. We implement all 3 + most of 4 - 
9478         (we don't support matching text/plain;charset=iso-8859-1
9479         to a dest that expects text/plain). We'll still advertise
9480         3 to be safe, but any client implementing version >= 3
9481         must interoperate with 3.
9482         
9483 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9484
9485         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9486         background and gc members, add a warning in gtk_tooltips_set_color()
9487         indicating that this function is deprecated.
9488
9489 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
9490
9491         * docs/gtkfaq.sgml: FAQ Update:
9492           - Minor cleanups (Emmanuel, me)
9493           - New questions:
9494                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9495                 How can I retrieve the text from a GtkMenuItem? (timj)
9496                 How do I validate/limit/filter the input to a GtkEntry? (me)
9497                 Memory does not seem to be released when I free the list
9498                         nodes I've allocated (timj)
9499
9500 2000-03-07  Tor Lillqvist  <tml@iki.fi>
9501
9502         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9503         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9504         for which it is no use to call GetLastError onWin9x.
9505         (gdk_other_api_failed) New function, for general error
9506         reporting without calling GetLastError.
9507         (gdk_win32_api_failed) OTOH, this function always calls
9508         GetLastError. (gdk_win32_last_error_string) Remove this function,
9509         GLib has the equivalent now.
9510
9511         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9512         call them with function name, file name and line number in the
9513         arguments.
9514
9515         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9516         functions.
9517         
9518         * gtk/gtk.def: Add some missing entry points.
9519
9520         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9521         gtk_paned_set_gutter_size, which don't exist any longer, as void.
9522         
9523         Fixes by Hans Breuer:
9524
9525         * gdk/makefile.msc: Update for debugging.
9526
9527         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9528         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9529         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9530         in the dash_list.
9531
9532         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
9533         the x11 backend.
9534
9535         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
9536
9537         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
9538
9539 2000-03-04  Tor Lillqvist  <tml@iki.fi>
9540
9541         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
9542         just pixel value of background colour.
9543
9544         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
9545         containing code snippet previously duplicated in a couple of
9546         places.
9547         
9548         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
9549         gdk_colormap_color.
9550
9551         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
9552         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
9553         events for autorepeated Shift, Control and Alt keys. Use
9554         gdk_colormap_color.
9555
9556         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
9557         pointer is inside the window the cursor of which we are setting,
9558         call SetCursor immediately.
9559
9560         * gdk/win32/makefile.cygwin
9561         * gtk/makefile.cygwin: If we don't have the build number stamp
9562         file, use zero.
9563
9564         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9565         gtk_paned_set_gutter_size as empty.
9566
9567         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
9568         
9569 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
9570
9571         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
9572           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
9573           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
9574           docs/gtk_tut.sgml docs/gtk.texi TODO:
9575
9576           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
9577
9578 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
9579
9580         * gtk/gtkcalendar.c: Implement num_marked_dates,
9581           and don't emit mutiple day_selected signals on
9582           month_prev.
9583
9584 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
9585
9586         * docs/make-todo (lineno): let title and logo be configurable so
9587         that GNOME can use this script too.
9588
9589         * TODO.xml: added logourl and a title
9590
9591 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
9592
9593         * TODO.xml: Added some UI items, and an explanatory
9594         comment at the top of the file.
9595
9596 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
9597
9598         * TODO.xml: some updates, added abunch of new entries.
9599         a note for those fiddeling with this file, when done
9600         with it, invoke:
9601         $ ./docs/make-todo TODO.xml >/dev/null
9602         and correct output errors before comitting changes.
9603
9604 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
9605
9606         * TODO.xml: Added XML-structured TODO file.
9607         * docs/make-todo: python script to turn TODO.xml into
9608           pretty XML output. 
9609
9610 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
9611
9612         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
9613         the function to let it draw the seven dots, instead of the old,
9614         much maligned, method.
9615         (draw_dot): New function to draw a dot.
9616
9617         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
9618         to draw the handle inside the border width as opposed to outside.
9619         Use paint function instead of gdk_draw_point.
9620
9621         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
9622         to draw the handle inside the border width as opposed to outside.
9623         Use paint function instead of gdk_draw_point.
9624
9625         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
9626         Change indenting to be more GTK like.
9627
9628 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
9629
9630         * docs/gtk_tut.sgml: New section on GtkCalendar
9631         * examples/calendar: Update example code
9632
9633 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
9634
9635         * docs/gtkfaq.sgml: FAQ Update
9636
9637 2000-02-19  Anders Carlsson  <andersca@gnu.org>
9638
9639         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
9640         to prevent the scroll event to be propagated upwards.
9641
9642 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9643
9644         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
9645         OwnerGrabButtonMask from button entries for
9646         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
9647
9648         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
9649         to the event mask (which will result in button/press release
9650         being added to the event mask on Unix) so scrolling works
9651         for layouts in scroll windows.
9652
9653         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
9654
9655         Patch from Anders Carlsson  <andersca@gnu.org> to add
9656         a scroll event.
9657
9658         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
9659         scrolling to the "Test Scrolling" part of testgtk.
9660  
9661         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
9662  
9663         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
9664         it against GDK_SCROLL.
9665  
9666         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
9667         way of mouse wheel scrolling.
9668  
9669         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
9670  
9671         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
9672  
9673         * gtk/gtkmain.c: Removed previous mouse wheel hack.
9674  
9675         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
9676         gdk_event_mask_table.
9677  
9678         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
9679         GdkEventScroll handler.
9680  
9681         * gdk/gdkevents.h: Added GdkEventScroll structure.
9682  
9683 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
9684
9685         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
9686         and Anders Carlsson to change the Paned widgets so that they
9687         can be dragged from anywhere along the length. Also change
9688         the way that this is drawn to make this apparent.
9689
9690         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
9691         from George Lebl to check that option_menu->menu is present
9692         before getting history.
9693
9694 2000-02-14  Tor Lillqvist  <tml@iki.fi>
9695
9696         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
9697         before the assertion for non-NULL segment list.
9698
9699         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
9700         Seems that pattern brushes *must* be 8x8 pixels! At least on my
9701         machine, but it might be display driver dependent. Sigh, so make
9702         sure the stipple is that size. Does Windows suck or what?
9703
9704         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
9705         places.
9706
9707 2000-02-13  Havoc Pennington  <hp@pobox.com>
9708
9709         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
9710         refcount to 1
9711         (gdk_cursor_new): init refcount to 1
9712
9713         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
9714
9715 2000-02-13  Tor Lillqvist  <tml@iki.fi>
9716
9717         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
9718         so that we don't have to do unnecessary settings to the HDC.
9719
9720         * gdk/win32/gdkdrawable-win32.c
9721         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
9722         gdk_gc_predraw.
9723
9724         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
9725         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
9726         GDI paths, call WidenPath to get the outline of the stroken path,
9727         and then fill the outline (with the brush that was built from the
9728         stipple).
9729
9730         * gdk/win32/gdkgc-win32.c: Factor out common code from
9731         _gdk_win32_gc_new and gdk_win32_gc_set_values into
9732         gdk_win32_gc_values_to_win32values. Use correct colour for
9733         SetBkColor() (Until now the code actually used a random colour in
9734         the call to SetBkColor()... but that didn't show up as not many
9735         GDI APIs use the background colour. Pattern (opaque stippled)
9736         brushes do.)
9737
9738         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
9739         gdk_win32_api_failed): New functions for error logging.
9740
9741         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
9742         WIN32_API_FAILED to call them, passing function or file name and
9743         line number.
9744
9745         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
9746
9747         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
9748         GdkColor for foreground and background in GdkGCWin32Data.
9749
9750         * gdk/makefile.cygwin: Link in the resource object separately.
9751
9752         * gdk/win32/rc/gdk.rc
9753         * gtk/gtk.rc (New file)
9754         * gdk/win32/makefile.cygwin
9755         * gtk/makefile.cygwin: Update build number in DLLs automatically,
9756         as in GLib.
9757
9758 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
9759
9760         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
9761         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
9762         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
9763         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
9764         parameters given and cursor->ref_count. coding style fixups.
9765
9766         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9767         not GtkWidget.
9768         
9769         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
9770         fix up widget macros and add _GET_CLASS() variant.
9771         
9772         * gtk/*.c: some GtkType fixups.
9773
9774 2000-02-09  Tor Lillqvist  <tml@iki.fi>
9775
9776         * gdk/win32/gdkproperty-win32.c
9777         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
9778         were reversed.
9779
9780 2000-02-04  Tor Lillqvist  <tml@iki.fi>
9781
9782         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
9783         g_filename_to_utf8 to convert the font names Windows gives us from
9784         whatever is the default codepage to UTF-8.
9785         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
9786         in the other direction.
9787
9788         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
9789         error in debugging output.
9790
9791 2000-02-02  Tor Lillqvist  <tml@iki.fi>
9792
9793         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
9794         and height parameters to gdk_window_clear_area(). Not minus one.
9795
9796 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
9797
9798         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
9799         checks if the widget passed to gtk_drag_get_data() was not the
9800         dest widget.
9801
9802 2000-02-01  Tor Lillqvist  <tml@iki.fi>
9803
9804         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
9805         g_filename_from_utf8 functions (which were added a moment ago to
9806         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
9807         size buffers.
9808
9809         gtk_file_selection_get_filename returns the filename in the C
9810         runtime encoding. It calls g_filename_from_utf8, but copies the
9811         returned string to a static buffer, which is returned. I think
9812         this is better than returning the result from g_filename_from_utf8
9813         directly, which would mean all apps that use it would have to free
9814         the return value. Or should this function care about this issue at
9815         all? Maybe a new function with clearly defined semantics.
9816
9817         * gtk/gtkfilesel.h: Add comment about
9818         gtk_file_selection_get_filename returning the filename in the C
9819         runtime's encoding.
9820
9821         * README.win32
9822         * gdk/gdk.def
9823         * gdk/makefile.{cygwin,msc}
9824         * gtk/gtk.def: Updates.
9825
9826         * gdk/gdkcursor-win32.c: Initialise refcount.
9827
9828 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
9829
9830         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
9831
9832 2000-01-30  Havoc Pennington  <hp@pobox.com>
9833
9834         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
9835         destroy
9836
9837         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
9838
9839         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
9840         implemented in platform-specific code
9841
9842         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
9843
9844         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
9845         underscore in front
9846
9847         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
9848         put an underscore in front
9849
9850         * gdk/gdkcursor.c: new file, implements
9851         gdk_cursor_ref/gdk_cursor_unref
9852
9853         * gdk/gdkcursor.h: Refcount GdkCursor
9854
9855         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
9856
9857 2000-01-29  Tor Lillqvist  <tml@iki.fi>
9858
9859         * gdk/gdkwindow.h
9860         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
9861
9862 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9863
9864         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
9865         structures to properly inherit from GtkWidget not GtkBin.
9866
9867 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
9868
9869         * gtk+.spec.in: Added lib/gtk+/include/* to %files
9870         (bug #5178 - Peter Wainright)
9871         
9872         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
9873         so that it will be installed.
9874         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
9875
9876 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
9877
9878         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
9879         for the GtkStyleClass vtable const.
9880
9881         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
9882         take a const string argument like GtkTranslateFunc. This will
9883         require changes in use code.
9884
9885 2000-01-19  Tor Lillqvist  <tml@iki.fi>
9886
9887         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
9888         semantics (to mimic the X11 backend, which just calls XClearArea)
9889         is to check for zero width (and height), and in that case use the
9890         window's width minus x (height minus y). This fixes for instance
9891         some redraw problems with gtkclist, which were easily noticeable
9892         in the gtk file selection widget.
9893
9894         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
9895         windows.
9896
9897 2000-01-13  Tor Lillqvist  <tml@iki.fi>
9898
9899         * configure.in
9900         * gdk/Makefile.am
9901         * gdk/x11/Makefile.am
9902         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
9903         (bug #5177).
9904         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
9905         out later.
9906
9907 2000-01-09  Tor Lillqvist  <tml@iki.fi>
9908
9909         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
9910         WM_MOVE for iconified or invisible windows. This fixes various
9911         problems when minimising windows. Thanks to Bernd Herd.
9912
9913 2000-01-05  Tor Lillqvist  <tml@iki.fi>
9914
9915         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
9916         backend's draw_lines method, not draw_points.
9917
9918 2000-01-02  Tor Lillqvist  <tml@iki.fi>
9919
9920         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
9921         before Owen's reorganisation: Don't have queued_events and
9922         queued_tail statics in this file, but use gdk_queued_events and
9923         gdk_queued_tail. This makes exposure event compression work again.
9924
9925         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
9926         seem to be needed?
9927
9928 1999-12-30  Tor Lillqvist  <tml@iki.fi>
9929
9930         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
9931         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
9932         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
9933         doesn't do anything.
9934
9935         * gdk/gdk.def: Add gdk_xid_table_insert.
9936
9937         * gdk/win32/gdkprivate-win32.h
9938         * gdk/win32/gdkevents-win32.c
9939         * gdk/win32/gdkinput-win32.c
9940         
9941         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
9942         extension_events field in the GdkWindowWin32Data struct. Use only
9943         the extension_events field in GdkWindowPrivate. Previously one was
9944         set, and the other one tested, which broke tablet
9945         functionality. Thanks to Keishi Suenaga for pointing this out.
9946
9947 1999-12-18  Tor Lillqvist  <tml@iki.fi>
9948
9949         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
9950         When handling a single character (text length == 1), don't handle
9951         it as if it was UTF-8.
9952
9953 1999-12-11  Tor Lillqvist  <tml@iki.fi>
9954
9955         * Makefile.am: Distribute README.win32.
9956         
9957         * gdk/Makefile.am
9958         * gdk/win32/Makefile.am: Distribute Win32 files.
9959
9960         * gdk/makefile.msc: New file.
9961
9962         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
9963         after label).
9964
9965         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
9966         gdk_error_code as GDKVAR, as they are referred outside GDK.
9967
9968         * gdk/win32/makefile.msc: Update.
9969
9970         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
9971         tweaks. Check only if at least one of those Unicode subrange bits
9972         we care for is set. If no code page bits are set, guess (wildly)
9973         based on the charset.
9974
9975         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
9976
9977         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
9978         non-NULL.
9979
9980         * gtk/gtkdnd.c
9981         * gtk/gtklayout.c
9982         * gtk/gtkplug.c
9983         * gtk/gtkselection.c
9984         * gtk/gtksocket.c
9985         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
9986         appropriate. There must be a cleaner way to handle this?
9987
9988         * gtk/gtkrc.c: Must include windows.h on Win32.
9989
9990         * gtk/testgtk.c: No need to include gdkx.h.
9991
9992         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
9993
9994 1999-12-07  Tor Lillqvist  <tml@iki.fi>
9995
9996         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
9997         the rbearing is set to the same as the width, but this should be
9998         fixed.
9999
10000 1999-12-06  Tor Lillqvist  <tml@iki.fi>
10001
10002         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
10003         function. If Windows doesn't tell us what Unicode subranges a font
10004         covers, guesstimate based on the codepages it covers. This will
10005         hopefully help those Windows versions or fonts that don't give us
10006         any useful Unicode subrange information with GetTextCharsetInfo.
10007         Call this function in gdk_font_load_internal.
10008
10009         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
10010         minor changes.
10011
10012 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
10013
10014         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
10015         New function, long needed.
10016
10017 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
10018
10019         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
10020         only_if_exists argument of gdk_atom_intern to
10021         bool.
10022
10023 1999-11-25  Tor Lillqvist  <tml@iki.fi>
10024
10025         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
10026         Fix two copy&paste errors.
10027
10028         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
10029         win32 has changed.
10030
10031         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
10032         GdkWin32SingleFont struct.
10033
10034         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
10035         subranges of loaded fonts. Clear font signature first, in case
10036         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
10037         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
10038
10039         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
10040         Unoffset clip region.
10041
10042 1999-11-23  Tor Lillqvist  <tml@iki.fi>
10043
10044         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
10045         event->any.window before calling filter functions.
10046
10047 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
10048
10049         * gtk/gtkgamma.h: Adapt cast macros to standard.
10050
10051 [ Merges from 1.2 ]
10052
10053 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
10054
10055         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
10056         If translation does not include a '/', use entire
10057         translation instead of crashing.
10058
10059 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
10060
10061         * docs/gtk_tut.sgml:
10062         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
10063
10064 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
10065
10066         * gtk/gtkselection.c (gtk_target_list_remove): Use
10067         g_list_remove_link, not g_list_remove.
10068
10069         [ From Geert Bevin <gbevin@thunderstorms.org> ]
10070         
10071 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
10072
10073         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
10074         statement upon unselection (how the heck did that slip in?).
10075
10076 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
10077
10078         * gtk/gtktext.c (gtk_text_freeze): 
10079         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
10080         in frozen state (and aparently crashes). patch provided by Anders
10081         Melchiorsen <and@kampsax.dtu.dk>.
10082
10083 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
10084
10085         * fix insensitive default/focus widget activation,
10086         reported by Matt Goodall <mgg@isotek.co.uk>.
10087
10088         * gtk/gtkwindow.c (gtk_window_key_press_event): 
10089         (gtk_window_activate_default):
10090         (gtk_window_activate_focus):
10091         return handled=FALSE for actiavtion of insensitive default
10092         widgets. return handled=TRUE for activation of insensitive
10093         focus widgets. don't activate in either case.
10094
10095 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
10096
10097         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
10098         and $glib_cflags to match library order and in the
10099         theory that an old version of GLib is more likely to
10100         be in the include directory for X then vice-versa.
10101         (Bug #2776)
10102
10103 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
10104
10105         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
10106         to determine the locale for fontsets, not LC_MESSAGES;
10107         the user may want English messages with a handling
10108         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
10109         will still be broken) (Bug #2891)
10110
10111 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10112
10113         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
10114
10115 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
10116
10117         * gtk/gtkrc.ko: Changed the Korean default fontset.
10118
10119 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
10120
10121         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
10122         where when scrolling to the left or top double exposes
10123         were done, causing major slowdowns.
10124
10125 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
10126
10127         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
10128         names to lowercase and alphanumeric, before looking
10129         them up.
10130
10131         * gtk/Makefile.am: Install codeset variant gtkrc files
10132         with normalized names.
10133
10134 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
10135
10136         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
10137         popup menus when the menu is already visible, but its parent
10138         is still hidden, (happens after tornoff window got hidden).
10139
10140 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
10141
10142         * gtk/Makefile.am (install-data-local): Fix
10143         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10144         deleted, causing error messages on install.
10145
10146 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
10147
10148         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10149         the handle as well, since we now sometimes ignore
10150         exposes on the handle while resizing.
10151
10152 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
10153
10154         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10155         extra g_free introduced in one of the last one or two 
10156         commits.
10157
10158 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
10159
10160         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10161         consistent, put each style that a gtkrc.* file creates
10162         in a unique namespace, remove old files before installing.
10163
10164 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
10165
10166         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10167         gtk_rc_init is called multiple times. (Yes, people who
10168         do that have bugs in their code.)
10169
10170 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10171
10172         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10173         Remove it since it's generated by the Makefile anyway
10174
10175 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
10176
10177         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
10178         device->info.axes for core pointer.
10179
10180 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
10181
10182         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
10183         idle_id, to deal with obsolete, broken C libraries.
10184
10185 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
10186
10187         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
10188         allocation->x/y twice!
10189
10190         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
10191         consistent with gtk_vscale_pos_trough().
10192
10193 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
10194
10195         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
10196         be queueing a resize on a toplevel container between
10197         the time we show it and when we map it. So, we need
10198         to test GTK_WIDGET_VISIBLE() for toplevels, and only
10199         use GTK_WIDGET_DRAWABLE() for child windows.
10200
10201 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
10202
10203         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
10204         (fixes bug #2144)
10205
10206 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
10207
10208         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
10209         container DRAWABLE (instead of VISIBLE), so we don't queue
10210         resizes on non-toplevel containers.
10211
10212 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
10213
10214         * gtk/gtkselection.[ch]: Make the data argument
10215         const guchar *.
10216
10217 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
10218
10219         * gtk/gtkwindow.c: Try to behave sensibly if 
10220         the focus widget is the window itself. (Should
10221         we allow this at all?)
10222
10223 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
10224
10225         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
10226         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
10227         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
10228         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
10229         in prototypes and implementations consistent (Tomas Ogren).
10230
10231         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
10232         before the widget is unparented (reported by damon).
10233
10234         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
10235         since we provide unsigned data anyways.
10236
10237 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
10238
10239         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
10240         the call to gtk_tooltips_layout_text() until later.
10241
10242         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
10243         Call gtk_widget_ensure_style() before using the style.
10244
10245 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
10246
10247         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
10248         for old widgets that don't propagate draws to all
10249         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
10250
10251 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
10252
10253         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
10254         for a redraw but just the widget that requested the resize.
10255
10256 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
10257
10258         * gtk/gtkcontainer.c: added new widget level method
10259         gtk_container_set_reallocate_redraws() and a GtkContainer flag
10260         reallocate_redraws : 1 to reflect the setting, exported this through
10261         the argument system as a boolean ::reallocate_redraws.
10262
10263         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
10264         on the widget because the allocation changes, do so as well for
10265         widget->parent if the parent has reallocate_redraws set to TRUE.
10266         with that containers requesting reallocation redraws get automatically
10267         redrawn if their children changed allocation (this unfortunately
10268         affects also other children that didn't change allocation, but we
10269         cannot work around that before 1.3).
10270
10271 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
10272
10273         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
10274         _and_ height are >0 (not _or_).
10275
10276         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
10277         instead of gtk_container_queue_resize(), which is a core gtk internal
10278         function (must have been on crack when i queued that).
10279
10280         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
10281         we can check more reliably if we want to discard expose events.
10282         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
10283         flag.
10284         
10285         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
10286         we simply trust these events. for deciding whether to discard exposes,
10287         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
10288         
10289 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
10290
10291         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10292         queues of areas that are completely off screen.
10293
10294         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
10295         logic for handleboxes.
10296
10297         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
10298         check on width/height.
10299
10300 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
10301
10302         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
10303         we are fine with using $@ the way we do (if we actually encounter
10304         brokeness with $@ in VPATH builds because of additional path prefixes,
10305         we need to use $(@F) actually).
10306
10307 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
10308
10309         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
10310         short lived bugs, that would allow language bindings to do surgeries
10311         to our guts.
10312
10313 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
10314
10315         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
10316         where comparison was being done against an uninitialized
10317         value causing intermittant results depending on
10318         compiler flags. Also make it clearer that we aren't
10319         ever initializing the child as 0x0 (though this will
10320         be caught in gtk_widget_size_allocate())
10321
10322 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
10323
10324         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
10325         gtk_window_unset_transient_for() call after we do checks
10326         involving the old transient parent.
10327         [ From Lance Capser <lmc@cyberhighway.net> ]
10328
10329 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
10330
10331         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
10332         an empty file.
10333
10334 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
10335
10336         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
10337         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
10338
10339 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
10340
10341         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
10342         `$@' is valid only in the build dir, not after we've done 
10343         `cd $srcdir'.  Also use `test -f' instead of less portable
10344         `test -e'.
10345
10346 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
10347
10348         * gtk/gtktext.c (correct_cache_insert): Rewrite
10349          for simplicity, and hopefully correctness.
10350          (Fixes bug #1322, which was a segfault when
10351           on some insertions with the properties around
10352           the insertion set up just wrong.)
10353
10354         * gtk/gtktext.c (gtk_text_adjustment): When we receive
10355          a "changed" signal, clamp the new value to the adjustment
10356          bounds to avoid segfaulting if someone tries to change
10357          the adjustment to a bogus value. (Bug #1795)
10358
10359 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
10360
10361         * gtk/gtkmain.c: Ignore unexpected destroy notifies
10362         for children, for toplevel windows handle them
10363         like delete_event.
10364
10365         * gtk/gtkplug.c: Add an unrealize handler so that
10366         we unref plug->socket_window when we are done
10367         with it.
10368
10369 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
10370
10371         * gtk/gtktext.c (clear_area): Fix stupid signedness
10372          problem that was causing background to sometimes
10373          be misaligned.
10374
10375 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
10376
10377         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
10378         
10379         * gtk/gtkmenu.c (gtk_menu_position): Make
10380          sure we never position menus with negative x, y,
10381          since gtk_widget_set_uposition() can't handle that.
10382
10383         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
10384          Modify the positioning code a bit so that we always
10385          put the top-left corner onscreen. (This is for
10386          UI reasons, gtk_menu_position() now takes care of
10387          gtk_widet_set_uposition() brokeness.)
10388
10389 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
10390
10391         * gtk/Makefile.am: fixed up things for -jx, x > 1.
10392
10393 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
10394
10395         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10396           RC style that is passed in. The lack of the ref
10397           before was a bug. If people worked around this
10398           bug, this will introduce a slight memory leak
10399           in their code. The code should typically look like:
10400
10401             rc_style = gtk_rc_style_new ();
10402             [...]
10403             gtk_widget_modify_style (widget, rc_style);
10404             gtk_rc_style_unref (rc_style);
10405
10406         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10407           the style if it was already set.
10408
10409         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10410           style if it was set before.
10411
10412 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10413
10414         * gtk/testgtk.c (main): Add a check to see if we
10415           are being run from the correct directory and
10416           to quit nicely if we are not.
10417
10418         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10419           static.
10420
10421 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
10422
10423         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10424
10425         * gtk/gtkwindow.c:
10426         queue resizes unconditionally (gtk_widget_queue_resize will figure
10427         what to do if the window is not realized).
10428         (gtk_window_move_resize): only recenter the window
10429         for GTK_WIN_POS_CENTER_ALWAYS.
10430         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10431         the same way as GTK_WIN_POS_CENTER.
10432
10433 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
10434
10435         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10436         with (!(info->last_flags & GDK_HINT_POS)) instead of
10437         (!info->last_flags & GDK_HINT_POS).
10438
10439         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10440         new_height unconditionally, because we use these values even if
10441         !default_size_changed && !hints_changed.
10442         comented the (default_size_changed || hints_changed) case with
10443         respect to resize rejects from the window manager.
10444
10445         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10446         in the zvt condition hack, since this includes the window hints, set
10447         the hints after the handling_resize case.
10448
10449         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10450         window is initially shown with to the geometry.
10451
10452 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
10453
10454         * gtk/gtkwindow.c (gtk_window_move_resize):
10455         s/size_changed/default_size_changed/g so i know what's
10456         really going on (frying brain on smaller flame now).
10457
10458 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
10459
10460         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10461         we have size_changed upon handling_resize. this is a gross
10462         workaround for the broken zvt widget and should be removed in
10463         1.3 again (search for FIXME).
10464         Owen provided an accurate comment for this:
10465
10466         /* We could be here for two reasons
10467          *  1) We coincidentally got a resize while handling
10468          *     another resize.
10469          *  2) Our computation of size_changed was completely
10470          *     screwed up, probably because one of our children
10471          *     is broken. It's probably a zvt widget.
10472          *
10473          * For 1), we could just go ahead and ask for the
10474          * new size right now, but doing that for 2)
10475          * might well be fighting the user (and can even
10476          * trigger a loop). Since we really don't want to
10477          * do that, we requeue a resize in hopes that
10478          * by the time it gets handled, the child has seen
10479          * the light and is willing to go along with the
10480          * new size. (this happens for the zvt widget, since
10481          * the size_allocate() above will have stored the
10482          * requisition corresponding to the new size in the
10483          * zvt widget)
10484          *
10485          * This doesn't buy us anything for 1), but it shouldn't
10486          * hurt us too badly, since it is what would have
10487          * happened if we had gotten the configure event before
10488          * the new size had been set.
10489          */
10490
10491 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
10492
10493         * gtk/gtkrc.c: deal properly with the fact that RC
10494           style lists may include rc styles more than once.
10495
10496         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10497           unused static function.
10498
10499         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10500           stack of directories of RC files currently being
10501           parsed and implicitely add them to pixmap path.
10502           
10503           This fixes a bug where the directory would get
10504           appended then overwritten by pixmap_path declarations.
10505
10506           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10507
10508         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10509           theme's exit function. (Patch from Peter Wainwright,
10510           bug #1454)
10511
10512         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10513           Add a destroy() handler to take care of removing
10514           group for menu item. (Fixes bug #1197)
10515
10516         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10517           in warning message.
10518
10519 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
10520
10521         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10522         roundtrip to figure window's width and height, since we know that
10523         anyways from widget->allocation.
10524
10525 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
10526
10527         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10528           the hints after we request the new size.
10529
10530 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
10531
10532         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
10533           GTK_WIDGET_REALIZED() assertion - we can compute the
10534           hints before we are realized.
10535
10536         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
10537           hint changing so that we have a value of hints_changed
10538           when we decide whether to constrain the window size.
10539
10540         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
10541
10542         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
10543         change back to G_MAXINT.
10544
10545 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
10546
10547         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
10548         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
10549         contain uncluttered values.
10550         (gtk_window_compute_hints): simply assert that window is realized
10551         and that geometry_info is valid, since we rely on this anyways.
10552         (gtk_window_constrain_size): major cleanups to the code.
10553         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
10554         for the base size, instead of the minimums. use 32767 as max width
10555         and height (like in gtkwindow.c) instead of G_MAXINT.
10556
10557 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
10558
10559         * cleaned up the GtkContainer.need_resize flag handling mess, we
10560         only need to force resize requests when we were prematurely
10561         realized, or our widget tree was modified when we were temporarily
10562         hidden. handling these cases directly upon showing the window (i.e.
10563         while the GdkWindow is still unmapped) avoids the need to wait for
10564         a configure event response and therefore makes the GUI more snappier
10565         and avoids blank windows during the roundtrip.
10566
10567         * gtk/gtkwidget.c:
10568         (gtk_widget_hide): 
10569         (gtk_widget_show): don't queue resizes on toplevels, they know how
10570         to deal with matters.
10571
10572         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
10573         flag directly for not visible resize containers and spare us unecessary
10574         signal emissions.
10575
10576         * gtk/gtkwindow.c:
10577         (gtk_window_realize): if we need to enforce premature size allocation,
10578         queue a container resize so we are correctly resized later on.
10579         (gtk_window_init):
10580         (gtk_window_size_request):
10581         don't freak around with the ->need_resize flag,
10582         gtk_container_queue_resize() will care about that.
10583         (gtk_window_show):
10584         handle initial resizing issues here, we can handle matters better in
10585         this place, especially since we know that our GdkWindow is still
10586         unmapped.
10587         (gtk_window_move_resize):
10588         don't care about ->need_resize at all.
10589         handle size changes properly that occoured while we waited for a
10590         configure event.
10591
10592 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
10593
10594         * gtk/gtkwidget.c (gtk_widget_set_uposition):
10595         * gtk/gtkwindow.[hc] (gtk_window_reposition):
10596         Move the hint setting code from gtk_widget_set_uposition
10597         to here; set the hints so that we respect any previously
10598         set geometry hints.
10599
10600         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
10601         change the window hints here or move the window here,
10602         let that happen in gtk_window_move_resize().
10603
10604 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
10605
10606         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
10607         to already queued resizes (and therefore redraws) on a widget, check
10608         its anchestry as well.
10609
10610         * gtk/gtkcontainer.c:
10611         (gtk_container_queue_resize): clear resize widgets for resize
10612         containers before aborting prematurely. this is especially important
10613         for toplevels which may need imemdiate processing or their resize
10614         handler to be queued.
10615         (gtk_container_dequeue_resize_handler): added new internal function for
10616         gtkwindow.c.
10617
10618         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
10619         configure event, take possible changes in window position into account
10620         as well.
10621         if we request a new window size, queue up a resize handler that will
10622         last until the configure event response arrives.
10623         combined the ->need_resize case (initial show) with the general size
10624         (hints) changed case and added even more comments.
10625         if !auto_shrink, only revert to the old allocation if the new size
10626         is smaller than the current allocation.
10627
10628 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
10629
10630         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
10631                            gtk_window_set_geometry_hints
10632                            gtk_window_set_default_size):
10633         When hints are set, queue a resize so that the hints will
10634         be eventually reset on the toplevel.
10635
10636         * gtk/gtkwindow.c (gtk_window_show): Use
10637         gtk_window_compute_default_size(). Clear the need_resize flag
10638         on the initail map so that we don't unnecessarily trigger the
10639         resize code.
10640
10641         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
10642         into separate functions. Compare the hints we are setting
10643         with what we set last time so that we can accurately
10644         tell when we need to reset the hints.
10645
10646         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
10647         function to figure out the size from requisition
10648         and default_size.
10649
10650         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
10651         from fvwm to constrain a size to the geometry hints.
10652
10653         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
10654         to compare two sets of geometry hints.
10655
10656         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
10657         from gtk_window_set_hints(), just compute the hints,
10658         don't set them.
10659
10660         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
10661         code from gtk_window_move_resize() to separate function,
10662         rationalize a bit.
10663
10664 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
10665
10666         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
10667         structure into a new private structure.
10668
10669         * gtkrc.c: Split GtkRcStyle into public/private.
10670         In the private part, add a list of pointers to the
10671         RcStyle lists this RcStyle participates in.
10672
10673         * gtkrc.c: When a RcStyle is free, remove all
10674         lists referencing it from the 
10675         realized_style_ht hash, and free those lists.
10676         
10677         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
10678         gtk_rc_init(), since that adds the default styles
10679         to the list of parsed RC files again.
10680
10681         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
10682         
10683 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
10684
10685         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
10686         checks that ensure that a widget's allocation is at least 1 in width
10687         and height. (GNOME note: this doesn't affect old panel code anymore,
10688         because GtkSocket will request width and height of at least 1 since
10689         Fri Jul 23).
10690
10691         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
10692         allocated yet (happens if the user realizes the window prematurely),
10693         size request and allocate it.
10694         (gtk_window_size_allocate): guard against guint underflows.
10695
10696 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
10697
10698         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
10699         in gtk_built_sources, so gtk.defs gets built prior to all other
10700         sources.
10701
10702 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
10703
10704         * gtk/Makefile.am:
10705         invoke indent on gtkmarshal.*. 
10706         rewrote source generation rules, use COPYING as oldest source tag for
10707         a piggyback rule to generate all sources from (don't touch it ;).
10708         major cleanups, strip spaces on build rules for GNU Make.
10709
10710         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
10711         source and target files from commandline arguments. don't invoke indent.
10712
10713 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
10714
10715         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10716         notebook after switch to avoid drawing problems.
10717         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10718         
10719         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
10720         show them instead. 
10721         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10722
10723 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
10724
10725         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10726         notebook after switch to avoid drawing problems.
10727         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10728         
10729         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
10730         show them instead. 
10731         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10732
10733 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
10734
10735         * gtk/gtkwindow.c:
10736         we use window->need_resize from configure_event now, to indicate that
10737         the gtkwindow should keep its allocation (e.g. because the user resized
10738         the window through window manager handles). resize_count is now reliably
10739         used to figure whether we got the allocation we requested from the
10740         window manager.
10741         configure events get queued as resizes now, the real stuff (size
10742         computation and allocation) now only goes on in gtk_window_move_resize().
10743         GtkWindow's requisition now contains its *real* requisition (like all
10744         other widgets), *not* taking usize into account.
10745         geometry_info->last_{width|height} is now updated from set_hints() only
10746         so it always contains the last hints we set for the window manager.
10747         made some event handlers return TRUE instead of FALSE.
10748         the overall code should be much more straight forward now, and the
10749         significant code portions are accompanied by comments now.
10750         (gtk_window_set_hints):
10751         removed requisition argument and made it
10752         fetch the requisition through gtk_widget_get_child_requisition.
10753         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
10754         does that now.
10755         (gtk_window_show):
10756         ensure that the widget is realized before calling 
10757         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
10758         ensure that we got properly size requested and allocated before
10759         realization.
10760         (gtk_window_configure_event):
10761         ignore plain window moves, or reallocate the widget tree through the
10762         resize queue otherwise.
10763         (gtk_window_move_resize):
10764         mostly rewrote this function to figure window manager hints more
10765         reliably, coalesce window moves and resizes to reduce configure events
10766         and do actuall size allocations.
10767
10768 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
10769
10770         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
10771         that have a resize pending, because a redraw is already queued for them.
10772
10773         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
10774         hack to clear resize_widgets.
10775
10776         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
10777         for resize containers prior to size allocation. (this is also a bit
10778         ugly, but avoids side effects for stopped emissions and is thus more
10779         reliable).
10780         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
10781
10782         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
10783         function from gtk_tooltips_expose, as we connect to ::expose_event
10784         *and* ::draw now.
10785
10786 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
10787
10788         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
10789         checks.
10790         (gtk_target_list_unref): Likewise.
10791
10792         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
10793
10794 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
10795
10796         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
10797         guard against division by zero. (Fixes bug #1339)
10798
10799 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
10800
10801         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
10802         Prevent the trivial leak of information of allowing
10803         word motion when the entry is not visible.
10804
10805 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
10806
10807         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
10808         modality to error dialog as well as confirmation dialogs.
10809         (Bug #1803, reported by Rosanna Wing Sze Yuen)
10810
10811 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
10812
10813         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
10814         tree->view_lines.
10815         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
10816
10817         * gtk/Makefile.am (install-data-local): Solaris apparently
10818         has various troubles with ln -f; use rm first instead.
10819         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
10820
10821 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
10822
10823         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
10824         use `cp' followed by `rm' (the `rm' was already there).
10825
10826 July 30, 1999 Elliot Lee <sopwith@redhat.com>
10827         
10828         * configure.in: Fix autoconf warnings about cross compilation by
10829         trying to provide sane defaults for AC_TRY_RUN.
10830         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
10831         put them into $(srcdir) when generated. Also add a dependency of
10832         gtksignal.h on gtkmarshal.h for -j builds. 
10833         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
10834
10835 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
10836
10837         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
10838         GDK_THREADS_{LEAVE,ENTER} pair.
10839         (From Paul Fisher <pnfisher@redhat.com>)
10840
10841 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
10842
10843         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
10844         width and height are always >0 (owen).
10845
10846 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
10847
10848         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
10849         change that assured that a widget's allocated with and height are
10850         always >1, since this breaks *buggy* panel code. unfortunately this
10851         back-breaks the gimp's color selector.
10852
10853         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
10854         allocation is always >0 in width and height, before sending the
10855         configure event; this is a *gross* hack to get the gimp back to work.
10856         
10857         * marked both cases with TODO-1.3
10858
10859 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
10860
10861         * gtk/gtktext.c: Don't display wrap indicators when
10862         text is not editable and word wrap is on.
10863
10864 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
10865
10866         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
10867         option menus here as they are not derived from menu shell, assure that
10868         the option menu has a menu we can add items to.
10869
10870 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
10871
10872         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
10873         width/height to (gint) before calculations and check against < 0 to
10874         avoid guint wraparounds.
10875
10876 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
10877
10878         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
10879         width and height is never zero. sanity check both dimensions against
10880         32767 and issue a warning if the allocation is greater than that.
10881
10882 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
10883
10884         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
10885         to g_main_pending() as well.
10886
10887 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
10888
10889         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
10890         call to g_main_iteration() - since that will regrab
10891         GTK+ lock to process events.
10892
10893 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gtk/gtkwindow.c
10896         - Regularize with the rest of GTK+ by making widget->requisition
10897           not reflect the set_usize()
10898         - Always recompute geometry hints, then check if they
10899           changed before sending them to the X server. The
10900           previous checks for changes would fail in a number
10901           of circumstances. 
10902
10903 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
10904
10905         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
10906
10907 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
10908
10909         * gtk/gtkdnd.c:
10910         - Code cleanups
10911         - Instantaneously update on modifier key presses
10912         - Allow cancellation of the drag with Escape.
10913
10914 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
10915
10916         * gtk/testgtk.c (create_handle_box): Set the policy
10917         to auto_shrink - otherwise the appearance is rather
10918         strange when flipping between horizontal and vertical.
10919
10920 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
10921
10922         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
10923         (gtk_window_set_default_size): don't change a value if it's < 0.
10924         queue a resize.
10925
10926 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
10927
10928         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
10929
10930 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
10931
10932         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
10933         add an extra "/" when concating "/" + filename.
10934         (From Matt Grossman <mattg@oz.net>)
10935
10936 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
10937
10938         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
10939         for fg_gc if we set it for drawing pixmap.
10940
10941 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
10942
10943         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
10944         
10945         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
10946         already set, call old engine's destroy function and
10947         unref the old engine.
10948
10949 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
10950
10951         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
10952
10953 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
10954
10955         * gtk/gtkaccelgroup.h: mark certain functions as internal.
10956
10957 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
10958
10959         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
10960         expand behaviour changed.
10961
10962         * gtk/gtklabel.c (gtk_label_set_pattern):
10963         (gtk_label_set_justify):
10964         (gtk_label_set_line_wrap):
10965         don't bother invoking queue_clear, the reallocation does
10966         that for us, always free_words so the upcoming resize will
10967         relayout the label's contents.
10968
10969 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
10970
10971         * applied argument implementation patches from Elena Devdariani
10972         <elena@cogent.ca>.
10973
10974         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
10975         ::space_style, ::relief
10976         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
10977         * gtk/gtkpreview.c: ::expand
10978         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
10979         * gtk/gtknotebook.c: ::homogeneous
10980         * gtk/gtklabel.c: ::wrap
10981         * gtk/gtklist.c: ::selection_mode
10982         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
10983         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
10984         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
10985         * gtk/gtkclist.c: ::sort_type
10986         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
10987         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
10988
10989 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
10990
10991         * gtk/gtkstyle.c: Removed ill-thought-out part of last
10992         comment.
10993
10994 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
10995
10996         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
10997         counting right when we have to attach a new style
10998         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
10999
11000         * gtk/gtkstyle.c: Documented the refcounting
11001         peculularities of gtk_style_attach.
11002
11003 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11004
11005         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
11006         window types.
11007
11008         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
11009         of GTK_TOPLEVEL for creating the window.
11010
11011 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
11012
11013         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
11014         the last argument (reported by Per Winkvist).
11015         
11016 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
11017
11018         Fixes for invisible XOR lines (Frank Loemker
11019         <floemker@TechFak.Uni-Bielefeld.DE>)
11020         
11021         * gtk/gtkclist.c (gtk_clist_realize): Always use
11022         a non-zero pixel for GDK_XOR.
11023
11024         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
11025         Use GDK_INVERT instead of GDK_XOR.
11026
11027 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
11028
11029         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
11030         signals if h/voffsets differ from adjustment values.
11031         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
11032
11033 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
11034
11035         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
11036         ::selection-done emissions up to the topmost menu shell.
11037
11038 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
11039
11040         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
11041         the user data on the window before destroying it.
11042
11043         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
11044         unrealize handler to take care of destroying 
11045         notebook->panel properly. 
11046         (Bug #1198 - Morten Welinder <terra@diku.dk>)
11047
11048         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
11049         of g_new and g_realloc to stop memory leak. (Actually,
11050         we could just use g_realloc(), but I'm not 100% sure
11051         that is portable).
11052         (Bug #1196 - Morten Welinder <terra@diku.dk>)
11053
11054 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11055
11056         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
11057
11058         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11059         for fontsets.
11060
11061         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
11062         with bin/button confusion.
11063
11064 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
11065
11066         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
11067         and show how preselection of radio items is done.
11068
11069 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
11070
11071         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
11072         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
11073         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
11074         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
11075         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
11076         * gtk/gtktable.c (gtk_table_attach): 
11077         * gtk/gtklist.c (gtk_list_insert_items): 
11078         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
11079         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
11080         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
11081         * gtk/gtkbin.c (gtk_bin_add): 
11082         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
11083         * gtk/gtkfixed.c (gtk_fixed_put): 
11084         * gtk/gtklayout.c (gtk_layout_put):
11085         general fixups to container_add logic. always realize child if
11086         child->parent is realized, only map the child and queue a resize
11087         if child and child->parent are both visible.
11088
11089 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
11090
11091         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
11092         instead of gtk_container_foreach to walk and unrealize children, so
11093         composite children get also unrealized.
11094         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
11095         (gtk_widget_map): assert that the widget is visible (basic constrain).
11096         (gtk_widget_real_map): assert that the widget is realized (basic
11097         constrain).
11098
11099 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
11100
11101         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
11102
11103 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
11104
11105         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
11106         file for iso-8859-2 locales.
11107
11108         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
11109
11110 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
11111
11112         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
11113          (Pointed out by andy@rz.uni-karlsruhe.de and others).
11114          Remove some suspicious and useless lines. 
11115
11116 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
11117
11118         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
11119         width,height = 0, 0 to mean - here to edge of window,
11120         instead of -1, -1, since the former is all we support.
11121
11122 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
11123
11124         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
11125         when removing from quit_functions list.
11126
11127 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
11128
11129         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
11130
11131 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
11132
11133         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
11134          When redrawing characters on non-visible entry, use appropriate
11135          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
11136
11137 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
11138
11139         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
11140         from drag coordinates.
11141         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
11142         use drag_dest_cell.
11143
11144         * gtk/gtktree (drag_dest_cell)
11145         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11146         (Bug #1129)
11147
11148 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
11149
11150         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11151         translate_* fields.
11152         (gtk_item_factory_finalize): invoke translate_notify independant from
11153         translate_data.
11154         (gtk_item_factory_set_translate_func): likewise.
11155         (gtk_item_factory_destroy): only remove ifactory pointer from those
11156         widgets that belong to us (stupid me).
11157
11158 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
11159
11160         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11161         rc_style list when lookup succeeeds.
11162
11163 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
11164
11165         * gtk/gtkctree.c (resync_selection): 
11166         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11167         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11168         bug.
11169
11170 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
11171
11172         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11173         Add some missing GDK_THREADS_ENTER()/LEAVE around
11174         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11175
11176 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
11177
11178         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
11179         rather than emit_by_name.
11180
11181         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
11182         on the widget across multiple signal emissions.
11183         (gtk_editable_delete_text): same here.
11184         (gtk_editable_class_init): set widget_class->activate_signal after
11185         editable_signals[ACTIVATE] has been created.
11186
11187 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
11188
11189         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
11190         position here prematurely -- we might not have the
11191         right ->min_position and ->max_position yet.
11192
11193 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
11194
11195         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
11196         Add error traps so if the other end of the connection
11197         dies, we survive.
11198
11199         * gtk/gtkselection.c (gtk_selection_notify): Clean
11200         up properly when selection property retrieval fails.
11201         
11202         * gtk/gtkselection.c (gtk_selection_request): Correctly
11203         reject SelectionRequest notifies where the handler
11204         returns no data.
11205
11206 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11207
11208         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
11209         when we've previously highlighted.
11210
11211         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
11212         emit two "drag_leave" signals for Motif drops.
11213
11214         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
11215         back the correct status messages when dropping from
11216         Motif onto a proxy window that is rejecting the
11217         drop.
11218
11219 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
11220
11221         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
11222         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
11223         to compare two argument values. added gtk_arg_to_valueloc() to set a
11224         variable from an arg through its location (pointer).
11225
11226         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
11227         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
11228         as gfloat*, uchars are collected as guchar*, ints are collected as
11229         gint*, etc...
11230
11231 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
11232
11233         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
11234         Include <string.h> instead of <strings.h>.
11235
11236         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
11237         (actually, a lot more duplicate includes occur if
11238          you trace through the sequence of #include's)
11239         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
11240         
11241 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
11242
11243         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11244         gtk-a-higuti-990322-[0-3]
11245
11246         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11247         that was causing -DX_LOCALE not to work.
11248
11249         * gtk/gtkrc.c (gtk_rc_init):
11250         X_LOCALE will never have LC_MESSAGES defined
11251
11252 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
11253
11254         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
11255         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
11256
11257         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
11258         left/right as well (gtk-michael-980726-0.patch.gz).
11259
11260         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
11261         for pointer values, use gchar instead of char. fixed uline allocation
11262         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
11263         chunks instead of G_ALLOC_ONLY.
11264         (gtk_label_size_request): always alter requisition as passed and leave
11265         widget->requisition alone.
11266         (gtk_label_set_text): allow NULL strings.
11267         (gtk_label_new): likewise.
11268
11269 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
11270
11271         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
11272
11273 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
11274
11275         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
11276         *and* mapped (i.e. drawable).
11277         (gtk_bin_expose): only send exposes to drawable children.
11278
11279         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
11280         (gtk_box_expose): only send exposes to drawable children.
11281
11282         * gtk/gtkhscale.c (gtk_hscale_draw): 
11283         * gtk/gtkvscale.c (gtk_vscale_draw):
11284         hm, this is an ugly one. we first compute the size of our trough area
11285         here (window relative) and then check intersection with the draw_area
11286         which is parent relative because we're a NO_WINDOW widget, so we need
11287         to offset the trough area by allocation.x and allocation.y before the
11288         check. (this must not be done for the background area though, since
11289         that's already computed parent relative).
11290
11291 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
11292
11293         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
11294         unrealize title buttons.
11295
11296 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
11297
11298         * gtk/gtkclist.c (gtk_clist_column_title_passive)
11299         (gtk_clist_column_title_active): 
11300         only connect/disconnect to GtkWidgetClass::event to block mouse events.
11301
11302         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
11303         zero initialize event, removed superfluous gdk_window_get_pointer call
11304
11305         * gtk/gtklist.c (gtk_list_vertical_timeout)
11306         (gtk_list_horizontal_timeout): removed superfluous
11307         gdk_window_get_pointer call
11308
11309 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
11310
11311         * plugging problems reported by "Bruce Mitchener, Jr."
11312         <bruce@puremagic.com> due to a purify session.
11313
11314         * gtk/gtkstyle.c:
11315         (gtk_style_ref): 
11316         (gtk_style_unref): assert ref_count to be > 0.
11317
11318         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
11319         the requisition.
11320         (gtk_clist_set_shift): likewise.
11321
11322         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
11323         adjustments.
11324
11325         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
11326         event before sending it and set send_event to TRUE (which needs to
11327         be done for *all* synthesized events).
11328         (gtk_list_vertical_timeout): likewise.
11329
11330         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
11331         leaks.
11332
11333         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
11334         to TRUE when synthesizing events.
11335
11336 [ *** end of merges from 1.2 *** ]      
11337         
11338 1999-11-21  Tor Lillqvist  <tml@iki.fi>
11339
11340         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
11341         (or copied from gdkconfig.h.win32 on Win32, sigh).
11342
11343         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
11344
11345         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
11346
11347         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
11348
11349         * gdk/gdkconfig.h.win32: New file.
11350
11351         * gdk/win32/makefile.cygwin: Build just a static archive here.
11352
11353         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
11354         for the DLL from the static archive built above.
11355
11356         * gdk/gdk.def: Moved here from the win32 subdirectory.
11357
11358         * gdk/win32/*: Adapt for the changed private struct organisation.
11359
11360         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
11361
11362 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
11363
11364         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
11365         for wheel mice (buttons 4 and 5).
11366
11367 1999-11-18  Tor Lillqvist  <tml@iki.fi>
11368
11369         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
11370         drawables use just the pixel field in the foreground and
11371         background GdkColor of the GdkGC.
11372
11373         gdk_gc_set_{fore,back}ground() are called in the GIMP with
11374         GdkColors containing uninitialized (red,green,blue) fields, and
11375         just the pixel field filled in, and furthermore in the
11376         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11377         It thus turns out that we really don't need to have the full
11378         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
11379         it later to have just the pixel values.
11380
11381 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11382
11383         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
11384
11385 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
11386
11387         * docs/gtkfaq.sgml: threads example from Erik Mouw.
11388         New question on GtkLabel background colors.
11389
11390         * docs/gtk_tut.sgml:
11391           - Correct the example code callback
11392             function definitions.
11393           - Update the gtkdial example code, from Frans van Schaik.
11394           - Update setselection.c to current API.
11395
11396         * examples/Makefile examples/*/*.c: Update to code
11397         listed in tutorial.
11398
11399 1999-11-10  Tor Lillqvist  <tml@iki.fi>
11400
11401         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11402         subrange table (from the "Developing International Software for
11403         WIndows 95 and Windows NT" book) was missing the Hangul syllable
11404         block... Get the loaded font's charset correctly.
11405
11406         (Note that this, and the other *-win32.c files, still really are
11407         the old ones, the win32 subdirectory is not ready for compilation
11408         yet after the reorg.)
11409
11410 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
11411
11412         * gtk/gtkclist.c: Fix off-by-one bug in parameter
11413         check.
11414
11415 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
11416
11417         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11418         on results of XQueryDeviceState().
11419
11420 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
11421
11422         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11423         we need to accesss only ->children. We need an accessor
11424         for the children.
11425
11426         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11427         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11428         to get rid of gdkx.h include.
11429         
11430         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11431         and random references to 'None'.
11432
11433         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11434         Get rid of unused #include <gdk/gdkx.h>
11435
11436         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11437         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11438         gdkconfig.h.
11439
11440 1999-11-08  Tor Lillqvist  <tml@iki.fi>
11441
11442         * gdk/win32/gdkdraw.c
11443         * gdk/win32/gdkfont.c
11444         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11445         following yesterday's changes. (Unrelated to Owen's reorg.)
11446
11447 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
11448
11449         * gdk/x11/gdkinput-gxi.c: Add missing include,
11450           fix GdkWindowPrivate => GdkDrawablePrivate.
11451
11452         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11453
11454         * gdk/x11/Makefile.am (xinput_sources): Add missing
11455         backslash to fix building with --with-xinput=none
11456
11457 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
11458
11459         Move all X specific code into the x11/ directory.
11460         Aside from shuffling things around, did the following:
11461
11462        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11463          gdk_arg_context_* - a simple argument parsing system
11464          in the style of popt.
11465
11466        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11467          gdk/x11/gdkprivate-x11.h:
11468          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
11469          add ->klass and ->klass_data fields. The klass_data
11470          field points to an auxilliary structure that is
11471          windowing system dependent.
11472
11473        * gdk/gdkfont.c: Make most of the measurement functions
11474          simply wrappers around gdk_text_extents().
11475
11476        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
11477          _gdk_font_strlen() function that hides the weird
11478          behavior in gtk+-1.[02] where a string is interpreted
11479          differently for 8-bit and 16-bit fonts.
11480
11481        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11482          to store common code for synthesizing double/triple
11483          press events.
11484         
11485        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11486          Make all the function that modify an existing GC
11487          simply wrappers around gdk_gc_set_values().
11488          
11489        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11490          for throwing out later.
11491
11492        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11493          GdkImagePrivate and GdkColormapPrivate to have a
11494          windowing system dependent part (GdkFontPrivateX etc.)
11495          that "derives" from the system-independent part.
11496
11497        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11498          Got rid of the included-source-files for XInput in
11499          favor of automake conditionals. (Which didn't exist
11500          when XInput support was originally added.)
11501
11502        * gdk/gdkrgb.c: Remove the visual id from the debugging
11503          statements since that is X11 specific; print out
11504          type/depth info instead.
11505          
11506
11507 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
11508
11509         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11510         loading duplicates of hashed fonts.
11511
11512         * gdk/gdk.c (gdk_keysym_convert_case): rename
11513         gdk_XConvertCase to gdk_keysym_convert_case, allow
11514         results to be NULL in the GTK+ style.
11515
11516         * gdk/gdkcompat.h: Started compatibility header
11517         for renames.
11518
11519 1999-11-07  Tor Lillqvist  <tml@iki.fi>
11520
11521         * gdk/win32/gdkprivate.h: New font private structures, related to
11522         fontsets.
11523
11524         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11525         gdk_font_list_free(). On X11, will just be wrappers to
11526         XListFonts() and XFreeFontNames(). On Win32, the code previously
11527         in gtkfontsel.c is now here.
11528
11529         New function gdk_font_xlfd_create(). On X11 will get the FONT
11530         property of the font (for GDK_FONT_FONTs), or call
11531         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11532         builds a XLFD style name from the font information in the LOGFONT
11533         struct(s).
11534
11535         New function gdk_font_xlfd_free(), which correspondingly frees the
11536         string returned by gdk_font_xlfd_create().
11537
11538         Implement fontsets on Win32. Add a function that iterates over a
11539         wide char string and calls a callback function for each substring
11540         of wide chars from the same Unicode subrange (and thus probably
11541         available in the same real font).
11542
11543         Improve the XLFD emulation a bit.
11544
11545         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
11546
11547         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
11548         Beta3, WM_IME_CHAR messages don't seem to contain the composed
11549         multi-byte char as with the Active IMM on Win9x. Oh well, handle
11550         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
11551         ImmGetCompositionStringW() to get the composed Unicode chars.
11552
11553         * gdk/win32/gdkgc.c
11554         * gdk/win32/gdkdraw.c: Changes needed because of the font private
11555         struct changes.
11556
11557         * gdk/win32/gdk.def: Add the new functions.
11558
11559 1999-11-04  Tor Lillqvist  <tml@iki.fi>
11560
11561         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
11562         get the Platform SDK to get <dimm.h>.
11563
11564         * gdk/win32/gdkevents.c: More event handling fixes and
11565         simplification. Never generate motion events with is_hint true. We
11566         used to do that on bogus grounds earlier. Windows sends
11567         WM_MOUSEMOVE messages on button events even if the mouse hasn't
11568         moved, ignore these.
11569
11570         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
11571
11572         * gdk/win32/gdkglobals.c
11573         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
11574         the TrackMouseEvent function, and use it.
11575
11576         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
11577         char before calling WideCharToMultiByte in order to get a string
11578         for the window title.
11579
11580         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
11581
11582         * gdk/win32/gdk.def: Remove obsolete functions.
11583
11584         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
11585         /nodefaultlib and /defaultlib switches.
11586
11587         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
11588
11589 1999-10-31  Tor Lillqvist  <tml@iki.fi>
11590
11591         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
11592         EuroSign).
11593
11594         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
11595         same type as GdkWChar, especially on Win32.
11596
11597         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
11598
11599         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
11600         before passing to Windows GDI for drawing etc. Convert to the
11601         system default codepage before passing to Windows as window
11602         titles.
11603
11604         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
11605         support changing input locale on the fly.
11606
11607         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
11608         on-the-fly changes. Convert incoming characters from the current
11609         codepage to Unicode (and then to a UTF-8 multi-byte string) based
11610         on the current input language. Use keysym<->Unicode mapping tables
11611         and functions borrowed from xterm sources.
11612
11613         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
11614         editions of Win9x, use the ActiveX-based Active IMM (Input Method
11615         Manager) if available. IMEs and the Active IMM are available under
11616         the disguise of Chinese, Korean and Japanese support for IE and
11617         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
11618         support is present in all editions (as long as you install it).
11619
11620         Call DispatchMessage from gdk_events_queue() (and thus
11621         gdk_WindowProc()), instead of duplicating the code in
11622         gdk_WindowProc().
11623
11624         Reworked the grab handling and propagation code, factored out
11625         duplicated code snippets into separate functions. Other cleanups,
11626         too.
11627
11628         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
11629         the <dimm.h> header describing the Active IMM.
11630
11631         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
11632         just do the same as for "single" fonts.
11633
11634         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
11635         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
11636         the new keysyms from gdkkeysyms.h.
11637
11638         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
11639         fontset, so that gtkentry uses wide characters.
11640
11641         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
11642         GTk+'s system directory "gtk+", not "gtk".
11643
11644 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
11645
11646         * docs/gtkfaq.sgml: FAQ update
11647
11648 1999-10-21  Tor Lillqvist  <tml@iki.fi>
11649
11650         * gdk/win32/gdkprivate.h: Add more font private data.
11651
11652         * gdk/win32/gdkfont.c
11653         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
11654         fonts and strings. Now works much better. You still have to
11655         have a correct font selected, though. No fontset emulation yet.
11656
11657 1999-10-19  Tor Lillqvist  <tml@iki.fi>
11658
11659         * gtk/maketypes.awk: Use G_OS_WIN32.
11660
11661         * gtk/gtk.def: Add some missing entry points. Also some non-public
11662         ones, but PyGTK porter claims to need them.
11663
11664         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
11665         built-in type generation.
11666
11667 1999-10-14  Tor Lillqvist  <tml@iki.fi>
11668
11669         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
11670         GDK_FONT_FONT fonts (which is all we have for now, we don't
11671         emulate fontsets). The X11 version uses plain XDrawString in that
11672         case, too. The string passed to gdk_draw_text_wc seems to be in
11673         fact (at least, when used by gtkentry and gtktext) either in a
11674         single-byte charset, or a DBCS. Not Unicode.
11675
11676         This fixes the problem in gtkfontsel, where even if you had
11677         selected a font with a non-Latin1 charset (windows-greek, for
11678         instance), the preview still used Latin-1 glyphs.
11679
11680         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
11681         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
11682         (gdk_font_load): Recognize the demibold etc weights, even if we
11683         don't have the corresponding constants in the headers.
11684         (gdk_font_hash_insert): Use same hash mechanism as in the X11
11685         version. Should save font resources a bit, when we don't have
11686         multiple HFONTs for the same font.
11687
11688         * gdk/win32/gdkprivate.h: Add the names field as in the X11
11689         version.
11690
11691 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
11692
11693         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
11694         X values
11695
11696 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
11697
11698         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
11699         layout support (as mentioned on
11700         http://www.jcinteractive.com/gnome-ui/software/widgets/)
11701
11702 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
11703
11704         * gtk/fnmatch.c
11705         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
11706
11707 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
11708
11709         * configure.in (ALL_LINGUAS): Added Galician (gl)
11710
11711 1999-10-05  Tor Lillqvist  <tml@iki.fi>
11712
11713         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
11714
11715         * gdk/win32/gdkcompat.c: New file, actually provide an
11716         implementation for the deprecated functions. (Just temporarily.)
11717
11718         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
11719
11720         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
11721
11722         * gdk/win32/gdk.def gtk/gtk.def: Updates.
11723
11724 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
11725
11726         * configure.in: Added "uk" to ALL_LINGUAS.
11727         
11728 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
11729
11730         * configure.in: correct checking for BeOS check
11731
11732         * gdk/gdktypes.h
11733         * gtk/fnmatch.c
11734         * gtk/gtkfilesel.c
11735         * gtk/gtkitemfactory.c
11736         * gtk/gtkmain.[ch]
11737         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
11738
11739 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
11740
11741         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
11742         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
11743         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
11744         by Bulgarian). 
11745
11746 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
11747
11748         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
11749         Fix a reference to window_private->destroyed.   
11750
11751         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
11752         (ugly) setting of an internal GdkWindow member to use
11753         a _slightly_ cleaner macro.
11754
11755         * gdk/gdkprivate.h: Split GdkWindowPrivate into
11756         GdkDrawablePrivate and GdkWindowPrivate.
11757         Add extra macros for accessing GDK_DRAWABLE_ components.
11758
11759         * *.[ch]: Massive adjustments for the above, use the
11760         new macros in a lot of places.
11761
11762 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
11763
11764         * gdk/gdktypes.h: Make GdkDrawable the base type,
11765         not GdkWindow.
11766
11767 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
11768
11769         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
11770
11771 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
11772
11773         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
11774
11775 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
11776
11777         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
11778         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
11779
11780         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
11781
11782         * docs/gtk-config.1: Now autogenerated.
11783         * docs/Changes-1.4.txt: started
11784         
11785 1999-10-03  Tor Lillqvist  <tml@iki.fi>
11786
11787         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
11788         to #ifdef also here.
11789
11790         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
11791         Owen did to the X11 backend.
11792
11793         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
11794         ScrollWindowEx when blitting inside a window, it can't be correct
11795         in the general case.
11796
11797         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
11798         WM_GETMINMAXINFO is easier.
11799
11800         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
11801         depth equal to the bitspixel value, not the visual's depth.
11802
11803         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
11804         to 24 even if the bitspixel value is 32.
11805
11806         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
11807         need to check for depth==32 when bpp==32, depth will always be 24.
11808
11809 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
11810
11811         * docs/Changes-1.4.txt: Started
11812         
11813         * gtk/Makefile.am (gdk_headers): Include all the new headers.
11814
11815         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
11816         
11817         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
11818         into C file.
11819         
11820         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
11821         header to gdkinputprivate.h.
11822
11823         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
11824         unused since before 1.2.
11825
11826 1999-09-30  Tor Lillqvist  <tml@iki.fi>
11827
11828         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
11829         expand possible hex escapes in the font family (put there by
11830         logfont_to_xlfd if the font name isn't a legal XLFD font family,
11831         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
11832         On Win32, add hex escapes here, too.
11833
11834 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
11835
11836         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
11837         to #ifdef GDK_WINDOWING_X11.
11838
11839 [ Merges from gtk-1-2 ]
11840
11841 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
11842
11843         * configure.in: fixed "GNU Make" check to pass with new make version
11844         3.77.95.
11845
11846 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
11847
11848         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
11849         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
11850         AM_PATH_GTK() macros don't get confused by the -pre1.
11851
11852 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11853
11854         * configure.in (REBUILD): Change check for perl5
11855           to check explicitely for v >= 5.002. (5.001
11856           does not work with our scripts.)
11857
11858 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
11859
11860         * configure.in: evaluate $PERL for the perl version check. added
11861         --disable-rebuilds to give the user an option to completely disable
11862         any source autogeneration rules.
11863
11864 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
11865
11866         * configure.in: evaluate $ac_make when checking for GNU Make.
11867
11868 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11869
11870         * docs/Makefile.am: added generation.txt.
11871
11872         * Makefile.am: require automake 1.4, build README from README.in and
11873         INSTALL from INSTALL.in in dist-hook.
11874         
11875         * README.in:
11876         * INSTALL.in: new files to autogenerate README and INSTALL from.
11877
11878         * configure.in: figure whether we have GNU Make
11879
11880         * docs/generation.txt: minor additions/corrections.
11881
11882 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
11883
11884         * docs/gtkfaq.sgml: FAQ Update
11885
11886 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11887         
11888         * configure.in: Fix autoconf warnings about cross compilation by
11889         trying to provide sane defaults for AC_TRY_RUN.
11890
11891 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
11892
11893         * ltconfig
11894         * ltmain.sh: upgrade to libtool 1.3.3
11895
11896 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
11897
11898         * INSTALL: Indicate that the --with-glib= configure
11899         time flag is unsupported.
11900
11901 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
11902
11903         * docs/generation.txt: Added a file that gives
11904         documenation about the autogeneration process for
11905         various autogenerated files.
11906         
11907 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11908
11909         * configure.in (LIBS): Look for libgmodule in the
11910         right location.
11911
11912 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
11913
11914         * docs/gtk_tut.sgml: Removed references to
11915         code examples in my directory on gtk.org as
11916         they should all be in the tutorial now.
11917
11918         * docs/gtk_tut.sgml: Added sources for dial-test
11919         and scribble-xinput programs that were previously
11920         missing.
11921
11922 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
11923
11924         * TODO: Added entry about menu keyboard navigation, removed
11925         some finished items.
11926
11927 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
11928
11929         * acinclude.m4: Standardize on func_dgettext
11930         not func_gettext, so that the checks for dgettext
11931         actually are paid attention to.
11932
11933 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
11934
11935         * configure.in (LIBS): Add $INTLLIBS into $LIBS
11936         directly, rather than repeating the checks for
11937         gettext.
11938
11939         * INSTALL: Added information about gettext and
11940         NLS support.
11941
11942         * acinclude.m4 (LIBM): Check for dgettext, not
11943         just gettext. This should hopefully fix things wrt
11944         systems with old versions of GNU gettext installed.
11945
11946 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11947
11948         * configure.in (LIBS): Look for libgmodule in the
11949         right location.
11950
11951 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11952
11953         * autogen.sh: add --enable-maintainer-mode
11954
11955         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
11956
11957 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
11958
11959         * docs/gtk-config.1.in:
11960           docs/Makefile.am:
11961           configure.in: gtk-config is now generated.
11962
11963         * docs/gtk-config.1: Removed, now generated.
11964
11965 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
11966
11967         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
11968         handle CreateNotify itself, still put out a debuging message for
11969         --gdk-debug=events. made the ReparentNotify debugging message more
11970         verbose.
11971         wrap xcoords translation for ConfigureEvents into an error trap,
11972         a destroy event may already be pending, and in that case, the
11973         actuall coordinate values are not at all critical.
11974
11975 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
11976
11977         * gdk/gdkcc.c: Stop leaking the color_hash all over
11978         the place. Simplify and improve the logic.
11979
11980 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11981
11982         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
11983         for prototypes and function implementations consistent (reported
11984         by Tomas Ogren).
11985
11986 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11987
11988         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
11989         send_event set in debugging output.
11990         (gdk_compress_exposures): default initialize the event so we don't
11991         operate on bogus values (namely send_event).
11992
11993 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11994
11995         * gdk/gdkwindow.c: When we receive an unexpected
11996         destroy notify on one of our windows, don't just
11997         warn about it, also mark our windows as destroyed.
11998
11999 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
12000
12001         * gdk/gdkfont.c (gdk_font_hash_insert): Add
12002           name => font and name => fontset hashes. The 
12003           name => fontset hash is a _big_ win since we
12004           weren't previously caching fontsets at all and loading
12005           fontsets is expensive. The name => font hash
12006           is less of a win, but it does save us from doing
12007           repeated XQueryFont calls on the same font.
12008
12009         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
12010           list so we can remove font/fontset from hash.
12011
12012 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12013
12014         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
12015           and slightly confusing test. [ XInternAtom (,,TRUE)
12016           will never return None ].
12017
12018 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
12019
12020         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
12021           gdk/gdkwindow.c (gdk_window_set_hints):
12022
12023         Don't omit setting the properties if flags == 0 -
12024         there may be an existing set of properties there
12025         already. (Very old bug. Would it be better to
12026         delete the property instead?)
12027
12028         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
12029           spelling error in comment.
12030
12031 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
12032
12033         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
12034           to avoid stomping over gdk_error_warnings.
12035
12036         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
12037           as (bits_per_pixel + 7) / 8. This gives the same
12038           result as before for multiples of 8, but actually
12039           a "reasonable" value for 1bit or 4bit displays.
12040
12041 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12042
12043         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
12044         GNU Make.
12045
12046 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12047
12048         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
12049         discarding configure events.
12050
12051 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12052
12053         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
12054         refcount is greater than zero.
12055
12056         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
12057
12058         * gdk/gdkfont.c (gdk_font_unref): Likewise.
12059
12060         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
12061
12062         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
12063
12064 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12065
12066         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
12067         that format 32 => sizeof(item) == 4. It really is
12068         sizeof(long).
12069
12070 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
12071
12072         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
12073         core dump at all on X IO errors, only core dump
12074         if --enable-debug for X errors.
12075
12076 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
12077
12078         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
12079         unknown window:" message. disabled ConfigureNotify discarding code,
12080         because it led to events being processed out of order.
12081
12082 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
12083
12084         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
12085
12086         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
12087         we export this function, supress error warnings and don't reset the
12088         error code in the first half of this function.
12089
12090         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
12091         code (instead of just -1) so gdk_error_trap_pop() reveals something
12092         actually informative about the error that happened.
12093
12094         * gdk/*.c:
12095         don't rely on gdk_error_code being -1 if an error occoured, but just
12096         gdk_error_code != 0.
12097
12098 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
12099
12100         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
12101         pointer *before* invoking the filter function, so we at least don't
12102         crash if a filter is removed that is currently executed. window filters
12103         *really* need to be made truely reentrant at some point.
12104
12105 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
12106
12107         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
12108         PropertyNotify debug messages.
12109
12110 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
12111         
12112         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
12113         
12114         * gdk/gdkim.c: Fix cut-and-paste errors for 
12115         x/y and PreeditAttributes/StatusAttributes.
12116
12117 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12118
12119         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
12120         G_MAXINT to 2^16 to alleviate overflow problems in
12121         various window managers.
12122
12123 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
12124
12125         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
12126         for fontsets.
12127
12128 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
12129
12130         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
12131         Initialize size_hints.x and size_hints.y because kwm
12132         brokenly pays attention to them.
12133         (Bug #1181 -  Lars Heete <hel@admin.de>)
12134
12135 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
12136
12137         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
12138         return value of gdk_list_visuals(). 
12139         (Bug #1193 - Morten Welinder <terra@diku.dk>)
12140
12141 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
12142
12143         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12144         XSetIMValues to (void *) when comparing to NULL, to workaround
12145         the problem of some compilers barfing since older X headers don't
12146         have the prototype for it.
12147
12148 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
12149
12150         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12151         for pseudocolor where colormap->colors was double
12152         allocated.
12153
12154         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12155         color value in the hash table with the pixel filled
12156         in so when we do later hash table lookups, the color
12157         value is correct.
12158         
12159 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12160
12161         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12162         making the call
12163
12164 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
12165
12166         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12167         pointed out by Morten Welinder <terra@diku.dk>.
12168
12169 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12170
12171         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12172           default filter from the list
12173
12174 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12175
12176         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12177           default filter from the list
12178
12179 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
12180
12181         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
12182
12183         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
12184         g_strdup_printf instead of calcing the length separately
12185
12186 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
12187
12188         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
12189         that we don't do in many other places. (Fixing duplicate 
12190         #include of config.h)
12191
12192         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
12193         Otherwise, #ifndef XINPUT_NONE check in the latter
12194         doesn't work. (Bug #546)
12195
12196 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
12197
12198         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
12199         "None" case insensitive.
12200
12201 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12202
12203         * gdk/gdkselection.c: 
12204         Add error traps so if the other end of the connection
12205         dies, we survive.
12206
12207 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12208
12209         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
12210         dest_xid field into two fields - one for the window
12211         to send in messages, one to indicate the last looked
12212         up window for caching purposes. This is needed, so
12213         that Leave messages get the correct window.
12214
12215 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
12216
12217         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
12218         Fix warning created by people mucking around
12219         with the gsource API.
12220
12221         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
12222         Change mapping between GIOCondition and GdkInputCondition
12223         to match the way the Linux kernel does it. This should
12224         fix problems where closed pipes were no longer signalling
12225         GDK_INPUT_READ on systems with a native poll().
12226
12227 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
12228
12229         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
12230         explicitly for the string "None" - it is in the XPM
12231         spec and some servers treat unknown colors in odd ways
12232         (like asking the user!)
12233
12234 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12235
12236         * gdk/gdkevents.c: made "->" into a "." of previous change so
12237         it compiles
12238
12239 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
12240
12241         * gdk/gdkevents.c (gdk_compress_exposures): Set the
12242         window field of the event structure before calling
12243         user filters.
12244
12245 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12246
12247         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
12248         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
12249
12250 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
12251
12252         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
12253         intermediate text property - prevents major memory
12254         leak when gdk_use_mb.
12255         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
12256
12257 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12258
12259         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12260         gtk-a-higuti-990322-[0-3]
12261
12262         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
12263         sizeof(wchar_t) != sizeof (GdkWChar)
12264
12265         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12266         that was causing -DX_LOCALE not to work.
12267
12268         * gtk/gtkrc.c (gtk_rc_init):
12269         X_LOCALE will never have LC_MESSAGES defined
12270
12271         * gdk/gdk.c (gdk_init_check):
12272         Remove --xim-preedit and --xim-status from argv properly.
12273
12274         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
12275         that the client window is present on the X server
12276         before we pass it to the input method.
12277
12278 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12279
12280         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
12281         if --display is specified on the command line, than
12282         the drag window will not be created on that display.
12283         
12284 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
12285
12286         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
12287         lookups with only_if_exists == TRUE were inserting
12288         bogus values into the atom cache.
12289
12290 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12291
12292         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
12293         then reset it to NULL.
12294
12295         * gdk/gdkcolor.c:
12296         (gdk_colors_free): 
12297         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
12298         key for g_hash_table_remove() in both functions, this prevents us
12299         from accessing possibly uninitialized portions of a GdkColor structure
12300         where we are only interested in its pixel value.
12301
12302 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12303
12304         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12305         font hash table, if we have a GdkFontPrivate entry for this font
12306         already, simply increment its reference count, provided by Olaf Dietsche
12307         <olaf.dietsche+list.gtk@netcologne.de>.
12308
12309 1999-09-21  Tor Lillqvist  <tml@iki.fi>
12310
12311         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
12312         just to be sure.
12313
12314         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
12315         unused variables, leftovers from the X11 version.
12316
12317         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
12318
12319         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
12320         downcase fields on X11.
12321
12322 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12323         
12324         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
12325         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
12326
12327 1999-09-17  Tor Lillqvist  <tml@iki.fi>
12328
12329         * gdk/win32/gdk.def: Add gdk_threads_mutex.
12330
12331         * gtk/makefile.msc: Correct path to libintl.
12332
12333         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
12334         use of gint vs. int, and gint vs. gboolean in headers and
12335         definitions. Use GtkType for the *_get_type functions. Note that
12336         these changes preserve binary compatibility.
12337
12338         * gdk/gdk.c
12339         * gdk/win32/gdk.c
12340         * gdk/gdk.h: Fix inconsistencies: gint vs int.
12341
12342         * gtk/gtkmain.c
12343         * gtk/gtkclist.c
12344         * gtk/gtkmenufactory.c
12345         * gtk/gtknotebook.c
12346         * gtk/gtkwidget.c: Fix inconsistencies, also gint
12347         vs. gboolean.
12348
12349         * gtk/gtkcolorsel.[ch]
12350         * gtk/gtkcombo.[ch]
12351         * gtk/gtkdrawingarea.[ch]
12352         * gtk/gtkgamma.[ch]
12353         * gtk/gtkhandlebox.[ch]
12354         * gtk/gtkhpaned.[ch]
12355         * gtk/gtkhruler.[ch]
12356         * gtk/gtkplug.[ch]
12357         * gtk/gtkpreview.[ch]
12358         * gtk/gtkruler.[ch]
12359         * gtk/gtksocket.[ch]
12360         * gtk/gtkstatusbar.[ch]
12361         * gtk/gtktoolbar.[ch]
12362         * gtk/gtkvbbox.[ch]
12363         * gtk/gtkvpaned.[ch]
12364         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
12365         functions.
12366
12367         * gtk/gtkgamma.h: Fix bug, missing () in call of
12368         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
12369
12370 1999-09-14  Tor Lillqvist  <tml@iki.fi>
12371
12372         * gdk/gdkcolor.c (gdk_colormap_new)
12373         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
12374         colormap->colors was allocated twice.
12375
12376         * gdk/win32/gdk.c: Remove some unused stuff.
12377
12378         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
12379         colormap.
12380
12381         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
12382         * gtk/gtklabel.h (gtk_label_get_type)
12383         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
12384         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
12385         in a couple of places, not guint.
12386
12387 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12388
12389         * configure.in,po/et.po: added Estonian language file
12390
12391 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12392
12393         * configure.in,po/da.po: added Danish file
12394
12395 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12396
12397         * docs/gtkfaq.sgml: Minor FAQ Update
12398
12399 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12400
12401         * docs/gtkfaq.sgml: FAQ update
12402
12403 1999-08-27  Tor Lillqvist  <tml@iki.fi>
12404
12405         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12406         way to get window contents continually refreshed while resizing. I
12407         didn't like the effects myself, so it's not on by default.
12408
12409         * gdk/win32/gdkprivate.h: New flag variable
12410         gdk_event_func_from_window_proc, FALSE by default.
12411
12412         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12413         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12414         are passed --gdk-event-func-from-window-proc.
12415
12416         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12417         and we have am event_func, call it instead of enqueing the event.
12418
12419 1999-08-23  Tor Lillqvist  <tml@iki.fi>
12420
12421         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12422         Kelley: Set expose_count in GdkEventExposes correctly.
12423
12424         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12425         MULTIPLE_WINDOW_CLASSES).
12426
12427         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12428         for bug in NT, apparently NT *does* draw the end pixel, too, in
12429         LineTo with a one-pixel pen, so we don't have to do it ourselves.
12430
12431 1999-08-21  Tor Lillqvist  <tml@iki.fi>
12432
12433         Improvements by Hans Breuer: 
12434
12435         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12436
12437         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12438         CS_?REDRAW flags as they cause lots of (late) redraws when "show
12439         window contents while dragging" is turned on. Allocate at least
12440         one unique class for every GdkWindowType. If support for single
12441         window-specific icons is ever needed (eg. Dialog specific), every
12442         such window should get its own class.
12443
12444 1999-08-19  Tor Lillqvist  <tml@iki.fi>
12445
12446         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12447         error that caused crashes.
12448
12449 1999-08-17  Tor Lillqvist  <tml@iki.fi>
12450
12451         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12452         window, use ScrollWindowEx, and call UpdateWindow. This prevents
12453         bugs when for instance part of the window was outside the
12454         display. Thanks to Philippe Colantoni for finding and fixing this.
12455
12456 1999-08-16  Tor Lillqvist  <tml@iki.fi>
12457
12458         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12459         endpoint calculations which were totally wrong. (A little RTFMing
12460         helps a lot ;-)
12461
12462         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12463         from a separate directory, not from gettext, because of licensing
12464         issues (we want to use the LGPL version).
12465
12466         * README.win32: Mention the intl from glibc vs from gettext issue.
12467
12468 1999-08-13  Tor Lillqvist  <tml@iki.fi>
12469
12470         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12471         in the key event handling: Now AltGr chars work again. Also,
12472         now Alt-digits are passed up as well as Control-digits.
12473         Pass keypad plus and minus as normal plus and minus.
12474
12475 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12476
12477         * docs/gtkfaq.sgml: FAQ Update
12478
12479 1999-07-25  Tor Lillqvist  <tml@iki.fi>
12480
12481         * README.win32
12482         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12483         the Wintab SDK.
12484
12485         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12486         OK, but getting closer. Guard against bogus tilt data from Wacom
12487         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12488         enable easier building without Wintab.
12489
12490         * gdk/win32/gdkinput.h
12491         * gdk/win32/gdkevents.c 
12492         * gdk/win32/gdkwindow.c: Minor changes related related to above.
12493         
12494         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12495         code. As we have just one visual on Win32, no sense to have it in a
12496         table, and no need for the hash table.
12497
12498         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12499         better on white background.
12500
12501 1999-07-21  Tor Lillqvist  <tml@iki.fi>
12502
12503         * README.win32: Update gcc build instructions. Mention gettext is
12504         GPL.
12505
12506         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12507         supported cursor size with GetSystemMetrics.
12508
12509         * gdk/win32/gdkfont.c
12510         * gtk/gtkfontsel.c: Guard against some font weight and charset
12511         symbols being undefined (in mingw32 headers).
12512
12513         * gdk/win32/makefile.cygwin
12514         * gtk/makefile.cygwin
12515         * gtk/gtkthemes.c: No longer need to have differently named
12516         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12517
12518 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12519
12520         * docs/gtkfaq.sgml: Long awaited FAQ update.
12521
12522 1999-07-15  Tor Lillqvist  <tml@iki.fi>
12523
12524         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12525         it. Obscure bit manipulation needed.
12526
12527         * gdk/win32/gdkevents.c: Logging.
12528         
12529         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12530         style (file name include compiler name) for theme engines.
12531
12532 1999-07-13  Tor Lillqvist  <tml@iki.fi>
12533
12534         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
12535
12536         * gdk/win32/gdkevents.c: Fix long-standing bug in key
12537         events. The key.string wasn't zero-terminated, still we strdup'ed
12538         it in gdk_event_copy(). Synthesize crossing events for button
12539         events before possible propagation.
12540
12541         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
12542
12543         * gdk/win32/makefile.cygwin
12544         * gtk/makefile.cygwin: Use new DLL naming style for the
12545         GCC-compiled ones.
12546
12547         * gdk/win32/makefile.msc
12548         * gtk/makefile.msc: Cosmetics mostly.
12549
12550         * gtk/gtk.def: Add missing entry points.
12551
12552         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
12553
12554 1999-07-09  Tor Lillqvist  <tml@iki.fi>
12555
12556         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
12557         or height is zero. Don't print a warning if Pie or Arc fails, they
12558         always fail (?) for very narrow ellipses.
12559
12560         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
12561         the part or the destination window corresponding to source area
12562         outside of the source drawable's boundary.
12563
12564         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
12565         anything if less than two points.
12566
12567         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
12568         return NULL. Gtk cut-and-paste inside a single program works
12569         better this way. (It always gets the clipboard contents from
12570         Windows, not from its own copy, which is cleared anyway. I can't
12571         say I fully understand what happens... Emulating the X selection
12572         and property stuff is a bit of a mess.)
12573
12574         * gdk/win32/gdkevents.c
12575         * gdk/win32/gdkproperty.c: A bit more verbose logging.
12576
12577         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
12578         that never got deleted). Revamp gdk_region_shrink.
12579
12580         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
12581         after use.
12582
12583         * gtk/gtk.def: Add some missing entry points.
12584
12585         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
12586         component.
12587
12588 1999-07-04  Tor Lillqvist  <tml@iki.fi>
12589
12590         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
12591         Control-digits specially.
12592
12593 1999-07-03  Tor Lillqvist  <tml@iki.fi>
12594
12595         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
12596
12597 1999-06-28  Tor Lillqvist  <tml@iki.fi>
12598
12599         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
12600         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
12601         finding this.)
12602
12603 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
12604
12605         * gtk+.spec.in: Corrected some typos in files section.
12606         
12607 1999-06-15  Tor Lillqvist  <tml@iki.fi>
12608
12609         * README.win32: Mention using GNU gettext.
12610         * config.h.win32: Enable NLS stuff.
12611         * gtk/makefile.msc: Use GNU gettext.
12612         * gdk/win32/gdkdnd.c: Minor header reorg.
12613         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
12614         cosmetics.
12615         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
12616         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
12617
12618 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
12619
12620         * acinclude.m4
12621         * config.guess
12622         * config.status
12623         * ltconfig
12624         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
12625
12626 1999-05-30  Tor Lillqvist  <tml@iki.fi>
12627
12628         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
12629         SafeAdjustWindowRectEx. Don't override all calls to
12630         AdjustWindowRectEx by it, but use it only in two places: When
12631         creating a new top-level window and when moving a top-level
12632         window.
12633
12634         Use screen coordinate rectangle, not client rectangle, in
12635         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
12636         when we try to place a window so that the decoration (mainly,
12637         title bar) isn't visible.
12638
12639         These changes fix the bug that showed up for instance as the
12640         GIMP's saved top-level windows moving right and down (by an amount
12641         equal to the window decoration) for each session. This bug showed
12642         up also in testgtk's "Saved Position".
12643
12644         gdk_window_resize also redone a bit.
12645
12646 1999-05-25  Tor Lillqvist  <tml@iki.fi>
12647
12648         * gtk/testgtkrc: Add (commented out) Windows-style theme
12649         include line.
12650
12651         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
12652
12653 1999-05-18  Tor Lillqvist  <tml@iki.fi>
12654
12655         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
12656         gdkx.h to a gdk subdirectory, so that applications can include
12657         these with <gdk/*.h> without trouble.
12658
12659         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
12660         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
12661         have their bitmap destroyed.
12662
12663         * gdk/win32/gdk.def: Add gdk_root_parent.
12664
12665 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
12666
12667         * configure.in
12668           gtk-config.in
12669           ltconfig
12670           ltmain.sh     
12671           gtk/Makefile.am: changes to compile nicely (with xlib) 
12672           on BeOS
12673
12674 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
12675
12676         * acinclude.m4
12677         * config.guess
12678         * config.sub
12679         * ltconfig
12680         * ltmain.sh: upgrade to libtool 1.3
12681
12682 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
12683
12684         * gtk/gtkclist.c:
12685         * gtk/gtkctree.c: merges from gtk-1-2
12686
12687 1999-04-25  Tor Lillqvist  <tml@iki.fi>
12688
12689         Support added for building using a GNU toolchain on Win32,
12690         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
12691
12692         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
12693         * config.h.win32: Changes for gcc.
12694         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
12695         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
12696         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
12697         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
12698         Protect shl stuff unavaiilable with mingw32 headers.
12699         * gdk/win32/gdkevents.c: Fix typo.
12700         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
12701         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
12702         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
12703         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
12704         the mingw32 headers.
12705         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
12706         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
12707         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
12708         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
12709         Test for NATIVE_WIN32, not _MSC_VER.
12710         * gtk/gtkmain.c: No use warning about developer version on Win32,
12711         there aren't any non-developer versions anyhow.
12712         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
12713         * gtk/makefile.msc: Use pthread from another directory. Minor other
12714         changes. 
12715
12716 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12717
12718         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12719           default filter from the list
12720
12721 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
12722
12723         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
12724          when gtk_widget_grab_default() is called for a widget that
12725          is not within a GtkWindow.
12726
12727 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
12728
12729         * docs/gtk_tut.sgml, examples/clist.c: use a
12730           scrolled window in the clist example. Minor
12731           tutorial fixes.
12732
12733 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
12734
12735         * docs/gtk_tut.sgml: Style check from David King
12736           <dking@youvegotmail.net>
12737
12738 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
12739
12740         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
12741         compile with unknown value of GDK_WINDOWING
12742
12743 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
12744
12745         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
12746         after the rule is fired.
12747         (install-exec-local): Install gdkconfig.h only if the contents are
12748         different from the currently installed gdkconfig.h.
12749
12750 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
12751
12752         * gdk/Makefile.am (configexecincludedir): Rename from 
12753         configincludedir so that gdkconfig.h will be installed 
12754         as part of `make install-exec'. 
12755
12756 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
12757
12758         * acinclude.m4
12759         * config.guess
12760         * config.sub
12761         * ltconfig
12762         * ltmain.sh: upgrade to libtool 1.2f
12763
12764         * autogen.sh: libtool is not required to autogen gtk+
12765
12766         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
12767         needed)
12768
12769 1999-03-18  Tor Lillqvist  <tml@iki.fi>
12770
12771         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
12772         declaring gdk variables exported/imported from the DLL. New image
12773         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
12774         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
12775         GDK_DRAG_PROTO_OLE2.
12776
12777         * gdk/gdk.h: Merge in Win32 version: Two new functions,
12778         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
12779         declared only for the Win32 version, but could be in the X11
12780         version as well. (Needed for a Xlib-less gdk_imlib.)
12781         gdk_color_hash should have only one parameter. Declare
12782         gdk_threads_mutex with GDKVAR.
12783         
12784         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
12785         just one parameter.
12786
12787         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
12788         per pixel, not bits.
12789
12790         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
12791         Fetch bpp (which means bits-per-pixel here) from another place on
12792         Win32. Accept also depth==32 (which we might get on Win32) with
12793         bpp==32.
12794
12795         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
12796         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
12797         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
12798         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
12799         in the backend-dependent directory, not in the common gdk
12800         directory.
12801
12802         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
12803         headers.
12804
12805 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
12806
12807         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
12808         want to use the Gtk+ devel version (which is true, and yes - even i am
12809         currently working with the 1.2.x branch). so everyone reading this, you
12810         probably want to issue
12811         cvs checkout -r glib-1-2 glib
12812         and
12813         cvs checkout -r gtk-1-2 gtk+
12814         as your next two comands.
12815
12816 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
12817
12818         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
12819         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
12820
12821         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
12822         file. strongly deprecated the GTK_HAVE_* macros, we provide
12823         GTK_CHECK_VERSION() for people that need to check for certain
12824         Gtk+ versions.
12825
12826         * gtk/gtkcompat.h: removed this from CVS.
12827         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
12828         idea right from the start, it just didn't seem like that back then.
12829
12830 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
12831
12832         * merges from gtk-1-2:
12833
12834 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
12835
12836         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
12837         item factory class has been created.
12838         (gtk_item_factory_parse_rc): likewise.
12839
12840         * gtk/gtkmenu.c:
12841         keep proper references for old_active_menu_item.
12842         (gtk_menu_reparent): unset the usize of the new parent,
12843         so the menu can sanely be size requested and we don't get nasty screen
12844         artefacts upon next reparentation.
12845         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
12846         enter notify. only synthesize enter notifies if the pointer really is
12847         inside the event window.
12848         (gtk_menu_popdown): use gtk_menu_shell_deselect().
12849         (gtk_menu_popup): move the background setting stuff into
12850         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
12851
12852         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
12853         gtk_menu_shell_select_item() to select the new item.
12854         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
12855         do the right thing for deselection as well.
12856
12857 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
12858
12859         * gtk/gtkwidget.[hc]:
12860         (gtk_widget_accelerators_locked): return whether a widget's accelerators
12861         are locked.
12862
12863         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
12864         existing accelerators if the widget's accelerators are locked.
12865
12866 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
12867
12868         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
12869
12870         * gtk/gtkmenu.c: truely forward key press and key release events to
12871         the menu widget from the toplevel or tearoff window. we can't simply
12872         connect to that, we need to stop further processing of the events as
12873         well.
12874
12875 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
12876
12877         * gtk/gtkmenu.c:
12878         (gtk_menu_key_press): pass event->keyval, event->state to
12879         gtk_accelerator_valid, instead of event->keyval twice.
12880         refuse to install single letter accelerators for menus that use
12881         single letter shortcuts.
12882
12883         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
12884         gtk_menu_ensure_uline_accel_group().
12885
12886         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
12887         which will always return an uline accel group, made
12888         gtk_menu_get_uline_accel_group() return NULL if the group isn't
12889         yet created.
12890
12891 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
12892
12893         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
12894
12895         * gtk/gtkclist.c (gtk_clist_column_title_passive):
12896         Leave button sensitive, trap  button_press, button_release,
12897         motion_notify, enter_notify and leave_notify events instead.
12898         (gtk_clist_column_title_active): disconnect event handler.
12899         (gtk_clist_drag_data_get): fixed memory leak. Reported by
12900         Guillaume Laurent <glaurent@worldnet.fr>
12901
12902 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
12903
12904         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
12905         width/height mixups.
12906
12907         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
12908         if needed.
12909
12910 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
12911
12912         * gtk/testgtk.c (create_item_factory): unref the item factory after
12913         window's destruction.
12914
12915         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
12916         count on the menu shell around the menu item's activation, since the
12917         signal emission may cause menu shell destruction.
12918
12919         * gtk/gtkitemfactory.c:
12920         the previous code leaked one accel group per menu. we use
12921         gtk_menu_get_uline_accel_group() now to fix that, and with that
12922         also create the underline accelerator group of the menus only if
12923         required (i.e. an underline accelerator has been specified).
12924         (gtk_item_factory_construct):
12925         (gtk_item_factory_create_item): removed code that would create an
12926         extra accel group for the menu (and leak references).
12927         (gtk_item_factory_create_item): adapted the underline accelerator
12928         installation code to properly feature gtk_menu_get_uline_accel_group().
12929
12930         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
12931         menu->accel_group, this may return NULL if the accelerator group
12932         hasn't been set yet.
12933         added gtk_menu_get_uline_accel_group() to retrive the underline
12934         accelerator group of the menu, this will be created on demand
12935         and proper care is taken about its reference count.
12936
12937         * gtk/gtkitemfactory.h:
12938         * gtk/gtkitemfactory.c:
12939         dumped the approach of keeping a widgets by action list on the
12940         factory since the factory<->widget destroy negotiation didn't work
12941         and would be hard to get going at all. instead we keep a list of
12942         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
12943         persistant throughout a program's life time).
12944         also, i removed the static const gchar *key_* variables, and made
12945         them inline strings (they weren't actually used anyways).
12946         (gtk_item_factory_add_item): update ifactory->items.
12947         (gtk_item_factory_destroy): destroy ifactory->items (and remove
12948         the item factory pointer from the remaining ifactory widgets).
12949         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
12950         list to find the widget.
12951         (gtk_item_factory_get_item): new function that works around
12952         gtk_item_factory_get_widget() limitations, this function will only
12953         return menu items, even for <Branch> entries.
12954
12955 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12956
12957         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12958         font hash table, if we have a GdkFontPrivate entry for this font
12959         already, simply increment its reference count, provided by Olaf Dietsche
12960         <olaf.dietsche+list.gtk@netcologne.de>.
12961
12962         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12963         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12964
12965 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
12966
12967         * gtk/gtkcontainer.c:
12968         (gtk_container_add_with_args):
12969         (gtk_container_addv):
12970         (gtk_container_add): before adding a child to a conatiner, make sure
12971         it is (default) constructed, this is neccessary because under certain
12972         circumstances the child will get relized and mapped immediatedly, in
12973         which case it has to be constructed already.
12974
12975 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
12976
12977         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
12978         values > 1 as TRUE also.
12979
12980 1999-03-16  Tor Lillqvist  <tml@iki.fi>
12981
12982         * README.win32: New file.
12983                 
12984         * configure.in: Check for lstat.
12985
12986         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
12987         completeness.
12988
12989         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
12990
12991         * gtk/gtk.def: Removed CRs.
12992
12993         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
12994         ..\gdk\win32).
12995
12996         * gdk/win32/makefile.msc: Correct upwards relative paths.
12997         
12998 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
12999
13000         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
13001           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
13002           it was connecting a void function to expose_event and the int
13003           returning function to the draw signal
13004
13005 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
13006
13007         * configure.in:
13008         Use correct path to libgmodule.la when ref'ing uninstalled copy
13009         of glib.  (Already in stable branch, Bug #417)
13010
13011 1999-03-15  Tor Lillqvist  <tml@iki.fi>
13012
13013         Win32 merge and general portability stuff:
13014                 
13015         * acconfig.h,configure.in: Check for <sys/time.h>.
13016
13017         * gdk/win32: New directory (actually, been there for a while).
13018         
13019         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
13020         NATIVE_WIN32, and use these. Always case fold on Win32. No
13021         backslashed escapes on native Win32.
13022
13023         * gtk/{gtk.def,makefile.msc}: New files.
13024
13025         * gtk/Makefile.am: Add above new files.
13026         
13027         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
13028         instead of <strings.h>.
13029
13030         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
13031         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
13032         <unistd.h> appropriately.
13033
13034         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
13035         Use ABS() (from <glib.h>) instead of abs().
13036         
13037         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
13038         of gtk (and thus glib) headers, so that WIN32 will be
13039         defined. With MS C, include <direct.h> for mkdir prototype.
13040
13041         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
13042         some casts, needed by MS C.
13043
13044         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
13045         implemented).
13046
13047         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
13048         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
13049         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
13050
13051         * gtk/gtkmain.h: Mark variables for export/import on Win32.
13052                 
13053         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
13054         the event is not a hint, or its window is not the slider. Needed
13055         on Win32, at least.
13056
13057         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
13058         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
13059         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
13060         a subdirectory of the Windows directory as gtk system
13061         configuration directory.
13062
13063         * gtk/gtkselection.c: No chunks on Win32.
13064
13065         * gtk/gtksocket.c: Not implemented on Win32.
13066
13067         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
13068
13069         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
13070
13071         * gtk/maketypes.awk: Declare variables with a macro that expands to
13072         necessary export/import magic in the case of Win32.
13073                 
13074         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
13075
13076 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
13077
13078         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
13079         since those were meant only for gdki18n.h.  
13080         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
13081         for widechar tests.
13082         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
13083
13084 1999-03-13  Tor Lillqvist  <tml@iki.fi>
13085
13086         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
13087         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
13088
13089         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
13090         installed) to CFLAGS.
13091
13092         * gdk/Makefile.am: Add rules for gdkconfig.h.
13093
13094         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
13095         APIs.
13096
13097         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
13098         gdkx.h anyway when compiling for X11.
13099         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
13100         general): Merge in Win32 version.
13101         
13102         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
13103         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
13104         expansion (if we don't have HAVE_PWD_H), allow for drive
13105         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
13106         included code from Craig Setera's port to Win32 (the one that uses
13107         X11, and the cygwin dll), even if it probably will be abandoned.
13108
13109         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
13110         the user entered one herself.  This way one can complete *.h and
13111         don't get matches on any .help files, for instance.
13112         
13113 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
13114
13115         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
13116         font hash table, if we have a GdkFontPrivate entry for this font
13117         already, simply increment its reference count, provided by Olaf Dietsche
13118         <olaf.dietsche+list.gtk@netcologne.de>.
13119
13120         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
13121         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
13122
13123 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
13124
13125         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
13126         the number of calls to gdk_draw_point() (and thus to X) by
13127         clipping the points by hand.
13128
13129         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
13130         the clip parameter.
13131         (gtk_handle_box_paint): Only paint the handle if the expose area
13132         intersects it.
13133
13134 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13135
13136         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
13137
13138 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
13139
13140         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
13141         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
13142
13143 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13144
13145         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13146          textmode (O_TEXT) for OS/2 version.
13147
13148 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
13149
13150         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
13151         GtkSpinButton, "input" and "output", to make the output more flexible.
13152         The user has to provide a mapping between adjustment->value and the
13153         output string (and vice versa, if the spin button is editable). 
13154         See testgtk for examples.
13155
13156 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
13157
13158         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13159         new one.
13160         
13161         * configure.in: set gtk+ version to 1.3.0.