]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
fix screwup with shadowed variables that had broken size request in some
[~andy/gtk] / ChangeLog.pre-2-10
1 2001-02-17  Havoc Pennington  <hp@pobox.com>
2
3         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4         shadowed variables that had broken size request in some cases,
5         leading to bogus tooltips (#50996)
6
7 2001-02-06  Jon K Hellan  <hellan@acm.org>
8
9         Implement fast browsing of tooltips, bug #50619
10         
11         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
12         and last_popdown
13         
14         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
15         use_sticky_delay and last_popdown.
16         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
17         time of popdown.
18         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
19         is NULL.
20         (gtk_tooltips_recently_shown): New static function.  Return true
21         if < sticky_delay has elapsed since last popdown.
22         (gtk_tooltips_event_handler): Display window after sticky_delay
23         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
24         since last popdown.
25         
26 2001-02-17  Havoc Pennington  <hp@pobox.com>
27
28         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
29         instead of (). #6394
30
31         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
32         G_CONST_RETURN, make it return by reference, #50473
33         
34 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
35
36         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
37         generated ENTER_NOTIFY event with 0, otherwise not explicitely
38         setup fields contain garbage (e.g. subwindow, breaking
39         gdk_drawable_ref() upon event copy).
40         (gtk_menu_stop_navigating_submenu_cb): same here.
41
42         * gtk/gtklist.c (gtk_list_vertical_timeout): 
43         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
44         * gtk/gtkclist.c (vertical_timeout): 
45         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
46         default-zero-intialization for unions to memset(,0,), as unions are
47         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
48         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
49
50         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
51         g_closure_sink() warning.
52
53         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
54         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
55         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
56         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
57         
58 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
59
60         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
61         gtk_*_store_get, and moved to GtkTreeModel.
62
63         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
64
65         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
66
67         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
68
69         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
70         set the func.
71
72         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
73         freeze/thaw notify between setting all the properties for a cell.
74
75         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
76
77 2001-02-15  Havoc Pennington  <hp@redhat.com>
78
79         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
80         the X coordinates so they're with respect to the line, rather than 
81         with respect to the layout.
82
83         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
84         Mallabone
85
86         * gtk/testgtk.c (create_range_controls): add vscale tests, 
87         and inverted test
88
89         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
90         #50806
91
92         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
93
94         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
95         gtk_text_iter_is_end
96
97         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
98         rename gtk_text_buffer_get_end_iter
99
100         * gtk/testgtk.c (create_labels): Add test for selectable
101
102         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
103         the selection stuff. This code is kind of broken since it doesn't 
104         use the theme engine.
105
106         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
107         fix infinite loop and y offset problem
108         (gdk_draw_layout_line_with_colors): fix foreground color handling
109
110         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
111         that makes the label selectable.
112         
113         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
114         layout when the style is set, since fonts etc. could have changed.      
115
116 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
117
118         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
119
120         * gtk/gtktreemodelsimple.[ch]: removed.
121
122 2001-02-16  Alexander Larsson  <alexl@redhat.com>
123
124         * gtk/gtktreemodelmapping.[ch]:
125         New files. Implement GtkTreeModelMapping.
126         
127         * gtk/Makefile.am:
128         Add gtktreemodelmapping.[ch].
129         
130         * gtk/gtk.h:
131         Add gtktreemodelmapping.h
132
133         * gtk/treestoretest.c:
134         Test the GtkTreeModelMapping
135
136 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
137
138         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
139         have a demo, we might as well pass in real values.  Thanks to
140         clahey for pointing this out.
141
142 2001-02-14  Havoc Pennington  <hp@pobox.com>
143
144         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
145         "static" to a private function
146         (gtk_image_menu_item_class_init): remove destroy handler,
147         add "image" object property
148
149 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
150
151         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
152         Add a shortcut if the window and the current clip_region doesn't
153         overlap. This is needed when there are a lot of windows in a
154         window. The layout test in testgtk is a good test.
155
156         * gdk/linux-fb/gdkwindow-fb.c:
157         Whitespace fix.
158
159 2001-02-13  Sven Neumann  <sven@convergence.de>
160
161         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
162
163 2001-02-13  Alexander Larsson  <alexl@redhat.com>
164
165         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
166         Don't reference last_cursor if it is null. Fixes crash when rotating
167         the screen before having moved the mouse.
168
169         * gdk/linux-fb/gdkcc-fb.c: Zapp!
170
171         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
172
173         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
174         when using 90 or 270 degrees rotation.
175
176 2001-02-12  Havoc Pennington  <hp@pobox.com>
177
178         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
179         it always set the foreground, even if we were only using
180         a stipple.
181         (gdk_draw_layout_line_with_colors): new function, allow
182         override colors
183         (gdk_draw_layout_with_colors): new function, allow override
184         colors
185         (gdk_pango_layout_line_get_clip_region): function to get the clip
186         region for a logical text range
187         (gdk_pango_layout_get_clip_region): get the clip region for a
188         logical text range
189
190         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
191         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
192         the right number of arguments.
193
194         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
195         enhance the function to check that node data corresponds to a 
196         view still belonging to the tree.
197
198         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
199         GtkTreePath
200         (gtk_tree_view_inserted): ditto
201         (gtk_tree_view_child_toggled): ditto
202
203         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
204         simplify this code.
205
206         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
207         a PangoAttrList
208
209         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
210
211         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
212
213         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
214         size in the size request 
215         (gtk_menu_bar_size_allocate): consider toggle size here
216
217         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
218         that displays a widget in the toggle slot
219
220         * gtk/testgtk.c: test GtkImageMenuItem
221
222         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
223         
224         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
225         request and allocation
226
227         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
228
229         * gtk/gtkcheckmenuitem.c
230         (gtk_check_menu_item_toggle_size_request): ditto
231         
232 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
233
234         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
235         reference.
236
237         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
238         and refuse to initialize GTK+ if they fail.
239
240 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
241
242         * configure.in: Add check for gtk-doc version.
243
244 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
245
246         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
247         where the xpad/ypad was only being used on one side!
248
249 2001-02-11  Tor Lillqvist  <tml@iki.fi>
250
251         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
252         function, copied from X11 version.
253
254         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
255         DestroyCursor failures. The reason for the problem (despite the
256         inconsistent messages from GetLastError()) was that
257         DestroyCursor() cannot be called while a cursor is set in a
258         window. Set the new cursor first and then destroy the old one.
259         Thanks to jpe@archaeopteryx.com.
260
261         * gdk/win32/gdkcc-win32.c: Remove.
262
263         * gdk/win32/Makefile.am: Remove from here, too.
264         
265         * gdk/gdk.def
266         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
267
268         * gtk/gtk.def
269         * gtk/makefile.mingw.in: Updates.
270
271 2001-02-08  Havoc Pennington  <hp@redhat.com>
272
273         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
274         add a widget to a bin that already has a child.
275
276         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
277
278         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
279         
280         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
281
282         * gdk/gdk.h: remove gdkcc.h
283
284         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
285
286         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
287         GdkPixbuf, since the previous implementation was GdkColorContext
288         dependent.
289
290         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
291         
292 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
293
294         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
295         a sane value!
296
297 2001-02-08  Havoc Pennington  <hp@redhat.com>
298
299         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
300         lighten them.
301
302 2001-02-08  Havoc Pennington  <hp@redhat.com>
303
304         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
305         validation idle
306
307         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
308         cell renderer
309
310         * demos/pixbuf-demo.c (timeout): remove deprecated
311         gtk_widget_draw
312
313         * demos/testpixbuf-save.c (main): remove deprecated
314         gtk_drawing_area_size
315
316         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
317         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
318         at the start of the allocation.
319         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
320         unsetup or NULL model.
321
322         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
323         even/odd/sorted cells in the tree view.
324
325         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
326         bugfixes
327
328         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
329         backgrounds with draw_flat_box using different detail for even/odd
330         rows.
331
332         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
333         row, so we can draw the alternating colors thing
334
335         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
336         property from a synonym property, notify for the synonym.
337         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
338         (gtk_text_tag_get_property): Always return the font, even if
339         all its fields aren't set
340
341         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
342         store the attr list; it leaves us with no way to change attributes
343         in _render according to the render flags, and no way to implement
344         get_property. Instead store all the specific text attributes. 
345         Separate whether an attribute is enabled from its value. Sync all
346         properties with GtkTextTag, make them all consistent, etc.
347
348         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
349         renderers can highlight the sort row/column     
350
351         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
352         accessor functions to get values; this has the side effect of
353         showing up which accessor functions were missing. Added those.
354
355         * gtk/gtktreeviewcolumn.h: Replace set_justification with
356         set_alignment, to be consistent with GtkLabel, GtkMisc
357
358         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
359         arrow.
360
361         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
362
363         * gtk/gtktreesortable.h: updates in here
364
365 2001-02-07  Sven Neumann  <sven@convergence.de>
366
367         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
368         pango dimensions after painting the background. We used to draw
369         gigantic flat boxes here.
370
371 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
372
373         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
374         error introduced with earlier commit) (pointed out by
375         Ollie Lho)
376
377 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
378
379         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
380         which are no longer necessary.
381
382 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
383
384         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
385
386 2001-02-04  Tor Lillqvist  <tml@iki.fi>
387
388         * gdk/gdk.def
389         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
390         Provide dummy implementations.
391
392 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
393
394         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
395
396         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
397         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
398         deprecated this function.
399
400         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
401         argument.
402
403 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
404
405         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
406
407 2001-02-03  Havoc Pennington  <hp@pobox.com>
408
409         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
410         Mikael Hermansson with patch from Mikael (if there was a toggle
411         start one after the first character in the range, this function
412         was broken). Bug #50380
413
414 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
415
416         * configure.in: Remove confusing comment about X11.
417
418 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
419
420         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
421         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
422         
423 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
424
425         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
426         it breaks things on BSD. If you want to compile GTK+ with
427         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
428         when configuring, since GTK+ simply can't be "pure ANSI" 
429         in the header files it uses. (#8170, Greg Hudson)
430
431 2001-02-02  Havoc Pennington  <hp@redhat.com>
432
433         * gtk/gtkwindow.c: docs
434
435         * gtk/gtkwidget.c: docs
436         (gtk_widget_set_colormap): add a reference to the colormap
437         (gtk_widget_get_default_colormap): add a reference to the colormap
438
439         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
440
441         * gtk/gtktextiter.c: docs
442
443         * gtk/gtkmain.c (gtk_propagate_event): docs
444
445         * gtk/gtkpaned.c (gtk_paned_get_position): docs
446         (gtk_paned_set_position): docs
447
448         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
449         sort interface, no implementation yet.
450
451         * demos/testpixbuf.c (new_testrgb_window): replace
452         gtk_drawing_area_size() with gtk_widget_set_usize()
453
454         * demos/testpixbuf-drawable.c (main): ditto
455         
456         * gtk/testgtk.c: remove use of GtkStatusbarMsg
457
458         * gtk/gtktextbuffer.c: docs
459
460         * gtk/gtkstock.c: docs
461
462         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
463
464         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
465
466         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
467         
468         * gtk/gtkimage.c: add some docs in here
469         (gtk_image_size_request): change name of
470         gtk_widget_render_stock_icon
471         (gtk_image_get_icon_set): don't dup returned string
472         (gtk_image_get_icon_set): don't dup returned string
473
474         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
475         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
476         and gtkiconfactory.h functions
477
478         * gtk/gtkiconfactory.c: add some docs in here
479
480         * gtk/gtkmain.c (gtk_get_default_language): document
481         (gtk_get_current_event): document
482         (gtk_get_current_event_state): document
483         (gtk_get_event_widget): document
484
485         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
486
487         * gtk/gtkcontainer.c: Add some documentation
488         (gtk_container_add): give a more explanatory warning on adding an
489         already-parented widget, this is kind of a FAQ and also a common
490         typo that's easier to debug with a nice warning 
491
492         * gtk/gtkcellrenderertoggle.c
493         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
494         adding this, it's useless
495         (gtk_cell_renderer_toggle_set_active): remove
496         (gtk_cell_renderer_toggle_get_radio): add
497
498         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
499         the NULL cell renderer, that doesn't make any sense to me. 
500
501         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
502         demo code should never use deprecated features.
503
504         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
505         code should never use deprecated features.
506
507         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
508         gtk_widget_queue_clear_area deprecated
509
510         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
511         deprecated
512
513         * gtk/gtklabel.h: mark gtk_label_get() deprecated
514
515         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
516         a GdkImage deprecated, replaced by new consistently-named
517         functions       
518
519         * gtk/gtkmain.h: Mark gtk_exit() deprecated
520
521         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
522
523         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
524         deprecated
525
526         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
527         so it won't appear in docs and confuse people.
528
529         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
530
531         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
532         macros deprecated. (can't mark the type itself deprecated, since
533         GtkProgressBar is not deprecated and we need the type decl to use
534         GtkProgressBar)
535
536         * gtk/gtkpixmap.h: Mark deprecated
537
538         * gtk/gtkoldeditable.h: Mark deprecated
539
540         * gtk/gtklist.h: Mark deprecated
541
542         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
543         for anything anymore.
544
545         * gtk/gtkctree.h: Mark deprecated
546
547         * gtk/gtkclist.h: Mark deprecated
548
549         * gtk/gtkpreview.h: Mark deprecated
550
551         * gtk/gtkpacker.h: Mark deprecated
552
553         * gtk/gtktipsquery.h: Mark deprecated
554
555         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
556
557         * gtk/gtkvruler.h: Add comment that it will move out of GTK
558
559         * gtk/gtkhruler.h: Add comment that it will move out of GTK
560
561         * gtk/gtkruler.h: Add comment that it will move out of GTK
562
563         * gtk/gtkgamma.h: Add comment that it will move out of GTK
564
565         * gtk/gtkcurve.h: Add comment that it will move out of GTK
566
567 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
568
569         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
570         gdk_colormap_sync private since it was never exported
571         in a header file.
572
573         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
574         colormap->colors[] for StaticGray, StaticColor colormaps.
575
576         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
577         was being used as if it was image->bits_per_pixel.
578
579         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
580         for the image in the GdkImage structure since it isn't
581         reconstructable, and we need it to handle packed types
582
583         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
584         the assumption that on Win32 image->bits_per_pixel == image->depth,
585         always.
586
587         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
588
589         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
590         warning message if no converter can be found. 
591
592 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
593
594         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
595         chars to isupper() / tolower(). (#567)
596
597         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
598         to clear up 64-bit warnings. (#567)
599
600 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
601
602         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
603         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
604
605         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
606         since some people set $(libdir) separately. (#1290, David Kaelbling)
607
608 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
609
610         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
611         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
612         MAXPATHLEN, but the code here depends on a fixed value.)
613         (#4524)
614
615 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
616
617         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
618         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
619
620 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
621
622         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
623         viewable there is no way that moving the node will cause the 
624         focus row to become not viewable, so omit check on the visibility
625         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
626
627 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
628
629         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
630         selection before inserting new text.
631
632 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
633
634         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
635         Make the sensitivity of the reparented child track that of
636         the original parent menu item. (#34218, David Hodson)
637
638         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
639         the case where the current item is destroyed properly.
640
641         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
642         some edge cases with child-less menuitems.
643         
644 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
645
646         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
647         key pop down window. (#12074, Jon K Hellan)
648
649 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
650
651         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
652         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
653         The solution here isn't perfect - you get an extraneous
654         emission of "toggle", which could conceivably confuse an app,
655         but better than the current situation. LXR search seems to
656         indicate that no apps in GNOME CVS connect to "toggle".
657
658 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
659
660         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
661         gtk_public_h_sources to directly here to avoid warning when
662         building srcdir != builddir. (#9656)
663
664 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
665
666         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
667         handlers in gtkrange.c return the proper values (TRUE == handled)
668         (#10316).
669
670         This is just the tip of the iceberg, but gtkrange.c is the
671         most common place where the propagation is problematical,
672         and also a place where it is almost certainly safe to change
673         this in the stable branch.
674
675         (You don't want right click popups on a range control or anything...)
676
677 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
678
679         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
680         area on focus out, even if a background pixmap isn't set.
681         (#13941)
682         
683 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
684
685         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
686         to deal with setting the shape properly when scrolling arrows are
687         turned on, but not visible because there is sufficient space.
688         (#13432)
689
690 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
691
692         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
693         items with submenus, destroy the item along with the submenu.
694         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
695         properly.
696
697         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
698         later.
699
700 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
701
702         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
703         the focus widget sometimes wasn't drawn with the default if there
704         was no default widget.
705
706         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
707         unreference pixmaps. 
708
709         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
710         for some extra safety.
711
712 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
713
714         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
715         the text of a cell to the old pointer value better, by
716         copying the new text before freeing the old text. Some code
717         cleanup. (#8079, Karl Nelson)
718
719 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
720
721         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
722         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
723
724 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
725
726         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
727         item from a menu, check to see if it matches 
728         menu->old_active_menu_item, and if so, unref and clear
729         old_active_menu_item (Patch from Pavel Cisler)
730
731         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
732         menu_shell->active_menu_item, if it is the child being
733         removed. (Patch based on that of Gene Ragan, #50337)
734
735 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
736
737         * gdk/linux-fb/gdkselection-fb.c: 
738         * gdk/linux-fb/gdkcolor-fb.c: 
739         * gdk/linux-fb/gdkdrawable-fb2.c: 
740         * gdk/linux-fb/gdkfont-fb.c: 
741         * gdk/linux-fb/gdkim-fb.c: 
742         * gdk/linux-fb/gdkinput.c: 
743         * gdk/linux-fb/gdkkeyboard-fb.c: 
744         * gdk/linux-fb/gdkmain-fb.c: 
745         * gdk/linux-fb/gdkrender-fb.c: 
746         A bunch of whitespace cleanup.
747         
748 2001-01-30  Havoc Pennington  <hp@pobox.com>
749
750         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
751         #ifdef GTK_ENABLE_BROKEN.
752
753         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
754         GTK_ENABLE_BROKEN just before including the broken headers.
755         
756         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
757         deprecated types registered.
758
759         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
760         we have to test the broken stuff.
761
762         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
763         
764 2001-01-30  Havoc Pennington  <hp@redhat.com>
765
766         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
767         here where prev pointer was set to the wrong thing
768
769         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
770         (gtk_tree_path_is_descendant): new function
771
772         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
773         cached length
774         (gtk_list_store_get_iter): don't modify iter if we can't get the
775         path.
776
777         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
778         
779         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
780         GtkTreeDragDest
781
782         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
783         was causing segfault
784
785         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
786         pointer to NULL
787
788         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
789
790         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
791         on returning FALSE
792         (gtk_list_store_iter_children): ditto
793         (gtk_list_store_iter_nth_child): ditto
794         (gtk_list_store_iter_nth_child): ditto
795         (gtk_list_store_iter_parent): ditto
796
797         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
798         on iter->user_data != NULL instead of silently accepting it.
799         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
800         we are returning TRUE.
801         (gtk_tree_store_iter_children): ditto
802         (gtk_tree_store_iter_nth_child): ditto
803         (gtk_tree_store_iter_parent): ditto
804         (gtk_tree_store_insert): remove handling of parent->user_data ==
805         NULL, replace with parent == NULL       
806
807         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
808         and a comment explaining things
809
810         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
811         interface support to GtkTreeStore.
812
813         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
814         FALSE if no prev, fix
815
816         * gtk/gtktreeview.c (set_source_row): use a row reference
817         (set_dest_row): use a row reference
818
819 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
820
821         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
822         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
823         (gtk_tree_selection_select_iter): The same as above.
824
825 2001-01-26  Havoc Pennington  <hp@redhat.com>
826
827         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
828         which holds a handle to a specific row (particular set of values
829         in the model, i.e. pointer-identity row).
830
831         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
832         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
833         Still need to use it for the src/dest row saved on the drag context.
834
835 2001-01-26  Havoc Pennington  <hp@redhat.com>
836
837         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
838
839         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
840         not offset by TREE_VIEW_HEADER_HEIGHT
841         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
842         TREE_VIEW_HEADER_HEIGHT
843
844         * configure.in (included_loaders): for me, --with-included-loaders
845         generates the error "the specified loader yes does not exist",
846         i.e. the arg defaults to "yes", so change test for value ""
847         to test for value "yes", and include all loaders in that case.
848
849         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
850
851         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
852         handle TREE_VIEW_VERTICAL_SEPARATOR
853         (gtk_tree_view_bin_expose): fix to consider the row offset as
854         pointing halfway into vertical separator.       
855         (gtk_tree_view_draw_node_focus_rect): ditto
856
857         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
858         --gtk-debug=updates, which causes gdk_window_set_debug_updates
859         (TRUE) to be called.
860
861         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
862         debug mode where the invalid region is colored in on invalidate,
863         so you can see the flicker and know whether your redraw code is 
864         doing a good job.
865
866         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
867         tree window coordinates (clip rect is in tree window coords)
868
869         * gtk/Makefile.am: add gtktreednd.[hc]
870
871         * gtk/gtkliststore.c: implement gtktreednd interfaces.
872
873         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
874         drag-and-drop data operations on a model (so we can set up tree
875         drag-and-drop automatically)
876
877         * gtk/testgtk.c: Add a window to change sensitivity in the
878         GtkLabel test; add a way to change the entry frame in GtkEntry
879         test
880
881         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
882         (gtk_entry_get_has_frame): new functions to remove the frame
883         around an entry
884         (gtk_entry_size_request): shrink requisition if no frame
885         (gtk_entry_draw_focus): don't draw frame if no frame
886
887         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
888         checks inside a cell renderer
889         (gtk_default_draw_option): ditto for options
890
891         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
892         children from the alignment, not the button
893         (gtk_tree_view_column_init): ref/sink the column, to emulate
894         GObject refcounting.
895
896         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
897         
898         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
899         Use theme functions to draw the toggles 
900
901         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
902
903         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
904         GdkPangoAttrEmbossed to use in rendering insensitive text
905
906         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
907
908         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
909         using new GDK features
910         
911 2001-01-24  Alexander Larsson  <alexl@redhat.com>
912
913         * gtk/gtkimage.c:
914         Splitted gtk_image_clear into gtk_image_clear() and
915         gtk_image_reset(). Call gtk_image_clear() in ::destroy
916         to avoid leaks.
917
918         * gtk/gtklabel.c (set_markup):
919         Don't leak text.
920
921         * gtk/gtktextlayout.c:
922         Always free display->shaped_objects.
923
924         * gtk/testgtk.c (create_clist):
925         Don't leak custom style.
926
927 2001-01-23  Alexander Larsson  <alexl@redhat.com>
928
929         * gtk/gtkcolorsel.c (grab_color_at_mouse):
930         Don't leak image. Simplify using gdk_colormap_query_color().
931         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
932
933         * linux-fb/gdkcolor-fb.c:
934         Implemented gdk_colormap_query_color.
935
936 2001-01-23  Alexander Larsson  <alexl@redhat.com>
937
938         * linux-fb/gdkcursor-fb.c:
939         Don't leak built-in cursors.
940
941         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
942         Don't leak tmp_points.
943
944         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
945         Don't modify desc. Don't leak font if the PangoFont
946         isn't found.
947         
948         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
949         Free dash_list.
950
951         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
952         Don't leak string.
953         
954 2001-01-20  Havoc Pennington  <hp@pobox.com>
955
956         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
957         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
958         me, matches Pango
959
960 2001-01-22  Havoc Pennington  <hp@redhat.com>
961
962         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
963
964         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
965
966         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
967         Remove, move back to gdk-pixbuf
968
969         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
970         to all the word functions
971
972         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
973         before doing anything on NULL layout or if we don't have the focus
974
975         * gtk/testtext.c (fill_example_buffer): "justification"
976
977         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
978         to be called "justification" not "justify"
979
980         * demos/gtk-demo/textview.c (create_tags): "justification"
981         
982         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
983
984 2001-01-22  Alexander Larsson  <alexl@redhat.com>
985
986         * gdk/gdkwindow.c (gdk_window_invalidate_region):
987         Don't leak visible_region. Use visible_region instead of region.
988         
989         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
990         Don't do extra gdk_drawable_ref(). This is not X.
991         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
992         gdk_fb_focused_window is ref:ed.
993         (gdk_fb_window_send_crossing_events): Watch out for destroyed
994         windows.
995
996 2001-01-22  Alexander Larsson  <alexl@redhat.com>
997
998         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
999         Don't leak the PangoFontDescriptor.
1000
1001 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
1002
1003         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
1004         when not realized.
1005         (gtk_tree_view_scroll_to_cell): Make work when not realized.
1006         (gtk_tree_view_realize): add scroll_to support
1007         (gtk_tree_view_finalize): add a finalize method.  Populate.
1008         (gtk_tree_view_insert_column): ref and sink the column.
1009         (gtk_tree_view_append_column): ref and sink the column.
1010         (gtk_tree_view_queue_draw_node): New function to handle redrawing
1011         individual nodes.  Should make the code much more efficient, if
1012         actually used.
1013
1014 2001-01-19  Havoc Pennington  <hp@redhat.com>
1015
1016         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
1017         byte_offset variable was being used to mean both "offset into
1018         layout" and "offset into buffer line" which was no longer true
1019         with addition of preedit string; fix
1020
1021 2001-01-19  Havoc Pennington  <hp@redhat.com>
1022
1023         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
1024
1025         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
1026         function
1027
1028         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
1029         implement
1030
1031         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
1032         scroll_to_cell, matches TextView scroll functions better
1033         (gtk_tree_view_tree_to_widget_coords): new function
1034         (gtk_tree_view_widget_to_tree_coords): new function
1035         (gtk_tree_view_get_visible_rect): new function
1036         (gtk_tree_view_get_path_at_pos): accept negative coordinates
1037         (gtk_tree_view_draw_node_focus_rect): new function moved from
1038         draw_focus, also, use width of bin_window as width of the focus
1039         rect
1040         (gtk_tree_view_expand_row): fix bug where it didn't recognize
1041         already-expanded rows
1042         (gtk_tree_view_get_cell_rect): new function
1043         (gtk_tree_view_get_path_at_pos): return the click position
1044         relative to the passed-in cell
1045         (gtk_tree_view_set_expander_column): new function
1046
1047         * configure.in: remove gtk-config-2.0 chmod
1048
1049         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
1050         and properly handle drags with targets we don't understand
1051         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
1052         scrolling anyway
1053         (gtk_text_view_drag_drop): stop scrolling here though, and set the
1054         mark invisible
1055
1056         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
1057         function
1058         (gtk_drag_dest_get_target_list): new function
1059         (gtk_drag_dest_set_target_list): new function
1060         
1061         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
1062
1063         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
1064         related to drag-and-drop
1065
1066 2001-01-19  Alexander Larsson  <alexl@redhat.com>
1067
1068         * gdk/linux-fb/gdkprivate-fb.h:
1069         Define EMULATE_GDKFONT.
1070         Add extra pango_font stuff to GfkFontPrivate.
1071         
1072         * gdk/linux-fb/gdkdrawable-fb2.c:
1073         * gdk/linux-fb/gdkfont-fb.c:
1074         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
1075         emulation using PangoFont.
1076
1077 2001-01-17  Havoc Pennington  <hp@pobox.com>
1078
1079         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
1080         all the non-deprecated set_foo functions. Added missing object
1081         properties, and added g_object_notify() to setters. 
1082         Wrote docs.
1083         
1084 2001-01-18  Tor Lillqvist  <tml@iki.fi>
1085
1086         * gtk/gtkmain.c
1087         * gtk/gtkrc.c: (Win32) Use the new
1088         g_win32_get_package_installation_(sub)directory() functions.
1089
1090         * config.h.win32.in: New file.
1091         
1092         * config.h.win32: Removed.
1093
1094         * configure.in: Output config.h.win32.
1095
1096         * Makefile.am: Add it to EXTRA_DIST.
1097
1098         * gtk/gtk.def: Update.
1099
1100 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
1101
1102         * gtk/gtklabel.c (gtk_label_size_request): Set the
1103         attributes onto the PangoLayout even if they are newly
1104         created from label->pattern.
1105
1106 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
1107
1108         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
1109
1110         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
1111         structures in functions. Fixes bug where gtk_dataset_*
1112         was accidentally still being used in one place, causing
1113         every dest side event to be treated independently.
1114
1115         * gtk/gtkdnd.c: Remove last vestages of handling
1116         ::draw (fixes warning)
1117         
1118         * gtk/gtkentry.[ch]: Add drag and drop support.
1119
1120         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
1121         new function gtk_check_drag_threshhold() for checking
1122         to check if (dx,dy) has exceeded the threshhold for starting
1123         a drag and use it everywhere.
1124
1125 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
1126
1127         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
1128         add -I{includedir}/gtk-2.0.
1129
1130         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
1131         gdk/gdk-pixbuf.h: Doc fixups.
1132         
1133         * gtk/gtkobject.h: Remove trailing , from enum
1134
1135 2001-01-17 Alexander Larsson <alexl@redhat.com> 
1136
1137         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
1138         Doh! Mixed up x and y.
1139
1140         * gdk/linux-fb/gdkglobals-fb.c:
1141         Removed gdk_fb_pointer_grab_window_events,
1142         added _gdk_fb_pointer_grab_owner_events and
1143         _gdk_fb_keyboard_grab_owner_events.
1144
1145         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
1146         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
1147         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
1148         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
1149         Send crossing events after ungrab finished.
1150         (gdk_keyboard_grab): Set ..._owner_events
1151         (type_masks): Move out of function.
1152         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
1153         gdk_fb_keyboard_event_window): New functions, return the
1154         window an event should be targeted at. Handles grabs and
1155         event propagation. Can return NULL.
1156         (gdk_event_make): Remove event_mask checking. Now always
1157         returns an event.
1158                 
1159         * gdk/linux-fb/gdkkeyboard-fb.c:
1160         * gdk/linux-fb/gdkproperty-fb.c:
1161         * gdk/linux-fb/gdkselection-fb.c:
1162         Use new event_window/gdk_event_make() behaviour.
1163         
1164         * gdk/linux-fb/gdkmouse-fb.c:
1165         Use new event_window/gdk_event_make() behaviour.
1166         Only send motion events if in the same window.
1167         If grabbed, use cursor from window if sibling of grabbed
1168         window, and cursor from grabbed window otherwise.
1169
1170         * gdk/linux-fb/gdkprivate-fb.h:
1171         Update gdk_fb_window_send_crossing_events, gdk_event_make
1172         and grab varaible declarations. Add gdk_fb_*_event_window().
1173
1174         * gdk/linux-fb/gdkwindow-fb.c:
1175         Use new event_window/gdk_event_make() behaviour.
1176         Keep correct track of focus window.
1177         (gdk_window_set_events): Set all specific button motion masks
1178         if GDK_BUTTON_MOTION_MASK set.
1179
1180         * gtk/gtkdnd.c (gtk_drag_update):
1181         Free info->last_event if gdk_drag_motion returned FALSE.
1182
1183 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1184
1185         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
1186         Eliminate redraws when input-only windows are shown or
1187         hidden. Thanks to jpe@archaeopteryx.com.
1188
1189 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
1190
1191         * docs/faq/gtk-faq.sgml: FAQ update:
1192           - Update to bugzilla
1193           - Add GTK+ and security/SUID/SGID
1194           - Add DnD question
1195
1196 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
1197
1198         * gdk/linux-fb/gdkdnd-fb.c:
1199         Some cleanups.
1200         
1201 2001-01-15  Havoc Pennington  <hp@pobox.com>
1202
1203         * tests/testtreeview.c: add test stuff for CellRendererToggle
1204
1205         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
1206         accessor
1207
1208         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
1209         only toggle on button press (would do release like GtkButton, but
1210         we'd need implicit grab code for treeview cells)
1211
1212 2001-01-16  Tor Lillqvist  <tml@iki.fi>
1213
1214         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
1215
1216         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
1217         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
1218
1219         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
1220         to g_{locale,filename}_{to,from}_utf8 to match current API.
1221
1222         * gtk/makefile.msc.in (gtk_OBJECTS)
1223         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
1224
1225         * gtk/gtk.def: Update.
1226
1227 2001-01-15  Tor Lillqvist  <tml@iki.fi>
1228
1229         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
1230         implementaion that more closely mimics the events that an X server
1231         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
1232         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
1233         with nested preview widgets, for instance, more responsive when
1234         you move the mouse quickly into them.
1235         (find_window_for_pointer_event): Make it actually compile.
1236         (gdk_event_translate): Set send_event to the value of
1237         InSendMessage (). This doesn't really mean the same as X11's
1238         send_event flag, but is close enough, says jpe@archaeopteryx.com
1239
1240 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1241
1242         * gdk/linux-fb/gdkdnd-fb.c:
1243         Implemented drag and drop.
1244         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
1245         when it tries to free and then copy the same event (info->last_event).
1246         I am not sure about why this happens, but will continue looking.
1247
1248 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1249
1250         * gdk/linux-fb/gdkwindow-fb.c:
1251         Use gdk_window_invalidate_rect instead of
1252         gdk_window_invalidate_rect_clear to minimise flashing.
1253         When hiding windows you need to clear the root window though.
1254
1255 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1256
1257         * gdk/linux-fb/gdkdrawable-fb2.c:
1258         For optization, add an full_shapes argument to gdk_fb_clip_region.
1259         If this is false, only the cliprects of the shapes are used.
1260
1261         * gdk/linux-fb/gdkprivate-fb.h:
1262         Export gdk_fb_window_peek_shape.
1263         Add full_shapes to gdk_fb_clip_region.
1264
1265         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1266         When moving a window, don't clear everything under the it, just the
1267         root window. Makes stuff faster and flash less.
1268         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1269         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1270         offset of the shape.
1271         
1272
1273 2001-01-12  Havoc Pennington  <hp@redhat.com>
1274
1275         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
1276         current invalid region, fixes redraw bug while scrolling the 
1277         text widget
1278
1279         * gtk/gtktextview.c, gtk/gtktextview.h:
1280         Rearrange the scrolling/validation/etc. code in a major way, 
1281         so it seems to make sense to me. Probably isn't genuinely that
1282         much better, but...
1283
1284         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1285         notifies
1286
1287         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1288
1289 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
1290
1291         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1292         Hide mouse pointer while rotation. Show it afterwards.
1293
1294 2001-01-12  Alexander Larsson  <alexl@redhat.com>
1295
1296         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1297         windows in consideration when generating clip region.
1298
1299         * gdk/linux-fb/gdkfb.h:
1300         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1301
1302         * gdk/linux-fb/gdkprivate-fb.h:
1303         Add shape to GdkWindowFBDatat.
1304         exported gdk_fb_window_get_abs_shape().
1305         removed gdk_fb_draw_lines declaration.
1306
1307         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1308         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1309         send focus changes when there is a grabbed window.
1310         (gdk_window_get_pointer): Handle shaped windows.
1311         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1312         (gdk_fb_window_peek_shape): Returns the shape for a window,
1313         handles GDK_FB_USE_CHILD_SHAPE.
1314         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1315         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1316         (gdk_window_shape_combine_mask): Implement.
1317
1318         * gtk/gtkwindow-decorate.c:
1319         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1320         setting the shape of a window makes the window transparent.
1321
1322 2001-01-11  Havoc Pennington  <hp@redhat.com>
1323
1324         * gtk/gtktreemodelsimple.h: Oops, broke some macros
1325
1326 2001-01-10  Havoc Pennington  <hp@redhat.com>
1327
1328         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1329         add this function, bug 40251
1330
1331         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1332         of type macro   
1333
1334 2001-01-11  Alexander Larsson  <alexl@redhat.com>
1335
1336         * acconfig.h:
1337         Added ENABLE_SHADOW_FB
1338
1339         * configure.in:
1340         Added --disable-shadowfb
1341
1342         * gdk/linux-fb/gdkcursor-fb.c:
1343         Update shadowfb when updating cursor
1344
1345         * gdk/linux-fb/gdkdrawable-fb2.c:
1346         Added wrappers for shadowfb that calls  the normal drawable
1347         methods, but calls gdk_shadow_fb_update(bounding box) when
1348         GdkWindows are drawed to.
1349         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1350         which also returns the bounding box.
1351
1352         * gdk/linux-fb/gdkfb.h:
1353         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1354
1355         * gdk/linux-fb/gdkgeometry-fb.c:
1356         Update shadowfb when scrolling window.
1357
1358         * gdk/linux-fb/gdkglobals-fb.c:
1359         Add _gdk_fb_screen_angle.
1360         
1361         * gdk/linux-fb/gdkkeyboard-fb.c:
1362         Test code for screen rotation. Shift-F2 in the xlate driver
1363         rotates the screen.
1364
1365         * gdk/linux-fb/gdkmain-fb.c:
1366         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1367
1368         * gdk/linux-fb/gdkmouse-fb.c:
1369         Use fb_width/height instead of modeinfo.xres/yres.
1370
1371         * gdk/linux-fb/gdkprivate-fb.h:
1372         Added fb_men, fb_width, fb_height & fb_stride. When using
1373         shadow fb these can differ from the framebuffer stuff.
1374         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1375         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1376         _gdk_fb_screen_angle. Removed CM, RP.
1377
1378         * gdk/linux-fb/gdkrender-fb.c:
1379         Added code for shadowfb handling and screen rotation using
1380         shadowfb.
1381
1382         * gdk/linux-fb/gdkwindow-fb.c:
1383         Use fb_mem, fb_stride, fb_width, fb_height.
1384         Added recompute_rowstride to reset the rowstride of all windows.
1385         Added gdk_fb_recompute_all() which recomputes rootwindow size,
1386         window abs positions and window rowstrides. Usefull when the
1387         rotation has changed.
1388
1389 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
1390
1391         * docs/faq/gtk-faq.sgml: update to make web site updating easier
1392
1393 2001-01-10  Havoc Pennington  <hp@redhat.com>
1394
1395         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
1396         where sibling == iter
1397         (gtk_tree_store_insert_after): handle sibling == iter
1398         (gtk_tree_store_prepend): remove stamp checks
1399         (gtk_tree_store_insert_before): ditto
1400         (gtk_tree_store_append): ditto
1401         (gtk_tree_store_get_path): ditto
1402         (gtk_tree_store_get_value): ditto
1403         (gtk_tree_store_iter_has_child): ditto
1404         (gtk_tree_store_iter_n_children): ditto
1405         (gtk_tree_store_iter_nth_child): ditto
1406         (gtk_tree_store_insert_after): ditto
1407         (gtk_tree_store_is_ancestor): ditto
1408         (gtk_tree_store_iter_depth): ditto
1409         (gtk_tree_store_insert_before): assert that sibling's parent is
1410         the same as the passed-in parent
1411         (gtk_tree_store_insert_after): assert that sibling's parent is
1412         the same as the passed-in parent
1413
1414         
1415         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
1416         function to get the first iterator in a model
1417         
1418         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
1419         conventionally the "root" in this sense is just NULL afaict.
1420
1421         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
1422         where sibling == iter
1423         (gtk_list_store_insert_after): handle case where sibling == iter
1424
1425         * tests/testtreeview.c (run_automated_tests): fairly lame basic
1426         automated tests for ListStore, TreeStore
1427
1428         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
1429         (gtk_list_store_insert): update tail pointer, and fix it to work
1430         (gtk_list_store_insert_before): update tail pointer, and fix it to work
1431         (gtk_list_store_append): use tail to be faster
1432         (gtk_list_store_prepend): fix it, update tail pointer
1433         (gtk_list_store_insert_after): fix it, update tail pointer
1434
1435         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
1436         the list
1437
1438 2001-01-09  Havoc Pennington  <hp@redhat.com>
1439
1440         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
1441         is NULL due to a pending resize
1442
1443         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
1444         column width to values less than 1
1445
1446         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
1447         width to be between min/max width, and still set the width 
1448         even if autosize is turned on, so the tree view can use this 
1449         function in order to autosize.
1450         (gtk_tree_view_column_init): set initial width to 1 not 0
1451
1452         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
1453         setter function to modify column width, so we get notification
1454         (gtk_tree_view_insert_iter_height): ditto
1455         (gtk_tree_view_calc_size): ditto
1456         (gtk_tree_view_check_dirty): ditto
1457
1458         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
1459         properties to change all the interesting attributes of the tree
1460         view column.
1461         (gtk_tree_view_column_set_header_clickable): rename set_clickable
1462         (gtk_tree_view_column_get_clickable): add
1463         (gtk_tree_view_column_set_cell_renderer): don't unset the current
1464         attributes; assume a cell renderer with equivalent object
1465         properties has been swapped in. Do g_object_notify().
1466         (gtk_tree_view_column_set_visible): g_object_notify
1467         (gtk_tree_view_column_get_sizing): rename from get_col_type
1468         (gtk_tree_view_column_set_sizing): g_object_notify
1469         (gtk_tree_view_column_set_width): add g_object_notify
1470         (gtk_tree_view_column_set_min_width): ditto
1471         (gtk_tree_view_column_set_max_width): ditto
1472         (gtk_tree_view_column_set_title): ditto
1473         (gtk_tree_view_column_set_clickable): ditto
1474         (gtk_tree_view_column_set_widget): ditto
1475         (gtk_tree_view_column_set_justification): ditto
1476
1477 2001-01-09  Havoc Pennington  <hp@redhat.com>
1478
1479         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
1480         there are no rows in the model
1481
1482         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
1483         NULL, then return the start of the list
1484
1485         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
1486         if we can't get any rows from an empty model 
1487
1488         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
1489         extraneous * after function pointer typedef usage
1490
1491         * Makefile.am: don't specify full path to cp and rm
1492
1493         * gtk/gtkcellrenderertextpixbuf.c
1494         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
1495         NULL before dereferencing, fixes a segfault that happened from
1496         time to time
1497
1498         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
1499         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
1500         and reindent the function
1501         (gtk_cell_renderer_pixbuf_get_size): indentation
1502
1503         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
1504         we quit it
1505         (gtk_dialog_add_buttons_valist): add g_return_if_fail
1506         (gtk_dialog_set_default_response): New function, to set default
1507         button
1508         (gtk_dialog_set_response_sensitive): New function, to set 
1509         sensitivity of buttons
1510
1511         * gtk/gtkcellrendererpixbuf.c
1512         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
1513         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
1514
1515         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1516         handle any G_TYPE_OBJECT subclass, not just the base class, and 
1517         also boxed types.
1518         (_gtk_tree_data_list_value_to_node): ditto
1519
1520         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
1521         --gtk-debug=tree
1522
1523         * gtk/gtkmain.c: add GTK_DEBUG_TREE
1524
1525         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
1526
1527 2001-01-09  Tor Lillqvist  <tml@iki.fi>
1528
1529         * gdk/win32/gdkevents-win32.c: Implement better mouse
1530         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
1531         (find_window_for_pointer_event): New function.
1532         (gdk_event_translate): Use it when handling mouse events.
1533
1534 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
1535
1536         * configure.in:
1537         Added --with-included-loaders option
1538
1539         * gdk-pixbuf/Makefile.am:
1540         * gdk-pixbuf/gdk-pixbuf-io.c:
1541         Add support for including selected gdk-pixbuf loaders only.
1542
1543         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
1544         gtk_window_set_has_frame):
1545         Added inline documentation.
1546
1547         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
1548         * docs/reference/gdk/tmpl/windows.sgml:
1549         Added inline documentation.
1550
1551 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
1552
1553         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
1554         realizing buttons that have already been realized.
1555
1556 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
1557
1558         * tests/testtreeview.c (main): Show menu items before adding to
1559         option menu.
1560
1561         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
1562         around if we kill them.
1563
1564         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1565         Return if we pass in a NULL model.
1566
1567 2001-01-08  Havoc Pennington  <hp@redhat.com>
1568
1569         * tests/testtreeview.c: hack on this some
1570
1571         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
1572         gtk_tree_store_set_valist, v is for arrays, valist for varargs
1573         list
1574         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
1575
1576         * gtk/gtkliststore.h: Add varargs set() and get() convenience
1577         functions
1578
1579 2001-01-08  Alexander Larsson  <alexl@redhat.com>
1580
1581         * gtk/gtkwindow-decorate.[hc]:
1582         * gtk/Makefile.am:
1583         New files. Contains an implementation of a minimal WM for
1584         linux-fb.
1585
1586         * gtk/gtkwindow.h:
1587         Add the possibility for GtkWindows to specify a frame. This
1588         is used for the window decoration code, but could concievably
1589         be used for X programs too (xmms style windows).
1590         GtkWindow->frame is the toplevel window if the window is framed.
1591         The signal frame_event gets all events that are targeted to
1592         GtkWindow->frame.
1593         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
1594         
1595         * gtk/gtkwindow.c:
1596         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
1597         Call out to gtkwindow-decorate.c for WM support in linx-fb.
1598
1599 2001-01-08  Alexander Larsson  <alexl@redhat.com>
1600
1601         * docs/README.linux-fb:
1602         Correct filename ~/.pangoft2_aliases
1603
1604         * gdk/gdkwindow.h:
1605         Added new function gdk_window_get_decorations.
1606
1607         * gdk/linux-fb/gdkfb.h:
1608         Removed _gdk_window_get_decorations declaration.
1609         Renamed _gdk_window_set_child_handler to
1610         gdk_fb_window_set_child_handler.
1611
1612         * gdk/linux-fb/gdkwindow-fb.c:
1613         Renamed _gdk_window_set_child_handler to
1614         gdk_fb_window_set_child_handler.
1615
1616         * gdk/x11/gdkwindow-x11.c:
1617         New function gdk_window_get_mwm_hints().
1618         Implemented gdk_window_get_decorations.
1619
1620         * docs/reference/gdk/tmpl/windows.sgml:
1621         * docs/reference/gdk/gdk-sections.txt:
1622         Added gdk_window_get_decorations docs.
1623         
1624 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
1625
1626         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
1627         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
1628         gdk_fb_window_send_crossing_events):
1629         Possibly send focus events when the mouse moves from one
1630         window to another.
1631
1632 2001-01-07  Tor Lillqvist  <tml@iki.fi>
1633
1634         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
1635         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
1636         to match current API.
1637
1638         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
1639         environment variable is set, don't call g_error when on a
1640         palettized (PseudoColor) display. Some people want to use GTK+ 
1641         in 256-colour mode even though works only partially.
1642
1643         * gdk/gdk.def
1644         * gtk/gtk.def
1645         * gtk/makefile.mingw.in: Update.
1646
1647 2001-01-05  Havoc Pennington  <hp@redhat.com>
1648
1649         * tests/testtreeview.c: hack on this a bit
1650
1651         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
1652         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
1653
1654         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
1655         was spelled incorrectly
1656         (GTK_IS_TREE_MODEL_SIMPLE): ditto
1657
1658         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
1659         from gtk_tree_view_set_headers_active   
1660
1661         * gtk/gtktexttag.c:
1662         (gtk_text_tag_get_property): handle PROP_DIRECTION
1663         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
1664         properties, bug 40235
1665
1666         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
1667         forward_to_line_end
1668
1669 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
1670
1671         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
1672         modules/input/gtkimcontextxim.c: Adapt to new prototypes
1673         for unicode,locale,filename conversion functions.
1674
1675 2001-01-05  Havoc Pennington  <hp@redhat.com>
1676
1677         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
1678         broken if called on the first position in the buffer.
1679
1680         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
1681         forward_to_delimiters to be called only if we aren't already at
1682         the delimiters.
1683
1684 2001-01-05  Havoc Pennington  <hp@redhat.com>
1685
1686         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
1687
1688 2001-01-05  Alexander Larsson  <alexl@redhat.com>
1689
1690         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
1691         colormap in here. Sync from X port.
1692         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
1693         Sync from X port.
1694         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
1695         This happens now and then, and i don't think it is a bug.
1696         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
1697         != endpoint.
1698         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
1699         GDK_LINE_SOLID.
1700
1701         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
1702         some of the fields filled in at least.
1703
1704         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
1705         miLineArcD is no more, remove it from the function definition.
1706
1707 2001-01-04  Havoc Pennington  <hp@redhat.com>
1708
1709         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
1710         this
1711
1712         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
1713         user_data instead of tree_node
1714
1715         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
1716         TREE_VIEW_COLUMN_SIZE
1717
1718         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
1719         "size" field to "width" finishes bug 40061
1720
1721         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
1722         for bitfields, bug 40268
1723
1724 2001-01-04  Havoc Pennington  <hp@redhat.com>
1725
1726         Rename some stuff:
1727         
1728         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
1729
1730         s/GtkModelSimple/GtkTreeModelSimple/g;
1731         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
1732         s/gtk_model_simple/gtk_tree_model_simple/g;
1733         s/gtkmodelsimple/gtktreemodelsimple/g;
1734
1735         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
1736
1737         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
1738         s/column_set_col_type/column_set_sizing/g;
1739
1740         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
1741         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
1742
1743         s/GtkCellRendererType/GtkCellRendererState/g;
1744         
1745         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
1746         (gtk_cell_renderer_toggle_class_init): change "state" property to
1747         "active", to match GtkToggleButton
1748         (gtk_cell_renderer_toggle_get_active): new function, bug
1749         40269
1750         (gtk_cell_renderer_toggle_set_active): new function
1751         (gtk_cell_renderer_toggle_set_property): route changes to toggle
1752         state through gtk_cell_renderer_set_active
1753
1754 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
1755
1756         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
1757         temporarily until they work again.  Brought up to date with
1758         changes in the model.
1759         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
1760         model.
1761
1762 2001-01-04  Havoc Pennington  <hp@redhat.com>
1763
1764         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
1765         equal to the line length, then position iterator before paragraph 
1766         separators. Fixes crash reported by Mikael Hermansson when
1767         pressing left arrow from the start of a line.   
1768
1769         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
1770         about byte indexes off the end
1771         (iter_set_from_char_offset): add g_error about char offsets
1772         off the end
1773
1774 2001-01-03  Havoc Pennington  <hp@redhat.com>
1775
1776         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
1777
1778         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
1779         of private functions; remove inclusion of private headers.
1780
1781         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
1782         function, so we don't need private functions in gtktextdisplay.c
1783
1784         * gtk/gtktextiterprivate.h: underscore-ification
1785
1786         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
1787         to instead say "only useful to implement widgets"
1788
1789         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
1790         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
1791         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
1792
1793         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
1794         This function was completely broken
1795
1796         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
1797
1798         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
1799
1800         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
1801
1802         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
1803
1804         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
1805
1806         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
1807
1808         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
1809         gtk_paint_layout
1810
1811         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
1812         gtk_paint_layout
1813
1814         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
1815         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
1816         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
1817         which were not implemented.     
1818
1819         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
1820         insert_pixbuf signal. Rename delete_text to delete_range since it
1821         also deletes pixbufs and child anchors. This almost closes bug
1822         40245 (still need to deal with child anchors)
1823
1824         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
1825         insert_pixbuf, change signal names as appropriate, change types of
1826         signals taking marks/tags to have the specific type, not just
1827         G_TYPE_OBJECT
1828         
1829         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
1830         closes bug 40051
1831
1832         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
1833         unnecessary remove_contents() call
1834         (gtk_option_menu_class_init): add a "changed" signal, closes
1835         bug 40039
1836         (gtk_option_menu_update_contents): emit "changed" if the 
1837         active menu item changes
1838
1839         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
1840         cast to GtkObject, reported by Jonas Borgstrom
1841         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
1842         we can't do stuff with side effects in finalize. Instead, spew a
1843         warning if the loader isn't closed.
1844
1845         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
1846         colormap in here, non-X ports probably need to sync to this change
1847
1848         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
1849         assertion that colormap != NULL, you can set the colormap to NULL
1850         if you like.
1851         
1852         * Makefile.am: remove gtk-config-2.0
1853
1854         * configure.in: Use pkg-config to locate GLib. Remove
1855         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
1856         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
1857         Use pkg-config to locate Pango. Output correct Pango libs to
1858         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
1859
1860         * Makefile.am (pkgconfig_DATA): install only target-specific pc
1861         files
1862         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
1863         X11 pc files
1864
1865         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
1866         unref from here
1867
1868 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
1869
1870         * configure.in:
1871         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
1872
1873 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1874
1875         * gtk/gtktextlayout.c
1876         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
1877         variable when moving back onto a single line.
1878
1879 2001-01-01  Havoc Pennington  <hp@redhat.com>
1880
1881         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1882
1883         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1884
1885         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
1886         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
1887
1888 2001-01-01  Havoc Pennington  <hp@redhat.com>
1889
1890         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
1891
1892         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
1893         GtkTextAttributes
1894
1895         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
1896         #40246
1897         (gtk_text_attributes_copy_values): rename from 
1898         gtk_text_attributes_copy
1899         (gtk_text_attributes_copy): a more standard GTK copy function, 
1900         which returns a new object
1901
1902 2001-01-01  Havoc Pennington  <hp@redhat.com>
1903
1904         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
1905         
1906         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
1907         don't fill in tree_view->priv->selection, kind of an unexpected
1908         side effect
1909
1910         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
1911         gtkintl.h
1912         
1913         * gtk/gtkcellrenderer.c: Remove definition of _ and include
1914         gtkintl.h
1915         (gtk_cell_renderer_get_property): remove calls to g_value_init
1916
1917         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
1918         gtkintl.h
1919
1920         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
1921         and include gtkintl.h
1922         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
1923         property names
1924
1925         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
1926         GtkTreeSelection
1927         (_gtk_tree_selection_new_from_with_view): rename, return
1928         GtkTreeSelection
1929         (_gtk_tree_selection_set_tree_view): rename with uscore
1930         (gtk_tree_selection_get_selected): fill in the "model" out param
1931         first, so it gets filled in even if we return at the top of the 
1932         function
1933         (gtk_tree_selection_real_select_all): add a comment and an else{}
1934         to clarify this a bit
1935         (gtk_tree_selection_real_unselect_all): add the same else{}
1936
1937         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
1938         set_tree_view to have underscore prefixes, move them to the
1939         private header, fix return type of new_with_tree_view
1940         (struct _GtkTreeSelection): mark struct
1941         fields private  
1942
1943         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
1944         GtkTreeModelFlags, not a guint
1945         (gtk_tree_path_prev): return gboolean not gint
1946         (gtk_tree_path_up): return gboolean not gint
1947
1948         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
1949         return GtkTreeModelFlags, not a guint
1950
1951         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
1952         that child model is non-null before unrefing it
1953         (g_value_int_compare_func): make this a qsort compare func, not 
1954         a boolean predicate
1955
1956         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
1957         (add -umn to the end), and mark it unimplemented
1958         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
1959         I don't see what it's for - doesn't the model always sort itself?
1960         (gtk_tree_model_sort_set_compare): this had the wrong signature
1961
1962         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
1963         Fix the docs to say that it destructively replaces existing
1964         attributes (previously said that it added attributes).
1965         (gtk_tree_view_column_set_visible): canonicalize bool before
1966         equality testing. Also, check for realization before
1967         hiding/showing the tree_column->window; if this window could exist
1968         before realization, then it's busted and needs fixing, we can't 
1969         create GDK resources pre-realization. Also, remove
1970         superfluous queue_resize(), since set_size() does that for us.
1971         (gtk_tree_view_column_set_col_type): check realization before 
1972         using tree_column->window
1973
1974         * gtk/gtktreedatalist.c: fix filename in copyright notice
1975
1976 2000-12-31  Havoc Pennington  <hp@pobox.com>
1977
1978         * gtk/gtktextview.c: Rearrange all the
1979         scroll-while-dragging-or-selecting code to be different, not
1980         necessarily better. ;-)
1981         (gtk_text_view_scroll_to_mark): Change this
1982         function to take within_margin as a fraction instead of a pixel
1983         value, and to take alignment arguments (indicating where to align 
1984         the mark inside the visible area)
1985         
1986         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
1987         to GtkObject
1988
1989         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
1990         behavior so that offsets past the end of the line are not 
1991         allowed, and an offset equal to the line length moves the iterator
1992         to the next line
1993         (gtk_text_iter_set_line_index): make parallel change
1994         (gtk_text_iter_get_bytes_in_line): add this function
1995         
1996         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
1997         of byte indexes off the end of the line; byte index at the end of
1998         the line now returns FALSE and doesn't fill in the requested
1999         values, byte index past the end of the line is an error.  Also,
2000         don't allow -1 offset anymore, since its meaning is unclear.
2001
2002         This change exposes some bug in visual cursor motion, where we
2003         end up with a huge invalid byte index; needs fixing. Symptom of 
2004         bug is a crash when you hit up arrow.
2005         
2006         (_gtk_text_line_char_locate): match the change to byte_locate
2007
2008         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
2009         from start of line properly. fixes bug reported by Mikael
2010         Hermansson where backspace would delete all text before the
2011         cursor.
2012
2013 2000-12-30  Tor Lillqvist  <tml@iki.fi>
2014
2015         * gdk/win32/gdkwindow-win32.c
2016         (gdk_window_impl_win32_get_visible_region): New function, as in
2017         the X11 backend.
2018         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
2019         instead of duplicating the same code here.
2020
2021         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
2022         GDK_COLORMAP macro.
2023
2024         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
2025         destroy function.
2026         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
2027         access that.
2028
2029         * gtk/gtk.def: Update.
2030
2031         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
2032
2033 2000-12-30  Havoc Pennington  <hp@pobox.com>
2034
2035         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
2036         colormap on input only windows, to avoid special cases all over
2037         the code for these windows.
2038
2039 2000-12-26  Tor Lillqvist  <tml@iki.fi>
2040
2041         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
2042         we are on a palettized display ("PseudoColor" in X11), as the code
2043         for that doesn't work anyway, and never has.
2044
2045 2000-12-22  Alexander Larsson  <alexl@redhat.com>
2046
2047         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
2048         Don't use isprint() for chars > 255.
2049
2050 2000-12-21  Havoc Pennington  <hp@redhat.com>
2051
2052         * tests/testtreeview.c: more work
2053
2054 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2055
2056         * docs/README.linux-fb:
2057         Update the docs to the new pangoft2 way.
2058
2059 2000-12-21  Alexander Larsson  <alexl@redhat.com>
2060
2061         * configure.in:
2062         For linux-fb get the pangoft2 cflags and libs. This needs a recent
2063         pango version.
2064         Remove modules/linux-fb/Makefile.
2065
2066         * gdk/linux-fb/gdkdrawable-fb2.c:
2067         Render glyphs using freetype.
2068
2069         * gdk/linux-fb/gdkfb.h:
2070         Add new fb-specific functions needed for managing windows.
2071
2072         * gdk/linux-fb/gdkmain-fb.c:
2073         Remove gdk_font_init/fini() calls.
2074
2075         * gdk/linux-fb/gdkpango-fb.c:
2076         Remove old implementation. Use pangoft2 instead.
2077
2078         * gdk/linux-fb/gdkprivate-fb.h:
2079         Remove PangoFBFont and related stuff.
2080
2081         * gdk/linux-fb/gdkwindow-fb.c:
2082         Implement drawable->get_visible_region.
2083         Implement support for _gdk_window_set_child_handler () and
2084         _gdk_window_get_decorations().
2085
2086         * modules/Makefile.am:
2087         Remove linux-fb subdir.
2088
2089         * modules/linux-fb/*:
2090         Removed all.
2091         
2092 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
2093
2094         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
2095         calls, as they are no longer needed.
2096
2097         * gtk/gtktreemodelsort.c: Fix up the comparison code.
2098         
2099         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
2100         figure out how to emit a signal on an interface.
2101
2102 2000-12-20  Havoc Pennington  <hp@redhat.com>
2103
2104         * tests: new directory to contain tests, gtk/test* should move
2105         here sometime (with appropriate on-cvs-server hackery)
2106
2107         * tests/testtreeview.c, tests/Makefile.am: a test
2108         
2109         * configure.in (AC_OUTPUT): add tests/Makefile
2110
2111         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
2112         and "invisible_set" which were missing
2113
2114         * gtk/gtkrbtree.h: some cheesy indentation fix
2115         
2116 2000-12-20  Alexander Larsson  <alexl@redhat.com>
2117
2118         * gtk/gtkinvisible.c (gtk_invisible_realize):
2119         Attach the style to the window so that the style it is not
2120         leaked when unrealizing the window.
2121
2122 2000-12-18  Havoc Pennington  <hp@redhat.com>
2123
2124         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
2125         begin/end user action where appropriate
2126         (gtk_text_view_commit_handler): add begin/end user action
2127
2128         * gtk/gtktextbuffer.c: add begin/end user action signals, and
2129         bracket interactive operations with begin/end user action pair.
2130         
2131         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
2132         "interactive" arg from insert_text and delete_text signals.
2133         Add begin_user_action, end_user_action signals
2134         (gtk_text_buffer_begin_user_action): 
2135         (gtk_text_buffer_end_user_action): New functions to delimit 
2136         a user-visible action
2137
2138         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
2139         signals.
2140         
2141 2000-12-18  Havoc Pennington  <hp@redhat.com>
2142
2143         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
2144         was pretty non-working.
2145
2146         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
2147         by passing the length to g_utf8_validate().
2148
2149 2000-12-16  Havoc Pennington  <hp@pobox.com>
2150
2151         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
2152         Port to GObject, can go back in gdk-pixbuf after setting up 
2153         a gdk-pixbuf-marshal.h header over there.
2154
2155         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
2156         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
2157         args
2158         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
2159         set
2160         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
2161         here, do it when we create the buttons later
2162         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
2163         (gtk_tree_view_map): paranoia checks that column->button is shown 
2164         and unmapped
2165         (gtk_tree_view_size_request): only request visible children.
2166         Move header size calculation in here, for cleanliness, and 
2167         to maintain invariants for child widgets if we eventually 
2168         let users set different children inside the buttons
2169         (gtk_tree_view_map_buttons): factor out code to map buttons,
2170         since it was being called several times
2171         (gtk_tree_view_size_allocate_buttons): move_resize the drag
2172         windows instead of just moving them; their height may change 
2173         if we allow random widgets in there, or the theme changes.
2174         (gtk_tree_view_size_allocate): move button size allocation 
2175         above emitting the scroll signals, to ensure a sane state when we
2176         hit user code
2177         (gtk_tree_view_button_release): remove queue_resize after
2178         tree_view_set_size(), set_size() will handle any resize queuing
2179         that's needed
2180         (gtk_tree_view_focus_in): just queue a draw, don't fool with
2181         draw_focus goo
2182         (gtk_tree_view_focus): use gtk_get_current_event() and
2183         gdk_event_get_state()
2184         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
2185         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
2186         semicolon
2187         (gtk_tree_view_create_button): show the button here
2188         (gtk_tree_view_button_clicked): actually emit the clicked signal
2189         on the column
2190         (_gtk_tree_view_set_size): return right away if the size is
2191         unchanged, as a cheesy optimization
2192         (gtk_tree_view_setup_model): rename set_model_realized to 
2193         setup_model to match the flag that indicates whether we've 
2194         called it
2195         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
2196         exist, because set_scroll_adjustment does that and it shouldn't
2197         matter what order you call these in
2198         (gtk_tree_view_get_vadjustment): ditto
2199         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
2200         for paranoia
2201         (gtk_tree_view_set_headers_visible): call
2202         gtk_tree_view_map_buttons() instead of using cut-and-paste code
2203         (gtk_tree_view_append_column): clarify whether the return value
2204         is the count of columns before or after, and do the increment 
2205         separately from the return statement so you can tell from the code.
2206         (gtk_tree_view_remove_column): ditto
2207         (gtk_tree_view_insert_column): ditto
2208         (gtk_tree_view_get_column): remove g_return_if_fail for columns
2209         outside the existing range, the docs say that outside-range
2210         columns are allowed, so we handle them as documented. (Presumably
2211         this allows a nice loop with column != NULL as test.)
2212         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
2213         mean (left/right/center etc.).
2214         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
2215         (gtk_tree_view_expand_row): add docs
2216         (gtk_tree_view_collapse_row): add docs
2217
2218         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
2219         function to emit the clicked signal on a column
2220         
2221         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
2222         state of an event
2223         (gdk_event_get_time): don't treat GDK_SCROLL 
2224         as a button event, remove default case from switch so gcc 
2225         will whine if we don't explicitly handle all event types
2226
2227         * gtk/gtktreeselection.h: added some FIXME 
2228         
2229         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
2230         "columns" to "n_columns" and "column" to "columns" for clarity
2231
2232 2000-12-16  Havoc Pennington  <hp@pobox.com>
2233         
2234         * gtk/gtktextiter.c: General cleanup of the log attr iteration
2235         stuff. This should make e.g. the delete key work again in the
2236         text widget...
2237         (gtk_text_iter_forward_cursor_positions): handle negative count
2238         (gtk_text_iter_backward_cursor_positions): handle negative count
2239         (gtk_text_iter_forward_word_ends): handle negative count
2240         (gtk_text_iter_backward_word_starts): handle negative count
2241
2242         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
2243         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
2244         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
2245         GObject. No doubt will cause breakage.
2246
2247         * demos/gtk-demo/textview.c: remove hacks around
2248         non-GObject-ification of the text objects
2249
2250         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
2251         the text tag
2252         
2253 2000-12-14  Havoc Pennington  <hp@pobox.com>
2254
2255         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2256         that we have Xrender
2257
2258 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
2259
2260         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2261         Add two virtualized functions gdk_drawable_get_clip_region - to
2262         get the clip region when drawing.
2263         
2264         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2265         use invalidate_region.
2266
2267         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2268         region.
2269
2270         * acconfig.h configure.in: Check for Xft. For now, assume
2271         that if Xft is found, Pango was compiled with Xft support
2272         as well.
2273
2274         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
2275         gdk_colormap_query_color().
2276         
2277         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2278         with Xft if appropriate.
2279
2280         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2281         a pangoxft context if we have XFT and the environment
2282         variable GD_USE_XFT is set.
2283         
2284         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2285         and also possibly an XftDraw structure.
2286
2287         * gtk/gtkfontsel.c: Handle the case where the font from the
2288         style doesn't match any of the fonts a bit better.
2289         
2290         * gtk/testgtk.c: Add tabs between directional segments for
2291         hebrew/arabic test. (Not really necessary, just a little
2292         prettier.)
2293
2294 2000-12-14  Havoc Pennington  <hp@redhat.com>
2295
2296         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2297         reading a file
2298
2299 2000-12-14  Havoc Pennington  <hp@redhat.com>
2300
2301         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2302         unused call to get_last_line()
2303
2304         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2305         here until boxed is working (and maybe after that - we should
2306         really not gratuitously break old code)
2307
2308         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2309         specific types for font_desc and tabs args, move them to
2310         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
2311         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2312
2313         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2314         use GTK_TYPE_POINTER for signal signatures as a hack-around
2315
2316         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2317         PangoTabArray
2318
2319         * gtk/gtktextlayout.c (line_display_iter_to_index): 
2320         make static
2321         (line_display_index_to_iter): make static
2322
2323         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2324         to marshal a string not a boxed
2325
2326         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2327
2328         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2329         since the UTF-8 isn't validated yet
2330
2331         * gtk/gtktextsegment.c (char_segment_check_func): don't require
2332         lines to end in '\n'
2333         
2334         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2335         forward_to_delimiters, and grapheme boundaries
2336         (gtk_text_view_delete_from_cursor): properly handle non-newline
2337         delimiters, and grapheme boundaries
2338
2339         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2340         to gtk_text_iter_forward_to_delimiters, and make it work properly
2341         if empty lines end with a character other than '\n'
2342
2343         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2344         position
2345
2346 2000-12-15  Tor Lillqvist  <tml@iki.fi>
2347
2348         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2349
2350         * gtk/gtk.def
2351         * gdk/gdk.def: Update.
2352
2353         * gdk/win32/gdkmain-win32.c
2354         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2355         gdkmain-win32.c here.
2356
2357         * gdk/win32/makefile.mingw.in (all): No need to make
2358         gdk-win32res.o here, the makefile one step up will call us to make
2359         it.
2360
2361         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2362         gdkkeys-win32.
2363
2364         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2365
2366         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2367         call to g_source_add().
2368
2369         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2370         leak. Thanks to Andreas Kemnade.
2371
2372 2000-12-13  Havoc Pennington  <hp@pobox.com>
2373
2374         * gtk/gtktextbtree.h: Remove double _ in front of some functions
2375
2376         * gtk/gtktext*.[hc]: update accordingly
2377         
2378 2000-12-13  Havoc Pennington  <hp@pobox.com>
2379
2380         * gtk/gtktextbtree.h: Put _ in front of every function in this 
2381         header file
2382
2383         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2384
2385 2000-12-13  Alex Larsson  <alexl@redhat.com>
2386
2387         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2388         Add support for ps2 intellimouse.
2389
2390         * gdkkeyboard-fb.c:
2391         Move shift-F1 repaint handling to xlate handler only.
2392         
2393         * docs/README.linux-fb:
2394         Add imps2 to docs.
2395         Document the new refresh keys.
2396         
2397 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
2398
2399         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
2400
2401         * gtk/gtkbox.c: change property types from (u)long to (u)int for
2402         ::position and ::padding.
2403
2404         * gtk/gtkcontainer.c: make ::border_width an INT property.
2405
2406         * gtk/gtkpacker.c: make ::position an INT property.
2407
2408         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2409         guard against NULL h/v scrollbars, since this is used at construction
2410         time.
2411
2412         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
2413         internal gtk_clist_constructor().
2414
2415         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
2416         gtk_ctree_constructor().
2417
2418         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
2419         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
2420
2421         * docs/reference/Makefile.am: fun stuff, disabled docs generation
2422         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
2423
2424         * gtk/gtkwidget.[hc]:
2425         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
2426         and gtk_widget_get().
2427         (gtk_widget_new): use g_object_new_valist().
2428         (gtk_widget_set): use g_object_set_valist().
2429
2430         * gtk/gtkobject.[hc]:
2431         removed gtk_object_arg_get_info(), gtk_object_getv(),
2432         gtk_object_query_args(), gtk_object_newv(),
2433         gtk_object_class_add_signals(),
2434         gtk_object_class_user_signal_new(),
2435         gtk_object_class_user_signal_newv(),
2436         gtk_object_arg_set(), gtk_object_arg_get(),
2437         gtk_object_args_collect(),
2438         gtk_object_default_construct(),
2439         gtk_object_constructed(),
2440         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
2441         removed nsignals, signals and n_args members from GtkObjectClass.
2442         (gtk_object_new): use g_object_new_valist().
2443         (gtk_object_set): use g_object_set_valist().
2444         (gtk_object_get): use g_object_get_valist().
2445         
2446         * gtk/gtkcompat.h: define gtk_object_default_construct().
2447         
2448         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
2449         g_object_new().
2450
2451         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
2452         fucntions, cleaned up method assignments (make sure your structures
2453         are setup properly before calling out). removed all GTK_CONSTRUCTED
2454         hacks ;)
2455
2456 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
2457
2458         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
2459         off-by-one error in checks. (Dave Lambert)
2460
2461 2000-12-12  Alexander Larsson  <alexl@redhat.com>
2462
2463         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
2464         Don't free gdk_fb_keyboard twice.
2465
2466 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
2467
2468         * gtk/testgtk.c:
2469         (create_tooltips): 
2470         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
2471         use GObject swapped_signal:: properties instead.
2472
2473         * gtk/gtkcellrenderertoggle.c: 
2474         * gtk/gtkcellrenderertextpixbuf.c: 
2475         * gtk/gtkcellrenderertext.c: 
2476         * gtk/gtkcellrendererpixbuf.c: 
2477         * gtk/gtkcellrenderer.c:
2478         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
2479         missing warnings for invalid property ids, install properties
2480         with g_object_class_install_property() now.
2481         
2482         * gtk/gtksignal.c:
2483         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
2484         
2485 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
2486         
2487         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
2488         to determine if a window is the focus widget within
2489         its toplevel.
2490
2491         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
2492         to be boolean.
2493
2494         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
2495         of the case where the container CAN_FOCUS to here instead
2496         of having it in each individual move-the-focus place.
2497
2498         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
2499         focusing to be geometric in a much more obvious sense. Arrowing
2500         around is still non-intuitive because it isn't perfect and
2501         because entries, etc, grab the arrow keys, but it at least
2502         usually will do what you expect now.
2503         
2504         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
2505         file.
2506
2507         * gtk/gtknotebook.c: Change tabs to be a single item in
2508         the focus chain. Make movement of focus on tabs with arrow
2509         keys wrap around.
2510         
2511         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
2512         CHECK_FIND_CHILD macro to give informative error messages
2513         instead of silent returns.
2514
2515         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
2516         flag since we handle GdkReturn on the tabs.
2517
2518         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
2519         windows rather than sending expose events directly.
2520
2521         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
2522         definition for GtkNotebookPage into .c file, since it is private.
2523
2524         * gtk/testgtk.c (create_notebook): Add option for 
2525         testing borderless notebook.
2526
2527         * gtk/testgtk.c (page_switch): Removed egregious poking
2528         around in GTK+ internals.
2529
2530         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
2531
2532         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
2533         properly through gtk_clist_focus. Make the title headers a
2534         single item in the tab-focus chain, and make left-right wrap
2535         around.
2536
2537         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
2538         focus method so that wrapping around works properly.
2539
2540         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
2541         that is handled for the widget now. 
2542
2543 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
2544
2545         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
2546         widgets as TOPLEVEL.
2547
2548         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
2549         TOPLEVEL widgets are containers.
2550
2551         * gtk/gtkinvisible.h: Remove useless include.
2552
2553 2000-12-11  Havoc Pennington  <hp@redhat.com>
2554
2555         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
2556         Handle chopping off \r\n and 0x2029 in addition to \n before
2557         passing to PangoLayout
2558
2559         * gtk/gtkimcontextsimple.c
2560         (gtk_im_context_simple_get_preedit_string): 
2561         return an empty string if no match is pending
2562
2563         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
2564         assertion that the returned preedit string was sane
2565
2566         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
2567         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
2568         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
2569
2570 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
2571
2572         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
2573         Fix up finalizer to chain to its parent.
2574
2575 2000-12-11  Alexander Larsson  <alexl@redhat.com>
2576
2577         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
2578         Clearified the difference between the keyboard types. Wrote a note
2579         about the magic sysrq key to get out of raw mode.
2580
2581 2000-12-09  James Henstridge  <james@daa.com.au>
2582
2583         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
2584         member to hold masks for detecting the start of a protocol packet.
2585         (mouse_devs): add packet start masks for ps2 and ms device types.
2586         Left the mask for fidmour blank, as I have no idea what it should
2587         be.
2588         (handle_mouse_io): skip bytes until we get to the start of a
2589         packet.  My Logitech mouse seems to be passing an extra NULL pad
2590         byte, and GPM does a similar thing here.
2591         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
2592         this is the ms mouse driver.
2593         (gdk_fb_mouse_ms_packet): fix up button handling, which was
2594         completely broken except for button1.  It was checking the wrong
2595         bit in the packet for the status of the right mouse button, and
2596         wrongly assuming right == button2 rather than 3.  I fixed that and
2597         also added support for middle button (button2).
2598
2599 2000-12-08  Havoc Pennington  <hp@redhat.com>
2600
2601         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
2602         that cause a segfault on text insertion
2603
2604         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
2605         warning
2606
2607         * gtk/gtktextiter.c (test_log_attrs): use
2608         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
2609
2610         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
2611         Get log attrs for a line, using a cache stored on the buffer
2612         
2613         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
2614         reported by Jeff Franks
2615
2616 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2617
2618         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
2619         /dev/ttyS0 -> /dev/mouse
2620
2621 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2622
2623         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
2624         Added dummy gdk_fontset_load.
2625
2626 2000-12-08  Alexander Larsson  <alexl@redhat.com>
2627
2628         * docs/README.linux-fb:
2629         * docs/Makefile.am:
2630         Initial GtkFB docs.
2631         
2632         * gdk/linux-fb/Makefile.am:
2633         Define GDK_DATA_PREFIX.
2634
2635         * gdk/linux-fb/gdkmain-fb.c:
2636         Fix typo.
2637         Change default display to /dev/fb0.
2638
2639         * gdk/linux-fb/gdkpango-fb.c:
2640         Add $(prefix)/share/fonts/ to font path.
2641         
2642 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2643
2644         * gdk/linux-fb/gdkkeyboard-fb.c:
2645         New file containing the abstracted keyboard driver. Most code
2646         taken from gdkinput-ps2.c
2647
2648         * gdk/linux-fb/gdkinput-ps2.c:
2649         Removed file.
2650         
2651         * gdk/linux-fb/Makefile.am:
2652         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
2653
2654         * gdk/linux-fb/gdkcolor-fb.c:
2655         display->fb was renamed to display->fb_fd.
2656
2657         * gdk/linux-fb/gdkcursor-fb.c:
2658         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2659
2660         * gdk/linux-fb/gdkinput.c:
2661         Moved gdk_input_init here from gdkinput-ps2.c
2662
2663         * gdk/linux-fb/gdkmain-fb.c:
2664         display->fb was renamed to display->fb_fd.
2665         Now the tty and the console is opened here instead
2666         of in the keyboard driver. Also check GDK_VT to see what
2667         tty to open.
2668         Move gdk_beep () here from gdkinput-ps2.c
2669         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2670
2671         * gdk/linux-fb/gdkmouse-fb.c:
2672         Add header.
2673         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2674         Return correct keyboard modifiers.
2675         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
2676
2677         * gdk/linux-fb/gdkprivate-fb.h:
2678         Add tty and vt info to display.
2679         Add orignal modeinfo storage to display
2680         Update global functions
2681
2682         * gdk/linux-fb/gdkwindow-fb.c:
2683         Added gdk_fb_window_find_focus().
2684         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2685
2686 2000-12-07  Havoc Pennington  <hp@pobox.com>
2687
2688         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
2689         function, noticed by Alex
2690
2691 2000-12-06  Elliot Lee  <sopwith@redhat.com>
2692
2693         * configure.in: Detect freetype properly
2694
2695         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
2696         above.
2697
2698 2000-12-06  Alexander Larsson  <alexl@redhat.com>
2699
2700         * gdk/linux-fb/Makefile.am:
2701         Add gdkmouse-fb.c
2702         
2703         * gdk/linux-fb/gdkmouse-fb.c:
2704         New file. Abstracted the mouse drivers a bit.
2705
2706         * gdk/linux-fb/gdkcursor-fb.c:
2707         The cursor hide/show functions was moved here from gdkinput-ps2.c.
2708
2709         * gdk/linux-fb/gdkinput-ps2.c:
2710         Removed old mouse handling code. Moved cursor handling code
2711         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
2712         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
2713         gdk_mouse_get_info.
2714
2715         * gdk/linux-fb/gdkmain-fb.c:
2716         Pass NULL pointers for x,y in gdk_mouse_get_info call.
2717
2718         * gdk/linux-fb/gdkprivate-fb.h:
2719         Removed public gdk_fb_find_common_ancestor, added and renamed
2720         functions for the new mouse handling code.
2721
2722         * gdk/linux-fb/gdkwindow-fb.c:
2723         Moved gdk_fb_window_send_crossing_events here. added global
2724         variable gdk_fb_window_containing_pointer. made
2725         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
2726         renamed to gdk_mouse_get_info.
2727
2728 2000-12-06  Alexander Larsson  <alexl@redhat.com>
2729
2730         * gdk/linux-fb/gdkevents-fb.c:
2731         Update to match latest gmain/gsource changes.
2732
2733         * gdk/linux-fb/gdkinput-ps2.c:
2734         Bogus gdk_keymap_get_entries_for_keycode implementation so that
2735         it links. Will be implemented later.
2736
2737 2000-12-03  Havoc Pennington  <hp@pobox.com>
2738
2739         * gdk/Makefile.am: add gdkkeys.[hc]
2740
2741         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
2742         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
2743
2744         * acconfig.h, configure.in: add checks and command line options
2745         for XKB
2746
2747         * gdk/x11/gdkkeys-x11.c: Implement the above functions
2748         
2749         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
2750         and group in the key event
2751
2752         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
2753         field with the low-level hardware key code, and a group
2754         field with the keyboard group
2755
2756         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
2757         and declare a couple globals used for keymap handling
2758         
2759         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
2760         hold down Shift-Control and type a hex number to get a Unicode 
2761         character corresponding to the hex number
2762         (gtk_im_context_simple_get_preedit_string): Fix cursor position
2763         (return bytes not chars)
2764
2765 2000-12-05  Elliot Lee  <sopwith@redhat.com>
2766
2767         * gdk/gdkcolor.h: Make GdkColor specify element sizes
2768         to avoid waste on 64-bit platforms.
2769
2770 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
2771
2772         * INSTALL: Fix link to PNG home, remove reference
2773         to fribidi.
2774
2775         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
2776         
2777         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
2778         tested.)
2779
2780         * gtk/gtkcheckmenuitem.c: Permanently turn on
2781         always_show_toggle.
2782
2783         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
2784         be NULL. (Vladimir Klebanov, #26545)
2785
2786         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
2787         some signed/unsigned comparison problems. (#6510,
2788         David Kaelbling)
2789
2790         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
2791         return type to boolean (Oskar Liljeblad, #18648)
2792
2793 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2794
2795         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
2796         Remove bogus colormap setting.
2797
2798 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2799
2800         * gdk/linux-fb/gdkcolor-fb.c:
2801         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
2802
2803         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
2804         Must set colormap.
2805         
2806 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
2807
2808         * docs/tutorial/gtk-tut.sgml: DND updates
2809
2810 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
2811
2812         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2813         Remove old debug g_warning().
2814         (gdk_fb_draw_drawable): The src argument can be either a wrapper
2815         or an implementation, just pass the implementation to draw_drawable_2.
2816         
2817         * gdk/linux-fb/gdkprivate-fb.h:
2818         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
2819
2820         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2821         clear and invalidate area when window is destroyed.
2822         (send_map_events): Remove old commented out code.
2823
2824 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2825
2826         * gdk/linux-fb/gdkpango-fb.c:
2827         Use italic instead of oblique in font aliases.
2828         
2829         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
2830         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
2831         other unsupported functions.
2832
2833 2000-12-04  Havoc Pennington  <hp@redhat.com>
2834
2835         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
2836
2837         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
2838
2839         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
2840
2841         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
2842         hack to avoid infinite loops (synthetic expose event) - 
2843         Owen has more appropriate fixes in a branch he'll check in later.
2844
2845         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
2846         separator, CR, and CRLF as line ends
2847
2848         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
2849         into lines using pango_find_paragraph_boundary(); other bits of
2850         the widget are still going to be broken if the boundary isn't '\n'
2851         though
2852
2853 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2854
2855         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
2856         multiply.
2857
2858         * gdk/linux-fb/gdkpango-fb.c:
2859         Copied some 26.6 scaling macros from pango to clean up the rounding.
2860         (pango_fb_font_get_glyph_info): Correct sign on x value.
2861
2862         * gdk/linux-fb/gdkprivate-fb.h:
2863         Removed unreferenced external functions.
2864
2865         * modules/linux-fb/Makefile.am: Use ` instead of '.
2866
2867         * modules/linux-fb/basic.c:
2868         Remove dead code. In particular the dummy lang engine which broke all
2869         pango layouts in GtkFB. Don't include tables-big.i anymore.
2870
2871         * modules/linux-fb/tables-big.i:
2872         Upgrade to latest version from pango. Left for reference, basic_ranges
2873         moved to basic.c.
2874         
2875 2000-12-04  Havoc Pennington  <hp@redhat.com>
2876
2877         Fix bugs Alex found:
2878         
2879         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
2880         to "draw"
2881
2882         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
2883
2884         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
2885
2886         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
2887         implementation in here, apparently the expose() implementation was
2888         dead code.
2889
2890 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2891
2892         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
2893         Return positive descent.
2894
2895 2000-12-02  Havoc Pennington  <hp@pobox.com>
2896
2897         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
2898         method and signal
2899         
2900         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
2901         calls gdk_window_process_updates() to push the exposes through
2902         (gtk_widget_class_init): No more draw signal, no
2903         gtk_widget_real_draw()  
2904         
2905         * gtk/gtkbin.c (gtk_bin_draw): remove
2906
2907         * gtk/gtkbox.c (gtk_box_draw): remove
2908
2909         * gtk/gtkbutton.c (gtk_button_draw): remove
2910
2911         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
2912
2913         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
2914
2915         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
2916
2917         * gtk/gtkclist.c (gtk_clist_draw): remove
2918
2919         * gtk/gtkentry.c (gtk_entry_draw): remove
2920
2921         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
2922
2923         * gtk/gtkfixed.c (gtk_fixed_draw): remove
2924
2925         * gtk/gtkframe.c (gtk_frame_draw): remove
2926
2927         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
2928
2929         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
2930
2931         * gtk/gtklayout.c (gtk_layout_draw): remove
2932
2933         * gtk/gtklist.c (gtk_list_draw): remove
2934
2935         * gtk/gtklistitem.c (gtk_list_item_draw): remove
2936
2937         * gtk/gtkmenu.c (gtk_menu_draw): remove
2938
2939         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
2940
2941         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
2942
2943         * gtk/gtknotebook.c (gtk_notebook_draw): remove
2944
2945         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
2946
2947         * gtk/gtkpacker.c (gtk_packer_draw): remove
2948
2949         * gtk/gtkrange.c (gtk_range_draw): remove
2950
2951         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
2952
2953         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
2954
2955         * gtk/gtktable.c (gtk_table_draw): remove
2956
2957         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
2958
2959         * gtk/gtktext.c (gtk_text_draw): remove
2960
2961         * gtk/gtktextview.c (gtk_text_view_draw): remove
2962
2963         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
2964
2965         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
2966
2967         * gtk/gtktree.c (gtk_tree_draw): remove
2968
2969         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
2970
2971         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
2972
2973         * gtk/gtkviewport.c (gtk_viewport_draw): remove
2974
2975         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
2976
2977         * gtk/gtkvscale.c (gtk_vscale_draw): remove
2978
2979         * gtk/gtkwindow.c (gtk_window_draw): remove
2980
2981 2000-20-01  Anders Carlsson  <andersca@gnu.org>
2982
2983         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
2984         a GtkToggleButton is both insensitive and active, it was being
2985         drawn by the GtkButton draw handler which doesn't check the
2986         state. Now it's calling gtk_toggle_button_paint instead.
2987         
2988 2000-12-01  Havoc Pennington  <hp@redhat.com>
2989
2990         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
2991         dangling pointers to the appearance attributes from the 
2992         line display
2993
2994         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
2995         width/height to mean "full width/height of drawable"
2996
2997         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
2998         click to select word/line
2999         
3000         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
3001         when getting log attrs. Get a slice, so that pixmaps and stuff
3002         are properly handled.
3003
3004         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
3005         paste into the selection (replaces selection now, previously
3006         crashed or added to selection). Reveals longstanding btree bug -
3007         select multiple lines, middle-click on the selection, boom. This
3008         isn't related to my changes though.
3009
3010         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
3011         PangoLogAttrs changes
3012         (gtk_entry_move_backward_word): ditto
3013
3014         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
3015         functions return bool whether the iter moved onto a
3016         dereferenceable position.
3017  
3018         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
3019         functions for motion in terms of display lines.
3020
3021         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
3022         get the buffer a mark is inside
3023         
3024 2000-12-01  Alexander Larsson  <alexl@redhat.com>
3025
3026         * gdk/linux-fb/Makefile.am:
3027         * modules/linux-fb/Makefile.am:
3028         Freetype 2 final uses freetype-config
3029
3030         * gdk/linux-fb/gdkpango-fb.c:
3031         Upgrade to use Freetype 2 final.
3032         More flexible support for font aliases, this also fixes a bug with
3033         GtkFontSelector, as the aliases must be visible in the font/family list,
3034         or GtkFontSelector reads uninitialized memory.
3035
3036 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
3037
3038         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
3039         XGetIMValues to properly terminate variable argument list, and do
3040         NULL return check for ic_values and xim_styles.
3041
3042         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
3043         Restore preedit state after XmbResetIC().
3044         
3045         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
3046         XvaCreateNestedList() should take XvaNestedList, but not
3047         XvaNestedList*.
3048
3049         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
3050         preedit_draw_callback, preedit_caret_callback): Match
3051         "preedit-changed" signal name to "preedit_changed" to be
3052         consistent to the spec.
3053
3054         * gtk/gtkimcontextsimple.c (check_table):
3055         Match "preedit-changed" to "preedit_changed" to be consistent
3056         to the spec.
3057
3058 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
3059
3060         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
3061         gc->clip_region == NULL>
3062
3063 2000-11-30  Tor Lillqvist  <tml@iki.fi>
3064
3065         Changes by Hans Breuer:
3066         
3067         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
3068         Dont't use negative width and height as max_hints. This fixes
3069         Owen's recent testgtk changes for win32.
3070
3071         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
3072         gdk_win32_hdc_release): These are exported and may be called with
3073         other drawable types than our GdkDrawableImplWin32 (?).
3074
3075         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
3076         so always #define USE_BACKING_STORE.
3077
3078         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
3079         of printf for debugging output.
3080
3081         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
3082         
3083         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
3084
3085         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
3086         declaration.
3087
3088         * gtk/gtktexttypes.h: Ditto.
3089
3090         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
3091         (GDK_VoidSymbol) also if in case of arg check failure.
3092
3093         * gtk/gtkimcontextsimple.c
3094         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
3095         position to the pointer, but to the variable it points to.
3096
3097         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
3098
3099         * gtk/gtk.def: Updates.
3100
3101 2000-11-29  Elliot Lee  <sopwith@redhat.com>
3102
3103         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
3104         GTK_TYPE_TREE_MODEL.
3105
3106 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3107
3108         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
3109         Set the size of the font from the description.
3110         (gdk_text_width): Gross hack that calculates the width
3111         of text by text_length * size/2. This is necessary because
3112         GtkLabel does some ugly gtk_string_width call to calculate
3113         an good size.
3114         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
3115
3116 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
3117
3118         * docs/tutorial/gtk-tut.sgml: DND updates
3119
3120 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3121
3122         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3123         If you pass width or height == 0 to gdk_window_clear_area they
3124         should be calculated from the window size.
3125
3126 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3127
3128         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
3129         a grab, but no grab-cursor, use the cursor from the grabbed
3130         window. (gdk_fb_window_send_crossing_events): Send normal
3131         enter/leave notifications if grab and owner_events == TRUE.
3132
3133 2000-11-29  Alexander Larsson  <alexl@redhat.com>
3134
3135         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3136         Do implicit button grabs, even if the window doesn't
3137         want the event.
3138         (gdk_fb_window_send_crossing_events): If there is a
3139         grab, only the grabbed window gets normal enter/leave
3140         notifications. On ungrab go from grabbed window to current.
3141         Don't send any notification to b when propagating from c -> b.
3142         If setting a grab on window, don't set prev_window.
3143         (handle_mouse_input): Send enter/leave events to the window the
3144         mouse is over, not the grabbed one.
3145         
3146 2000-11-28  Elliot Lee  <sopwith@redhat.com>
3147
3148         * gdk/gdkregion-generic.c: Zap warning.
3149         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
3150         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
3151
3152 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
3153
3154         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3155         The cursor should be hidden if it is part of either the
3156         source or destination region. Not only if it is in both.
3157         (gdk_window_set_transient_for): Silence warnings.
3158
3159 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3160
3161         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
3162         The default mode in X is Pie Arcs, therefore that is
3163         what Gtk+ uses.
3164
3165 2000-11-28  Alexander Larsson  <alexl@redhat.com>
3166
3167         * gdk/linux-fb/gdkinput-ps2.c:
3168         Implement correct EnterNotify/LeaveNotify:
3169         (gdk_fb_window_send_crossing_events): New function that sends
3170         all GdkCrossingEvents from the last mouse-window to the specified
3171         destination.
3172         (gdk_fb_window_visibility_crossing): Removed function.
3173         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
3174         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
3175         instead of gdk_window_get_pointer() for better readability.
3176
3177         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
3178         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
3179
3180         * gdk/linux-fb/gdkprivate-fb.h:
3181         removed gdk_fb_window_visibility_crossing, added
3182         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
3183
3184         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
3185         New function that finds the least common ancestor of two windows.
3186         (gdk_window_show, gdk_window_hide):
3187         Use gdk_fb_window_send_crossing_events.
3188         (gdk_fb_window_move_resize): Send configure events to toplevel
3189         windows. Use gdk_fb_window_send_crossing_events.
3190
3191 2000-11-27  Havoc Pennington  <hp@redhat.com>
3192
3193         * gtk/gtkprivate.h (enum): Remove a trailing comma
3194
3195 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
3196
3197         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
3198         the "changed" callback of the adjustment.  We need to redraw the
3199         spin button's arrows when the adjustment's range changes.
3200         (adjustment_changed_cb): Draw the arrows.
3201         (gtk_spin_button_value_changed): Draw the arrows.
3202
3203 2000-11-23  Alexander Larsson  <alexl@redhat.com>
3204
3205         * gdk/linux-fb/gdkselection-fb.c:
3206         Initial selection implementation.
3207
3208         * gtk/gtkselection.c:
3209         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
3210         requestor in gtk_selection_request.
3211         
3212         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
3213         Added gdk_selection_property atom.
3214
3215         * gdk/linux-fb/gdkprivate-fb.h:
3216         Export _gdk_selection_window_destroyed.
3217         Removed mask_off_x/y from GdkCursorPrivateFB.
3218         Removed hbearing, added top, left to PangoFBGlyphInfo.
3219
3220         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
3221         Call _gdk_selection_window_destroyed
3222         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
3223         the root window has been created.
3224         (static_dx_hack, static_dy_hack, compare_draw_rects,
3225         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
3226         in region. They are already sorted. Instead just traverse them in
3227         reverse if draw_direction < 0.
3228         
3229         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
3230         Double-clicks must be sent after the normal button_press.
3231         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
3232         
3233         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
3234         Pass _gdk_fb_screen_gc instead of NULL.
3235
3236         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3237         Initialize gdk_selection_property.
3238         (gdk_event_make): Remove unused code.
3239
3240         * gdk/linux-fb/gdkcursor-fb.c:
3241         Make the pixmap for the cursor the same size as the mask. Also remove
3242         the mask_off_x/y fields in GdkCursorPrivateFB and combine
3243         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
3244         Now the whole cursor is visible.
3245
3246         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
3247         Fix bug where xdest+height instead of ydest+height was used
3248         to calculate if the source and dest overlapped. This fixes the
3249         redraw bug when the main window in testgtk was scrolled when
3250         partially covered by a tall window.
3251         Copy rectangles in region in order depending on draw_direction.
3252         Also moved the draw_direction flipping of start_y and end_y into
3253         the gc functions, as this might not be what all of them want.
3254         (gdk_fb_draw_lines): Support dashed lines.
3255         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3256         so that the text is positioned correctly (was 1 pixel high).
3257
3258         gdk/linux-fb/gdkgc-fb.c:
3259         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3260         all lines were drawn a pixel to short. Also checked the default of
3261         the rest of the values, and they're the same as X now.
3262
3263         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3264         Clean up pixel positioning of the glyphs. Just use bgy->top and
3265         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3266         to all divisions to get correct rounding behaviour.
3267
3268         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3269         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3270         Moved start_y/end_y flip into draw_drawable implementations.
3271         Flip also x rendering when draw_direction < 0.
3272         Remove unneccesary multiply with draw_direction.
3273
3274 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
3275
3276         * docs/tutorial/gtk-tut.sgml:
3277           - get rid of gtk_toggle_button_toggled FUD
3278           - start DND section - needs work - based on:
3279                 http://wolfpack.twu.net/docs/gtkdnd/
3280
3281 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3282
3283         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3284         Correct calculation of font metrics. Now GtkEntrys have sane
3285         size.
3286
3287 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3288
3289         * gdk/gdktypes.h:
3290         Add new type GdkSpan
3291         
3292         * docs/reference/gdk/gdk-sections.txt,
3293         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3294         gdk/gdkregion.h:
3295         Implement and document gdk_region_spans_intersect_foreach.
3296
3297         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3298         Add new file gdkrender-fb.c which contains all core
3299         rendering code.
3300         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3301         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3302         (optimized rectangle fillers).
3303
3304         * gdk/linux-fb/gdkdrawable-fb2.c:
3305         Move all rendering code to gdkrender-fb.c.
3306         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3307         Use the new span intersection functions in gdk_fb_fill_spans.
3308         gdk_fb_draw_rectangle() clips filled rectangles and calls
3309         gc->fill_rectangle with the result.
3310         gdk_fb_fill_spans() gets extra argument "sorted".
3311
3312         * gdk/linux-fb/gdkevents-fb.c:
3313         Remove unused includes and defines.
3314         New function gdk_fb_get_time() to get correct time for events.
3315
3316         * gdk/linux-fb/gdkinput-ps2.c:
3317         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3318         Make sure to set the time of all events.
3319
3320         * gdk/linux-fb/gdkmain-fb.c:
3321         Use gdk_fb_get_time ().
3322
3323         * gdk/linux-fb/gdkprivate-fb.h:
3324         New virtual GC calls: fill_span & fill_rectangle.
3325         Export gdk_fb_get_time().
3326         gdk_fb_fill_spans() gets extra argument "sorted".
3327
3328         * gdk/linux-fb/mi*.c:
3329         Use GdkSpan instead of GdkRectangle.
3330         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3331         from XFree 4 source)
3332         
3333 2000-11-22    <jrb@redhat.com>
3334
3335         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3336         reversing the order in an if statement will do.  Doing so managed
3337         to make the treemodelsort half work.  Other half will follow after
3338         I get the insert function fully fixed.
3339
3340 2000-11-21  Elliot Lee  <sopwith@redhat.com>
3341         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3342         more than 2 bits. Besides, I need to implement an evil hack. :)
3343
3344 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
3345
3346         * docs/tutorial/gtk-tut.sgml: minor corrections
3347
3348 2000-11-20  Jonathan Blandford <jrb@redhat.com>
3349         * gtk/gtktreemodelsort.h: Add convertion functions to let you
3350           convert to and from relative path's and iters.
3351
3352         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
3353           testing sorting functions a bit better.  Currently broken -- will
3354           fix in morning.
3355
3356 2000-11-20  Havoc Pennington  <hp@redhat.com>
3357
3358         * gtk/gtkwidget.c: Documented a bunch of functions in here
3359         (gtk_widget_realize): Warn if you try to realize
3360         a widget with no parent that isn't a toplevel
3361         (gtk_widget_intersect): return a gboolean
3362
3363 2000-11-20  Havoc Pennington  <hp@redhat.com>
3364
3365         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3366         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3367         scrolling to be implemented in GDK to finish. Also, right now
3368         we just size_allocate all children on every layout change,
3369         which is pretty lame. Test commented out of testtext.c, 
3370         until it works better.
3371
3372 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
3373
3374         * gdk/linux-fb/gdkdrawable-fb2.c:
3375         Removed unused arguments from gdk_fb_drawable_get_pixel().
3376
3377         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3378         Renamed fidur specific mouse packet data in MouseDevice to
3379         generic. Used it in ps2 mouse handling code to avoid blocking
3380         reads.
3381
3382 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
3383
3384         * demos/gtk-demo/main.c: Changed to have the list become
3385         non-italic when the demo window is destroyed through an external
3386         event (like a close button).  Doing so found three bugs in the
3387         widget.
3388
3389         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
3390
3391         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
3392         we actually set the cell.
3393
3394         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
3395
3396         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
3397         free a leaked path.  Thanks memprof.
3398
3399 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
3400
3401         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
3402         off-by-one error when destroying allocated segments
3403         on failure. (Elliot)
3404
3405 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
3406
3407         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
3408         memleaks found by Evan Martin.
3409
3410 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
3411
3412         * Released 1.3.2
3413         
3414         * NEWS: Updates for 1.3.2
3415
3416 2000-11-17  Tor Lillqvist  <tml@iki.fi>
3417
3418         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
3419         but in general for window system specific events.
3420
3421         * gtk/gtk.def
3422         * gtk/makefile.mingw.in
3423         * gtk/makefile.msc.in: Update.
3424         
3425         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
3426
3427 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
3428
3429         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
3430         distribute gtk.immodules.
3431
3432         * gtk/Makefile.am (install-data-local): Don't install the
3433         gtk.immodules file created for the uninstalled modules;
3434         instead run gtk-query-immodules after install
3435
3436 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
3437
3438         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
3439         -rpath to the right install location.
3440
3441         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
3442         -export-dynamic.
3443
3444         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
3445         properly.
3446
3447 2000-11-15  Havoc Pennington  <hp@pobox.com>
3448
3449         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
3450         patch from Mikael Hermansson to temporarily stop blinking while
3451         the user is using the keyboard to type or navigate. 
3452
3453         Also, when blinking, stay on for longer than we stay off. Also,
3454         return from start_cursor_blink if !cursor_visible, to save
3455         checking that flag all over the place before we call
3456         start_cursor_blink.
3457
3458 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
3459
3460         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
3461         only contain a "fontset" line, which is now ignored.
3462
3463         * gtk/gtkentry.c (gtk_entry_button_release): Make 
3464         double-click-to-select-word work.
3465         
3466 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
3467
3468         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
3469         Don't move back one char when we are actually at the end of the 
3470         paragraph.
3471
3472 2000-11-15  Robert Brady  <robert@suse.co.uk>
3473
3474         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
3475         'o' < 'p'.
3476         
3477         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
3478         bind_textdomain_codeset.
3479
3480         (gtk_init_check): Make the warning about translating default:LTR
3481         sterner.
3482         
3483 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
3484
3485         * **/Makefile.am : remove unecessary rules for win32-specific
3486         config-substituted targets. If you want these rules, use
3487         --enable-maintainer-mode (called automatically by autogen.sh).
3488         Stops a lot of unneccessary make-time warnings.
3489
3490         * gtk/gtktext{layout,display}.c: Factor in total width as
3491         well as screen when figuring alignment for word-wrap as well as
3492         no wrap; this is necessary to handle lines that cannot be wrapped
3493         at all.
3494
3495 2000-11-15  Havoc Pennington  <hp@redhat.com>
3496
3497         * gtk/testtext.c: Implement essential color cycling feature
3498
3499 2000-11-15  Havoc Pennington  <hp@redhat.com>
3500
3501         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
3502         when we invalidate the main window.
3503
3504         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
3505         GtkTextView will now invalidate the side windows for us when text
3506         changes.
3507
3508 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
3509
3510         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
3511         unconditionally, since we may need to update the horizontal
3512         scrollbars even if the height didn't change.
3513
3514         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
3515         the extra attrs, since some of them affect size.
3516
3517         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
3518         x_offset correctly.
3519
3520 2000-11-15  Havoc Pennington  <hp@redhat.com>
3521
3522         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
3523         don't move the first line out into the margin, instead move the
3524         whole paragraph in order to make space for the first line within 
3525         the margin
3526
3527 2000-11-15  Havoc Pennington  <hp@redhat.com>
3528
3529         * gtk/gtktextview.c (changed_handler): offset redraw rect by
3530         xoffset in addition to yoffset, so horizontal scrolling doesn't
3531         break redraws
3532
3533 2000-11-15  Havoc Pennington  <hp@redhat.com>
3534
3535         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
3536         from the cursor
3537         (render_layout_line): fix reversed test that caused weird
3538         underlines to get drawn
3539
3540 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
3541
3542         * gdk/linux-fb/gdkprivate-fb.h:
3543         Fix debug macros.
3544         
3545 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
3546
3547         * gdk/linux-fb/gdkprivate-fb.h:
3548         Added virtual functions set_pixel, get_color,
3549         fill_span and draw_drawable to the GC.
3550         Added global _gdk_fb_screen_gc to use instead of
3551         NULL when drawing to the screen.
3552         Added _gdk_fb_gc_calc_state() prototype.
3553
3554         * gdk/linux-fb/gdkgc-fb.c:
3555         Call _gdk_fb_gc_calc_state() on any gc state change.
3556
3557         * gdk/linux-fb/gdkglobals-fb.c:
3558         Add _gdk_fb_screen_gc
3559                 
3560         * gdk/linux-fb/gdkdrawable-fb2.c:
3561         _gdk_fb_gc_calc_state() calculates best functions
3562         for the GC state and depth.
3563         Moved bpp specialized code to separate functions.
3564         Added optimized 24 bpp AA draw_drawable.
3565
3566         * gdk/linux-fb/gdkevents-fb.c:
3567         Silence gcc warning.
3568
3569         * gdk/linux-fb/gdkimage-fb.c:
3570         Use _gdk_fb_screen_gc
3571
3572         * gdk/linux-fb/gdkwindow-fb.c:
3573         Init and use _gdk_fb_screen_gc
3574
3575         * gdk/linux-fb/mitypes.h:
3576         Remove unused types.
3577
3578 2000-11-14  Havoc Pennington  <hp@pobox.com>
3579
3580         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
3581         to pixels
3582
3583 2000-11-14  Havoc Pennington  <hp@pobox.com>
3584
3585         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
3586
3587         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
3588         unknown char, no real reason we were using a variable. 
3589         Remove gtk_text_unknown_char variable. Fix all the text widget
3590         files accordingly.
3591
3592         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
3593         since the Unicode spec seems to prefer that character for our
3594         purposes.
3595
3596 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
3597
3598         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
3599         value of g_getenv() isn't freeable, so g_strdup it.
3600
3601         * modules/input/inuktitut.c: Inuktitut input method.
3602
3603         * modules/input/Makefile.am: Build this.
3604         
3605 2000-11-14  Elliot Lee  <sopwith@redhat.com>
3606
3607         * gtk/Makefile.am: Install gtk.immodules, needed for operation
3608         of gtk programs.
3609
3610 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
3611
3612         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
3613         reversed > that was causing Home to go to end of previous line.
3614
3615         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
3616         modified-keypresses (leave for bindings.)
3617
3618         * modules/input/Makefile.am: Remove useless -export-dynamic
3619         from module LDFLAGS.
3620
3621 2000-11-14  Havoc Pennington  <hp@redhat.com>
3622
3623         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
3624         higher.
3625
3626         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
3627         account. Also, render rise, underline, background, etc. for
3628         pixbufs as well as text. Also, draw underlines one pixel higher.
3629
3630         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
3631         PangoAttribute for the rise, so it gets drawn properly. Also,
3632         add the GtkTextAppearance attribute for pixbuf/widget segments
3633         as well; we should go ahead and have rise, underline, background,
3634         stipple work for those
3635
3636         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
3637         Pango
3638
3639 2000-11-15  Tor Lillqvist  <tml@iki.fi>
3640
3641         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
3642
3643         * gtk/gtk.def: Update.
3644
3645         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
3646         included.
3647         (gtk_rc_get_im_module_file): Use run-time installation directory
3648         on Win32.
3649
3650         * gdk/win32/rc/gdk.rc: Remove.
3651         * gdk/win32/rc/gdk.rc.in: New file.
3652         * gdk/win32/rc/Makefile.am: New file
3653         * gdk/win32/Makefile.am: Corresponding changes.
3654
3655         * gtk/gtk.rc: Remove.
3656         * gtk/gtk-win32.rc.in: New file.
3657         * gtk/Makefile.am: Corresponding changes.
3658
3659         * configure.in: Corresponding changes.
3660
3661         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
3662         has a built gtkcompat.h. Developers using CVS code on Win32 can
3663         hand-edit it from gtkcompat.h.in.
3664
3665         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
3666         gtkcompat.h from gtkcompat.h.win32.
3667
3668 2000-11-14  Havoc Pennington  <hp@redhat.com>
3669
3670         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
3671         to default to GDK_ACTION_MOVE if the drag is within a single
3672         widget. Defaults to GDK_ACTION_COPY between widgets.
3673
3674 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
3675
3676         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
3677
3678         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
3679
3680         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
3681         srcdir != builddir
3682
3683         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
3684
3685         * configure.in (GTK_VERSION): Up to 1.3.2
3686
3687         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
3688         gtkimcontextxim.h
3689
3690         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
3691         missing doc comment.
3692
3693 2000-11-14  Alexander Larsson  <alexl@redhat.com>
3694
3695         * modules/linux-fb/basic.c:
3696         Use the glib iconv wrappers.
3697
3698 2000-11-13  Havoc Pennington  <hp@pobox.com>
3699
3700         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
3701         still more bugs.
3702
3703         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
3704         scroll the GdkWindows before realization.
3705
3706 2000-11-13  Havoc Pennington  <hp@redhat.com>
3707
3708         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
3709         where GC didn't always get updated properly
3710
3711         * demos/gtk-demo/textview.c (create_tags): Use subattributes
3712         of fonts instead of setting the entire font
3713
3714         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
3715         setting entire font
3716
3717         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
3718
3719         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
3720         a bunch of individually-settable font attributes. You can still 
3721         use the "font" and "font_desc" args, they just set all the font
3722         attributes at once.
3723
3724 2000-11-13 Elliot Lee <sopwith@redhat.com>
3725
3726         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
3727
3728 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
3729
3730         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
3731         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
3732
3733         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
3734         work better.
3735
3736 2000-11-13  Havoc Pennington  <hp@redhat.com>
3737
3738         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
3739         the module file.
3740
3741         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
3742         dest->language
3743
3744         * gtk/testtext.c: Test pixels above/below/inside paragraphs
3745         settings
3746
3747         * gtk/gtktextview.c: Implement object args and setters/getters for
3748         all the aspects of the GtkTextAttributes that are not set from
3749         GtkWidget attributes. This is spacing, justification, margins,
3750         etc.
3751
3752         (gtk_text_view_set_arg)
3753         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
3754         args
3755         (gtk_text_view_class_init): Add args for justify, left_margin,
3756         right_margin, indent, and tabs
3757         
3758
3759         * gtk/gtktextlayout.c (set_para_values): fix to display indent
3760         attribute properly
3761
3762         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
3763         replace with indent attribute
3764
3765         * gtk/gtktextlayout.c (set_para_values): multiply indent by
3766         PANGO_SCALE
3767
3768         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
3769         rearranging code to do that
3770         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
3771         i.e. don't subtract the top_margin first, just to keep
3772         all margin-futzing in one place.
3773
3774         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
3775
3776         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
3777         special case of last line, Pango now handles this itself.
3778         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
3779         Y coordinate
3780         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
3781         (find_display_line_above): wasn't moving the byte index as it
3782         iterated over lines, so always returned byte 0. Also, port to use
3783         PangoLayoutIter.
3784         (find_display_line_below): same problem as
3785         find_display_line_above. Also, port to use PangoLayoutIter.
3786
3787 2000-11-13  Alexander Larsson  <alexl@redhat.com>
3788
3789         * gdk/linux-fb/*.[ch]:
3790         Massive reindent to gtk+ standard. My hands hurt.
3791
3792         * gdk/linux-fb/gdkcolor-fb.c:
3793         Move GdkColorPrivateFB from inherited to windowing_data
3794
3795         * gdk/linux-fb/gdkcursor-fb.c:
3796         _gdk_cursor_new_from_pixmap made static
3797
3798         * gdk/linux-fb/gdkdnd-fb.c:
3799         GdkDragContextPrivate moved to windowing_data
3800
3801         * gdk/linux-fb/gdkdrawable-fb2.c:
3802         Removed endian.h, use glib endianness macros instead
3803         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
3804         and GDK_DRAWABLE_IMPL_FBDATA
3805
3806         * gdk/linux-fb/gdkfont-fb.c:
3807         Add empty gdk_font_load(). Needed for linking of Gtk+.
3808
3809         * gdk/linux-fb/gdkimage-fb.c:
3810         Removed endian.h, use glib endianness macros instead
3811         Moved GdkImagePrivateFB to windowing_data
3812         gdk_image_new_bitmap didn't always allocate enough
3813         memory.
3814
3815         * gdk/linux-fb/gdkinput-ps2.c:
3816         Added semi-working support for MS serial mice.
3817
3818         * gdk/linux-fb/gdkprivate-fb.h:
3819         s/GdkWindowPrivate/GdkWindowObject/
3820         Removed GdkWindowPrivate typedef
3821         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
3822         Removed GDK_DRAWABLE_P
3823         Move GdkColorPrivateFB from inherited to windowing_data
3824         Moved GdkImagePrivateFB to windowing_data
3825
3826         * gdk/linux-fb/gdkvisual-fb.c:
3827         Removed some unused debug code.
3828
3829         * gdk/linux-fb/gdkwindow-fb.c:
3830         Use stock cursors instead of including X headers.
3831         s/GdkWindowPrivate/GdkWindowObject/
3832
3833         * gdk/linux-fb/mitypes.h:
3834         Removed unused types.
3835
3836         * modules/linux-fb/basic.c:
3837         Use the pango fribidi wrappers.
3838
3839 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3840
3841         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
3842         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
3843         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
3844         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
3845         GEqualFunc where applicable.
3846         
3847         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
3848         pango_font_description_equal as changed in pango.
3849         
3850         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
3851
3852         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
3853
3854         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
3855
3856         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
3857
3858         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
3859
3860         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
3861
3862         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
3863         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
3864
3865         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
3866         gtk_rc_styles_compare -> gtk_rc_styles_equal.
3867
3868 2000-11-12  Havoc Pennington  <hp@pobox.com>
3869
3870         * demos/gtk-demo/Makefile.am (democodedir): change demo install
3871         dir to datadir/gtk+-2.0/demo
3872
3873         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
3874         sorts of text widget and Pango font bugs. Urgh.
3875
3876         * demos/gtk-demo/Makefile.am (demos): Add textview.c
3877
3878         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
3879         tree that you should double click to see the demo. Fix 
3880         types of variables to reflect changed return values from 
3881         GtkTreeStore and GtkTreeViewColumn constructors.
3882
3883         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
3884         newly-created buffer to prepare for GObject semantics
3885
3886         * gtk/testtext.c: don't leak the buffer with GObject semantics
3887
3888         * gtk/testtextbuffer.c: ditto
3889         
3890 2000-11-12  Havoc Pennington  <hp@pobox.com>
3891
3892         Rename this testgtk to gtk-demo to avoid confusion, and 
3893         install it so people can use it as a supplement to 
3894         the documentation.
3895         
3896         * demos/gtk-demo: Moved from demos/testgtk
3897
3898         * demos/testgtk: Removed
3899
3900         * configure.in: make Makefile in gtk-demo
3901         
3902         * demos/gtk-demo/Makefile.am: Install sample source to 
3903         datadir/gtk-demo (maybe there's a better place?), and 
3904         rename the binary to gtk-demo
3905         
3906         * demos/gtk-demo/main.c (load_file): Load installed sample
3907         source if source isn't found in pwd.
3908
3909 2000-11-09  Havoc Pennington  <hp@pobox.com>
3910
3911         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
3912         argument to set the char displayed when visibility == FALSE
3913         (gtk_entry_create_layout): If !entry->visible, replace 
3914         all chars with the "invisible char"
3915
3916         * gtk/testgtk.c: Test the invisible_char deal
3917         
3918 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
3919
3920         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
3921         can't get a native font in the right encoding.
3922
3923 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
3924
3925         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
3926         respectively.
3927
3928 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
3929
3930         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3931         Fix warning when moving between paragraphs.
3932
3933         * gtk/gtkentry.[ch]: Change move => move_cursor, 
3934         delete => delete_from_cursor, insert => insert_at_cursor
3935
3936 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
3937
3938         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
3939
3940         * modules/input/imthai-broken.c: A Thai input method for use if
3941         Thai keys are really generating Latin1 keysyms.
3942
3943         * modules/input/Makefile.am: Build these.
3944
3945 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
3946
3947         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
3948         g_filename_{to,from}_utf8 now takes an extra parameter.
3949
3950         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
3951         strftime into UTF-8.
3952
3953         (column_from_x, gtk_calendar_paint_day_names): Support RTL
3954         calendars.
3955
3956         (gtk_calendar_paint_day_names): Draw day names in the right 
3957         place.
3958         
3959 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
3960
3961         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
3962         problem with using result of g_get_charset() backwards -
3963         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
3964
3965         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
3966         negative min_width/height and max_width/height to
3967         mean "requisition"; this allows setting a window
3968         to be user-resizable in only one direction easily.
3969
3970         * gtk/testgtk.c (create_main_window): Remove hard-coded
3971         usize - set a default size in the vertical direction.
3972
3973 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
3974
3975         * gtk/gtkrange.c: Add some missing casts. Support 
3976         2 and 3 button clicks on the arrows to mean 
3977         "move by pages" and "jump to end". (Like gtkspinbutton)
3978
3979 2000-11-12 Hans Breuer <Hans@Breuer.Org>
3980
3981         * gdk/win32/makefile.msc : reflect build module changes
3982
3983         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
3984         from GdkPixmap*, cast implementation member instead.
3985
3986         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
3987         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
3988         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
3989         more Gdi functions return value checking. 
3990         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
3991         GdkImagePrivateWin32 *.
3992
3993         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
3994         menus useable again. Add #pragma message to keep reminded on this issue.
3995         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
3996         windows. This allows to enable backing store on Win32!
3997
3998         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
3999         in drawable is of impl type. Correct specific type checks appropriate.
4000  
4001         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
4002         GDK_WINDOW_DESTROYED before allocating new resources.
4003
4004         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
4005
4006         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
4007         (gdk_window_foreign_new) initialize parent handle.
4008         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
4009
4010         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
4011         Let the GDI invalidate the window on MoveWindow call to fix scrolling
4012         problems (e.g. main buttons in testgtk). 
4013
4014 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
4015
4016         * gtk/gtkentry.c (gtk_entry_key_press): Call 
4017         gtk_widget_activate for GDK_Return.
4018
4019         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
4020         of preedit cursor position.
4021
4022 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
4023
4024         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
4025         static.
4026
4027 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
4028
4029         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
4030         out support for multiple locales; that simple doesn't
4031         work reliably with current Xlib
4032
4033         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
4034         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
4035         Add support for positioning the cursor within the preedit string.
4036
4037 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
4038
4039         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
4040         at XIM input method module.
4041
4042         * gtk/gtktextview.c: Check for bindings after passing
4043         events to im context filter.
4044
4045 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
4046
4047         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
4048         empty attribute lists properly.
4049
4050 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
4051
4052         * gtk/queryimmodules.c (main): Return non-zero exit
4053         status if errors were encountered querying any
4054         modules.
4055
4056         * modules/input/Makefile.am (moduledir): remove
4057         leftover bin program target.
4058
4059         * docs/make-todo: Fix typo in error message.
4060
4061 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
4062
4063         * configure.in: Add modules/input/Makefile
4064
4065 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
4066
4067         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
4068         don't include gtkthemes.h.
4069
4070         * gtk/testgtk.c gtk/testtext.c: Set environment variables
4071         to point
4072
4073         * gtk/Makefile.am: Add new .c and .h files, build 
4074         gtk-query-immodules and use it to create a gtk.immodules
4075         file for use of test programs.
4076
4077         * gtk/gtkpreview.c: remove extra blank line.
4078
4079 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
4080
4081         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
4082         Add the ability to add extra tables beyond the default
4083         one, and also the ability to have compose sequences 
4084         that are prefixes of other compose sequences. 
4085
4086         * gtk/gtkimcontextsimple.c: Export a preedit string which
4087         consists of possible candidates for keystrokes that have
4088         been entered but not yet committed.
4089
4090         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
4091         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
4092
4093         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
4094         Add a function to add input-method switching menu items
4095         to a menu.
4096
4097         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
4098         when switching input methods.
4099
4100         * gtk/gtkimcontextsimple.[ch]: Change the format of
4101         the compose table to allow compose tables of different
4102         lengths / sequence.
4103
4104 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
4105
4106         * gtk/gtkimmodule.[ch]: Support routines for loading
4107         GtkIMContext implementations dynamically at runtime.
4108
4109         * modules/input/imcyrillic-translit.c: A sample input
4110         method (based on GtkIMContextSimple with an extra table),
4111         which demonstrates preedit strings and the module
4112         system for input modules
4113
4114         * gtk/queryimmodules.c: Program to query the available
4115         input modules and write the results into a file.
4116          
4117         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
4118         extra config options "im_module_file" (cache file for
4119         input method modules), and "im_module_path" - path
4120         to look for modules when generating cache file.
4121
4122         This doesn't scale.
4123
4124 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
4125
4126         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
4127         generic code from gtkthemes into a new abstraction
4128         GtkModule which has the logic for implementing
4129         a loadable module which implements a number of 
4130         GObject types.
4131
4132 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
4133
4134         * gtk/gtkeditable.[ch]: Convert GtkEditable from
4135         a class into an interface  
4136         
4137         * gtk/gtkoldeditable.[ch]: Move the old editable
4138         implementation into here, so legacy widgets can
4139         still rely on the implemenation. GtkOldEditable
4140         exports GtkEditable. Make selection handling
4141         code use new text conversion functions (and
4142         handle UTF-8 as a side-effect). Use GtkClipboard
4143         for CLIPBOARD.
4144
4145         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
4146         Adopt to match above changes.
4147
4148         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
4149         avoid GtkOldEditable implementation. Restructure
4150         to reduce number of places that modify state directly.
4151         Move to GtkBindingSet. Display the preedit string.
4152         Queue recomputation of PangoLayout and scroll position
4153         to improve effiency of doing complex changes naively.
4154         Add a menu with cut/copy/paste and input method selection.
4155
4156 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
4157
4158         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
4159         to set preedit string and attributes; display preedit string by
4160         inserting string and attributes at cursor when creating the
4161         GtkTextLineDisplay.
4162
4163         * gtk/gtktextlayout.c: Move all conversions between byte
4164         positions in PangoLayout and GtkTextIter into new functions
4165         line_display_iter_to_index/index_to_iter that properly
4166         handle the preedit string.
4167
4168         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
4169         it to return const char * (eventually will end up
4170         as GCONST char *, most likely.)
4171
4172         * gtk/gtktextview.[ch]: Handle the preedit string, call
4173         gtk_im_context_reset() as necessary, add a menu to switch
4174         input methods.
4175         
4176         * gtk/gtktextlayout.[ch]: Remove useless
4177         gtk_text_layout_get_log_attrs() function.
4178
4179 2000-11-11  Tor Lillqvist  <tml@iki.fi>
4180
4181         * gdk/gdk.def
4182         * gtk/gtk.def: Update.
4183
4184         * gdk/win32/*.c: Add last argument to g_type_register_static()
4185         calls.
4186
4187         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
4188
4189         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
4190         generated by older wheel mouse drivers. Get the correct y
4191         coordinate from WM_MOUSEWHEEL messages.
4192
4193         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
4194         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
4195         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
4196         Debugging functions.
4197
4198         * gdk/win32/gdkprivate-win32.h: Declare them.
4199
4200         * gdk/win32/gdkinput-win32.h: Add declaration for
4201         gdk_input_window_destroy().
4202
4203         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
4204
4205 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
4206
4207         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
4208         function to help handle keeping things in sync.
4209
4210 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
4211
4212         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
4213         BOXED marshallers.
4214
4215         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
4216         (gtk_list_store_class_init): use the new BOXED marshallers.
4217
4218         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
4219         new_with_values to new_with_types.
4220         (gtk_tree_store_get_column_type): add this.
4221         (gtk_tree_store_class_init): use the new BOXED marshallers.
4222
4223         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
4224         mirror some POINTER marshallers.
4225
4226 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
4227
4228         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
4229         allow more interesting iterators.  Also, made the lifecycle of
4230         iterators more explicit.
4231
4232         * gtk/gtktreemodelsort.[ch]: New model for sorting.
4233
4234         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
4235         types.
4236
4237 2000-11-09  Alexander Larsson  <alexl@redhat.com>
4238
4239         * demos/testgtk/menus.c:
4240         Changes to make the new testgtk compile after
4241         gtk_menu_append was removed.
4242
4243         * gdk/linux-fb/gdkdrawable-fb2.c
4244         (gdk_fb_get_depth, gdk_fb_get_visual,
4245         gdk_drawable_impl_fb_class_init): Implement
4246         these drawable functions. Now GtkImages work again.
4247
4248         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
4249
4250         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4251         
4252         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4253         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4254         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4255         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4256
4257 2000-11-08  Havoc Pennington  <hp@pobox.com>
4258
4259         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4260         visible_set args, don't know where these had gone, I thought they
4261         used to be there
4262
4263         * gtk/testtext.c: Add a menu item to apply invisibility tag;
4264         now we can test the feature and see that it's totally broken.
4265
4266 2000-11-08  Havoc Pennington  <hp@pobox.com>
4267
4268         Make DND copy pixbufs and tags when source and target share a 
4269         tag table.
4270         
4271         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4272         in-process GTK_TEXT_BUFFER_CONTENTS target
4273         (gtk_text_view_drag_data_received): Paste from
4274         GTK_TEXT_BUFFER_CONTENTS if we receive it.
4275
4276 2000-11-08  Alexander Larsson  <alexl@redhat.com>
4277
4278         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4279         API changes.
4280
4281         * gtk/gtkmenu.c: Add support for scrolling menus.
4282         Remove gtk_menu_append/prepend/insert, these have been moved to
4283         gtkcompat.h as #defines.
4284
4285         * gtk/gtkcompat.h.in:
4286         Add compatibility #defines for gtk_menu_append/prepend/insert
4287
4288         * gtk/gtkmenu.h: Add data needed for scrolling menus.
4289         GtkMenuPositionFunc gets an extra argument push_in.
4290         gtk_menu_append/prepend/insert removed.
4291         
4292         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4293         positioning behaviour to fit to scrolling menus.
4294
4295         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4296         into menuitem->submeny. That is wrong, and broke torn
4297         off submenus of torn off menus, since they were unrealized
4298         when the first menu was unrealized.
4299
4300         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4301         gtk_menu_shell_select_item() since these need to be overridden in
4302         GtkMenu.
4303
4304         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4305         positioning behaviour to fit to scrolling menus.
4306         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4307         the current item so that it is prelighted when the menu pops up.
4308         This is a workaround to the fact that the menu doesn't get the
4309         initial enter event (due to grabs).
4310
4311         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4312         s/gtk_menu_append/gtk_menu_shell_append/
4313
4314         * gtk/gtknotebook.c:
4315         s/gtk_menu_insert/gtk_menu_shell_insert/
4316
4317         * gtk/testgtk.c (create_menu, create_menus):
4318         Create the first menu with 50 items so that menu scrolling
4319         can be tested.
4320         
4321         
4322         Patch from Jonathan Blandford  <jrb@redhat.com>
4323
4324         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4325         system to handle size requests.  First, we ask what the size of
4326         the toggle is.  Then, when allocating the size, we allocate the
4327         toggle_size first.  This way we can have multiple menu-item
4328         classes w/o needing a seperate class for each.
4329
4330         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4331         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4332
4333         * gtk/gtkcheckmenuitem.c
4334         (gtk_check_menu_item_toggle_size_request): New function to handle
4335         the toggle size-request.
4336
4337 2000-11-07  Havoc Pennington  <hp@redhat.com>
4338
4339         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4340         Half-ass somewhat fix this function, so that scrolling to the
4341         insertion point works. Pango hacking is in the future to really
4342         fix it.
4343
4344         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4345         length of data, no longer used.
4346
4347         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4348         method contents in here, get rid of destroy method
4349         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4350         that were backward. Remove debug spew.
4351         (cut_or_copy): Make the clipboard work with insert_range to
4352         preserve tags and pixbufs, not just the primary selection.
4353
4354 2000-11-07  Havoc Pennington  <hp@redhat.com>
4355
4356         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
4357         to gtk_text_mark_get_visible
4358
4359         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4360         bug that was generating an invalid iterator
4361
4362         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4363         ensure_char_offsets() in front of code placing the iter in an
4364         invalid state.
4365
4366         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4367         make override_location arg const
4368         (paste): Replace the selection if we paste into the 
4369         current selection
4370
4371         * gtk/gtkselection.h: Remove "GtkSelectioData"
4372         (struct _GtkSelectionData): move the definition here.
4373
4374         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4375         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4376
4377         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4378
4379         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4380         (gtk_text_buffer_insert_range_interactive): implement
4381         (gtk_text_buffer_get_tags): Remove, replaced by
4382         gtk_text_iter_get_tags()
4383
4384         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4385         limit parameter, to avoid infinite linear scan.
4386         (gtk_text_iter_backward_search): Add search limit
4387         (gtk_text_iter_forward_find_char): Add search limit
4388         (gtk_text_iter_backward_find_char): Add search limit
4389
4390 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
4391
4392         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4393         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
4394         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
4395         gdk/linux-fb/gdkwindow-fb.c:
4396         use g_object_new() instead of g_type_create_instance() which
4397         is a private function for fundamental type implementations.
4398
4399         * gdk/linux-fb/gdkinput-ps2.c:
4400         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
4401         instead just store the current modifier state. Add a (somewhat broken)
4402         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
4403         Rename exported function gdk_input_ps2_get_mouseinfo to
4404         gdk_input_get_mouseinfo.
4405
4406         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
4407         gdk/linux-fb/gdkwindow-fb.c:
4408         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
4409         
4410
4411 2000-11-02  Havoc Pennington  <hp@redhat.com>
4412
4413         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
4414         use stock buttons. Should be 100% source compatible, appropriate
4415         filesel fields now point to dialog->vbox and dialog->action_area.
4416         On the bizarre side, dialog->action_area and filesel->action_area
4417         are not the same widget.
4418         (gtk_file_selection_init): Put some padding around the selection
4419         entry, so it isn't touching the GtkDialog separator.    
4420
4421         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
4422         use stock buttons, etc. Should also be source compatible.
4423         Set the dialog default title in _init not _new().
4424         
4425         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
4426         Use stock buttons; don't put a button box inside the existing
4427         dialog button box. Don't bother with push/pop colormap anymore.
4428
4429         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
4430         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
4431         for message dialog, and necessary for the font selection and color
4432         selection with help and apply buttons.
4433         
4434         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
4435         to the created button widget. Set GTK_CAN_DEFAULT on the button.
4436         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
4437         between buttons, put less padding around the action area.
4438         (gtk_dialog_run): Exit on unmap rather than on destroy. 
4439         This will also exit the loop if the widget is hidden.
4440         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
4441         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
4442         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
4443         special-case delete event.
4444
4445         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
4446         formatting
4447         
4448 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
4449
4450         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
4451         button to temporarily disable position recording in the
4452         "saved position" test.
4453
4454 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
4455
4456         * gtk/gtkthemes.c: added compat code that temporarily implements
4457         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
4458         going to be revamped by owen's upcoming GtkModule patches, but
4459         untill then people want gtk to build, right? ;)
4460
4461 2000-11-04  Havoc Pennington  <hp@pobox.com>
4462
4463         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
4464         list
4465
4466         * docs/Changes-2.0.txt: Add note about
4467         gtk_container_get_toplevels()
4468
4469         * gtk/gtktextview.h: formatting
4470         
4471         * gtk/gtktextview.c: don't start descriptions with "Returns",
4472         confuses gtk-doc
4473
4474 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
4475
4476         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
4477         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
4478
4479 2000-11-03  Havoc Pennington  <hp@redhat.com>
4480
4481         * gtk/gtktexttagtable.c: Docs
4482         (gtk_text_tag_table_size): return a signed int
4483
4484         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
4485         (gtk_text_tag_event): make the event_object a GObject
4486
4487         * gtk/gtktextview.c: Write API docs for all functions.
4488
4489         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
4490         for gtk_text_view_get_window_type() called on one of the private
4491         windows.
4492
4493         * gtk/gtktextview.c: Instead of accessing text_view->buffer
4494         directly, call get_buffer() which demand-creates a default
4495         buffer. So gtk_text_view_new() can be used to create a view with a
4496         default buffer in it, if you just want an empty text box users can
4497         put data in. Useful for GUI builders also.
4498
4499 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
4500
4501         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
4502         the charset encodign portion MUST be in lowercase.
4503         * gtk/gtkrc.az: added file for Azeri language
4504
4505 2000-11-03  Havoc Pennington  <hp@redhat.com>
4506
4507         Get widgets working on the btree/buffer side. Display of them 
4508         still doesn't work.
4509         
4510         * gtk/gtktextview.c: start implementing child widget stuff
4511
4512         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
4513
4514         * gtk/gtktextlayout.c: handle embedded widgets
4515
4516         * gtk/gtktextdisplay.c: handle embedded widgets
4517
4518         * gtk/gtktextchild.c: Implement all the child anchor goo
4519
4520         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
4521         function
4522
4523         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
4524         (insert_pixbuf_or_widget_segment): abstract out common portions of 
4525         creating a child anchor or a pixbuf segment.
4526         (gtk_text_btree_create_child_anchor): new function
4527         (gtk_text_btree_unregister_child_anchor): new function
4528
4529         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
4530         allocate_child signal on GtkTextLayout
4531
4532         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
4533         values
4534         (gtk_text_iter_get_child_anchor): new function
4535
4536         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
4537         default handler for the changed signal, which calls
4538         gtk_text_buffer_set_modified(), instead of just always emitting
4539         changed then calling set_modified() manually. I guess this is
4540         maybe more flexible. It seems logical.
4541
4542 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
4543
4544         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
4545         now.
4546
4547         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
4548
4549 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
4550
4551         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
4552         been marked static.
4553
4554 2000-11-02  Havoc Pennington  <hp@redhat.com>
4555
4556         * gtk/testgtk.c (create_labels): had a test backward
4557
4558         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
4559         fields, so the dest GC ends up with the correct clip origin, 
4560         etc. Fixes a bug where colored labels didn't redraw 
4561         properly.
4562
4563 2000-11-02  Alexander Larsson  <alexl@redhat.com>
4564
4565         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4566         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
4567         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
4568         Add last argument to t_type_register_static call.
4569         
4570         * gdk/linux-fb/gdkdrawable-fb2.c:
4571         Add last argument to t_type_register_static call.
4572         export the get_image drawable virtual function.
4573
4574         * gdk/linux-fb/gdkimage-fb.c:
4575         Add last argument to t_type_register_static call.
4576         rename gtk_image_get to _gdk_fb_get_image and
4577         export it for use by gdkdrawable-fb2.
4578
4579         * gdk/linux-fb/gdkprivate-fb.h:
4580         export _gdk_fb_get_image.
4581
4582         * gdk/linux-fb/gdkselection-fb.c:
4583         Add new api call stubs.
4584
4585         * gtk/Makefile.am:
4586         Missing ( in linux-fb part.
4587
4588         * modules/linux-fb/Makefile.am:
4589         Must link with gdk_pixbuf or get unresolved symbol.
4590
4591 2000-11-01  Havoc Pennington  <hp@pobox.com>
4592
4593         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
4594         GTK_TYPE_TEXT_ITER and BOXED marshallers
4595
4596         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
4597
4598         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
4599         
4600         * gtk/gtk-boxed.defs: add GtkTextIter
4601
4602         * gtk/gtkmarshal.list: Add marshallers for text widget that 
4603         properly use OBJECT and BOXED
4604
4605 2000-11-01  Havoc Pennington  <hp@redhat.com>
4606
4607         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
4608
4609         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
4610         before returning it. 
4611         
4612 2000-11-01  Havoc Pennington  <hp@redhat.com>
4613
4614         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4615         Clip the rectangle to be rendered to the drawable, since
4616         get_from_drawable() requires a region within the drawable
4617
4618 2000-11-01  Havoc Pennington  <hp@redhat.com>
4619
4620         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
4621         from coordinates.
4622
4623 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
4624
4625         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
4626         it isn't NULL.
4627
4628 2000-11-01  Havoc Pennington  <hp@pobox.com>
4629
4630         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
4631         on a label
4632         (gtk_label_finalize): unref the attr list if any.
4633
4634         * gtk/testgtk.c (create_get_image): close test on second click
4635         (make_message_dialog): close dialog if it exists
4636
4637         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
4638
4639         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
4640         gdk-pixbuf
4641
4642         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
4643         from Pango markup format
4644         (gtk_label_set_markup_with_accel): ditto but with accelerator
4645         parsing
4646
4647         * gtk/gtkimage.c (gtk_image_expose): reformatting.
4648
4649         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
4650         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
4651         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
4652         call gdk_window_get_origin().
4653
4654         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4655         implement GDK_PIXBUF_ALPHA_FULL
4656         
4657 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
4658
4659         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
4660         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
4661         g_signal_handlers_disconnect_matched to block/unblock and disconnect
4662         multiple handlers respectively, instead of only treating the
4663         first handler found (bug reported by owen).
4664
4665 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
4666
4667         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
4668
4669         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
4670
4671         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
4672         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
4673         gtk/gtktreeviewcolumn.h: Fixed inline docs.
4674
4675         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
4676         widget.  Needs writing someday.
4677
4678         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
4679         the docs.
4680
4681 2000-10-30  Havoc Pennington  <hp@redhat.com>
4682
4683         * gtk/gtktextview.h, gtk/gtktextview.c:
4684         Rename delete_at_cursor delete_from_cursor, and 
4685         move to move_cursor.
4686
4687 2000-10-30  Havoc Pennington  <hp@redhat.com>
4688
4689         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
4690         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
4691         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
4692         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
4693         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
4694         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
4695         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
4696         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
4697         gtktexttypes.h, gtktextview.c, gtktextview.h:
4698
4699         Massive reindentation and reformatting. Arg alignment and comments
4700         still need fixing in various places.
4701
4702 2000-10-30  Havoc Pennington  <hp@redhat.com>
4703
4704         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
4705         to be named insert_at_cursor and delete_at_cursor so C++ can
4706         handle them.
4707
4708 2000-10-28  Tor Lillqvist  <tml@iki.fi>
4709
4710         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
4711         to get a double directory separator in case the home directory
4712         ends with one. This would cause trouble especially on Windows,
4713         where the path will be confused with the syntax for an an UNC
4714         (network share) path \\server\share\path.
4715         (gtk_rc_add_initial_default_files): Ditto.
4716
4717 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
4718
4719         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
4720
4721         * gtk/gtktextview.c: Use correct marshallers.
4722
4723 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
4724
4725         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
4726         use new iter stuff, and added all the appropriate signals et al.
4727
4728         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
4729         code is internal to gtk only.
4730
4731 2000-10-28  Tor Lillqvist  <tml@iki.fi>
4732
4733         * gtk/gtk.def
4734         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
4735         glib-genmarshal etc.
4736
4737 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
4738
4739         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
4740         parallel builds.
4741
4742 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
4743
4744         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
4745
4746 2000-10-27  Robert Brady  <robert@suse.co.uk>
4747
4748         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
4749         en_GB (British), ia (Interlingua).
4750
4751 2000-10-26  Havoc Pennington  <hp@redhat.com>
4752
4753         * gtk/gtktextiter.c (my_strrstr): fix constness warning
4754
4755         Fixed output of:
4756         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
4757         
4758         * gtk/gtktextsegment.c (char_segment_new): rename
4759         (_char_segment_new_from_two_strings): rename
4760         (_toggle_segment_new): rename
4761         
4762         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
4763         (make_clipboard_widget): make it static
4764         (text_get_func): static
4765         (text_clear_func): static
4766
4767         * gtk/gtkcolorsel.c (adjustment_changed): make this function
4768         static
4769         (hex_changed): make it static
4770         (hsv_changed): make it static
4771         (opacity_entry_changed): make it static
4772
4773         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
4774         (toggle_segment_check_func): rename with _gtk
4775
4776         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
4777         (_widget_segment_new): rename
4778         (_widget_segment_add): rename
4779         (_widget_segment_remove): rename
4780         (_widget_segment_ref): rename
4781         (_widget_segment_unref): rename
4782
4783         * gtk/gtktextmark.c (_mark_segment_new): Rename
4784         _gtk_mark_segment_new   
4785
4786 2000-10-26  Havoc Pennington  <hp@redhat.com>
4787
4788         * gtk/gtkmarshal.list: add new marshallers used by the text widget
4789         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4790         types
4791
4792         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
4793         marshaller types
4794
4795         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
4796         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
4797         license on these files.
4798
4799         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
4800         work.
4801
4802         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
4803         runtime random number different for each tree, instead of 
4804         a constant I made up.
4805
4806 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
4807
4808         * gtk/Makefile.am: buncha cleanups, kludged build sources
4809         dependencies with a Makefile: oldest-source-stamp dependancy
4810         for the moment. automake is really fighting us here, with
4811         intentionally not allowing user-defined rules or dependancies
4812         prior to it's -include $(DEP_FILES) statement. sucks rocks!
4813
4814         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
4815         to public headers. tehy have a comment stating that they are
4816         "semi-public" aren't included by gtk.h and if enums popup there,
4817         they can be /*< skip >*/-ed.
4818
4819         * gtk/gtktextlayout.h: 
4820         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
4821         added LGPL... <SIGH>
4822
4823 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
4824
4825         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
4826         GtkTreeIter.  Added iterators everywhere.
4827
4828         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
4829
4830         * gtk/gtktreeviewselection.c: Changed to use the iterators.
4831
4832         * gtk/gtktreestore.c: Changed to use the iterators.
4833
4834         * gtk/gtkliststore.c: Commented out the code.  Will convert to
4835         iterators tomorrow.
4836
4837         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
4838         iterators tomorrow.
4839
4840         * gtk/treestoretest.c: Changed to use iterators.
4841
4842         * demos/testgtk/main.c: Moved to use the new iterator system.
4843
4844 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
4845
4846         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
4847         localization misbehaviour.
4848
4849         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
4850         a useless type without copy/free.
4851
4852         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
4853         of GTK_TYPE_CTREE_NODE.
4854
4855 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
4856
4857         * gtk/gtksignal.c:
4858         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
4859         applicable.
4860
4861         * gtk/gtk-boxed.defs (GtkSelectionData): specify
4862         gtk_selection_data_copy and gtk_selection_data_free
4863         do GtkSelectionData work as params in signals.
4864
4865 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
4866
4867         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
4868         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
4869         couldn't they at least give it a non-standard name?
4870         
4871         * gtk/gtktextlayout.c: arg! yet another implementation of
4872         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
4873
4874         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
4875         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
4876         home. now i know this _is_ a conspiracy.
4877
4878         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
4879         ::state-changed.
4880
4881         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
4882         (gtk_accel_group_create_add): marshaller signature fixups.
4883
4884         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
4885         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
4886
4887         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
4888         anymore.
4889
4890 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
4891
4892         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
4893         due to the signal system changes, it wouldn't build currently. to
4894         be fixed soon.
4895
4896         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
4897
4898         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
4899         so it needs gtk_marshal_VOID__ENUM() instead of
4900         gtk_marshal_NONE__UINT().
4901
4902         * gdk/gdk*.c: adapted type registration functions.
4903
4904         * gtk/gtkbindings.c:
4905         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
4906         gone.
4907
4908         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
4909
4910         * gtk/gtkobject.c:
4911         (gtk_object_destroy):
4912         (gtk_object_shutdown): fixed recursion guards. basically we have to
4913         catch the case where any of GObject.shutdown() or gtk_object_destroy()
4914         is called during ::destroy, and avoid recursion there.
4915
4916         * gtk/gtktypeutils.c:
4917         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
4918         boxed_copy/boxed_free. this needs a more general solution based on a
4919         publically installed code-generator utility.
4920
4921         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
4922         glib's gobject has support for that now.
4923         define GtkSignalMarshaller in terms of GSignalCMarshaller.
4924
4925 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
4926
4927         * gtk/gtksignal.[hc]:
4928         * gtk/gtkmarshal.[hc]:
4929         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
4930         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
4931         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
4932         care of that.
4933
4934         * *.c: marshaller name fixups.
4935
4936         * gtk/gtkmarshal.list: added a comment briefing the format.
4937
4938 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
4939
4940         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
4941         compatibility macros here now. more specifically, most of
4942         the API is preserved (yes, _most_, nonwithstanding the
4943         following exceptions listed, the API is stil lHUGE ;)
4944         things that got removed completely:
4945         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
4946         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
4947         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
4948         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
4949         gtk_signal_remove_emission_hook().
4950         non-functional functions variants:
4951         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
4952         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
4953         not supported anymore.
4954         (gtk_signal_compat_matched): new internal function to aid
4955         implementation of the compatibility macros, it  provides
4956         functionality to block/unblock/disconnect handlers based
4957         on func/data.
4958
4959         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
4960
4961         * *.c: adaptions to new type registration API signatures.
4962
4963 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
4964
4965         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
4966
4967 2000-10-25  Robert Brady  <robert@suse.co.uk>
4968
4969         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
4970         gdk_property_delete): If window == NULL, assume the root window.
4971         (restoring the behaviour that was in 1.2).
4972         
4973         * gtk/testtext.c (save_buffer): Allow creation of new files when
4974         saving.
4975
4976         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
4977         calls to read().
4978
4979 2000-10-25  Tor Lillqvist  <tml@iki.fi>
4980
4981         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
4982
4983         * gdk/win32/gdkdrawable-win32.c
4984         * gdk/win32/gdkimage-win32.c
4985         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
4986         X11 backend.
4987
4988         * gdk/win32/gdkcc-win32.c
4989         * gdk/win32/gdkcolor-win32.c
4990         * gdk/win32/gdkfont-win32.c
4991         * gdk/win32/gdkinput-win32.c
4992         * gdk/win32/gdkmain-win32.c
4993         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
4994
4995 2000-10-24  Havoc Pennington  <hp@redhat.com>
4996
4997         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
4998         it a static function
4999
5000         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
5001         redraw text when a tag is applied to it.
5002
5003         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
5004         (gtk_text_tag_affects_nonsize_appearance): private functions to
5005         see if a tag requires various kinds of redraw/layout to be queued
5006         up.
5007
5008         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
5009
5010         * gtk/testtext.c (fill_example_buffer): Put the cursor 
5011         at the start of the buffer, so search works by default
5012
5013         * gtk/gtktextiter.c (lines_match): init match_start always
5014
5015         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
5016         function, get iter at a line + a byte index
5017
5018         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
5019         to set byte position within a line
5020         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
5021
5022 2000-10-23  Havoc Pennington  <hp@redhat.com>
5023
5024         * gtk/testtext.c: Re-enable the "find" dialog
5025
5026         * gtk/testgtk.c: Add test for gdk_drawable_get_image
5027         
5028         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
5029         the arguments to gdk_draw_drawable were in the wrong order
5030         (gdk_window_paint_init_bg): This function was ignoring the
5031         init_region, instead of clipping to it, so the entire backing
5032         pixmap was cleared on every begin_paint()
5033         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
5034         was in here again, the loop kept using the same GtkWindowPaint
5035         over and over.
5036         (gdk_window_begin_paint_region): Fix a bug where we had two
5037         x_offset instead of x_offset and y_offset
5038
5039         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
5040         before we get the image.
5041         (gdk_draw_drawable): get the composite before we draw the drawable.
5042         (gdk_drawable_real_get_composite_drawable): default
5043         get_composite_drawable implementation that returns the drawable 
5044         itself
5045
5046         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
5047         get_composite_drawable virtual function
5048
5049         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
5050         list-walking bug
5051
5052         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
5053         make this work if the source drawable is a GdkDrawableImplX11
5054         instead of a public drawable type. This is really broken; the
5055         problem is that GdkDrawable needs a virtual method get_xid(), but
5056         of course that doesn't work in practice. Enter RTTI.
5057
5058         Also, improve mismatched depth message.
5059
5060         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
5061         GdkPixmap
5062
5063         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
5064         install _gdk_x11_get_image as our implementation of get_image
5065         
5066         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
5067         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
5068
5069         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
5070         gdk_drawable_get_image
5071
5072         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
5073
5074         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
5075         get_image
5076
5077         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
5078         trailing semicolon after for loop
5079
5080 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
5081
5082         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
5083         where font_desc for widget's context lagged widget's font_desc by
5084         one step.
5085
5086 2000-10-22  Tor Lillqvist  <tml@iki.fi>
5087
5088         * gdk/win32/gdkgc-win32.c
5089         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
5090
5091         * gtk/makefile.mingw.in
5092         * gtk/gtk.def: Updates.
5093
5094         * gtk/testgtk.c: sleep() is called _sleep in MS's C
5095         library.
5096
5097         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
5098
5099         * gtk/makefile.msc: Remove
5100
5101         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
5102
5103         * gtk/Makefile.am: Add it.
5104
5105         * configure.in: Generate it.
5106
5107         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
5108         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
5109         something even if not implemented, to satisfy picky MSVC.
5110
5111         Patches by Hans Breuer:
5112         
5113         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
5114         SetBkMode() and SetTextAlign() before calling
5115         pango_win32_render().
5116
5117         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
5118         Set hcliprgn to NULL after destroying it.
5119         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
5120
5121         * gdk/win32/gdkgeometry-win32.c
5122         (_gdk_windowing_window_queue_antiexpose): More effective
5123         implementation.
5124
5125         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
5126         depth as default, not the visual's.
5127
5128         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
5129         against empty title.
5130
5131         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
5132         IMAGE_PRIVATE_DATA.
5133
5134         * gdk/win32/gdkimage-win32.c: Use it.
5135
5136 2000-10-22  Robert Brady  <robert@suse.co.uk>
5137
5138         * configure.in: Check for bind_textdomain_codeset
5139
5140         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
5141         present, make use of it.
5142
5143         Add a translatable string "default:LTR" which, if translated
5144         to "default:RTL", will cause the default direction to be
5145         Right-to-Left.
5146
5147         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
5148         direction if marked as flippable.
5149
5150         * gtk/gtkhscale.c: Mark widget as flippable.
5151         
5152 2000-10-04  Havoc Pennington  <hp@redhat.com>
5153
5154         * gtk/testgtk.c (create_buttons): create some stock buttons
5155         with the default accel group
5156         (create_image): test some new GtkImage features
5157         (make_message_dialog): test GtkMessageDialog
5158         (create_modal_window): fix someone's bizzarro indentation
5159
5160         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
5161         GTK_WIN_POS_CENTER_ON_PARENT. 
5162         Add "destroy with parent" setting, which means the window goes
5163         away with its transient parent.
5164         (gtk_window_get_default_accel_group): get the default accel group
5165         for the window.
5166         (gtk_window_set_destroy_with_parent): set/unset destroy with
5167         parent flag
5168         (gtk_window_read_rcfiles): invalidate icon set caches
5169         after reloading rcfiles 
5170
5171         * gtk/gtkenums.h (GtkWindowPosition): add
5172         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
5173         on its parent window when the dialog is mapped for the first time.
5174
5175         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
5176         a simple message dialog class
5177         
5178         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
5179         handler to emit response signal, and maybe later it would
5180         honor a hide_on_delete flag - though that isn't there yet.
5181         Set border width on the vbox to 2, so we get some padding.      
5182         Use a button box for the action area.
5183         (gtk_dialog_key_press): synthesize a delete event if Esc
5184         is pressed and the GtkWidget key press handler didn't 
5185         handle the escape key.
5186         (gtk_dialog_new_with_buttons): new function creates a dialog
5187         with some default buttons in it.
5188         (gtk_dialog_add_action_widget): add an activatable widget
5189         as a button in the dialog - you can also add a non-activatable
5190         widget by accessing the action area directly.
5191         (gtk_dialog_add_button): add a simple button - stock ID or 
5192         label - to the action area
5193         (gtk_dialog_response): emit response signal
5194         (gtk_dialog_run): block waiting for the dialog, return 
5195         the response. Override normal delete_event behavior, so that 
5196         delete_event does nothing inside gtk_dialog_run().
5197
5198         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
5199         emitted when an action widget is clicked or the dialog gets
5200         delete_event
5201
5202         * gtk/gtk.h: add gtkmessagedialog.h
5203
5204         * gtk/Makefile.am: add gtkmessagedialog.[hc]
5205
5206 2000-10-18  Havoc Pennington  <hp@redhat.com>
5207
5208         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
5209         where any number of empty lines would get skipped
5210
5211         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
5212         edge.
5213
5214         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
5215         warning about invalid iterators (explain more thoroughly)
5216         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
5217
5218         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
5219         big
5220
5221         * demos/*.c: Add error handling
5222
5223         * gtk/gtktextbuffer.c: don't modify const iterators
5224
5225         * gtk/gdk-pixbuf-loader.c: Add full error handling here
5226
5227         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
5228         on file load
5229
5230         * gtk/gtkiconfactory.c: Update to reflect addition of error
5231         handling to gdk-pixbuf loaders
5232
5233 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
5234
5235         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
5236         move to new modularized testgtk.
5237
5238 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
5239
5240         * gtk/gtktreeview.c: Draw the arrows correctly.
5241
5242         * gtk/gtktreemodel.c: Added user docs.
5243
5244         * gtk/gtk.h: remove gtktreedatalist.h.
5245
5246         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
5247         parent when generating my type.
5248
5249         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5250         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5251
5252 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5253
5254         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5255         GtkTreeModel from object to interface.
5256
5257 2000-10-16  Havoc Pennington  <hp@redhat.com>
5258
5259         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
5260         compilation
5261
5262 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5263
5264         * gtk/gtktreeselection.c: Add API documentation to all public
5265         functions.
5266
5267         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5268         functions.
5269
5270 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
5271
5272         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5273         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
5274         docs to all public functions.
5275
5276         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5277         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5278         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5279         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5280         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5281         issue.
5282
5283 2000-10-14  Robert Brady  <robert@suse.co.uk>
5284
5285         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5286
5287 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
5288
5289         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5290         values other then G_TYPE_STRING.
5291         * gtk/gtktreeselection.c: Minor commenting updates.
5292         * gtk/gtktreeview.c: Format updates.
5293
5294 2000-10-09  Tor Lillqvist  <tml@iki.fi>
5295
5296         * README.win32: Update.
5297
5298         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5299         lines that had been deleted by mistake (?).
5300
5301         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5302         also the case fg==white and bg==black (but still not randomly
5303         coloured cursors). Thanks to Wolfgang Sourdeau.
5304
5305         * gdk/win32/*.c: Silence gcc -Wall.
5306
5307         * gtk/gtk.def: Add missing entry points.
5308
5309         Fixes by Hans Breuer:
5310
5311         * gdk/makefile.msc
5312         * gdk/win32/makefile.msc: Update.
5313
5314         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5315         some MSVC thing, presumably), cause breakpoint on failures. Add
5316         GDK_NOR case. Call g_log_set_always_fatal.
5317
5318         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5319         should be pased by reference.
5320         
5321         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5322         
5323         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5324
5325         * gdk/win32/gdkevents-win32.c
5326         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5327
5328         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5329         implementation object.
5330
5331         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5332         not just windows.
5333         
5334         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5335         Use the wrapper object.
5336         
5337 2000-10-06  Havoc Pennington  <hp@redhat.com>
5338
5339         * Makefile.am (SRC_SUBDIRS): contrib subdir
5340
5341         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5342         so it can be used in Xlib version
5343
5344         * demos/testpixbuf.c (update_timeout): error checking from 1.0
5345         tree
5346
5347         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5348         change from 1.0 tree that returns first frame of animation
5349         if the loaded file is an animation.
5350
5351         * contrib: add new directory to hold stuff that comes with GTK+
5352         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5353         
5354         * configure.in: add contrib/*
5355
5356 2000-10-05  Havoc Pennington  <hp@redhat.com>
5357
5358         * demos/testpixbuf-save.c: add pixbuf save test
5359
5360         * demos/Makefile.am: add testpixbuf-save.c
5361
5362 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
5363
5364         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5365         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5366         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5367         * gtk/gtktreeselection.[ch]: Replaced
5368         "node_selected"/"node_unselected" signal with "selection_changed"
5369         signal.
5370
5371 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5372
5373         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5374         tree widget.
5375
5376 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5377
5378         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5379         drawing.
5380
5381 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
5382
5383         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5384         Move list pointer forwards before removing item from
5385         list. (Crash reported by Salmaso Raffaele)
5386
5387         * gdk/gdkwindow.h: Remove spurious trailing ,
5388
5389         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
5390         dependencies on uninstalled libraries, sorry folks.
5391
5392 2000-10-04  Havoc Pennington  <hp@redhat.com>
5393
5394         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5395         gtk/gtkiconfactory.c: Fix copyrights    
5396
5397         * demos/testpixbuf.c: add inline pixbuf test
5398         
5399 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
5400
5401         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
5402         Add gdk_window_iconify.
5403
5404         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
5405         (gdk_window_set_geometry_hints): Add win_gravity
5406         to geometry structure.
5407
5408         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
5409         Implement _NET_WM_PING.
5410
5411         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
5412         Set _NET_WM_PID on the client leader.
5413
5414         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
5415         Handle UTF-8 better.
5416
5417         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
5418         UTF-8 better, set _NET_WM_NAME as well. Only set
5419         icon name if it hasn't previously been explicitely 
5420         set.
5421
5422 2000-10-03  Havoc Pennington  <hp@redhat.com>
5423
5424         * gtk/testtextbuffer.c: clean up trailing whitespace,
5425         add extensive tests for tag toggle iteration.
5426         
5427         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
5428         distance
5429
5430         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5431         optimize case where the tag root is on level 1
5432         (gtk_text_line_previous_could_contain_tag): attempt to implement
5433         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
5434         functionality
5435
5436         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
5437         Implement this, though not very efficiently.
5438
5439         * gtk/gtktextiterprivate.h: reformat
5440
5441         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
5442         iterator
5443
5444         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
5445         this to properly revalidate the iterators.
5446
5447         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
5448         properly at the end of the line (and therefore on empty lines)
5449
5450         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
5451         maybe we should return a value...
5452
5453 2000-10-03  Tor Lillqvist  <tml@iki.fi>
5454
5455         * config.h.win32: Guard definition of alloca(). glib.h now handles
5456         that.
5457
5458         * gdk/gdk.def
5459         * gtk/gtk.def: Add new entry points.
5460
5461         Changes just to make GTK+ build without errors on Win32. No hope
5462         of it working in its current state, though...:
5463         
5464         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
5465         some functions from the X11 backend, just to make GTK+ build.
5466
5467         * gdk/makefile.mingw.in
5468         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
5469         number. Add new object files.
5470
5471         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
5472         GetMessageTime to get timestamp (where on X11 uses
5473         gdk_x11_get_server_time()).
5474
5475 2000-10-02  Havoc Pennington  <hp@pobox.com>
5476
5477         * gtk/gtktextview.c: text_window_* weren't static and should have
5478         been.
5479         Start work on child widgets; not yet complete, syncing to 
5480         office computer.
5481
5482         * gtk/gtktextchild.h: change this to contain a public interface,
5483         starting work on child interfaces.
5484         * gtk/gtktextchildprivate.h: move private interfaces here
5485
5486         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
5487
5488         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
5489         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
5490         gtk/gtktextmark.c: copyright notices
5491
5492         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
5493         internal functions      
5494
5495         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
5496         internal function
5497
5498         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5499         Reformatting    
5500
5501 2000-09-30  Havoc Pennington  <hp@pobox.com>
5502
5503         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
5504         NULL start/end pointers
5505
5506         * gtk/gtktextbuffer.c: Write some docs
5507         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
5508         NULL, so you can just check whether there's a selection.        
5509
5510         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
5511         cleanup_line or segments_changed ourselves, it gets done 
5512         in unlink_segment
5513
5514         * gtk/gtktextmark.h:
5515         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
5516         
5517         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
5518
5519         * gtk/gtktextmark.c: delete some more old Tk cruft
5520
5521         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
5522         mark before removing it, so we can emit MARK_DELETED with a valid
5523         pointer.
5524         (gtk_text_buffer_mark_set): hold ref across signal emission
5525
5526         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
5527         whining about attempts to delete special marks
5528
5529         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
5530         underscore, since it's internal.
5531
5532         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
5533         now implemented in terms of iterators in gtktextiter.h
5534
5535         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
5536         New function, destructively sets contents of buffer. Also 
5537         a convenient way to clear the buffer by setting text to ""
5538
5539         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
5540         multiline string literal
5541
5542         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
5543         text changes.
5544
5545         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
5546         is not dereferenceable
5547         (gtk_text_iter_forward_lines): fix return value
5548
5549 2000-09-29  Havoc Pennington  <hp@redhat.com>
5550
5551         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
5552
5553         * gtk/gtktextview.c: Implement drag thresholding; change functions 
5554         that set border window size to have nicer name
5555         (gtk_text_view_mark_set_handler):  Fix this to have the 
5556         right signature.
5557
5558         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
5559
5560         * gtk/testtext.c: Update with API changes, put line numbers on 
5561         both sides.
5562         
5563         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
5564         with this
5565
5566         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
5567         pixbuf; delete a big block of #if 0 Tk code
5568
5569         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
5570         insert_pixmap with insert_pixbuf
5571
5572 2000-09-29  Martin Baulig  <baulig@suse.de>
5573
5574         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
5575         confusion with the GdkPixbuf of the GNOME 1.x platform.
5576
5577 2000-09-29  Havoc Pennington  <hp@pobox.com>
5578
5579         * gtk/gtktextview.c: Implement the side windows.
5580
5581         * gtk/testtext.c: Implement simple line numbering in the 
5582         left side window; seems to make scrolling sloooow. Oops.
5583         Also, cursor blink is for some reason causing redraws
5584         of the line numbers. Should investigate...
5585
5586 2000-09-28  Havoc Pennington  <hp@redhat.com>
5587
5588         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
5589         scrolling child windows, and draw focus rectangle properly.
5590         
5591         (gtk_text_view_buffer_to_window_coords):
5592         Coordinate transformation to deal with all these freaking windows
5593         and offsets
5594         (gtk_text_view_window_to_buffer_coords): transform the other way
5595
5596         * gtk/testtext.c (create_buffer): Update to match Pango API change
5597
5598         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
5599         anonymous tags
5600         (foreach_unref): don't emit remove signal from finalize, just
5601         set tag's parent to NULL
5602
5603 2000-09-26  Havoc Pennington  <hp@redhat.com>
5604
5605         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
5606         Fix some warnings       
5607
5608 2000-09-26  Havoc Pennington  <hp@redhat.com>
5609
5610         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
5611         headers into the private header list
5612
5613         * Makefile.am (pkgconfig_DATA): install pkg-config files
5614
5615         * configure.in: add pkg-config files
5616
5617         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
5618
5619         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
5620         outstanding icon caches on theme change.
5621
5622         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
5623         important types:
5624
5625         (GtkIconSource): Specification for creating a pixbuf 
5626         appropriate for a direction/state/size triplet from 
5627         a source pixbuf or filename
5628
5629         (GtkIconSet): List of GtkIconSource objects that are used to
5630         create the "same" icon (e.g. an OK button icon), and cache for
5631         rendered icons
5632
5633         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
5634         up the icon set for a given stock ID.  GTK maintains a stack of
5635         GtkIconFactory to search, and applications or libraries can add
5636         additional icon factories on top of the stack
5637         
5638         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
5639         the set of GtkIconSource specified for a given stock ID into 
5640         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
5641         RcStyle, under the specified stock ID.
5642
5643         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
5644         render_icon used to derive a GdkPixbuf from a GtkIconSource.
5645         This allows people to theme how prelight, insensitive, etc. are
5646         done.
5647
5648         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
5649         icon factories for a style, and return the resulting 
5650         icon set if any.
5651
5652         (gtk_style_render_icon): Render an icon using the render_icon 
5653         method in the GtkStyleClass.
5654
5655         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
5656         Use the style for a given widget to look up a stock ID, get the
5657         icon set, and render an icon using the render_icon method 
5658         of the style
5659
5660         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
5661         (contains information about a stock item), the built-in stock item
5662         IDs, and functions to add/lookup stock items.
5663
5664         * gtk/stock-icons/*: Stock icons that come with GTK
5665
5666         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
5667         a button based on a GtkStockItem
5668         (gtk_button_new_accel): Takes a uline string and accel group, and
5669         installs the accelerator.
5670
5671         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
5672         image-display widget.
5673
5674 2000-09-25  Havoc Pennington  <hp@redhat.com>
5675
5676         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
5677
5678         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
5679         Fix a bug when removing node data, we didn't properly 
5680         re-splice the linked list after removing the data.
5681
5682         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
5683         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
5684
5685         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
5686
5687         * gtk/gtktextlayout.c (set_para_values): Set tab array 
5688         for the layout from the GtkTextTag.
5689
5690         * gtk/gtktexttypes.h: delete tab and search cruft, 
5691         remove g_convert() in favor of GLib version
5692
5693         * gtk/gtktexttypes.c: remove tab implementation from here,
5694         move to Pango
5695
5696         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
5697         tab stuff using new PangoTabArray from Pango
5698
5699         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
5700         unused border_width stuff
5701
5702 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
5703
5704         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
5705         glib) and now useless utf_to_latin1() latin1_to_utf()
5706
5707         * gtk/gtktextview.[ch]: Change ::move_insert and
5708         ::delete_text action signals to ::move and ::delete;
5709         create the signals with the right enumeration type,
5710         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
5711         C-v bindings, change Home, End to move to beginning/end
5712         of line, Add C-Home C-End to move to beginning/end
5713         of buffer. Change ::cut_text to ::cut_clipboard, etc;
5714         combine ::scroll_text into ::move; use new GtkSelectionData
5715         functions to simplify DND text handling.
5716         
5717         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
5718         deletion enumerations here, rename enumeration values to 
5719         be consistently plural.
5720
5721         * gtk/gtktextbuffer.c: Use new clipboard interfaces
5722         for cut/copy/paste and primary selection.
5723
5724         * gtk/gtktextbuffer.[ch]: Remove excess time and
5725         'interactive' arguments from cut/copy/paste;
5726         rename cut to cut_clipboard, etc; remove
5727         gtk_text_buffer_get_clipboard_contents().
5728
5729         * gtk/gtktextlayout.[ch]: Add 
5730         gtk_text_layout_move_iter_to_line_end() to move the iter to 
5731         line ends.
5732
5733         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
5734         Functions to set or get a UTF-8 string on the selection
5735         data.
5736
5737         * gtk/gtkclipboard.[ch]: New, simplified selection handling
5738         interfaces.
5739
5740         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
5741         created widgets - one of these is useless if we don't.
5742
5743         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
5744         a public function clear all targets registered for the
5745         widget.
5746
5747         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
5748         Never call gtk_widget_realize() - that was just asking
5749         for bizarre side-effects.
5750
5751         * gtk/gtkselection.c (gtk_selection_owner_set): Call
5752         gdk_selection_owner_set even if the widget is the
5753         same so that we reliably update the timestamp on
5754         the server.
5755
5756         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
5757         gdk_x11_get_server_time() function.
5758         
5759         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
5760         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
5761         Add some tricky filtering on serial numbers for
5762         selection clear events to fix up long-standard
5763         race condition FIXME's in gtkselection.c.
5764
5765         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
5766         routines to convert from utf8 to compound text or
5767         STRING and from a text property to UTF-8.
5768
5769         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
5770         a convenience function gdk_get_current_event_time().
5771
5772         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
5773         and free selection_data->data properly
5774
5775 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
5776
5777         * gtk/gtkthemes.c: Remove some unecessary includes.
5778
5779 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
5780
5781         * gtk/gtktextdisplay.c
5782         * gtk/gtktextlayout.c
5783         * gtk/gtktexttag.c
5784         * gtk/gtktexttag.h
5785         * gtk/testtext.c: Change the overstrike property to strikethrough,
5786         to closer match pango.
5787
5788 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
5789
5790         * gtk/gtktextview.c: Fix up visibility so that focus,
5791         cursor_visible and blink interact properly.  Reenable cursor blink
5792         which had been roughly disabled. Make blink and focus
5793         properly per-view.
5794
5795         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
5796         Add a flag for whether to display insertion cursor and
5797         a function to set the flag.
5798
5799         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
5800         get_line_y() to get_line_yrange(), to be a bit more generally
5801         useful.
5802
5803 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
5804
5805         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
5806           do stop_navigating_submenu, to clear last timeout properly.
5807           Also in gtk_menu_motion_notify move ignore_enter above
5808           the conditional to make it always happen as suggested by Owen
5809
5810 2000-09-07  Tor Lillqvist  <tml@iki.fi>
5811
5812         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
5813
5814         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
5815         w32api headers.
5816
5817         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
5818         declarations.
5819
5820         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
5821         (gdk_win32_get_colormap): A line had been deleted by mistake.
5822
5823         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
5824         (gdk_event_translate): Handle more virtual keycodes to be able to
5825         generate GDK events for Control-comma, Control-period, etc.
5826
5827         * gtk/gtk.def: Add some missing entry points.
5828
5829 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
5830
5831         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
5832         Doc comment fixing. (Mostly non-matching parameter names.)
5833
5834         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
5835         comments a little to avoid looking like a doc comment.
5836
5837         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
5838         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
5839         conversions be changed to GError?)
5840
5841         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
5842         Move private #defines into .c file.
5843
5844         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
5845         order of argument addition, remove duplicates.
5846
5847         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
5848         parent class is FrameClass, not BinClass.
5849
5850         * gtk/gtk.h: Add gtkinvisible, which was missing.
5851         (It's occasionalyl useful for client apps, if seldom.)
5852
5853         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
5854         #define.
5855
5856 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
5857
5858         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
5859         coordinates when creating window, instead of GDK-space
5860         coordinates. (Avoid BadValue on too large windows.)
5861
5862 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5863
5864         * configure.in (use_mmx_asm): Remove conftest* after use along the
5865         lines of AC_TRY_COMPILE.        
5866         
5867         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
5868         of g_dirname, which is deprecated.
5869         (gtk_rc_parse_any): Removed calls to
5870         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
5871
5872         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
5873         Removed calls to g_hash_table_{freeze,thaw}, as they are
5874         deprecated now.
5875
5876         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
5877         instead of g_basename.
5878         
5879 2000-09-04 Elliot Lee <sopwith@redhat.com>
5880         
5881         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
5882         ANSI warning.
5883
5884 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
5885
5886         * gtk/gtkwidget.h:  Add some documenting comments about 
5887           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
5888           just as owen said on irc.
5889
5890         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
5891           set HAS_DEFAULT.  Only set it if there isn't another window
5892           holding it (a focus window which RECEIVES_DEFAULT) and only unset
5893           it if the widget is not the focused window with RECEIVES_DEFAULT.
5894           This fixes weird double default bugs in dialogs which has things
5895           call gtk_window_set_default at times.
5896
5897 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
5898
5899         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
5900         Nils Barth and David Santiago to improve submenu
5901         navigation. The patch does this by creating a triangular
5902         region from the point where the pointer leaves the
5903         menu to the submenu.  While the pointer is in
5904         that region and a timeout has not expired, events 
5905         that would cause the active submenu to change are
5906         ignored.
5907
5908 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
5909
5910         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
5911         moving a toplevel window immediately after sizing it would
5912         result in it being sized back to the old size since 
5913         impl->width, impl->height aren't updated until we hear
5914         back from the server. There is still a (longstanding) bug
5915         here that gdk_window_get_size() will give the wrong size
5916         until we do hear back.
5917
5918 2000-08-31  Havoc Pennington  <hp@redhat.com>
5919
5920         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
5921         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
5922         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
5923         Rename GtkTextStyleValues to GtkTextAttributes
5924
5925 2000-08-31  Havoc Pennington  <hp@pobox.com>
5926
5927         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
5928         for rapid testing whether an iterator is the end iterator
5929         (gtk_text_btree_new): init end line cache
5930         (gtk_text_line_is_last): use fast cached line to 
5931         see if we're the last line.
5932         (get_last_line): use cached line here too, should 
5933         speed up some random unrelated code.
5934         
5935 2000-08-30  Havoc Pennington  <hp@pobox.com>
5936
5937         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
5938         signals.
5939
5940         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
5941         delete_text signals. This allows the signals to be used for
5942         implementing undo.
5943
5944         * gtk/gtktextbuffer.c: Change signal handler signatures; 
5945         provide "interactive" argument when emitting insert_text or
5946         delete_text signal.
5947         
5948 2000-08-30  Havoc Pennington  <hp@pobox.com>
5949
5950         * gtk/gtktextbuffer.c: Docs
5951
5952 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
5953
5954         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
5955         from switch statements, since Tor removed the enumeration
5956         value.
5957         
5958         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
5959         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
5960
5961 2000-08-29 Elliot Lee <sopwith@redhat.com>
5962         * */*.h: Use G_GNUC_CONST.
5963
5964 2000-08-27  Havoc Pennington  <hp@pobox.com>
5965
5966         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
5967         minor indentation fixes, inserted some FIXME about stuff I
5968         realized was broken while documenting it.
5969         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
5970         GTK convention  
5971
5972 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
5973
5974         * gtk/testgtk.c (create_styles): Fix double free of
5975         font desc.
5976
5977 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
5978
5979         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
5980         
5981         * gtk/testgtk.c (create_styles): Add a test for modifying
5982         the style through gtk_widget_modify_*.
5983
5984         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
5985         a function to get the current modifier style.
5986
5987         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
5988         of the passed in GtkRcStyle instead of ref'ing it.
5989
5990         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
5991
5992 2000-08-20  Tor Lillqvist  <tml@iki.fi>
5993
5994         * gdk/gdkimage.h
5995         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
5996         shared memory image+pixmap GdkImage type, or
5997         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
5998         I am dropping that.
5999
6000         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
6001         actually call gtk_init_abi_check(), passing also
6002         sizeof(GtkWindow). Ditto for gtk_init_check(). 
6003
6004         * gtk/gtk.def
6005         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
6006         New functions, used to check that the GTK+-using code has been
6007         compiled using the correct compiler and switches. In particular,
6008         with gcc one has to use the -fnative-struct switch as GTK+ is
6009         compiled with that.
6010
6011 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
6012
6013         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
6014         ->prev fields when merging lists. (Found simultaneously
6015         by Pawel Salek and Jakub Jelinek)
6016
6017 2000-08-12  Tor Lillqvist  <tml@iki.fi>
6018
6019         * gdk/gdk.def
6020         * gtk/gtk.def: Add missing entries.
6021
6022         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
6023         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
6024
6025         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
6026         function. Dummy implementation at this point.
6027
6028         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
6029         rules. Undefine GTK_COMPILATION when compiling the test programs.
6030         
6031         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
6032
6033 2000-08-11  Tor Lillqvist  <tml@iki.fi>
6034
6035         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
6036         to convert back and forth from UTF-8 and the "system" (or "current
6037         locale") charset when necessary. Indentation/spacing cleanup.
6038
6039 2000-08-10  Havoc Pennington  <hp@redhat.com>
6040
6041         * Makefile.am (snapshot): Change the format of the snapshot
6042         version to match glib
6043
6044         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
6045         from EXTRA_DIST since it doesn't seem to exist
6046
6047 2000-08-10  Tor Lillqvist  <tml@iki.fi>
6048
6049         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
6050         version of the directory name (not the UTF-8 one) when building
6051         the path name to stat().
6052
6053 2000-08-03  Elliot Lee  <sopwith@redhat.com>
6054
6055         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
6056         PANGO_ATTR_SHAPE set.
6057
6058 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
6059
6060         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
6061         Peter Osterlund to simplify the code while keeping the
6062         functionality the same.
6063
6064 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
6065
6066         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
6067         is_viewable() test further inside the function, since removing the 
6068         window from the redraw list without clearing ->update_area
6069         was also very broken.
6070
6071 2000-08-02  Tor Lillqvist  <tml@iki.fi>
6072
6073         * configure.in: Check for <unistd.h>.
6074
6075 2000-08-01  Martin Baulig  <baulig@suse.de>
6076
6077         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
6078         to display the message that this is a development version of GTK+.
6079
6080 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
6081
6082         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
6083         was depending on widget->allocation instead of the width of text_area,
6084         which was incorrect for subclasses like GtkSpinButton.
6085
6086         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
6087         with width == 1 tests that should be width == -1.
6088
6089 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
6090
6091         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
6092         (broken, Elliot, every single window blank on X) custom code with call
6093         to gdk_window_is_viewable() which a) prevents code duplicate and
6094         b) works. 
6095
6096 2000-07-31  Elliot Lee  <sopwith@redhat.com>
6097
6098         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
6099         to get the GDK_PARENT_ROOT() macro to work.
6100         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
6101         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
6102         of, windows that aren't shown.
6103         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
6104         pointer grab stuff.
6105
6106 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
6107
6108         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
6109           s/gtk_main_iteration/g_main_iteration/
6110
6111           Did this already in change:
6112                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
6113           don't know how it got reverted.
6114
6115 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
6116
6117         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
6118         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
6119
6120         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
6121         not gdk_pixbuf.
6122
6123 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
6124
6125         * configure.in,po/{sp,sr}.po: Added Serbian files
6126
6127 2000-07-30  Tor Lillqvist  <tml@iki.fi>
6128
6129         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
6130
6131         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
6132         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
6133         GIOChannel implementation.
6134
6135         * gdk/win32/gdkinput.c
6136         * gdk/win32/gdkpango-win32.c: Update license name here, too.
6137
6138         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
6139         definition to match prototype.
6140
6141         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
6142
6143 2000-07-27  Elliot Lee  <sopwith@redhat.com>
6144
6145         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
6146         function, to allow handling image formats that cannot be detected
6147         by looking at content alone.
6148
6149 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
6150
6151         * docs/tutorial/*.gif *.jpg *.eps
6152           Update these to the same look-n-feel.
6153           Why does including images in DocBook suck so badly?
6154
6155 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
6156
6157         * gtk/gtktable.c: applied patch from Phil Thompson
6158         <phil@river-bank.demon.co.uk> that enables space settings for
6159         the last row/columns as well.
6160
6161 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
6162
6163         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
6164         updates the license headers to the GNU Lesser General Public License,
6165         as well as updating the copyright year to 2000.
6166
6167 2000-07-26  Robert Brady  <rwb197@zepler.org>
6168
6169         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
6170           and po/Makefile, was installing and looking for them under gtk20
6171           and gtk2 respectively.
6172
6173 2000-07-25  Havoc Pennington  <hp@redhat.com>
6174
6175         * gtk/testtext.c: Comment out some stuff that depends on the rest
6176         of my patches.
6177
6178 2000-07-25  Havoc Pennington  <hp@redhat.com>
6179
6180         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
6181         buffer
6182
6183 2000-07-25  Havoc Pennington  <hp@redhat.com>
6184
6185         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
6186         widget changes.
6187
6188         * gtk/gtktextview.h: To be consistent with usage of "line"
6189         throughout the API to mean "newline-terminated thingy", change
6190         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
6191         to MOVEMENT_LINE.
6192
6193         (GtkTextView): Add flags for default editability, and whether to
6194         show the cursor. Add functions to get/set that. Add 
6195
6196         (gtk_text_view_get_iter_location): new function
6197
6198         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
6199         gtktextlayout.h
6200         (g_convert): Add g_convert temporarily, will go in glib in a bit
6201         
6202         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
6203         GtkTextTagTableForeach instead of brokenly using GHFunc.
6204         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
6205
6206         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
6207         moved to public header.
6208
6209         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
6210         "invisible", since "elide" was a bad name.
6211         (gtk_text_tag_get_priority): Added
6212
6213         (GtkTextStyleValues): put this in public header, along with
6214         functions to use it.
6215
6216         * gtk/gtktextmarkprivate.h: Include more headers, since we no
6217         longer include gtktextbtree.h.
6218
6219         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
6220         gtk_text_mark_deleted
6221
6222         * gtk/gtktextlayout.h: Don't include the "really private" headers,
6223         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
6224         to make this possible. Now we only need to install
6225         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
6226         (However the Makefile.am isn't changed yet because of the
6227         logistics of merging gtk-hp-patches piecemeal)
6228
6229         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
6230         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
6231         gtk_text_iter_get_line is now used in the public API for a
6232         different purpose.
6233
6234         * gtk/gtktextiter.h: Clean up function names to be more
6235         consistent. Always call char offset "offset" and byte index
6236         "index". A "line" is always a line number. 
6237
6238         (gtk_text_iter_is_last): new function, more efficient than 
6239         the existing way to check
6240         (gtk_text_iter_is_first): new function, also more efficient
6241
6242         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
6243
6244         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
6245         gtk_text_iter_forward_char, etc.
6246
6247         (gtk_text_iter_forward_to_tag_toggle): Renamed from
6248         forward_find_tag_toggle, since this isn't a linear search
6249
6250         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6251
6252         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
6253         New functions, search for a buffer substring.
6254
6255         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6256         interactive and default editable (since we need to store that info
6257         until we receive the selection data).
6258
6259         Remove all the _at_char and at_line etc. versions of functions;
6260         only have iterator versions.
6261
6262         Add _interactive() versions of functions, that consider the
6263         editability of text. (FIXME add interactive flag to the 
6264         insert/delete signals per Darin's suggestion)
6265
6266         (gtk_text_buffer_get_tag_table): new function, demand-creates the
6267         tag table if necessary
6268
6269         Remove declaration of gtk_text_buffer_get_iter_from_string
6270
6271         (_gtk_text_buffer_get_btree): private/internal function, added.
6272         
6273
6274         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6275         (gtk_text_line_is_last): new function
6276
6277 2000-07-25  Havoc Pennington  <hp@redhat.com>
6278
6279         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6280         using GtkProgressBar. See Changes-2.0.txt for details.
6281
6282         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6283         "pulse_step" which are the equivalent of
6284         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6285         Implement new API.
6286         
6287         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6288         (use_text_format) to mark whether text set on the progress bar is
6289         a format string. Deprecate entire GtkProgress interface.
6290
6291         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6292         (gtk_progress_build_string): make this a no-op if use_text_format
6293         is FALSE
6294
6295         * docs/Changes-2.0.txt: Describe progress bar changes.
6296
6297 2000-07-25  Tor Lillqvist  <tml@iki.fi>
6298
6299         * Makefile.am: Include the build directory.
6300
6301         * configure.in: Generate build/Makefile, build/win32/Makefile,
6302         gdk/, gdk/win32/, and gtk/makefile.mingw.
6303
6304         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6305         Add GETTEXT_PACKAGE.
6306         
6307         * gdk/gdk.def
6308         * gtk/gtk.def: Updates.
6309
6310         * gdk/gdkfont.h
6311         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6312         need them any longer.
6313
6314         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6315
6316         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6317         PANGOWIN32_LIBS and gdk_pixbuf.
6318
6319         * gdk/win32: Compiles, but no doubt doesn't work at all.
6320
6321         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
6322
6323         * gdk/win32/gdkinput.c: New file, temporarily.
6324         
6325         * gdk/win32/gdkinput-win32.h: New file
6326
6327         * gdk/win32/gdkinputprivate.h: Remove.
6328
6329         * gdk/win32/gdkpango-win32.c: New file.
6330
6331         * gtk/makefile.mingw.in: New file
6332
6333         * gtk/makefile.cygwin: Removed
6334         
6335         * gtk/Makefile.am: Update accordingly.
6336
6337         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6338         made externally visible.
6339
6340         * gtk/gtkmain.c: Use it.
6341         
6342         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6343         is enough.
6344
6345         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6346
6347 2000-07-24 Elliot Lee <sopwith@redhat.com>
6348         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6349         individual backends already.
6350         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6351         again. Yes, there really is a good reason for this, if you are using the gdkregion
6352         internals, and if you're not, why do you care?
6353         * gdk/gdkwindow.c: Fix inverted condition
6354         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6355         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6356         * gtk/gtkrange.c: Redraw trough when moving.
6357         * gtk/gtktypeutils.c: Fix warning by adding const cast.
6358         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6359
6360 2000-07-23  Tor Lillqvist  <tml@iki.fi>
6361
6362         * configure.in: Check for mkstemp and sigsetjmp. Output
6363         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6364
6365         More work on GDK for Win32. Still in an intermediate state.
6366
6367         * gdk/makefile.cygwin
6368         * gdk/win32/makefile.cygwin: Removed.
6369         
6370         * gdk/makefile.mingw.in
6371         * gdk/win32/makefile.mingw.in: New files.
6372
6373         * gdk/Makefile.am
6374         * gdk/win32/Makefile.am: Generate and distribute them.
6375
6376         * gdk/win32/gdkwindow-win32.h
6377         * gdk/win32/gdkdrawable-win32.h
6378         * gdk/win32/gdkpixmap-win32.h: New files.
6379
6380         * gdk/win32/gdkcolor-win32.c
6381         * gdk/win32/gdkcursor-win32.c
6382         * gdk/win32/gdkdrawable-win32.c
6383         * gdk/win32/gdkgc-win32.c
6384         * gdk/win32/gdkimage-win32.c
6385         * gdk/win32/gdkprivate-win32.h
6386         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6387         Rename fields and variables called xcursor, xid, etc (these names
6388         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
6389
6390 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
6391
6392         * gtk/gtkentry.[ch]: Fix some problems with vertical
6393         alignment.
6394
6395         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
6396         char/byte confusion.
6397
6398 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
6399
6400         * gtk/gtktextview.c (changed_handler): Fix bug where
6401         redraw wasn't being done properly when height of
6402         dirty region changed.
6403
6404         * demos/Makefile.am: Remove various references to
6405         -lgmodule
6406
6407 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
6408
6409         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
6410         PangoAttrShape to reserve space for pixmaps, add 
6411         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
6412         in the display functions.
6413         
6414         * gtk/testgtk.c (create_layout): Set some more exotic
6415         scrolled window options
6416
6417         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
6418         Add function to set the shadow type of a window, to allow
6419         putting a shadow around widgets such as GtkLayout or GnomeCanvas
6420         which don't draw their own frame.
6421
6422 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
6423
6424         * docs/tutorial/package-db-tutorial.sh: New file for
6425           packaging DocBook format tutorial
6426
6427 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
6428
6429         * docs/tutorial/gtk-tut.sgml: Minor updates
6430
6431         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
6432
6433 2000-07-19  Tor Lillqvist  <tml@iki.fi>
6434
6435         * gtk/gtksignal.c: Fix C++ comment.
6436
6437         * gtk/gtkimmulticontext.c
6438         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
6439         don't return value from void functions.
6440
6441         * gtk/gtk.def: Add gtk_rc_style_unref.
6442
6443 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6444
6445         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
6446         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
6447         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
6448         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
6449         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
6450         gtk/gtktypeutils.h: Include files outside of the extern "C"
6451         block. Makes some C++ compiler happy. Reported by Denis Vakatov
6452         <vakatov@peony.nlm.nih.gov>.
6453
6454 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
6455
6456         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
6457           Completes first pass. Hurrah!
6458
6459 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
6460
6461         * docs/tutorial/gtk-tut.sgml: More clean ups.
6462
6463 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
6464
6465         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
6466         paint the background of the text area which was accidentally
6467         removed at some point.
6468
6469         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
6470           
6471          - Move most of the functionality from the theme vtable
6472            into GtkRcStyleClass and GtkStyleClass. The moved
6473            vtable functions were changed a bit in the move to
6474            work better in their new home.
6475
6476          - Get rid of the engine and engine_data fields from
6477            GtkRcStyle and GtkStyle; instead the theme
6478            engine derives theme-specific subclasses of GtkRcStyle
6479            and GtkStyle
6480
6481          - Add extra dlsym() found entry point to themes,
6482            theme_create_rc_style().
6483
6484         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
6485         in gtk_style_real_copy.
6486
6487         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
6488         to register a type associated with an engine. (The engine
6489         won't be unloaded as there is an instance of the type.)
6490
6491
6492 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
6493
6494         * docs/tutorial/gtk-tut.sgml: Clean ups.
6495
6496 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
6497
6498         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
6499           of cleaning up to do.
6500
6501 2000-07-15  Tor Lillqvist  <tml@iki.fi>
6502
6503         * gdk/testgdk.c: New file, quick hack to test backends for
6504         pixel-by-pixel correctness of the most simple graphic operations.
6505
6506 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
6507
6508         * Really release 1.3.1
6509         
6510         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
6511         include structure.
6512
6513 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
6514
6515         * Released 1.3.1
6516
6517 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
6518
6519         * gtk/gtktextlayout.c: use FALSE for size_only most
6520         of the time when calling gtk_text_layout_get_line_display()
6521         to avoid causing double reshapes when a redraw follows
6522         immediately after.
6523
6524 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
6525
6526         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
6527         appropriate region and gdk_window_process_updates() so trough
6528         updating doesn't lag behind the window being scrolled.
6529
6530         * gdk/gdkgc.c: Make parent_class pointer static.
6531          
6532 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
6533
6534         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
6535         include <string.h>.
6536          
6537         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
6538         cut-and-paste error in computing memory offset for 4 channels.
6539
6540 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
6541
6542         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
6543         gtk_rc_append_default_pixmap_path(), since it wasn't
6544         adding an interesting path and we don't have a meaningful
6545         default for this value.
6546
6547 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
6548
6549         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
6550         gtk-config to gtk-config-2.0 move gtk_.m4 to
6551         gtk-2.0.m4
6552
6553         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6554         gdk/Makefile.am demos/Makefile.am: Change 
6555         library names to libgtk-1.3.la, etc, so that we
6556         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
6557
6558         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6559         gdk/Makefile.am gdk/x11/Makfile.am
6560         Move include files into /usr/include/gtk-2.0, 
6561         /usr/lib/gtk-2.0/include/
6562          
6563         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
6564         gtk/gtkintl.h: Change package for gettext from 
6565         gtk+ to gtk20. Put hack in autogen.sh to modify
6566         po/Makefile.in.in after gettextize to make this
6567         possible.
6568
6569         * gtk+.spec: Some updates, not tested.
6570
6571         * gdk-pixbuf/Makefile.am: Move loaders into
6572         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
6573
6574         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
6575         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
6576         to THEMENAME/gtk-2.0/. Move engine directory  to
6577         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
6578         
6579 2000-07-12  Tor Lillqvist  <tml@iki.fi>
6580
6581         Win32 changes, still doesn't build though.
6582
6583         * gdk/makefile.cygwin
6584         * gdk/win32/makefile.cygwin
6585         * gtk/makefile.cygwin: Updates.
6586
6587         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
6588         default values for fg and bg pixel as X11 does (0 and 1), not
6589         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
6590         Use 0 for pen width by default (treated as 1 anyway later, but for
6591         apps that might check the value in the GdkGC).
6592         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
6593         interface to gdk_gc_predraw and _postdraw.
6594
6595         * gdk/win32/gdkwin32.h
6596         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
6597
6598         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
6599         extraneous semicolon.
6600
6601         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
6602
6603         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
6604         not the Win32 bitspixel value.
6605
6606         * gdk/win32/gdkcc-win32.c:
6607         * gdk/win32/gdkcolor-win32.c 
6608         * gdk/win32/gdkprivate-win32.h
6609         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
6610         GDK object structure.
6611
6612 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
6613
6614         * docs/tutorial/gtk_tut_12.es.sgml (name): 
6615         * docs/tutorial/gtk_tut_it.sgml (name): 
6616         * docs/tutorial/gtk_tut_fr.sgml (name): 
6617         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
6618         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
6619
6620 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
6621
6622         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
6623           small changes.
6624
6625 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
6626
6627         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
6628         a bug here, never been here and never fixed anything ;(
6629         (don't segfault if tree->root_tree is NULL, which happens prior
6630         to widget realization, but puke instead).
6631
6632 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
6633
6634         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
6635         add the necessary tokens.
6636
6637         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
6638         (gtk_rc_style_to_style): copy thicknesses.
6639         (gtk_rc_init_style): apply thicknesses.
6640         (gtk_rc_parse_style): parse xthickness and ythickness.
6641
6642         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
6643
6644         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
6645         (gdk_window_new): 
6646         (_gdk_windowing_window_init): 
6647         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
6648         (gdk_pixmap_create_from_data): 
6649         (gdk_bitmap_create_from_data): 
6650         (gdk_pixmap_new): 
6651         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6652         (gdk_image_new): 
6653         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
6654         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
6655         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
6656         (gdk_colormap_get_system): 
6657         (gdk_colormap_new): 
6658         * gdk/gdkwindow.c (gdk_window_init): 
6659         * gtk/gtkstyle.c (gtk_style_new):
6660         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
6661         * gdk/gdkpixmap.c (gdk_pixmap_init): 
6662         * gtk/gtkrc.c (gtk_rc_style_new):
6663         use g_object_new() instead of g_type_create_instance() which
6664         is a private function for fundamental type implementations.
6665
6666 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
6667
6668         * configure.in: Add check for db2html
6669
6670 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
6671
6672         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
6673         hack to set glib_debug_objects based on gtk_debug_flags.
6674
6675 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
6676
6677         * INSTALL.in: Update the Prerequisites section.
6678
6679         * Makefile.am demos/Makefile.am docs/Makefile.am
6680         docs/tutorial/Makefile.am gdk/x11/Makefile.am
6681         gdk/linux-fb/Makefile.am: Dist fixes
6682
6683 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
6684
6685         * NEWS: 10,000 foot view of 1.3.1 changes.
6686
6687 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
6688
6689         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
6690         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
6691         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
6692         gdk/x11/gdkmain-x11.c: 
6693
6694         Patch from George Lebl to add a GdkGrabStatus enumeration to use
6695         as a return value of gdk_*_grab(). Previously, we just
6696         returned the X11 values directly.
6697
6698 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
6699
6700         * gdk/x11/Makefile.am: Patch from George Lebl to 
6701         install all the headers in the right place.
6702
6703 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
6704
6705         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
6706           initial conversion to DocBook.
6707
6708 2000-07-04  Tor Lillqvist  <tml@iki.fi>
6709
6710         * README.win32: Improve a bit.
6711
6712         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
6713         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
6714         Alt+0nnn on the numpad (used to enter characters by numeric code
6715         from current DOS or ANSI codepage) working correctly, as in other
6716         Windows apps.
6717
6718         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
6719         same argument validity tests as in X11 version.
6720         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
6721
6722         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
6723         definitions in case missing from headers.
6724
6725         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
6726         destroy the window-specific cursor.
6727         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
6728         calling GetModuleHandle(NULL).
6729         (gdk_window_set_cursor): Reworked to always copy the passed cursor
6730         with CopyCursor before setting it as the window-specific
6731         cursor. It is OK for the caller to destroy the GdkCursor (and thus
6732         also its Windows cursor) after calling this function. Destroy any
6733         previous window-specific cursor.
6734
6735 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
6736
6737         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
6738         font charset is iso8859-1, not iso-8859-1.
6739
6740 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
6741
6742         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
6743         Use g_get_charset() instead of g_get_codeset().
6744
6745         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
6746         Comment out some strdup'ing functions to keep timj
6747         happy until we finish fighting this out.
6748
6749 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
6750
6751         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
6752         <= width or height.
6753
6754         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
6755         from 1.2 for parent/child states.
6756
6757         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
6758         of typos.
6759
6760         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
6761         event structures, replace with a generic axes field. Replace 
6762         deviceid/sourec with GdkDevice *device.
6763
6764         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
6765         to extract particular axis use value from event. (Also
6766         can be used for normal X/Y.)
6767
6768         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
6769         allow for arbitrary number of axes, namespace everything
6770         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
6771         everywhere.
6772
6773         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
6774         Get rid of the gdk_input_vtable setup if favor of simply
6775         defining the functions in gdkinput-none/gxi/xfree.c in
6776         a similar fashion to the way that the port structure is 
6777         done.
6778
6779         * gtk/gtkdnd.c: Fix fields of synthesized button press event
6780         for new event structures. 
6781
6782         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
6783         new device interfaces.
6784
6785 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
6786
6787         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
6788         set the initial text.
6789
6790         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
6791         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
6792         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
6793         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
6794
6795         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6796         pango_layout_set_font_description to simplify.
6797
6798 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
6799
6800         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6801         pango_layout_set_font_description to simplify.
6802
6803 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
6804
6805         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
6806         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
6807         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
6808
6809         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
6810         PANGO_PIXELS() macro.
6811
6812 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
6813
6814         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
6815         that returns a PangoContext owned by the widget and updated to
6816         match future changes in the widget. Also, make 
6817         gtk_widget_create_pango_layout() use this context. If we ever
6818         add a ::changed signal to PangoContext, this will make things
6819         much more convenient. 
6820
6821         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
6822         in the appropriate places instead of destroying the layouts and
6823         creating new ones.
6824
6825         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
6826         in a few strategic places.
6827
6828 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
6829
6830         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
6831         gtk_widget_size_request() on reparented child, if one. Otherwise,
6832         queue_resize() on the child never results in it getting size-requested
6833         at all.
6834
6835         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
6836         in option menus, so that (with luck) people won't copy it into
6837         their apps in the future.
6838
6839         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
6840         to gtk_option_menu_calc_size. This isn't perfect, but should fix
6841         a lot of problems with changing the size of the menu's menu
6842         items after adding it to the option menu.
6843
6844         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
6845
6846         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
6847         the text direction for a widget changes.
6848
6849         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
6850         ::direction_changed to get rid of various hacks.
6851
6852 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
6853
6854         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
6855         name.
6856
6857 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
6858
6859         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
6860         flag to the structure. Do not call XFreePixmap on pixmaps created
6861         by gdk_pixmap_foreign_new().
6862
6863 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
6864
6865         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
6866         value using GdkRGB functionality given GdkColormap and GdkColor.
6867         (name not final, waiting for inspiration.)
6868         
6869         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
6870         set the foreground/background of a GC using the GC's colormap
6871         and GdkRGB. (name not final, waiting for inspiration.)
6872
6873         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
6874         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
6875
6876         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
6877         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
6878         purely a function of the corresponding colormap. Make
6879         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
6880
6881         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
6882         gdk_pixbuf_*create_from_xpm_* in terms of
6883         gdk_pixbuf_new_from_xpm_data(), move into platform independent
6884         code.
6885
6886         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
6887         advantage of the new draw_rgb_32_image_dithalign.
6888
6889         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
6890
6891         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
6892         on each created GC.
6893
6894         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
6895
6896         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
6897         which we initialize from the drawable when the GC is created,
6898         if the drawable has a colormap.
6899
6900         * gdk/x11/gdkgc-x11.c: include string.h for memset.
6901
6902         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
6903
6904         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
6905
6906 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
6907
6908         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
6909         actually returning expose events, make sure to set
6910         the count field properly.
6911
6912         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
6913         accidentally reintroced bug which always cleared
6914         the graphics_exposures value. 
6915
6916 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
6917
6918         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
6919
6920 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
6921
6922         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
6923
6924 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
6925
6926         * docs/faq/gtk-faq.sgml: Start of Section 6.
6927
6928 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
6929
6930         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
6931         
6932         (Fixes problem with drawing childless frames. Pointed out
6933         by and a first patch from Anders)
6934         
6935         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
6936         compute a child_allocation, even if we don't have a child.
6937
6938         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
6939         Always chain to the parent's impl, even if we don't have a child.
6940
6941 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
6942
6943         * gdk/gdkrgb.c: If possible, create only a single shm segment and
6944         use multiple parts of it instead of creating a bunch of separate
6945         segments, since the maximum number of segments per system is not
6946         large. (This might be worth backporting to GTK+-1.2.x if we make a
6947         new release )
6948
6949         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
6950         structure in preparation for per-colormap GdkRGB.
6951
6952         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
6953         to False when we get EINVAL from shmget so that the caller of
6954         gdk_image_new can retry with a smaller segment size.
6955
6956 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
6957
6958         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
6959
6960 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
6961
6962         * configure.in: make the current version number 1.3.1 (binary age 0,
6963         interface age 0).
6964         
6965         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
6966         gtkcompat.h is all we want.
6967
6968         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
6969         GLib primitive types. fixed g_type_register_fundamental() argument
6970         ordering.
6971
6972         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
6973         compiles.
6974
6975         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
6976         object code cleanup, comment trigraph fixes, etc...
6977
6978 2000-06-23  Havoc Pennington  <hp@redhat.com>
6979
6980         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
6981         instead of making up a bogus name for first_para_mark
6982
6983         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
6984         0 as a context ID
6985
6986 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
6987
6988         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
6989
6990 2000-06-21  Havoc Pennington  <hp@pobox.com>
6991
6992         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
6993         we didn't check window->bg_pixmap != GDK_NO_BG.
6994
6995         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
6996         gdk-pixbuf
6997
6998 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
6999
7000         * docs/faq/gtk-faq.sgm: Move file to here.
7001           TODO: Update Makfile.am 
7002
7003 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
7004
7005         * docs/gtk-faq.sgm: Add Section 2
7006
7007 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
7008
7009         * docs/gtk-faq.sgm: New file. Start of DocBook
7010           version of the FAQ.
7011
7012 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
7013
7014         * configure.in (GDK_PIXBUF_MAJOR): Define version
7015         numbers for GDK_PIXBUF_*, as they get substituted
7016         into a header file. Need to consider versioning
7017         for gdk-pixbuf more carefully later.
7018
7019 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
7020
7021         Work with srcdir != builddir.   
7022         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
7023         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
7024         * demos/testpixbuf.c: Likewise.
7025         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
7026         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
7027         <gdk/x11/gdkx.h>.
7028         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
7029         "gdk-pixbuf.h".
7030         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
7031
7032 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
7033
7034         * TODO.xml: Change 1.4 version numbers to 2.0.
7035
7036 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
7037
7038         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
7039         fixups to GTK+ standard.
7040
7041 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
7042
7043         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
7044         gdk-pixbuf.
7045
7046         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
7047         fixups for GObject.
7048
7049         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
7050         gdk-pixbuf with GDK dependencies moved into GDK.
7051         
7052         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
7053         move gdk-pixbuf-loader here until GObject has signals.
7054
7055         * demos/: New directory of demos. Move demos from
7056         gdk-pixbuf here.
7057
7058         * demos/pixbuf-init.c: Small bit of code to check for
7059         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
7060         set GDK_PIXBUF_MODULEDIR appropriately.
7061
7062         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
7063         define which no longer makes sense.
7064
7065 2000-06-21  Havoc Pennington  <hp@redhat.com>
7066
7067         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
7068         gtk_get_default_language
7069
7070         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
7071         new function to get the default language
7072
7073         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
7074         s/gtk_text_view_style_values/gtk_text_style_values/
7075
7076         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
7077         Add a "language" field to tags.
7078
7079         (gtk_text_tag_set_arg): Fix bug in setting
7080         "bg_full_height_set" tag.
7081
7082 2000-06-21  Havoc Pennington  <hp@redhat.com>
7083
7084         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
7085         in the interfaces
7086
7087         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
7088         stuff instead when possible.
7089
7090         * gtk/gtktexttypes.h: Delete some unused constants
7091
7092         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
7093         testtextbuffer.c: use glib instead of custom unicode routines
7094
7095 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
7096
7097         * docs/es/: Removed mistakenly added generated sgml
7098
7099         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
7100         Remove outdated info files.
7101
7102         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
7103         Moved tutorial files into subdir
7104
7105         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
7106         subdir.
7107
7108         * docs/man/gtk_button.pod: Remove. (contents will be
7109         integrated into gtk-reference button page.)
7110
7111         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
7112         docs/faq/Makefile.am: Adjust for new organization
7113
7114 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
7115
7116         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
7117         not $(MKINSTALLDIRS)
7118
7119 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
7120
7121         * gtk/testgtk.c (create_text): Finish the job Elliot started
7122         of removing font setting test for text widget. (Since text widget
7123         and GdkFont are not deprecated, and cause portability problems.)
7124
7125 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
7126
7127         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
7128         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
7129         Remove use of libunicode in favor of new GLib functions.
7130
7131         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
7132         nano-x, framebuffer. The X11 include is just a hack until we get
7133         the necessary functions in gdkcolor.h, so there is no reason to
7134         add other includes of platforms.
7135
7136         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
7137         window bigger than the screen change.
7138
7139         * gtk/testgtk.c: Revert some random changes from Elliot
7140         that had no particular point and were causing testgtkrc
7141         not to function correctly.
7142         
7143         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
7144         because GdkSegment and GdkRegionBox have the same fields,
7145         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
7146         results in clearer code.
7147
7148         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
7149         gdk_input_translate_coordinates): Fix missed GdkObjectification
7150
7151 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7152
7153         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
7154         * gtk/gtk{plug,socket}.h: Missed commits from previous.
7155
7156 2000-06-20  Havoc Pennington  <hp@redhat.com>
7157
7158         * modules/linux-fb/Makefile.am: Make this compile
7159         without framebuffer enabled
7160
7161         * gdk/linux-fb/Makefile.am: Add conditional to not build
7162         framebuffer unless specified in configure
7163
7164         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
7165         the size of the target instead of source if -1 was passed for
7166         width/height
7167
7168         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
7169         width/height confusion.
7170
7171 2000-06-19  Havoc Pennington  <hp@redhat.com>
7172
7173         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
7174         GDK_DRAWABLE_XID. In the future, we probably want to make it
7175         faster with G_DISABLE_CHECKS turned on.
7176
7177 2000-06-14  Havoc Pennington  <hp@redhat.com>
7178
7179         * gdk/Makefile.am: add gdkpixmap.c
7180
7181         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
7182         s/gdk_image_init/_gdk_windowing_image_init
7183
7184         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
7185         ref/unref
7186
7187         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
7188
7189         * gdk/gdkcompat.h: remove GdkWindowType compat, since
7190         GdkWindowType is now non-deprecated; 
7191         change gdk_window_get_type() compat to be
7192         gdk_window_get_window_type().
7193
7194         * gdk/gdkdnd.h: make GdkDragContext a GObject.
7195
7196         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
7197         virtual GObject. Make all functions call into the vtable.
7198         Move gdk_image_put() guts in here. Remove GdkDrawableType
7199         and gdk_drawable_get_type(), these are now GdkWindow-specific.
7200         draw_image, get_depth, get_size, set_colormap, get_colormap,
7201         get_visual added to the vtable.
7202         
7203         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
7204         GObject. Virtualize everything. 
7205         (gdk_gc_new_with_values): remove check for destroyed window,
7206         because now GdkWindow::create_gc will check this.
7207         (gdk_gc_set_values): New function to set GC values, this 
7208         was already implemented but wasn't in the header
7209
7210         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
7211
7212         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
7213         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
7214         remove _gdk_window_class; add _gdk_window_impl_get_type() and
7215         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
7216         _gdk_windowing_window_init, rename gdk_image_init to
7217         _gdk_windowing_image_init.
7218         
7219         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
7220         (gdk_draw_layout): Remove check for destroyed window, 
7221         because all the drawable methods already check it.
7222         
7223         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
7224         Add gdkpixmap.c which contains implementation of GdkDrawable
7225         virtual table (by chaining to a platform-specific implementation
7226         object).
7227         
7228         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
7229         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
7230         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
7231         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
7232         GdkColormapPrivate. 
7233
7234         * gdk/gdktypes.h: #include <glib-object.h>
7235
7236         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
7237         Move most functionality to platform-specific implementation
7238         object. GdkWindow itself now handles the backing store, then
7239         chains to the platform-specific implementation.
7240         (gdk_window_get_window_type): return GdkWindowType of the window.
7241         (gdk_window_peek_children): New routine, returns the children of 
7242         a GdkWindow
7243         (gdk_window_get_children): Was in X11-specific code and did 
7244         XQueryTree. Changed to simply return a copy of window->children; 
7245         so it can go in cross-platform code.
7246         
7247         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
7248
7249         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
7250         GdkColormap; just changed to use the new private data instead
7251         of casting to GdkColormapPrivate.
7252
7253         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
7254         gdk_cursor_new().
7255
7256         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
7257         (private data member in the GObject). 
7258         (xdnd_manager_source_filter): Function had broken 
7259         error handling, fix it (use gdk_error_trap_push).
7260
7261         * gdk/x11/gdkdrawable-x11.c: This file now implements
7262         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
7263         base class is purely for the convenience of the X port,
7264         and not part of the interface to cross-platform GDK.
7265
7266         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7267         
7268         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7269         specific to X, and returned by the create_gc virtual method
7270         of GdkDrawableImplX11. 
7271         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7272         rather than gchar, this was also changed in the GdkGC vtable.
7273         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7274         mask is 0, return immediately, instead of checking every flag.
7275         This is faster, and keeps us from segfaulting if values is NULL
7276         and the mask contains some nonzero flags.
7277
7278         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7279         GdkWindow.
7280
7281         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
7282         GdkWindowPrivate is gone.
7283
7284         * gdk/x11/gdkim-x11.c: rename things that got renamed.
7285
7286         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
7287         remove the image_put stuff that got transferred to GdkDrawable.
7288         
7289         * gdk/x11/gdkinput.c: renamings
7290
7291         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7292
7293         * gdk/x11/gdkpixmap-x11.c: GObject conversion
7294
7295         * gdk/x11/gdkprivate-x11.h: indentation fixes
7296
7297         * gdk/x11/gdkproperty-x11.c: renamings
7298
7299         * gdk/x11/gdkselection-x11.c: renamings
7300
7301         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
7302         implements the platform-specific "impl" object.
7303         Moved gdk_window_get_children to gdk/gdkwindow.c
7304
7305         * gdk/x11/gdkx.h: Remove all the private structs and private datas
7306         that no longer exist. Add declaration of GdkGCX11 object here.
7307         Fix all the macros to still work. 
7308
7309         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7310         GdkDragContext from the boxed types since they are now GObjects.
7311
7312         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7313         moved xthickness/ythickness into the instance. GtkStyleClass
7314         functions are now in the standard vtable for GtkStyle, so you have
7315         to create a GObject subclass to write a theme engine.
7316         (gtk_style_copy): fixed a leaked PangoFontDescription
7317         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7318         can be the standard GObject function.
7319         
7320         * Throughout GTK:
7321         s/style->klass->[xy]thickness/style->[xy]thickness
7322         s/pango_layout_unref/g_object_unref/
7323
7324         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7325         
7326         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
7327         accessing GDK internals.
7328
7329         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
7330         accessing GDK internals.
7331
7332 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7333
7334         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7335
7336         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7337         problem by calculating event position relative to the trough
7338         rather than the slider.
7339         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7340
7341         * gdk/gdkgc.h: Add GDK_NOR.
7342
7343         * configure.in, Makefile.am: Add modules top level dir
7344         * configure.in: Only use pangox library if building x11 target.
7345         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7346
7347 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7348
7349         * gtk/gtkcolorsel.c: Change private class member to be named
7350         private_data throughout the file.
7351
7352         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7353         private_data to avoid clashing with keyword.
7354
7355 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7356
7357         * gdk/gdkdnd.h: Add comment to remove warning.
7358
7359 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
7360
7361         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7362         Byelorussian language; changed the Makefile and file names 
7363         to reflect that.
7364
7365 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
7366
7367         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7368         rather than gdk_window_hide; this makes things work
7369         correctly if the window is programmatically hidden while
7370         iconified.
7371
7372 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
7373
7374         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7375         cut and paste typo where wrong pixmap was being
7376         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7377
7378 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
7379
7380         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7381         Add helper function to compute format / bytes 
7382         relationship. Use in a couple places to fix up
7383         errors which assume 8 * format.
7384
7385         * gtk/gtkselection.c (gtk_selection_request): Use 32
7386         rather than 8 * sizeof (GdkAtom), to work correctly
7387         on Alpha.
7388
7389 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
7390
7391         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
7392         libgtk.la
7393         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
7394         versions
7395
7396         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
7397         checking macros return NULL since the function has a return value.
7398
7399 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
7400
7401         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
7402         GTK+ from building at all.
7403
7404         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
7405
7406 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
7407
7408         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
7409         gtk/Makefile.am: make it possible to configure gtk for different
7410         targets on the same platform. The library name is now 
7411         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
7412         flag. Only the x11 target compiles right now.
7413         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
7414         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
7415         * gdk/nanox/gdk*generic*: delete generic region code.
7416         * gdk/linux-fb/gdk*generic*: delete generic region code.
7417         * README.nanox: update information.
7418         
7419 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
7420
7421         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
7422         prepend not append. (Pointed out by Brett Hall.)
7423
7424 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
7425
7426         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
7427
7428 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
7429
7430         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
7431         need this later, and this makes sure that the atexit for
7432         glib gets called after that for GDK, so atexits are
7433         properly ordered for object leak checking.
7434
7435         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
7436
7437         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
7438         pango_x_shutdown_display()
7439
7440         * gtk/simple.c (main): Close window on destroy.
7441
7442 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
7443
7444         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
7445         to treat initial creation different from setting with 
7446         regards to the graphics-exposures parameter, so add a parameter
7447         indicating whether this is initial or not.
7448
7449 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
7450
7451         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
7452         to sort of work by adding an extra return_exposes arg
7453         to gdk_event_translate() - it might be better to simply
7454         deprecate the function altogether and force people to rewrite
7455         without it. gdk_window_scroll() handles most of it, and where
7456         gdk_window_scroll() doesn't work, simply redrawing more does.
7457
7458         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
7459         assertion.
7460
7461         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
7462
7463         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
7464         bunch of pretty much useless /* Print debugging info */ comments 
7465         which had drifted away from the code they were commenting.
7466
7467 2000-06-02  Havoc Pennington  <hp@pobox.com>
7468
7469         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
7470         is in working order.
7471         
7472         * gtk/testtext.c: Change to reflect anonymous mark API
7473
7474         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
7475
7476         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
7477         field, which was unused.
7478
7479         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
7480         saves some typing.
7481
7482         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
7483
7484         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
7485         flag on the insertion point and selection bound
7486
7487         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
7488         make mark-manipulation functions take a GtkTextMark* instead of a
7489         mark name.
7490         
7491         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
7492         GtkTextMarkBody; will be used to detect attempts to delete
7493         the permanent marks (insert and selection bound)
7494
7495         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
7496
7497 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
7498
7499         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
7500         flag to on.
7501
7502         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
7503         Honor DOUBLE_BUFFRED_FLAG
7504
7505         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
7506         function to set the DOUBLE_BUFFERED flag.
7507
7508         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
7509         or not exposes done on the widget should be double-buffered.
7510
7511         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
7512         to be what would be expected. (Fixes problem with a
7513         g_return_if_fail() validating a TextDirection enumeration)
7514
7515 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
7516
7517         * gtk/gtkwidget.c: Remove all references to 
7518         offscreen flag which was no longer used.
7519
7520         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
7521
7522         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
7523         for non-null label_widget->parent.
7524
7525         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
7526         which no longer was used.
7527
7528         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
7529
7530         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
7531         for null arguments.
7532
7533         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
7534         check for destroyed windows.
7535
7536 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
7537
7538         * gtk/gtkimmulticontext.c: Add a finalize method and unref
7539         the slave context there.
7540
7541         * gtk/gtkinvisible.[ch]: Make reference counting behavior
7542         identical to GtkWindow.
7543
7544 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
7545
7546         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
7547         pangox to here, so we can write them independent of rendering
7548         system, using GDK primitives.
7549
7550         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
7551         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
7552         since we have a rendering-system independent implementation in
7553         terms of draw_glyphs().
7554         
7555         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
7556         function to render a single line.
7557
7558         * gdk/x11/gdkpango.c: Move the guts of this file mostly
7559         into ../gdkpango.c, which simplifies things, since we
7560         don't have to deal with raw X gc's.
7561
7562 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
7563
7564         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
7565         get the logical attributes for a given GtkTextLine.
7566
7567 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
7568
7569         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
7570         g_locale_get_codeset() to g_get_codeset() change.
7571
7572 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
7573
7574         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
7575         descriptions.
7576
7577         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
7578         the entry.
7579
7580         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
7581         redoing (vastly simplifying) for Pango. Still needs quite
7582         a bit of work. (Size selection is currently poor. List of 
7583         predefined sizes is not a good idea, since all of these
7584         sizes won't necessarily be distinct.)
7585
7586 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
7587
7588         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
7589         CODESET results for LANG=C.
7590
7591 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
7592
7593         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
7594         which takes a stringized pango font description;
7595         ignore the older 'font' and 'fontset' declarations.
7596
7597         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
7598         field with a GdkFont derived via gdk_font_from_description(),
7599         for compatibility. (Should we just remove it entirely?
7600         Probably too much compatibility breakage, but people
7601         should be migrating to the new Pango stuff as quickly
7602         as possible.)
7603
7604 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
7605
7606         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
7607
7608 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
7609
7610         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
7611         redoing; there are some bugs in size allocation right
7612         now, the semi-existant distinction between header / day
7613         fonts was removed, but, with Pango, could actually
7614         be made functional in a nice way.
7615         
7616         * gtk/testcalender: Move calender from examples into this
7617         directory as a test program. (We really need to restrcture
7618         testgtk into a whole directory full of tests for every
7619         widget or functionality group, separated into multiple .c
7620         files.)
7621
7622 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
7623
7624         * gtk/testgtk.c (file_exists): Fix stupid typo that
7625         was keeping RC file from being loaded.
7626
7627         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
7628         RC file font code.
7629
7630 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
7631
7632         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
7633         Add function to load a GdkFont from a PangoFontDescription.
7634
7635 2000-05-29  Tor Lillqvist  <tml@iki.fi>
7636
7637         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
7638         variable should be of type GdkEventPrivate.
7639
7640 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
7641
7642         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
7643         to have any widget for the label, use a GtkLabel widget
7644         to display the text. (Based partially on a patch from
7645         Anders Carlson.)
7646
7647         (Quite a bit of code reorganization - strip 90% of the
7648         guts out of gtkaspectframe and add a single virtual
7649         func to GtkFrameClass - compute_child_allocation.)
7650
7651 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
7652
7653         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
7654         (Removed clist->row_center_offset field because caching
7655         it wasn't saving time or code, added private function
7656         _gtk_clist_create_cell_layout()).
7657
7658 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
7659
7660         * gtk/gtkaccellabel.c: Pangoized.
7661
7662         * gtk/[hv]ruler.c: Pangoized
7663
7664 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
7665
7666         * gtk/gtkfilesel.c (gtk_file_selection_init):
7667         Use gtk_clist_set_column_auto_resize() to remove need
7668         need for manual column width computations.
7669
7670 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
7671
7672         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
7673         ensuring Pango correctness, and considerably simplifying the
7674         code.
7675         
7676         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
7677
7678         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
7679         getting of numbers of lines.
7680
7681         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
7682         to the actual requested width of the lable, not to the wrap
7683         width we set.
7684
7685         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
7686
7687         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
7688           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
7689
7690         * gtk/gtktextview.c: Fix structure inheritance.
7691
7692         * gtk/gtkprogressbar.c: Pangoize.
7693
7694 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
7695
7696         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
7697         in a function.
7698
7699         * gtk/gtktextlayout.c (find_display_line_above): Fixed
7700         bug with computing line tops.
7701
7702         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
7703
7704 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7705
7706         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
7707         and y_offset coordinates to do what we need now. (The offset between
7708         buffer and layout coordinates has been reintroduced, but is a 
7709         bit different than before.)
7710
7711         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
7712         handle the adjustments ourselves, and scroll as necessary using
7713         the new gdk_window_scroll().
7714         
7715         The advantage of this is that when we are incrementally revalidating,
7716         we are essentially rearranging things around the visible portion
7717         of the screen. With the old setup, the visible portion of the
7718         screen was moved around in the layout, so scrolling and redrawing
7719         to track that caused jumping of the display. Since we now
7720         control the scrolling ourselves, we can suppress this and
7721         only redraw when things actually change.
7722
7723 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
7724
7725         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
7726         the region not just redisplay it after-all, since we store the
7727         cursors in the LineDisplay. (Ugly interactions here between
7728         GtkLayout and GtkTextBTree here.)
7729         
7730         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
7731
7732 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
7733
7734         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
7735         Added function to scroll contents of a window while keeping the
7736         window constant. Works by XCopyArea or guffaw-scrolling depending
7737         on the details of how the window is set up. (guffaw-scrolling
7738         still needs to be filled in.)
7739
7740 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
7741
7742         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
7743         move the debugging that was tied to a global variable
7744         to that.
7745
7746         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
7747
7748         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
7749         validated flag, in line data instead of setting height/width to
7750         -1. This allows us to perform operations with partially invalid
7751         buffer (using the old size for invalid lines) and thus to do
7752         incremental vaidation. Keep height/width aggregates up to date
7753         when deleting text and rebalancing the tree.
7754
7755         * gtk/gtktextbtree.[ch]: Add functions validate a line
7756         (gtk_text_btree_validate_line), and to validate up
7757         to a number of pixels (gtk_text_btree_validate).
7758
7759         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
7760         that indicates that something is changed and a revalidation
7761         pass is needed. Change ::need_repaint to ::changed, and
7762         make it take old and new yranges instead of a rectangle.
7763
7764         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
7765         the line_data_destroy() function from 
7766         gtk_text_btree_add_view() to a virtual function in 
7767         GtkTextLayout
7768
7769         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
7770         since we are handling partial repaints in a different fashion
7771         now.
7772
7773         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
7774         of the selection instead of queueing a repaint on the
7775         entire widget.
7776
7777         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
7778         get_selection_bounds() down to btree, make the function
7779         in buffer a wrapper around the btree function.
7780
7781         * gtk/gtktextlayout.[ch]: Add functions to check if the
7782         layout is valid and to recompute either a range of pixels
7783         aroudn a line or a certain total number of pixels.
7784
7785         * gtk/gtktextlayout.[ch]: Cache a single line display;
7786         now that we only redraw the needed portions, the hit rate
7787         for this cache is quite high.
7788         
7789         * gtk/gtktextview.[ch]: Keep track of the first paragraph
7790         on the screen so that when re-laying-out the buffer, we can
7791         keep the same place. This requires connecting to ::value_changed
7792         on the adjustments
7793
7794         * gtk/gtktextview.[ch]: Add idle functions to revalidate
7795         the buffer after we receive an ::invalidated signal.
7796         
7797 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
7798
7799         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
7800         to max of allocation and layout size, not just to the
7801         layout size.
7802
7803         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
7804         Invalidate window so it gets redrawn properly.
7805
7806         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
7807         to mean the entire window.
7808
7809         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
7810         into public header.
7811
7812 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7813
7814         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
7815         to get the name of a mark.
7816
7817         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
7818         to find the paragraph from a y position.
7819
7820 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
7821
7822         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
7823         nodes have width/height >= 0, not > 0.
7824
7825 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
7826
7827         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
7828         Add a size_only flag, so when we only need the size, we don't create
7829         useless appearance attributes.
7830
7831         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
7832         duplicate setting of font description.
7833
7834         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
7835
7836 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
7837
7838         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
7839         EXTRA_DIST. It does not work well when the file that
7840         everything depends on is not in the tarball.
7841
7842 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
7843
7844         * gtk/testgtk.c: Some hacks and fixes so that it basically
7845         works when not sitting in the GTK+ build tree.
7846
7847 2000-05-03  Havoc Pennington  <hp@redhat.com>
7848
7849         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7850         Properly determine the ordering of the tag root and the current
7851         line within the tree. Previous algorithm only worked if the tag
7852         root's immediate parent was the common root of both the current
7853         line and the tag root.
7854
7855 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
7856
7857         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
7858         alignment.
7859
7860         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
7861         the widget text directional dynamically.
7862
7863         * gtk/gtktextview.[ch]: Added functions to get and set default
7864         wrap mode.
7865
7866 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
7867
7868         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
7869         in cursor location computation.
7870
7871 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
7872
7873         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
7874         vadjusment values properly when layout gets smaller.
7875
7876         * gtk/gtktextview.c (need_repaint_handler): Areas being
7877         passed in are far completely inaccurate, and sometimes
7878         too small, so, for now, just queue a redraw on the
7879         whole visible region.
7880
7881 2000-04-25  Havoc Pennington  <hp@redhat.com>
7882
7883         * gtk/gtktextbtree.c (summary_destroy): new function to 
7884         destroy tag summary nodes
7885         (gtk_text_line_next_could_contain_tag): this function was 
7886         totally broken if the line passed in wasn't below the tag
7887         root. Fix it.
7888         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
7889         "wildcard" case, we have to do a linear scan. Blah.
7890         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
7891         we have to do the linear scan
7892         (tag_removed_cb): When a tag is removed from the tag table, 
7893         remove the GtkTextTagInfo node from the btree.
7894         (gtk_text_btree_spew): Implement the spew function, for 
7895         our debugging pleasure.
7896
7897 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
7898
7899         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
7900         a problem with referring to the wrong buffer.
7901
7902         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
7903
7904         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
7905         font description to gtk_style_new() - otherwise things
7906         don't work without a .gtkrc file.
7907
7908         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
7909         tags table if we create it ourself, too.
7910
7911         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
7912         it was conflicting with XKB modifiers.
7913
7914         * gtk/gtktextview.[ch]: Add simple support for 
7915         GtkIMContext.
7916
7917 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
7918
7919         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
7920         with deletion from last commit.
7921
7922 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
7923
7924         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
7925         in the context from the current locale.
7926         
7927         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
7928         context, not hardcoded value.
7929
7930         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
7931         not logical.
7932
7933 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7934
7935         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
7936         attributes - that doesn't handle partial-glyph selection
7937         properly. Instead use new pango_layout_line_get_x_ranges()
7938         functionality to draw the selection.
7939
7940         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
7941         now properly handles out-of-range coordinates.
7942
7943         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
7944
7945         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
7946         public.
7947
7948         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
7949         for paragraphs opposite to the base direction of the widget.
7950
7951         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
7952
7953         * gtk/gtktextlayout.c: Don't split segments on marks, since that
7954         causes Arabic words to reshape as you cursor through.
7955
7956         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
7957         cursor position when moving vertically with the arrow keys and
7958         scrolling with page-up/page-down. (Arrow keys save only the X,
7959         scrolling saves both X and Y.)
7960
7961         This means you can line-up / line-down or page-up / page-down
7962         without losing your place, and also that moving vertically
7963         with the cursor keys keeps the same X position, not the same
7964         character count:
7965
7966         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
7967         arrow keys move by display lines, not paragraphs.
7968
7969 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
7970
7971         * gtk/gtklayout.c: Make sure that the bin window is at least
7972         as big as the allocation. (Should we also make sure that the
7973         bin window is big enough to completely cover widget->window?)
7974
7975         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
7976         function to get the onscreen rectangle.
7977
7978         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
7979         for offsets in window coordinates.
7980
7981 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
7982
7983         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
7984         confusion.
7985
7986         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
7987         from the widget direction.
7988
7989         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
7990         Add a "direction" attribute.
7991
7992         * gtk/gtktextview.c: global s/tkxt/text_view/.
7993
7994         * gtk/testtext.c: Added long block of text in Arabic, to test out
7995         the direction attributes. (Some problems with the shaping system
7996         for arabic become obvious - like the fact the cursor splits words
7997         into unjoined pieces.)
7998
7999 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
8000
8001         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
8002
8003         * gtk/gtktextlayout.c: Fix up alignment.
8004
8005         * gtk/testtext.c: Add some tests for centering, wrapping.
8006
8007 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
8008
8009         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8010         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
8011         If we wrote GTK+-specific layout-render function this could just replace
8012         the draw_layout() operation in the vtable.
8013
8014         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
8015         pango_layout_get_cursor_pos() and use that function.
8016
8017         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
8018         is a non-static symbol.
8019
8020         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
8021         with gtk_text_btree_find_line_by_y()
8022
8023         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
8024         renderer that handles GtkTextAppearance attributes.
8025
8026         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
8027
8028           - Move the values in the style that don't affect geometry into a
8029             GtkTextAppearance structure.
8030           - Change underline to take a PangoUnderline and "font" a string
8031             representation of a font description
8032           - Add a "font_desc" attribute which takes a FontDescription structure.
8033
8034         * gtk/gtktextlayout.[ch]:
8035
8036           - Get rid of the display-line list per each line. Instead, we
8037             generate, on demand, a GtkTextLineDisplay structure which]
8038             contains a PangoLayout * and other necesary information
8039             (offsets, cursor locations) for displaying a paragraph.
8040           - Get rid of the code to wrap lines, create display chunks,
8041             etc. Instead, we just go through a paragraph and convert
8042             it into the necessary inputs to a PangoLayout.
8043           - Implement a new attribute type, GtkTextAttrAppearance. This
8044             holds a GtkTextAppearance, and is used to pass colors, 
8045             stipple, etc, through from the layout to the display without
8046             having to use lots and lots of individual attributes.
8047           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
8048             in terms of PangoLayout functions.
8049         
8050         * gtk/gtktextview.c: 
8051          
8052           - Handle passing the necessary PangoContext to the layout
8053           - Some fixups in painting to deal with the automatic backing store
8054             and offsetting of GTK+-1.4
8055           - Add a style_set handler so that the default style reacts
8056             properly to theme changes.
8057         
8058         * gtk/gtktext?*.[ch]: Random code-style fixes.
8059
8060         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
8061
8062 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
8063
8064         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
8065         in original form preparatory to Pango-ization and gdkimcontext-ization.
8066
8067 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
8068
8069         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
8070         so that we can derive from gtkimcontext in language bindings properly.
8071
8072 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
8073
8074         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
8075         Add a compose table including (almost) all the compose combinations
8076         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
8077         data in the XIM implementation.
8078
8079         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
8080         Moved functions to convert keyvalues from and to unicode here from
8081         the win32 port and made them public.
8082
8083 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
8084
8085         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
8086
8087 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
8088
8089         * gtk/gtkimcontext.[ch]: Base class for new input context system
8090
8091         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
8092         the real input context implementation to be loaded from modules
8093         and switched on the fly.
8094
8095         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
8096         context that just does direct keysymbol => unicode translation.
8097
8098         * gtk/gtkentry.[ch]: Start switching editing over to using
8099         GtkInputContext. (No handling of preedit yet.)
8100
8101 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
8102
8103         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
8104         many substitutions. (klass should not be subsituted.)
8105
8106 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
8107
8108         * configure.in: Add checks for Pango
8109
8110         * configure.in docs/Makefile.am: Add test for sgml2html
8111         and allow 'make dist' without building html, but print out
8112         warnings in that case. (For making snapshots)
8113
8114         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
8115         Add Pango libraries and C flags
8116
8117         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
8118         Add function (gdk_draw_layout) to draw a pango layout.
8119
8120         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
8121         for getting Pango contexts for GDK.
8122
8123         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
8124
8125         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
8126         editing.
8127
8128         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
8129         keysym => unicode translations. More languages can be added
8130         here, but real input-method support is needed.
8131
8132         * docs/Changes-1.4.txt: Added note about entry behavior.
8133         
8134         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
8135         to set the reading direction for a widget and the global direction.
8136         Add test which allows toggling the global direction. Two private
8137         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
8138
8139         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
8140           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
8141
8142         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
8143
8144         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
8145         underlining now handled by Pango.
8146
8147         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
8148         to RCStyle and Style. (Having both this and the old font name and GdkFont 
8149         is temporary.)
8150
8151         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
8152         convenience functions for creating contexts and layouts for widgets.
8153
8154         * gtk/testgtk.c: Enhance label tests with multilingual labels.
8155
8156 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
8157
8158         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
8159         titles to be active, even if they aren't visible.
8160         (gtk_clist_column_titles_passive):  Ditto.
8161
8162 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
8163
8164         * gtkmenu.c:
8165         * gtkmenu.h:
8166         * gtktypeutils.h: Spelling/grammar fixes in comments.
8167
8168 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
8169
8170         * gdk/nanox/*.h: add missing header files.
8171
8172 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
8173
8174         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
8175         send_event to TRUE.
8176         (gtk_drawing_area_size): queue a resize.
8177
8178 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
8179
8180         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
8181         the handlers, also invalidate them. bug nailed down by Karl Nelson
8182         <kenelson@ece.ucdavis.edu>.
8183
8184 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
8185
8186         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
8187         "(nil)" foundries, patch from Grigorios Magklis.
8188
8189         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
8190         on non-available fonts, based on a patch by Grigorios Magklis
8191         <maglis@cs.rochester.edu>.
8192
8193 2000-05-18  Elliot Lee  <sopwith@redhat.com>
8194
8195         * gdk/x11/gdkregion-generic.c: If a region does not have any
8196         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
8197         instead of GDK_OVERLAP_RECTANGLE_IN.
8198
8199 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
8200
8201         * gtk/gtklayout.c (gtk_layout_map): Remove references to
8202         OFFSCREEN, as it is no longer necessary.
8203
8204 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
8205
8206         * gtk/gtkcolorsel.c: Patch from David Santiago
8207         <mrcooger@cyberverse.com> to change things so that the 
8208         indicator of the active palette entry is done independently,
8209         not via the focus, since it should always be visible.
8210
8211 2000-05-17  Tor Lillqvist  <tml@iki.fi>
8212
8213         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
8214         refcount leaks as in the X11 backend.
8215
8216         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
8217         cosmetics.
8218
8219         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
8220         backend. Add _gdk_windowing_window_destroy().
8221
8222         * gtk/gtkcolorsel.c: Include correct backend-specific header.
8223         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
8224         either, but these probably do exist on nanox?)
8225         
8226         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
8227         which isn't necessarily defined by <math.h>.
8228
8229         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
8230         ancestry past GtkObject.
8231
8232         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
8233         from DLL on Win32.
8234
8235         * gtk/gtk.def: Update corresponding to recent changes.
8236
8237         * gtk/makefile.{cygwin,msc}: Updates.
8238
8239 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
8240
8241         * docs/Changes-1.4.txt: A bit of editing.
8242
8243         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
8244         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
8245         to clear the update area for the window, and clear it
8246         when hiding a window.
8247
8248         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
8249         if window destroyed.
8250
8251         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8252
8253         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
8254         gdk_window_destroy() to the generic code, since there was a lot of 
8255         window-system-independent logic it in. Add a function:
8256         
8257          _gdk_window_destroy() 
8258
8259         to the internal API to destroy a window without unreferencing it.
8260         Add a function:
8261
8262          _gdk_windowing_window_destroy()
8263
8264         That does the windowing-system-dependent part of destroying 
8265         the window.
8266
8267 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
8268
8269         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8270
8271 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
8272
8273         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
8274         Make gtk_widget_shape_combine_mask() keep a reference count on
8275         the pixmap since it keeps it around.
8276
8277 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
8278
8279         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8280         leak.
8281
8282         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8283         leak with event filters.
8284
8285 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
8286
8287         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8288         signal handlers with the right data arguments. (Fixes
8289         some warnings when a widget was repeatedly set as a drag
8290         destination.)
8291
8292         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8293         window so we can avoid avoid setting the DND properties on the
8294         toplevel window repeatedly.
8295
8296 2000-05-13  Tor Lillqvist  <tml@iki.fi>
8297
8298         * gdk/win32/gdkwin32.h: Define more message types missing from
8299         mingw headers.
8300
8301         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8302         call gdk_window_destroy_notify(). It was never called. This
8303         probably meant that the GdkWindow was never freed. Thanks Owen for
8304         noticing (!).
8305
8306         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8307         window as destroyed before calling DestroyWindow(). DestroyWindow()
8308         causes a call to the window procedure (gdk_WindowProc), which
8309         calls gdk_event_translate(), which calls
8310         gdk_window_destroy_notify(), which gets confused unless the window
8311         is set as destroyed.
8312
8313         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8314         this function to indicate it's win32 only. Put inside #ifdef
8315         G_ENABLE_DEBUG.
8316
8317         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8318         debugging function. (gdk_event_translate:) Add a default branch
8319         that uses the above function to print debug messages with all
8320         Windows messages symbolically.
8321
8322         * gdk/win32/gdkprivate-win32.h: Declare it, and
8323         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8324
8325 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
8326
8327         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8328         public header file.
8329
8330 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
8331
8332         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8333
8334         * gtk/gtktext.c: made the adjustments no-construct args, simply
8335         provide default adjustments.
8336         (gtk_text_destroy): release adjustments.
8337
8338         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8339         adjustment argument non-construct.
8340
8341         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8342         instead of in finalize.
8343         (gtk_progress_get_text_from_value): 
8344         (gtk_progress_get_current_text): 
8345         (gtk_progress_set_value): 
8346         (gtk_progress_get_percentage_from_value): 
8347         (gtk_progress_get_current_percentage): 
8348         (gtk_progress_set_percentage): 
8349         (gtk_progress_configure): ensure an adjustment is present.
8350
8351 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
8352
8353         * gtk/gtkcolorsel.[hc]:
8354         * gtk/gtkcolorseldialog.[hc]:
8355         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8356         their parent implementation, use bit fields for boolean values, don't
8357         create unused widgets, usage of glib types, braces go on their own
8358         lines, function argument alignment, #include directives etc. etc. etc..
8359
8360         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8361
8362 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
8363
8364         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8365
8366         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8367         of NULL.
8368
8369         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8370         to freed data.
8371         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8372
8373         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8374         to NULL when the toplevel is getting destroyed.
8375         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8376         (gtk_menu_destroy): 
8377         (gtk_menu_init): store the information of whether we have to
8378         readd the initial child ref_count during destruction in a new
8379         GtkMenu field needs_destruction_ref_count.
8380
8381         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8382         here, those reading: learn from my mistake! ;)
8383         in order for set_?adjustment to support a default adjustemnt if
8384         invoked with an adjustment pointer of NULL, the code read (pseudo):
8385         if (v->adjustment) unref (v->adjustment);
8386         if (!adjustment) adjustment = adjustment_new ();
8387         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8388         now imagine the first unref to actually free the old adjustment and
8389         adjustment_new() creating a new adjustment from the very same memory
8390         portion. here, the latter comparision will unintendedly fail, and
8391         all hell breaks loose.
8392         (gtk_viewport_set_hadjustment):
8393         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
8394         after unreferencing it.
8395
8396         * gtk/gtkcontainer.[hc]: removed toplevel registration
8397         functions: gtk_container_register_toplevel(),
8398         gtk_container_unregister_toplevel() and
8399         gtk_container_get_toplevels() which had wrong semantics
8400         anyways: it didn't reference and copy the list.
8401
8402         * gtk/gtkwindow.c: we take over the container toplevel registration
8403         bussiness now. windows are registered across multiple destructions,
8404         untill they are finalized. the initial implicit reference count
8405         users are holding on windows is removed with the first destruction
8406         though.
8407         (gtk_window_init): ref & sink and set has_user_ref_count, got
8408         rid of gtk_container_register_toplevel() call. add window to
8409         toplevel_list.
8410         (gtk_window_destroy): unref the window if has_user_ref_count
8411         is still set, got rid of call to
8412         gtk_container_unregister_toplevel().
8413         (gtk_window_finalize): remove window from toplevel list.
8414         (gtk_window_list_toplevels): new function to return a newly
8415         created list with referenced toplevels.
8416         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
8417
8418         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
8419         adjustment a non-construct arg.
8420         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
8421         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
8422         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
8423
8424         * gtk/gtkrange.c: added some realized checks.
8425         (gtk_range_destroy): get rid of the h/v adjustments in the
8426         destroy handler instead of finalize. remove timer.
8427         (gtk_range_get_adjustment): demand create adjustment.
8428
8429         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
8430         we simply create them on demand now and get rid of them in
8431         the destroy handler.
8432         (gtk_viewport_destroy): get rid of the h/v adjustments in the
8433         destroy handler instead of finalize.
8434         (gtk_viewport_get_hadjustment): 
8435         (gtk_viewport_get_vadjustment): 
8436         (gtk_viewport_size_allocate): demand create h/v adjustment
8437         if required.
8438
8439         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
8440         gtk_widget_real_destroy () functionality.
8441         (gtk_widget_real_destroy): reinitialize with a new style, instead
8442         of setting widget->style to NULL.
8443
8444 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
8445
8446         * gtk/gtkcalendar.c:
8447         * gtk/gtkbutton.c: ported _get_type() implementation over to
8448         GType, either to preserve memchunks allocation facilities,
8449         or because Gtk+ 1.0 GtkTypeInfo was still being used.
8450
8451         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
8452         over. prepare for ::destroy to be emitted multiple times.
8453         removed reference tracer magic. chain into GObjectClass.shutdown()
8454         to emit ::destroy signal.
8455
8456         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
8457         fundamental.
8458
8459         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
8460         cludge.
8461
8462         * gtk/gtksocket.c:
8463         * gtk/gtkplug.c:
8464         * gtk/gtklayout.c:
8465         * gtk/gtklabel.c:
8466         * gtk/gtkargcollector.c:
8467         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
8468         not being a fundamental anymore, and to work with the new
8469         type system (nuked fundamental type varargs clutter).
8470
8471         * gtk/*.c: install finalize handlers in the GObjectClass
8472         part of the class structure.
8473         changed direct GTK_OBJECT()->klass accesses to
8474         GTK_*_GET_CLASS().
8475         changed direct object_class->type accesses to GTK_CLASS_TYPE().
8476
8477         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
8478         GType. made most of the GTK_*() type macros and Gtk* typedefs
8479         simple wrappers around macros and types provided by GType.
8480         most notably, a significant portion of the old API vanished:
8481         GTK_TYPE_MAKE(),
8482         GTK_TYPE_SEQNO(),
8483         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
8484         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
8485         GTK_TYPE_ARGS,
8486         GTK_TYPE_CALLBACK,
8487         GTK_TYPE_C_CALLBACK,
8488         GTK_TYPE_FOREIGN,
8489         GtkTypeQuery,
8490         gtk_type_query(),
8491         gtk_type_set_varargs_type(),
8492         gtk_type_get_varargs_type(),
8493         gtk_type_check_object_cast(),
8494         gtk_type_check_class_cast(),
8495         gtk_type_describe_tree(),
8496         gtk_type_describe_heritage(),
8497         gtk_type_free(),
8498         gtk_type_children_types(),
8499         gtk_type_set_chunk_alloc(),
8500         gtk_type_register_enum(),
8501         gtk_type_register_flags(),
8502         gtk_type_parent_class().
8503         replacements, where available are described in ../docs/Changes-1.4.txt.
8504         implemented compatibility functions for the remaining API.
8505
8506         * configure.in: depend on glib 1.3.1, use gobject module.
8507
8508 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
8509
8510         * TODO.xml: Various updates to current status.
8511
8512 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
8513
8514         * gtk.m4: Print out version when test succeeds.
8515
8516 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
8517
8518         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
8519         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
8520         
8521         (Original triangle color selector from Simon Budig
8522         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
8523         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
8524         Santiago <mrcooger@cyberverse.com>)
8525
8526         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
8527         out into a separate widget.
8528
8529         * gtk/testgtk.c: Add some checkbuttons for toggling palette
8530         and opacity controls.
8531
8532 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
8533
8534         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
8535         snuck in prematurely.
8536
8537 2000-05-07  Tor Lillqvist  <tml@iki.fi>
8538
8539         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
8540         had deleted a ! operator by mistake, which caused
8541         GDK_SELECTION_CLEAR events never to be generated, which caused
8542         only the first copy to the clipboard from an gtkeditable to
8543         actually cause a copy to the Windows clipboard.
8544
8545 2000-05-06  Tor Lillqvist  <tml@iki.fi>
8546
8547         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
8548         compilation, too. Current mingw gcc distributions include the
8549         necessary headers. Also the necessary IIDs are now in mingw
8550         headers/libraries, and own definitions unnecessary.
8551
8552         More hacking on OLE2 DND, still doesn't work though, and thus
8553         ifdeffed out.
8554
8555         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
8556         here, too.
8557
8558 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
8559
8560         * gdk/nanox/*: nano-X port work in progress.
8561         * gdk/simple.c: simple test for Gdk.
8562         * README.nanox: notes about the port: read this first!
8563         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
8564         with nano-X.
8565
8566 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
8567
8568         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
8569         gdk_window_clear() into common code, implement in terms of
8570         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
8571         not redirected to the backing rectangle.
8572
8573 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
8574
8575         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
8576         EXTRA_DIST. It does not work well when the file that
8577         everything depends on is not in the tarball.
8578
8579 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
8580
8581         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
8582         with recursion where process_updates() is called from
8583         an expose handler. (GtkTextView is highly broken in
8584         doing this, but it should work, so it is a nice test
8585         case.)
8586
8587 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8588
8589         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
8590         handle the case where updates are queued during processing of
8591         updates.
8592
8593 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8594
8595         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
8596         window is on gdk_display - use that instead of segfaulting.
8597
8598 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
8599
8600         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
8601         broken and require an empty arg, give it to them.
8602
8603 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
8604
8605         * gtk/gtklabel.h: indentation fixes.
8606
8607 2000-05-02  Tor Lillqvist  <tml@iki.fi>
8608
8609         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
8610         draw too narrow or too low arcs, they seem to fail, at least with
8611         some display drivers.
8612
8613         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
8614
8615         Large changes to the Win32 backend, partially made necessary by
8616         the changes to the backend-independent internal
8617         structures. Attempts to implement similar backing store stuff as
8618         on X11. The current (CVS) version of the Win32 backend is *not* as
8619         stable as it was before the no-flicker branch was merged. A
8620         zipfile with that version is available from
8621         http://www.gimp.org/win32/. That should be use by "production"
8622         code until this CVS version is usable. (But note, the Win32
8623         backend has never been claimed to be "production quality".)
8624
8625         * README.win32: Add the above comment about versions.
8626
8627         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
8628
8629         * gdk/gdk.def: Update.
8630
8631         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
8632         presumably be replaced by some more better mechanism as 1.4 gets
8633         closer to release shape.
8634
8635         * gdk/makefile.{cygwin,msc}: Update.
8636
8637         * gdk/win32/*.c: Correct inclusions of the backend-specific and
8638         internal headers. Change code according to changes in these. Use
8639         gdk_drawable_*, not gdk_window_* where necessary.
8640
8641         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
8642         our old DND.
8643
8644         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
8645         to interpret single characters as UTF-8. Thanks to Hans Breuer.
8646         Use correct function name in warning messages.
8647
8648         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
8649         GSourceFuncs gdk_event_prepare and gdk_event_check.
8650         (gdk_event_get_graphics_expose): Do implement, use
8651         PeekMessage. Thanks to Hans Breuer.
8652         (event_mask_string): Debugging function to print an GdkEventMask.
8653         (gdk_pointer_grab): Use it.
8654
8655         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
8656         (old) book I used claimed was Hangul actually is CJK Unified
8657         Ideographs Extension A. Also, Hangul Syllables were missing.
8658         Improve logging.
8659
8660         * gdk/win32/gdkgc-win32.c: Largish changes.
8661
8662         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
8663         g_win32_getlocale() from GLib, and not setlocale() to get current
8664         locale name.
8665
8666         * gdk/win32/gdkprivate-win32.h
8667         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
8668         gdkwin32.h, similarily as in the X11 backend.
8669
8670         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
8671         assignment was used instead of equals in if test. Thanks to Hans
8672         Breuer.
8673
8674         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
8675         the X11 version.
8676
8677         * gdk/win32/makefile.{cygwin,msc}
8678         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
8679         path to the Win32 headers that works also with the mingw compiler.
8680
8681         * gtk/gtkstyle.c: Include <string.h>.
8682
8683 2000-04-26  Havoc Pennington  <hp@redhat.com>
8684
8685         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
8686         replacing the broken gtk_label_get ()
8687
8688 2000-04-15  Havoc Pennington  <hp@pobox.com>
8689
8690         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
8691         this keeps scanner scripts from getting confused.
8692
8693         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
8694         data, rather than void
8695
8696 2000-04-15  Tor Lillqvist  <tml@iki.fi>
8697
8698         * gtk/gtkclist.c (gtk_clist_motion)
8699         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
8700         with is_hint FALSE, get x and y from the event. They used to be
8701         used uninitialised. The Win32 backend never sends motion events
8702         marked as hints. This for instance fixes the annoying file and
8703         font selector behaviour in the Win32 version.
8704
8705 2000-04-14  Tor Lillqvist  <tml@iki.fi>
8706
8707         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
8708         gtk_private_n_signals variables, they are used by some software,
8709         sigh.
8710
8711         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
8712         installation directory from the Registry, where the installer
8713         should have put it.
8714
8715 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
8716
8717         * gdk/x11/Makefile.am: Fix problem with installation directory for
8718         gdkx.h
8719
8720         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
8721         <mrcooger@cyberverse.com> so that when selecting menus with the
8722         mouse, the first item will not be selected, but when selecting
8723         with an accelerator, or navigating left-right on a menubar with
8724         the menus popped up, the first item will be selected.
8725
8726 2000-04-05  Dan Damian  <dand@dnttm.ro>
8727
8728         * configure.in: Added "ro" to ALL_LINGUAS.
8729
8730 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
8731
8732         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
8733         indentation.
8734
8735         * Makefile.am (EXTRA_DIST): Fix typo.
8736
8737         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
8738         to catch gdkconfig.h
8739
8740         * gtk/gtkitemfactory.c: Added FIXME.
8741
8742 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
8743
8744         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
8745         s/return_if_fail/return_val_if_fail/g and add a return value.
8746
8747 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8748
8749         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
8750         merge slipup.
8751
8752         * gdk/gdkinput.h: Fix missing line from merge.
8753
8754 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
8755
8756         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
8757         instead of gdkprivate.h.
8758
8759 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
8760
8761         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
8762         parent class to correctly be GtkDialogClass.
8763
8764 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
8765
8766         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
8767         toplevel windows and their immediate children by their parents,
8768         since the size of toplevel windows is out of our immediate
8769         control and we don't get any real benefit from trying to track
8770         this size for clipping.
8771
8772         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
8773         for input_only windows.
8774
8775         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
8776         to fix some hacks and make sure that we don't try to set the
8777         background of input only windows.
8778
8779 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
8780
8781         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
8782         the _really_ internal stuff, and leave gdkprivate.h for the fake private
8783         stuff that we've traditionally exposed.
8784
8785         * gdk/**.c: Use gdkinternals.h where appropriate.
8786
8787         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
8788         not include gdkprivate-x11.h, move all stuff of conceivable public
8789         interest into gdkx.h; keep all really private stuff in
8790         uninstalled header gdkprivate-x11.h.
8791
8792         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
8793         image->image_put on windows through a new function _gdk_window_draw_image()
8794         to allow us to do backing store for images. (Sort of ugly)
8795
8796         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
8797         contexts locally so that we can offset them properly when drawing 
8798         onto backing pixmaps.
8799
8800         * gdk/gdkinput.h: Reindented
8801
8802         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
8803         pixmap or color for the window, so we can properly initialize
8804         our double-buffer pixmaps, and also so that we temporarily set
8805         a background of None while scrolling.
8806
8807         * gdk/gdkregion.h: Revise region boolean operators to have an
8808         interface that is actually convenient - switch from creating new
8809         regions on every op, to "methods" that modify existing regions
8810         (A = A OP B). 3 argument forms which allow dest == src, would also
8811         be possible, but the current interfaces seem to map nicely
8812         onto what needs to be done. (There is quite a lot of region
8813         code in GDK now.)
8814
8815         * gdk/gdkregion.h: Add constructor from rectangle and a copy
8816         operator.
8817
8818         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
8819         gdkpoly-generic.h: Copy region code from Xlib, switch it over
8820         to 32 bit coordinates, modify it to be mostly GTK+ style
8821         and to have interfaces that match gdkregion.h.
8822
8823         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
8824         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
8825         create a backing pixmap and redirect all drawing to
8826         that backing pixmap until a matching gdk_window_end_paint().
8827
8828         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
8829         Create a special drawable class for GtkWindow's that 
8830         redirects the drawing to the backing pixmap as necessary
8831         and then calls the real operations in _gdk_windowing_window_class.
8832
8833         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
8834         Store invalid region for each window. Generate expose events for invalid
8835         region in an idle. This replaces both the expose compression
8836         and the redrawing queuing in GTK+. It is both more efficient and
8837         simpler than either one individually and far more so then the
8838         combination.
8839
8840         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
8841         Emulate 32 bit coordinates for windows with 16 bit coordinates
8842         by offsetting drawing, guffaw scrolling techniques and
8843         mapping/unmapping child windows as necessary.
8844
8845         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
8846         where, when invalid regions are processed, the region is stored,
8847         and if expose events come in that are detectably duplicate
8848         the processed exposes (by comparison of event serial numbers),
8849         the stored region is subtracted out of those exposes.
8850
8851         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
8852         regions newly exposed when scrolling or resizing windows.
8853         This, combined with forcing processesing of queued invalidated
8854         regions, gives nice flicker-free scrolling.
8855
8856         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
8857         invalidated regions after every scroll.
8858
8859         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
8860         emulation in GDK. Its, for all practical purposes just a
8861         GtkViewport/GtkFixed hybrid now.
8862
8863         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
8864         (16-bit) structures as necessary instead of just casting.
8865
8866         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
8867         in terms of the structures from gdkregion-generic.c, using appropriate
8868         offsets from GDK to X11 coordinates. Cache clip mask and
8869         origin and ts origin locally and only flush to the server
8870         when drawing, to avoid constantly setting and resetting these
8871         values when offsetting GC's for scrolling and backing pixmaps.
8872
8873         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
8874
8875         * gtk/gtkcontainer.c: Call process_all_updates at end
8876         of resizing to reduce flicker. (Avoids having redraw
8877         lag arbitrarily behind resize under some circumstances)
8878
8879         * gtk/gtkentry.c: Remove old backing store code, and simply take
8880         advantage of the new backing store capabilities of GDK.
8881
8882         * gtk/gtkmain.c: Simple implementation of widget backing
8883         store - simply push a paint while handling each expose.
8884         (Should really be configurable widget for widget.)
8885         
8886         * gtk/gtkwidget.c: Remove all the old complicated redraw
8887         code, and simply invalidate the GDK windows from
8888         gdk_window_queue_clear(), etc. (Sigh, so much carefully
8889         debugged complexity ... gone to the winds.)
8890
8891         Remove all the code for suppressing expose events while
8892         resizes are pending; this isn't needed since the invalid
8893         areas won't be processed until after the resizes are
8894         processed, since they are in a lower priority idle.
8895
8896 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
8897
8898         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
8899         and height of dest rectangle for non-intersecting rectangles.
8900
8901 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
8902
8903         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
8904         for GdkRectangle.
8905
8906 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
8907
8908         * gdk/gdk{events,image,private,types,window}.h
8909          gdk/x11/gdkinputprivate.h: Change all coordinates
8910          from int16 to int. Also, Change width and height from
8911          unsigned to signed to avoid all the stupid C 
8912          signedness bugs.
8913
8914 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
8915
8916         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
8917         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
8918         Add some more detailed checking.
8919
8920         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
8921         New function to retrieve the depth of a drawable.
8922
8923         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
8924         field, reorder fields to save memory. 
8925
8926 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
8927
8928         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
8929         of the background image instead of scaling the background down to
8930         a line.
8931
8932         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
8933         which temporarily set slider to wrong size.
8934
8935         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
8936         queue_clear().
8937
8938 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
8939
8940 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
8941
8942         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
8943
8944 2000-03-17  Tor Lillqvist  <tml@iki.fi>
8945
8946         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
8947         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
8948
8949         * gdk/win32/gdkfont-win32.c
8950         * gdk/win32/gdkproperty-win32.c
8951         * gdk/win32/gdkselection-win32.c
8952         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
8953         now declared such.
8954
8955 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
8956
8957         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
8958
8959 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
8960
8961         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
8962         is called without trapping X errors.
8963
8964 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
8965
8966         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
8967         way into the fontset lists.
8968
8969 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
8970
8971         * gtk/gtkthemes.h: add extern "C" scope.
8972
8973 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
8974
8975         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
8976         to make appends to the list constant. (gtk-guy-990901-0.patch)
8977
8978 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
8979
8980         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
8981         for the typename hash table.
8982
8983 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
8984
8985         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
8986         to make sure we never divide by zero. 
8987         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
8988
8989 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
8990
8991         * gtk/gtkfontsel.c: Apply patch from
8992         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
8993         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
8994
8995         Also, some cleanups in atom handling.
8996
8997 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
8998
8999         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9000         not GtkWidget.
9001
9002 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
9003
9004         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
9005         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
9006         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
9007         more guint wrap-around bugs before going to bed.
9008
9009 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
9010
9011         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
9012         guint wrap arounds in allocation.width.
9013
9014         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
9015         process untill we fit the allocation given.
9016
9017 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
9018
9019         * gtk/gtkwidget.c:
9020         (gtk_widget_unrealize): guard widget access with ref/unref
9021         around signal emission.
9022         (gtk_widget_hide): same here, but also check its destroyed
9023         state before queueing a resize.
9024
9025 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
9026
9027         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
9028         of gtk_default_insensitive_bg as insensitive base color.
9029
9030         * gtk/gtktext.c (gtk_text_style_set): set the background color according
9031         to the widget's state.
9032         (gtk_text_realize): same here.
9033         (gtk_text_state_changed): same here.
9034         (draw_bg_rect): compare background color against base[] from
9035         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
9036
9037 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
9038
9039         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
9040         grabs are active, unless a delete event is send to the toplevel
9041         of the currently grab holding widget.
9042
9043 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
9044
9045         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
9046         debugging g_print's.
9047
9048 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
9049
9050         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
9051         ever make the scrolled-window requisition ever depend on the 
9052         visibility state of the scrollbars for the AUTOMATIC policy. 
9053         This breaks the GTK+ requisition model, and causes loops.
9054
9055 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
9056
9057         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
9058         the default font to avoid problems with XFree86-4.0 where the
9059         default charset is iso10646-1, not iso8859-1.
9060
9061 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
9062
9063         * acinclude.m4
9064         * config.guess
9065         * config.sub
9066         * ltconfig
9067         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
9068
9069         * gtk/Makefile.am: minor cosmetic consistency tweak
9070
9071 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
9072
9073         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
9074         the activate_time to 0, so that we handle a quick
9075         press/release press/release properly and don't suppress
9076         the second release. (Red Hat bug #7545)
9077
9078 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
9079
9080         * gtk/gtkctree.c (row_delete):
9081         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
9082         bugs with destruction notifier, *always* update internal
9083         structures *before* calling user code.
9084
9085 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
9086
9087         A few more fixes for bug #5487, #2051, #2677.
9088         * gtk/gtkclist.c : 
9089         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
9090         not GDK_BUTTON_PRESS.
9091         (resync_selection): resync only if selection_mode is
9092         GTK_SELECTION_EXTENDED
9093         * gtk/gtkctree.c (resync_selection): same here
9094
9095 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
9096
9097         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
9098         gdk_drag_get_selection() and gtk_menu_detach().
9099
9100         [ From Jeroen Ruigrok/Asmodai ]
9101
9102 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
9103
9104         * gtk/gtknotebook.c (gtk_notebook_size_request): 
9105         page->tab_label can be NULL.
9106
9107 2000-01-25  Havoc Pennington  <hp@pobox.com>
9108         
9109         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
9110         arg is boolean
9111
9112         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
9113
9114         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
9115
9116         * gdk/gdkproperty.c (gdk_property_get): return boolean
9117
9118         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
9119
9120         * gdk/gdkim.c (gdk_im_ready): return boolean
9121
9122         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
9123
9124         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
9125         glib clash, should fix glib)
9126
9127         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
9128         (gdk_get_show_events): return gboolean, and canonicalize 
9129         to TRUE/FALSE
9130
9131         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
9132         colormap is private
9133         (gdk_colors_alloc): gboolean whether to be contiguous
9134         (gdk_color_equal): return gboolean since we are a predicate
9135         and not a qsort() (this looks semi-wrong due to glib breakage,
9136         IMO glib should be fixed)
9137         
9138         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
9139         (gdk_get_use_xshm): return gboolean
9140         (gdk_pointer_is_grabbed): return gboolean
9141
9142         * gdk/gdk.h: Change prototypes to match all the above changes,
9143         and re-run egtk-format-protos as required.
9144
9145 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
9146
9147         * gtk/gtkctree.c (resync_selection): 
9148         * gtk/gtkclist.c (resync_selection):
9149
9150         Return immediately if clist->drag_pos < 0. This is a workaround
9151         for the corrupt state that the clist gets into when a
9152         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
9153
9154         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
9155         
9156         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
9157         variable from recent commit.
9158
9159 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
9160
9161         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
9162
9163 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
9164
9165         * gtk/Makefile.am: prefix all autogenerated source that get build in
9166         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
9167         in builddir. since we subsequently cd into srcdir for autogeneration,
9168         the paths have to be stripped from the target file names, thusly we
9169         use $(@F) as target names now.
9170         put a comment about configure.in's --disable-rebuilds option,
9171         which can be used for non-writable source directories, for development
9172         setups though, srcdir has to be *writable*.
9173
9174 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
9175
9176         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
9177           Finish the job of allowing event to be NULL.
9178           (Fixes bug #4283, reported by Chris Blizzard)
9179
9180         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
9181           things so that the cursor appears on screen, properly
9182           take into account INNER_BORDER.
9183           (Fixes bug #4754, reported by Antonio Campos)
9184
9185 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
9186
9187         * gtk/gtknotebook.c (gtk_notebook_map): Don't
9188           show the tab_label unless it itself is visible.
9189
9190           gtk/gtknotebook.c (gtk_notebook_size_request):
9191           Do a better job of making sure that the visibility
9192           of the tab label corresponds to whether it should
9193           be mapped or not.
9194
9195 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
9196
9197         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
9198           Use the requisition, not the allocation, since the
9199           allocation has not necessarily been computed yet.
9200           (Pointed out by Eugene Osintsev)
9201
9202 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
9203
9204         * gtk/gtkstyle.c (gtk_style_new): Dont' set
9205           style/base[GTK_STATE_INSENSITIVE] both to
9206           gtk_default_insensitive_bg!
9207           (Bug #2187, reported by Jonathan Blandford)
9208
9209         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
9210           Add Alt_L, Alt_R to list of invalid accelerators.
9211           (Bug #3736, reported by Vlad Harchev)
9212
9213 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
9214
9215         * gtk/gtkfilesel.c (open_ref_dir): Fix several
9216         bugs which occured after an attempt to open 
9217         invalid home directory left cmpl_state->reference_dir == NULL.
9218
9219          - completion on files in home directory didn't work
9220          - completion on an empty string caused  segfault
9221
9222          (Bug #3678, reported by Steve Ratcliffe)
9223
9224         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
9225         cut and paste error that was causing scales to
9226         be incorrectly positioned.
9227         (Bug #2956,
9228          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
9229
9230 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
9231
9232         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
9233         when checking for dcgettext, if we've found we needed
9234         it for dgettext.
9235 +
9236 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
9237
9238         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9239         queue_clear on NO_WINDOW widgets during a reparent,
9240         since at that point the window and widget heirarchies
9241         are out of sync. This stops crashing in some cases
9242         (the scrolled window reparent test, for instance), and
9243         _probably_ won't cause drawing errors.
9244
9245         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
9246         test do what it was supposed to do and be robust against
9247         window closings, etc. (Bug #2443)
9248
9249 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
9250
9251         * gtk/gtkentry.c: Fix return values on mouse events.
9252         (Bug #2686, Sky <seb_sky@yahoo.com>)
9253
9254         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9255         (pointed out by George Lebl)
9256
9257         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9258         (From Ettore Perazzoli  <ettore@helixcode.com>)
9259  
9260 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
9261
9262         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9263         clicks between rows or outside calender area correctly.
9264         (Patch from Damon Chaplin)
9265
9266         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
9267         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
9268           Call destroy function when overwriting existing data. 
9269           (Pointed out by Damon Chaplin)
9270
9271 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
9272
9273         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9274           which was causing problems on various systems with Xmu.
9275           This hasn't been needed for a very long time.
9276           (Fixes #1185 3167)
9277
9278 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
9279
9280         * gdk/gdki18n.h: Include <ctype.h> when defining
9281           gdk_isw* in terms of is* as a fallback.
9282           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9283
9284 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
9285
9286         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9287           realize the widget when it is size allocated!
9288           (old, old bug)
9289
9290         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9291           Removed unused call to gdk_window_get_size() that
9292           showed up when the above was fixed.
9293
9294 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
9295
9296         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9297           fix up widget->window when the widget is a
9298           NO_WINDOW container widget.
9299
9300 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
9301
9302         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9303           to account for the fact that feof() does _not_ 
9304           return TRUE on errors, and thus avoid infinite loops
9305           when trying to use gdk_pixmap_create_from_xpm()
9306           on unreadable values.
9307
9308 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
9309
9310         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9311
9312 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
9313
9314         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9315           gdk_gc_set_dashes to take gint8 instead of gchar to
9316           make it clearer that it is _not_ a NULL terminated string.
9317
9318         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9319           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9320           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9321           arguments.
9322
9323 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
9324
9325         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
9326         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9327         background size relative to our allocation, guard against small
9328         allocations, we may have not yet been size allocated.
9329
9330 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
9331
9332         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9333         not just version == 3. We implement all 3 + most of 4 - 
9334         (we don't support matching text/plain;charset=iso-8859-1
9335         to a dest that expects text/plain). We'll still advertise
9336         3 to be safe, but any client implementing version >= 3
9337         must interoperate with 3.
9338         
9339 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9340
9341         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9342         background and gc members, add a warning in gtk_tooltips_set_color()
9343         indicating that this function is deprecated.
9344
9345 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
9346
9347         * docs/gtkfaq.sgml: FAQ Update:
9348           - Minor cleanups (Emmanuel, me)
9349           - New questions:
9350                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9351                 How can I retrieve the text from a GtkMenuItem? (timj)
9352                 How do I validate/limit/filter the input to a GtkEntry? (me)
9353                 Memory does not seem to be released when I free the list
9354                         nodes I've allocated (timj)
9355
9356 2000-03-07  Tor Lillqvist  <tml@iki.fi>
9357
9358         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9359         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9360         for which it is no use to call GetLastError onWin9x.
9361         (gdk_other_api_failed) New function, for general error
9362         reporting without calling GetLastError.
9363         (gdk_win32_api_failed) OTOH, this function always calls
9364         GetLastError. (gdk_win32_last_error_string) Remove this function,
9365         GLib has the equivalent now.
9366
9367         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9368         call them with function name, file name and line number in the
9369         arguments.
9370
9371         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9372         functions.
9373         
9374         * gtk/gtk.def: Add some missing entry points.
9375
9376         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9377         gtk_paned_set_gutter_size, which don't exist any longer, as void.
9378         
9379         Fixes by Hans Breuer:
9380
9381         * gdk/makefile.msc: Update for debugging.
9382
9383         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9384         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9385         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9386         in the dash_list.
9387
9388         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
9389         the x11 backend.
9390
9391         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
9392
9393         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
9394
9395 2000-03-04  Tor Lillqvist  <tml@iki.fi>
9396
9397         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
9398         just pixel value of background colour.
9399
9400         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
9401         containing code snippet previously duplicated in a couple of
9402         places.
9403         
9404         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
9405         gdk_colormap_color.
9406
9407         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
9408         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
9409         events for autorepeated Shift, Control and Alt keys. Use
9410         gdk_colormap_color.
9411
9412         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
9413         pointer is inside the window the cursor of which we are setting,
9414         call SetCursor immediately.
9415
9416         * gdk/win32/makefile.cygwin
9417         * gtk/makefile.cygwin: If we don't have the build number stamp
9418         file, use zero.
9419
9420         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9421         gtk_paned_set_gutter_size as empty.
9422
9423         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
9424         
9425 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
9426
9427         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
9428           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
9429           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
9430           docs/gtk_tut.sgml docs/gtk.texi TODO:
9431
9432           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
9433
9434 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
9435
9436         * gtk/gtkcalendar.c: Implement num_marked_dates,
9437           and don't emit mutiple day_selected signals on
9438           month_prev.
9439
9440 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
9441
9442         * docs/make-todo (lineno): let title and logo be configurable so
9443         that GNOME can use this script too.
9444
9445         * TODO.xml: added logourl and a title
9446
9447 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
9448
9449         * TODO.xml: Added some UI items, and an explanatory
9450         comment at the top of the file.
9451
9452 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
9453
9454         * TODO.xml: some updates, added abunch of new entries.
9455         a note for those fiddeling with this file, when done
9456         with it, invoke:
9457         $ ./docs/make-todo TODO.xml >/dev/null
9458         and correct output errors before comitting changes.
9459
9460 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
9461
9462         * TODO.xml: Added XML-structured TODO file.
9463         * docs/make-todo: python script to turn TODO.xml into
9464           pretty XML output. 
9465
9466 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
9467
9468         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
9469         the function to let it draw the seven dots, instead of the old,
9470         much maligned, method.
9471         (draw_dot): New function to draw a dot.
9472
9473         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
9474         to draw the handle inside the border width as opposed to outside.
9475         Use paint function instead of gdk_draw_point.
9476
9477         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
9478         to draw the handle inside the border width as opposed to outside.
9479         Use paint function instead of gdk_draw_point.
9480
9481         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
9482         Change indenting to be more GTK like.
9483
9484 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
9485
9486         * docs/gtk_tut.sgml: New section on GtkCalendar
9487         * examples/calendar: Update example code
9488
9489 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
9490
9491         * docs/gtkfaq.sgml: FAQ Update
9492
9493 2000-02-19  Anders Carlsson  <andersca@gnu.org>
9494
9495         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
9496         to prevent the scroll event to be propagated upwards.
9497
9498 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9499
9500         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
9501         OwnerGrabButtonMask from button entries for
9502         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
9503
9504         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
9505         to the event mask (which will result in button/press release
9506         being added to the event mask on Unix) so scrolling works
9507         for layouts in scroll windows.
9508
9509         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
9510
9511         Patch from Anders Carlsson  <andersca@gnu.org> to add
9512         a scroll event.
9513
9514         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
9515         scrolling to the "Test Scrolling" part of testgtk.
9516  
9517         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
9518  
9519         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
9520         it against GDK_SCROLL.
9521  
9522         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
9523         way of mouse wheel scrolling.
9524  
9525         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
9526  
9527         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
9528  
9529         * gtk/gtkmain.c: Removed previous mouse wheel hack.
9530  
9531         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
9532         gdk_event_mask_table.
9533  
9534         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
9535         GdkEventScroll handler.
9536  
9537         * gdk/gdkevents.h: Added GdkEventScroll structure.
9538  
9539 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
9540
9541         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
9542         and Anders Carlsson to change the Paned widgets so that they
9543         can be dragged from anywhere along the length. Also change
9544         the way that this is drawn to make this apparent.
9545
9546         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
9547         from George Lebl to check that option_menu->menu is present
9548         before getting history.
9549
9550 2000-02-14  Tor Lillqvist  <tml@iki.fi>
9551
9552         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
9553         before the assertion for non-NULL segment list.
9554
9555         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
9556         Seems that pattern brushes *must* be 8x8 pixels! At least on my
9557         machine, but it might be display driver dependent. Sigh, so make
9558         sure the stipple is that size. Does Windows suck or what?
9559
9560         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
9561         places.
9562
9563 2000-02-13  Havoc Pennington  <hp@pobox.com>
9564
9565         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
9566         refcount to 1
9567         (gdk_cursor_new): init refcount to 1
9568
9569         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
9570
9571 2000-02-13  Tor Lillqvist  <tml@iki.fi>
9572
9573         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
9574         so that we don't have to do unnecessary settings to the HDC.
9575
9576         * gdk/win32/gdkdrawable-win32.c
9577         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
9578         gdk_gc_predraw.
9579
9580         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
9581         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
9582         GDI paths, call WidenPath to get the outline of the stroken path,
9583         and then fill the outline (with the brush that was built from the
9584         stipple).
9585
9586         * gdk/win32/gdkgc-win32.c: Factor out common code from
9587         _gdk_win32_gc_new and gdk_win32_gc_set_values into
9588         gdk_win32_gc_values_to_win32values. Use correct colour for
9589         SetBkColor() (Until now the code actually used a random colour in
9590         the call to SetBkColor()... but that didn't show up as not many
9591         GDI APIs use the background colour. Pattern (opaque stippled)
9592         brushes do.)
9593
9594         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
9595         gdk_win32_api_failed): New functions for error logging.
9596
9597         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
9598         WIN32_API_FAILED to call them, passing function or file name and
9599         line number.
9600
9601         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
9602
9603         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
9604         GdkColor for foreground and background in GdkGCWin32Data.
9605
9606         * gdk/makefile.cygwin: Link in the resource object separately.
9607
9608         * gdk/win32/rc/gdk.rc
9609         * gtk/gtk.rc (New file)
9610         * gdk/win32/makefile.cygwin
9611         * gtk/makefile.cygwin: Update build number in DLLs automatically,
9612         as in GLib.
9613
9614 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
9615
9616         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
9617         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
9618         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
9619         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
9620         parameters given and cursor->ref_count. coding style fixups.
9621
9622         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9623         not GtkWidget.
9624         
9625         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
9626         fix up widget macros and add _GET_CLASS() variant.
9627         
9628         * gtk/*.c: some GtkType fixups.
9629
9630 2000-02-09  Tor Lillqvist  <tml@iki.fi>
9631
9632         * gdk/win32/gdkproperty-win32.c
9633         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
9634         were reversed.
9635
9636 2000-02-04  Tor Lillqvist  <tml@iki.fi>
9637
9638         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
9639         g_filename_to_utf8 to convert the font names Windows gives us from
9640         whatever is the default codepage to UTF-8.
9641         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
9642         in the other direction.
9643
9644         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
9645         error in debugging output.
9646
9647 2000-02-02  Tor Lillqvist  <tml@iki.fi>
9648
9649         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
9650         and height parameters to gdk_window_clear_area(). Not minus one.
9651
9652 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
9653
9654         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
9655         checks if the widget passed to gtk_drag_get_data() was not the
9656         dest widget.
9657
9658 2000-02-01  Tor Lillqvist  <tml@iki.fi>
9659
9660         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
9661         g_filename_from_utf8 functions (which were added a moment ago to
9662         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
9663         size buffers.
9664
9665         gtk_file_selection_get_filename returns the filename in the C
9666         runtime encoding. It calls g_filename_from_utf8, but copies the
9667         returned string to a static buffer, which is returned. I think
9668         this is better than returning the result from g_filename_from_utf8
9669         directly, which would mean all apps that use it would have to free
9670         the return value. Or should this function care about this issue at
9671         all? Maybe a new function with clearly defined semantics.
9672
9673         * gtk/gtkfilesel.h: Add comment about
9674         gtk_file_selection_get_filename returning the filename in the C
9675         runtime's encoding.
9676
9677         * README.win32
9678         * gdk/gdk.def
9679         * gdk/makefile.{cygwin,msc}
9680         * gtk/gtk.def: Updates.
9681
9682         * gdk/gdkcursor-win32.c: Initialise refcount.
9683
9684 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
9685
9686         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
9687
9688 2000-01-30  Havoc Pennington  <hp@pobox.com>
9689
9690         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
9691         destroy
9692
9693         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
9694
9695         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
9696         implemented in platform-specific code
9697
9698         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
9699
9700         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
9701         underscore in front
9702
9703         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
9704         put an underscore in front
9705
9706         * gdk/gdkcursor.c: new file, implements
9707         gdk_cursor_ref/gdk_cursor_unref
9708
9709         * gdk/gdkcursor.h: Refcount GdkCursor
9710
9711         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
9712
9713 2000-01-29  Tor Lillqvist  <tml@iki.fi>
9714
9715         * gdk/gdkwindow.h
9716         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
9717
9718 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9719
9720         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
9721         structures to properly inherit from GtkWidget not GtkBin.
9722
9723 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
9724
9725         * gtk+.spec.in: Added lib/gtk+/include/* to %files
9726         (bug #5178 - Peter Wainright)
9727         
9728         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
9729         so that it will be installed.
9730         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
9731
9732 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
9733
9734         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
9735         for the GtkStyleClass vtable const.
9736
9737         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
9738         take a const string argument like GtkTranslateFunc. This will
9739         require changes in use code.
9740
9741 2000-01-19  Tor Lillqvist  <tml@iki.fi>
9742
9743         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
9744         semantics (to mimic the X11 backend, which just calls XClearArea)
9745         is to check for zero width (and height), and in that case use the
9746         window's width minus x (height minus y). This fixes for instance
9747         some redraw problems with gtkclist, which were easily noticeable
9748         in the gtk file selection widget.
9749
9750         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
9751         windows.
9752
9753 2000-01-13  Tor Lillqvist  <tml@iki.fi>
9754
9755         * configure.in
9756         * gdk/Makefile.am
9757         * gdk/x11/Makefile.am
9758         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
9759         (bug #5177).
9760         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
9761         out later.
9762
9763 2000-01-09  Tor Lillqvist  <tml@iki.fi>
9764
9765         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
9766         WM_MOVE for iconified or invisible windows. This fixes various
9767         problems when minimising windows. Thanks to Bernd Herd.
9768
9769 2000-01-05  Tor Lillqvist  <tml@iki.fi>
9770
9771         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
9772         backend's draw_lines method, not draw_points.
9773
9774 2000-01-02  Tor Lillqvist  <tml@iki.fi>
9775
9776         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
9777         before Owen's reorganisation: Don't have queued_events and
9778         queued_tail statics in this file, but use gdk_queued_events and
9779         gdk_queued_tail. This makes exposure event compression work again.
9780
9781         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
9782         seem to be needed?
9783
9784 1999-12-30  Tor Lillqvist  <tml@iki.fi>
9785
9786         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
9787         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
9788         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
9789         doesn't do anything.
9790
9791         * gdk/gdk.def: Add gdk_xid_table_insert.
9792
9793         * gdk/win32/gdkprivate-win32.h
9794         * gdk/win32/gdkevents-win32.c
9795         * gdk/win32/gdkinput-win32.c
9796         
9797         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
9798         extension_events field in the GdkWindowWin32Data struct. Use only
9799         the extension_events field in GdkWindowPrivate. Previously one was
9800         set, and the other one tested, which broke tablet
9801         functionality. Thanks to Keishi Suenaga for pointing this out.
9802
9803 1999-12-18  Tor Lillqvist  <tml@iki.fi>
9804
9805         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
9806         When handling a single character (text length == 1), don't handle
9807         it as if it was UTF-8.
9808
9809 1999-12-11  Tor Lillqvist  <tml@iki.fi>
9810
9811         * Makefile.am: Distribute README.win32.
9812         
9813         * gdk/Makefile.am
9814         * gdk/win32/Makefile.am: Distribute Win32 files.
9815
9816         * gdk/makefile.msc: New file.
9817
9818         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
9819         after label).
9820
9821         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
9822         gdk_error_code as GDKVAR, as they are referred outside GDK.
9823
9824         * gdk/win32/makefile.msc: Update.
9825
9826         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
9827         tweaks. Check only if at least one of those Unicode subrange bits
9828         we care for is set. If no code page bits are set, guess (wildly)
9829         based on the charset.
9830
9831         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
9832
9833         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
9834         non-NULL.
9835
9836         * gtk/gtkdnd.c
9837         * gtk/gtklayout.c
9838         * gtk/gtkplug.c
9839         * gtk/gtkselection.c
9840         * gtk/gtksocket.c
9841         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
9842         appropriate. There must be a cleaner way to handle this?
9843
9844         * gtk/gtkrc.c: Must include windows.h on Win32.
9845
9846         * gtk/testgtk.c: No need to include gdkx.h.
9847
9848         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
9849
9850 1999-12-07  Tor Lillqvist  <tml@iki.fi>
9851
9852         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
9853         the rbearing is set to the same as the width, but this should be
9854         fixed.
9855
9856 1999-12-06  Tor Lillqvist  <tml@iki.fi>
9857
9858         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
9859         function. If Windows doesn't tell us what Unicode subranges a font
9860         covers, guesstimate based on the codepages it covers. This will
9861         hopefully help those Windows versions or fonts that don't give us
9862         any useful Unicode subrange information with GetTextCharsetInfo.
9863         Call this function in gdk_font_load_internal.
9864
9865         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
9866         minor changes.
9867
9868 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
9869
9870         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
9871         New function, long needed.
9872
9873 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
9874
9875         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
9876         only_if_exists argument of gdk_atom_intern to
9877         bool.
9878
9879 1999-11-25  Tor Lillqvist  <tml@iki.fi>
9880
9881         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
9882         Fix two copy&paste errors.
9883
9884         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
9885         win32 has changed.
9886
9887         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
9888         GdkWin32SingleFont struct.
9889
9890         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
9891         subranges of loaded fonts. Clear font signature first, in case
9892         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
9893         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
9894
9895         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
9896         Unoffset clip region.
9897
9898 1999-11-23  Tor Lillqvist  <tml@iki.fi>
9899
9900         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
9901         event->any.window before calling filter functions.
9902
9903 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
9904
9905         * gtk/gtkgamma.h: Adapt cast macros to standard.
9906
9907 [ Merges from 1.2 ]
9908
9909 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
9910
9911         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
9912         If translation does not include a '/', use entire
9913         translation instead of crashing.
9914
9915 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
9916
9917         * docs/gtk_tut.sgml:
9918         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
9919
9920 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
9921
9922         * gtk/gtkselection.c (gtk_target_list_remove): Use
9923         g_list_remove_link, not g_list_remove.
9924
9925         [ From Geert Bevin <gbevin@thunderstorms.org> ]
9926         
9927 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
9928
9929         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
9930         statement upon unselection (how the heck did that slip in?).
9931
9932 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
9933
9934         * gtk/gtktext.c (gtk_text_freeze): 
9935         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
9936         in frozen state (and aparently crashes). patch provided by Anders
9937         Melchiorsen <and@kampsax.dtu.dk>.
9938
9939 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
9940
9941         * fix insensitive default/focus widget activation,
9942         reported by Matt Goodall <mgg@isotek.co.uk>.
9943
9944         * gtk/gtkwindow.c (gtk_window_key_press_event): 
9945         (gtk_window_activate_default):
9946         (gtk_window_activate_focus):
9947         return handled=FALSE for actiavtion of insensitive default
9948         widgets. return handled=TRUE for activation of insensitive
9949         focus widgets. don't activate in either case.
9950
9951 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
9952
9953         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
9954         and $glib_cflags to match library order and in the
9955         theory that an old version of GLib is more likely to
9956         be in the include directory for X then vice-versa.
9957         (Bug #2776)
9958
9959 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
9960
9961         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
9962         to determine the locale for fontsets, not LC_MESSAGES;
9963         the user may want English messages with a handling
9964         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
9965         will still be broken) (Bug #2891)
9966
9967 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
9968
9969         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
9970
9971 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
9972
9973         * gtk/gtkrc.ko: Changed the Korean default fontset.
9974
9975 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
9976
9977         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
9978         where when scrolling to the left or top double exposes
9979         were done, causing major slowdowns.
9980
9981 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
9982
9983         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
9984         names to lowercase and alphanumeric, before looking
9985         them up.
9986
9987         * gtk/Makefile.am: Install codeset variant gtkrc files
9988         with normalized names.
9989
9990 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
9991
9992         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
9993         popup menus when the menu is already visible, but its parent
9994         is still hidden, (happens after tornoff window got hidden).
9995
9996 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
9997
9998         * gtk/Makefile.am (install-data-local): Fix
9999         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
10000         deleted, causing error messages on install.
10001
10002 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
10003
10004         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
10005         the handle as well, since we now sometimes ignore
10006         exposes on the handle while resizing.
10007
10008 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
10009
10010         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
10011         extra g_free introduced in one of the last one or two 
10012         commits.
10013
10014 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
10015
10016         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
10017         consistent, put each style that a gtkrc.* file creates
10018         in a unique namespace, remove old files before installing.
10019
10020 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
10021
10022         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
10023         gtk_rc_init is called multiple times. (Yes, people who
10024         do that have bugs in their code.)
10025
10026 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
10027
10028         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
10029         Remove it since it's generated by the Makefile anyway
10030
10031 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
10032
10033         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
10034         device->info.axes for core pointer.
10035
10036 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
10037
10038         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
10039         idle_id, to deal with obsolete, broken C libraries.
10040
10041 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
10042
10043         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
10044         allocation->x/y twice!
10045
10046         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
10047         consistent with gtk_vscale_pos_trough().
10048
10049 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
10050
10051         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
10052         be queueing a resize on a toplevel container between
10053         the time we show it and when we map it. So, we need
10054         to test GTK_WIDGET_VISIBLE() for toplevels, and only
10055         use GTK_WIDGET_DRAWABLE() for child windows.
10056
10057 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
10058
10059         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
10060         (fixes bug #2144)
10061
10062 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
10063
10064         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
10065         container DRAWABLE (instead of VISIBLE), so we don't queue
10066         resizes on non-toplevel containers.
10067
10068 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
10069
10070         * gtk/gtkselection.[ch]: Make the data argument
10071         const guchar *.
10072
10073 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
10074
10075         * gtk/gtkwindow.c: Try to behave sensibly if 
10076         the focus widget is the window itself. (Should
10077         we allow this at all?)
10078
10079 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
10080
10081         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
10082         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
10083         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
10084         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
10085         in prototypes and implementations consistent (Tomas Ogren).
10086
10087         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
10088         before the widget is unparented (reported by damon).
10089
10090         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
10091         since we provide unsigned data anyways.
10092
10093 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
10094
10095         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
10096         the call to gtk_tooltips_layout_text() until later.
10097
10098         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
10099         Call gtk_widget_ensure_style() before using the style.
10100
10101 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
10102
10103         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
10104         for old widgets that don't propagate draws to all
10105         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
10106
10107 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
10108
10109         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
10110         for a redraw but just the widget that requested the resize.
10111
10112 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
10113
10114         * gtk/gtkcontainer.c: added new widget level method
10115         gtk_container_set_reallocate_redraws() and a GtkContainer flag
10116         reallocate_redraws : 1 to reflect the setting, exported this through
10117         the argument system as a boolean ::reallocate_redraws.
10118
10119         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
10120         on the widget because the allocation changes, do so as well for
10121         widget->parent if the parent has reallocate_redraws set to TRUE.
10122         with that containers requesting reallocation redraws get automatically
10123         redrawn if their children changed allocation (this unfortunately
10124         affects also other children that didn't change allocation, but we
10125         cannot work around that before 1.3).
10126
10127 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
10128
10129         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
10130         _and_ height are >0 (not _or_).
10131
10132         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
10133         instead of gtk_container_queue_resize(), which is a core gtk internal
10134         function (must have been on crack when i queued that).
10135
10136         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
10137         we can check more reliably if we want to discard expose events.
10138         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
10139         flag.
10140         
10141         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
10142         we simply trust these events. for deciding whether to discard exposes,
10143         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
10144         
10145 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
10146
10147         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
10148         queues of areas that are completely off screen.
10149
10150         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
10151         logic for handleboxes.
10152
10153         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
10154         check on width/height.
10155
10156 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
10157
10158         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
10159         we are fine with using $@ the way we do (if we actually encounter
10160         brokeness with $@ in VPATH builds because of additional path prefixes,
10161         we need to use $(@F) actually).
10162
10163 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
10164
10165         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
10166         short lived bugs, that would allow language bindings to do surgeries
10167         to our guts.
10168
10169 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
10170
10171         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
10172         where comparison was being done against an uninitialized
10173         value causing intermittant results depending on
10174         compiler flags. Also make it clearer that we aren't
10175         ever initializing the child as 0x0 (though this will
10176         be caught in gtk_widget_size_allocate())
10177
10178 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
10179
10180         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
10181         gtk_window_unset_transient_for() call after we do checks
10182         involving the old transient parent.
10183         [ From Lance Capser <lmc@cyberhighway.net> ]
10184
10185 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
10186
10187         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
10188         an empty file.
10189
10190 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
10191
10192         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
10193         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
10194
10195 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
10196
10197         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
10198         `$@' is valid only in the build dir, not after we've done 
10199         `cd $srcdir'.  Also use `test -f' instead of less portable
10200         `test -e'.
10201
10202 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
10203
10204         * gtk/gtktext.c (correct_cache_insert): Rewrite
10205          for simplicity, and hopefully correctness.
10206          (Fixes bug #1322, which was a segfault when
10207           on some insertions with the properties around
10208           the insertion set up just wrong.)
10209
10210         * gtk/gtktext.c (gtk_text_adjustment): When we receive
10211          a "changed" signal, clamp the new value to the adjustment
10212          bounds to avoid segfaulting if someone tries to change
10213          the adjustment to a bogus value. (Bug #1795)
10214
10215 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
10216
10217         * gtk/gtkmain.c: Ignore unexpected destroy notifies
10218         for children, for toplevel windows handle them
10219         like delete_event.
10220
10221         * gtk/gtkplug.c: Add an unrealize handler so that
10222         we unref plug->socket_window when we are done
10223         with it.
10224
10225 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
10226
10227         * gtk/gtktext.c (clear_area): Fix stupid signedness
10228          problem that was causing background to sometimes
10229          be misaligned.
10230
10231 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
10232
10233         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
10234         
10235         * gtk/gtkmenu.c (gtk_menu_position): Make
10236          sure we never position menus with negative x, y,
10237          since gtk_widget_set_uposition() can't handle that.
10238
10239         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
10240          Modify the positioning code a bit so that we always
10241          put the top-left corner onscreen. (This is for
10242          UI reasons, gtk_menu_position() now takes care of
10243          gtk_widet_set_uposition() brokeness.)
10244
10245 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
10246
10247         * gtk/Makefile.am: fixed up things for -jx, x > 1.
10248
10249 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
10250
10251         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10252           RC style that is passed in. The lack of the ref
10253           before was a bug. If people worked around this
10254           bug, this will introduce a slight memory leak
10255           in their code. The code should typically look like:
10256
10257             rc_style = gtk_rc_style_new ();
10258             [...]
10259             gtk_widget_modify_style (widget, rc_style);
10260             gtk_rc_style_unref (rc_style);
10261
10262         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10263           the style if it was already set.
10264
10265         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10266           style if it was set before.
10267
10268 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10269
10270         * gtk/testgtk.c (main): Add a check to see if we
10271           are being run from the correct directory and
10272           to quit nicely if we are not.
10273
10274         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10275           static.
10276
10277 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
10278
10279         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10280
10281         * gtk/gtkwindow.c:
10282         queue resizes unconditionally (gtk_widget_queue_resize will figure
10283         what to do if the window is not realized).
10284         (gtk_window_move_resize): only recenter the window
10285         for GTK_WIN_POS_CENTER_ALWAYS.
10286         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10287         the same way as GTK_WIN_POS_CENTER.
10288
10289 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
10290
10291         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10292         with (!(info->last_flags & GDK_HINT_POS)) instead of
10293         (!info->last_flags & GDK_HINT_POS).
10294
10295         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10296         new_height unconditionally, because we use these values even if
10297         !default_size_changed && !hints_changed.
10298         comented the (default_size_changed || hints_changed) case with
10299         respect to resize rejects from the window manager.
10300
10301         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10302         in the zvt condition hack, since this includes the window hints, set
10303         the hints after the handling_resize case.
10304
10305         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10306         window is initially shown with to the geometry.
10307
10308 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
10309
10310         * gtk/gtkwindow.c (gtk_window_move_resize):
10311         s/size_changed/default_size_changed/g so i know what's
10312         really going on (frying brain on smaller flame now).
10313
10314 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
10315
10316         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10317         we have size_changed upon handling_resize. this is a gross
10318         workaround for the broken zvt widget and should be removed in
10319         1.3 again (search for FIXME).
10320         Owen provided an accurate comment for this:
10321
10322         /* We could be here for two reasons
10323          *  1) We coincidentally got a resize while handling
10324          *     another resize.
10325          *  2) Our computation of size_changed was completely
10326          *     screwed up, probably because one of our children
10327          *     is broken. It's probably a zvt widget.
10328          *
10329          * For 1), we could just go ahead and ask for the
10330          * new size right now, but doing that for 2)
10331          * might well be fighting the user (and can even
10332          * trigger a loop). Since we really don't want to
10333          * do that, we requeue a resize in hopes that
10334          * by the time it gets handled, the child has seen
10335          * the light and is willing to go along with the
10336          * new size. (this happens for the zvt widget, since
10337          * the size_allocate() above will have stored the
10338          * requisition corresponding to the new size in the
10339          * zvt widget)
10340          *
10341          * This doesn't buy us anything for 1), but it shouldn't
10342          * hurt us too badly, since it is what would have
10343          * happened if we had gotten the configure event before
10344          * the new size had been set.
10345          */
10346
10347 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
10348
10349         * gtk/gtkrc.c: deal properly with the fact that RC
10350           style lists may include rc styles more than once.
10351
10352         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10353           unused static function.
10354
10355         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10356           stack of directories of RC files currently being
10357           parsed and implicitely add them to pixmap path.
10358           
10359           This fixes a bug where the directory would get
10360           appended then overwritten by pixmap_path declarations.
10361
10362           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10363
10364         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10365           theme's exit function. (Patch from Peter Wainwright,
10366           bug #1454)
10367
10368         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10369           Add a destroy() handler to take care of removing
10370           group for menu item. (Fixes bug #1197)
10371
10372         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10373           in warning message.
10374
10375 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
10376
10377         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10378         roundtrip to figure window's width and height, since we know that
10379         anyways from widget->allocation.
10380
10381 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
10382
10383         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10384           the hints after we request the new size.
10385
10386 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
10387
10388         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
10389           GTK_WIDGET_REALIZED() assertion - we can compute the
10390           hints before we are realized.
10391
10392         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
10393           hint changing so that we have a value of hints_changed
10394           when we decide whether to constrain the window size.
10395
10396         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
10397
10398         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
10399         change back to G_MAXINT.
10400
10401 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
10402
10403         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
10404         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
10405         contain uncluttered values.
10406         (gtk_window_compute_hints): simply assert that window is realized
10407         and that geometry_info is valid, since we rely on this anyways.
10408         (gtk_window_constrain_size): major cleanups to the code.
10409         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
10410         for the base size, instead of the minimums. use 32767 as max width
10411         and height (like in gtkwindow.c) instead of G_MAXINT.
10412
10413 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
10414
10415         * cleaned up the GtkContainer.need_resize flag handling mess, we
10416         only need to force resize requests when we were prematurely
10417         realized, or our widget tree was modified when we were temporarily
10418         hidden. handling these cases directly upon showing the window (i.e.
10419         while the GdkWindow is still unmapped) avoids the need to wait for
10420         a configure event response and therefore makes the GUI more snappier
10421         and avoids blank windows during the roundtrip.
10422
10423         * gtk/gtkwidget.c:
10424         (gtk_widget_hide): 
10425         (gtk_widget_show): don't queue resizes on toplevels, they know how
10426         to deal with matters.
10427
10428         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
10429         flag directly for not visible resize containers and spare us unecessary
10430         signal emissions.
10431
10432         * gtk/gtkwindow.c:
10433         (gtk_window_realize): if we need to enforce premature size allocation,
10434         queue a container resize so we are correctly resized later on.
10435         (gtk_window_init):
10436         (gtk_window_size_request):
10437         don't freak around with the ->need_resize flag,
10438         gtk_container_queue_resize() will care about that.
10439         (gtk_window_show):
10440         handle initial resizing issues here, we can handle matters better in
10441         this place, especially since we know that our GdkWindow is still
10442         unmapped.
10443         (gtk_window_move_resize):
10444         don't care about ->need_resize at all.
10445         handle size changes properly that occoured while we waited for a
10446         configure event.
10447
10448 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
10449
10450         * gtk/gtkwidget.c (gtk_widget_set_uposition):
10451         * gtk/gtkwindow.[hc] (gtk_window_reposition):
10452         Move the hint setting code from gtk_widget_set_uposition
10453         to here; set the hints so that we respect any previously
10454         set geometry hints.
10455
10456         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
10457         change the window hints here or move the window here,
10458         let that happen in gtk_window_move_resize().
10459
10460 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
10461
10462         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
10463         to already queued resizes (and therefore redraws) on a widget, check
10464         its anchestry as well.
10465
10466         * gtk/gtkcontainer.c:
10467         (gtk_container_queue_resize): clear resize widgets for resize
10468         containers before aborting prematurely. this is especially important
10469         for toplevels which may need imemdiate processing or their resize
10470         handler to be queued.
10471         (gtk_container_dequeue_resize_handler): added new internal function for
10472         gtkwindow.c.
10473
10474         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
10475         configure event, take possible changes in window position into account
10476         as well.
10477         if we request a new window size, queue up a resize handler that will
10478         last until the configure event response arrives.
10479         combined the ->need_resize case (initial show) with the general size
10480         (hints) changed case and added even more comments.
10481         if !auto_shrink, only revert to the old allocation if the new size
10482         is smaller than the current allocation.
10483
10484 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
10485
10486         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
10487                            gtk_window_set_geometry_hints
10488                            gtk_window_set_default_size):
10489         When hints are set, queue a resize so that the hints will
10490         be eventually reset on the toplevel.
10491
10492         * gtk/gtkwindow.c (gtk_window_show): Use
10493         gtk_window_compute_default_size(). Clear the need_resize flag
10494         on the initail map so that we don't unnecessarily trigger the
10495         resize code.
10496
10497         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
10498         into separate functions. Compare the hints we are setting
10499         with what we set last time so that we can accurately
10500         tell when we need to reset the hints.
10501
10502         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
10503         function to figure out the size from requisition
10504         and default_size.
10505
10506         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
10507         from fvwm to constrain a size to the geometry hints.
10508
10509         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
10510         to compare two sets of geometry hints.
10511
10512         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
10513         from gtk_window_set_hints(), just compute the hints,
10514         don't set them.
10515
10516         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
10517         code from gtk_window_move_resize() to separate function,
10518         rationalize a bit.
10519
10520 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
10523         structure into a new private structure.
10524
10525         * gtkrc.c: Split GtkRcStyle into public/private.
10526         In the private part, add a list of pointers to the
10527         RcStyle lists this RcStyle participates in.
10528
10529         * gtkrc.c: When a RcStyle is free, remove all
10530         lists referencing it from the 
10531         realized_style_ht hash, and free those lists.
10532         
10533         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
10534         gtk_rc_init(), since that adds the default styles
10535         to the list of parsed RC files again.
10536
10537         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
10538         
10539 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
10540
10541         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
10542         checks that ensure that a widget's allocation is at least 1 in width
10543         and height. (GNOME note: this doesn't affect old panel code anymore,
10544         because GtkSocket will request width and height of at least 1 since
10545         Fri Jul 23).
10546
10547         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
10548         allocated yet (happens if the user realizes the window prematurely),
10549         size request and allocate it.
10550         (gtk_window_size_allocate): guard against guint underflows.
10551
10552 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
10553
10554         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
10555         in gtk_built_sources, so gtk.defs gets built prior to all other
10556         sources.
10557
10558 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
10559
10560         * gtk/Makefile.am:
10561         invoke indent on gtkmarshal.*. 
10562         rewrote source generation rules, use COPYING as oldest source tag for
10563         a piggyback rule to generate all sources from (don't touch it ;).
10564         major cleanups, strip spaces on build rules for GNU Make.
10565
10566         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
10567         source and target files from commandline arguments. don't invoke indent.
10568
10569 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
10570
10571         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10572         notebook after switch to avoid drawing problems.
10573         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10574         
10575         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
10576         show them instead. 
10577         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10578
10579 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
10580
10581         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10582         notebook after switch to avoid drawing problems.
10583         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10584         
10585         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
10586         show them instead. 
10587         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10588
10589 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
10590
10591         * gtk/gtkwindow.c:
10592         we use window->need_resize from configure_event now, to indicate that
10593         the gtkwindow should keep its allocation (e.g. because the user resized
10594         the window through window manager handles). resize_count is now reliably
10595         used to figure whether we got the allocation we requested from the
10596         window manager.
10597         configure events get queued as resizes now, the real stuff (size
10598         computation and allocation) now only goes on in gtk_window_move_resize().
10599         GtkWindow's requisition now contains its *real* requisition (like all
10600         other widgets), *not* taking usize into account.
10601         geometry_info->last_{width|height} is now updated from set_hints() only
10602         so it always contains the last hints we set for the window manager.
10603         made some event handlers return TRUE instead of FALSE.
10604         the overall code should be much more straight forward now, and the
10605         significant code portions are accompanied by comments now.
10606         (gtk_window_set_hints):
10607         removed requisition argument and made it
10608         fetch the requisition through gtk_widget_get_child_requisition.
10609         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
10610         does that now.
10611         (gtk_window_show):
10612         ensure that the widget is realized before calling 
10613         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
10614         ensure that we got properly size requested and allocated before
10615         realization.
10616         (gtk_window_configure_event):
10617         ignore plain window moves, or reallocate the widget tree through the
10618         resize queue otherwise.
10619         (gtk_window_move_resize):
10620         mostly rewrote this function to figure window manager hints more
10621         reliably, coalesce window moves and resizes to reduce configure events
10622         and do actuall size allocations.
10623
10624 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
10625
10626         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
10627         that have a resize pending, because a redraw is already queued for them.
10628
10629         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
10630         hack to clear resize_widgets.
10631
10632         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
10633         for resize containers prior to size allocation. (this is also a bit
10634         ugly, but avoids side effects for stopped emissions and is thus more
10635         reliable).
10636         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
10637
10638         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
10639         function from gtk_tooltips_expose, as we connect to ::expose_event
10640         *and* ::draw now.
10641
10642 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
10643
10644         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
10645         checks.
10646         (gtk_target_list_unref): Likewise.
10647
10648         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
10649
10650 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
10651
10652         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
10653         guard against division by zero. (Fixes bug #1339)
10654
10655 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
10656
10657         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
10658         Prevent the trivial leak of information of allowing
10659         word motion when the entry is not visible.
10660
10661 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
10662
10663         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
10664         modality to error dialog as well as confirmation dialogs.
10665         (Bug #1803, reported by Rosanna Wing Sze Yuen)
10666
10667 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
10668
10669         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
10670         tree->view_lines.
10671         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
10672
10673         * gtk/Makefile.am (install-data-local): Solaris apparently
10674         has various troubles with ln -f; use rm first instead.
10675         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
10676
10677 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
10678
10679         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
10680         use `cp' followed by `rm' (the `rm' was already there).
10681
10682 July 30, 1999 Elliot Lee <sopwith@redhat.com>
10683         
10684         * configure.in: Fix autoconf warnings about cross compilation by
10685         trying to provide sane defaults for AC_TRY_RUN.
10686         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
10687         put them into $(srcdir) when generated. Also add a dependency of
10688         gtksignal.h on gtkmarshal.h for -j builds. 
10689         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
10690
10691 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
10692
10693         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
10694         GDK_THREADS_{LEAVE,ENTER} pair.
10695         (From Paul Fisher <pnfisher@redhat.com>)
10696
10697 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
10698
10699         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
10700         width and height are always >0 (owen).
10701
10702 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
10703
10704         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
10705         change that assured that a widget's allocated with and height are
10706         always >1, since this breaks *buggy* panel code. unfortunately this
10707         back-breaks the gimp's color selector.
10708
10709         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
10710         allocation is always >0 in width and height, before sending the
10711         configure event; this is a *gross* hack to get the gimp back to work.
10712         
10713         * marked both cases with TODO-1.3
10714
10715 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
10716
10717         * gtk/gtktext.c: Don't display wrap indicators when
10718         text is not editable and word wrap is on.
10719
10720 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
10721
10722         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
10723         option menus here as they are not derived from menu shell, assure that
10724         the option menu has a menu we can add items to.
10725
10726 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
10727
10728         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
10729         width/height to (gint) before calculations and check against < 0 to
10730         avoid guint wraparounds.
10731
10732 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
10733
10734         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
10735         width and height is never zero. sanity check both dimensions against
10736         32767 and issue a warning if the allocation is greater than that.
10737
10738 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
10739
10740         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
10741         to g_main_pending() as well.
10742
10743 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
10744
10745         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
10746         call to g_main_iteration() - since that will regrab
10747         GTK+ lock to process events.
10748
10749 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
10750
10751         * gtk/gtkwindow.c
10752         - Regularize with the rest of GTK+ by making widget->requisition
10753           not reflect the set_usize()
10754         - Always recompute geometry hints, then check if they
10755           changed before sending them to the X server. The
10756           previous checks for changes would fail in a number
10757           of circumstances. 
10758
10759 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
10760
10761         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
10762
10763 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
10764
10765         * gtk/gtkdnd.c:
10766         - Code cleanups
10767         - Instantaneously update on modifier key presses
10768         - Allow cancellation of the drag with Escape.
10769
10770 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
10771
10772         * gtk/testgtk.c (create_handle_box): Set the policy
10773         to auto_shrink - otherwise the appearance is rather
10774         strange when flipping between horizontal and vertical.
10775
10776 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
10777
10778         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
10779         (gtk_window_set_default_size): don't change a value if it's < 0.
10780         queue a resize.
10781
10782 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
10783
10784         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
10785
10786 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
10787
10788         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
10789         add an extra "/" when concating "/" + filename.
10790         (From Matt Grossman <mattg@oz.net>)
10791
10792 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
10793
10794         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
10795         for fg_gc if we set it for drawing pixmap.
10796
10797 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
10798
10799         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
10800         
10801         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
10802         already set, call old engine's destroy function and
10803         unref the old engine.
10804
10805 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
10806
10807         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
10808
10809 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
10810
10811         * gtk/gtkaccelgroup.h: mark certain functions as internal.
10812
10813 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
10814
10815         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
10816         expand behaviour changed.
10817
10818         * gtk/gtklabel.c (gtk_label_set_pattern):
10819         (gtk_label_set_justify):
10820         (gtk_label_set_line_wrap):
10821         don't bother invoking queue_clear, the reallocation does
10822         that for us, always free_words so the upcoming resize will
10823         relayout the label's contents.
10824
10825 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
10826
10827         * applied argument implementation patches from Elena Devdariani
10828         <elena@cogent.ca>.
10829
10830         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
10831         ::space_style, ::relief
10832         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
10833         * gtk/gtkpreview.c: ::expand
10834         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
10835         * gtk/gtknotebook.c: ::homogeneous
10836         * gtk/gtklabel.c: ::wrap
10837         * gtk/gtklist.c: ::selection_mode
10838         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
10839         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
10840         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
10841         * gtk/gtkclist.c: ::sort_type
10842         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
10843         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
10844
10845 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
10846
10847         * gtk/gtkstyle.c: Removed ill-thought-out part of last
10848         comment.
10849
10850 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
10851
10852         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
10853         counting right when we have to attach a new style
10854         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
10855
10856         * gtk/gtkstyle.c: Documented the refcounting
10857         peculularities of gtk_style_attach.
10858
10859 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
10860
10861         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
10862         window types.
10863
10864         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
10865         of GTK_TOPLEVEL for creating the window.
10866
10867 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
10868
10869         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
10870         the last argument (reported by Per Winkvist).
10871         
10872 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
10873
10874         Fixes for invisible XOR lines (Frank Loemker
10875         <floemker@TechFak.Uni-Bielefeld.DE>)
10876         
10877         * gtk/gtkclist.c (gtk_clist_realize): Always use
10878         a non-zero pixel for GDK_XOR.
10879
10880         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
10881         Use GDK_INVERT instead of GDK_XOR.
10882
10883 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
10884
10885         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
10886         signals if h/voffsets differ from adjustment values.
10887         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
10888
10889 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
10890
10891         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
10892         ::selection-done emissions up to the topmost menu shell.
10893
10894 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
10895
10896         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
10897         the user data on the window before destroying it.
10898
10899         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
10900         unrealize handler to take care of destroying 
10901         notebook->panel properly. 
10902         (Bug #1198 - Morten Welinder <terra@diku.dk>)
10903
10904         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
10905         of g_new and g_realloc to stop memory leak. (Actually,
10906         we could just use g_realloc(), but I'm not 100% sure
10907         that is portable).
10908         (Bug #1196 - Morten Welinder <terra@diku.dk>)
10909
10910 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
10911
10912         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
10913
10914         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
10915         for fontsets.
10916
10917         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
10918         with bin/button confusion.
10919
10920 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
10921
10922         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
10923         and show how preselection of radio items is done.
10924
10925 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
10926
10927         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
10928         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
10929         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
10930         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
10931         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
10932         * gtk/gtktable.c (gtk_table_attach): 
10933         * gtk/gtklist.c (gtk_list_insert_items): 
10934         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
10935         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
10936         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
10937         * gtk/gtkbin.c (gtk_bin_add): 
10938         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
10939         * gtk/gtkfixed.c (gtk_fixed_put): 
10940         * gtk/gtklayout.c (gtk_layout_put):
10941         general fixups to container_add logic. always realize child if
10942         child->parent is realized, only map the child and queue a resize
10943         if child and child->parent are both visible.
10944
10945 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
10946
10947         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
10948         instead of gtk_container_foreach to walk and unrealize children, so
10949         composite children get also unrealized.
10950         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
10951         (gtk_widget_map): assert that the widget is visible (basic constrain).
10952         (gtk_widget_real_map): assert that the widget is realized (basic
10953         constrain).
10954
10955 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
10956
10957         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
10958
10959 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
10960
10961         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
10962         file for iso-8859-2 locales.
10963
10964         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
10965
10966 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
10967
10968         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
10969          (Pointed out by andy@rz.uni-karlsruhe.de and others).
10970          Remove some suspicious and useless lines. 
10971
10972 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
10973
10974         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
10975         width,height = 0, 0 to mean - here to edge of window,
10976         instead of -1, -1, since the former is all we support.
10977
10978 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
10979
10980         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
10981         when removing from quit_functions list.
10982
10983 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
10984
10985         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
10986
10987 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
10988
10989         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
10990          When redrawing characters on non-visible entry, use appropriate
10991          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
10992
10993 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
10994
10995         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
10996         from drag coordinates.
10997         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
10998         use drag_dest_cell.
10999
11000         * gtk/gtktree (drag_dest_cell)
11001         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
11002         (Bug #1129)
11003
11004 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
11005
11006         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
11007         translate_* fields.
11008         (gtk_item_factory_finalize): invoke translate_notify independant from
11009         translate_data.
11010         (gtk_item_factory_set_translate_func): likewise.
11011         (gtk_item_factory_destroy): only remove ifactory pointer from those
11012         widgets that belong to us (stupid me).
11013
11014 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
11015
11016         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
11017         rc_style list when lookup succeeeds.
11018
11019 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
11020
11021         * gtk/gtkctree.c (resync_selection): 
11022         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
11023         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
11024         bug.
11025
11026 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
11029         Add some missing GDK_THREADS_ENTER()/LEAVE around
11030         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
11031
11032 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
11033
11034         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
11035         rather than emit_by_name.
11036
11037         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
11038         on the widget across multiple signal emissions.
11039         (gtk_editable_delete_text): same here.
11040         (gtk_editable_class_init): set widget_class->activate_signal after
11041         editable_signals[ACTIVATE] has been created.
11042
11043 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
11044
11045         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
11046         position here prematurely -- we might not have the
11047         right ->min_position and ->max_position yet.
11048
11049 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
11050
11051         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
11052         Add error traps so if the other end of the connection
11053         dies, we survive.
11054
11055         * gtk/gtkselection.c (gtk_selection_notify): Clean
11056         up properly when selection property retrieval fails.
11057         
11058         * gtk/gtkselection.c (gtk_selection_request): Correctly
11059         reject SelectionRequest notifies where the handler
11060         returns no data.
11061
11062 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11063
11064         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
11065         when we've previously highlighted.
11066
11067         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
11068         emit two "drag_leave" signals for Motif drops.
11069
11070         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
11071         back the correct status messages when dropping from
11072         Motif onto a proxy window that is rejecting the
11073         drop.
11074
11075 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
11076
11077         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
11078         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
11079         to compare two argument values. added gtk_arg_to_valueloc() to set a
11080         variable from an arg through its location (pointer).
11081
11082         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
11083         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
11084         as gfloat*, uchars are collected as guchar*, ints are collected as
11085         gint*, etc...
11086
11087 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
11088
11089         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
11090         Include <string.h> instead of <strings.h>.
11091
11092         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
11093         (actually, a lot more duplicate includes occur if
11094          you trace through the sequence of #include's)
11095         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
11096         
11097 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
11098
11099         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11100         gtk-a-higuti-990322-[0-3]
11101
11102         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11103         that was causing -DX_LOCALE not to work.
11104
11105         * gtk/gtkrc.c (gtk_rc_init):
11106         X_LOCALE will never have LC_MESSAGES defined
11107
11108 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
11109
11110         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
11111         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
11112
11113         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
11114         left/right as well (gtk-michael-980726-0.patch.gz).
11115
11116         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
11117         for pointer values, use gchar instead of char. fixed uline allocation
11118         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
11119         chunks instead of G_ALLOC_ONLY.
11120         (gtk_label_size_request): always alter requisition as passed and leave
11121         widget->requisition alone.
11122         (gtk_label_set_text): allow NULL strings.
11123         (gtk_label_new): likewise.
11124
11125 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
11126
11127         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
11128
11129 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
11130
11131         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
11132         *and* mapped (i.e. drawable).
11133         (gtk_bin_expose): only send exposes to drawable children.
11134
11135         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
11136         (gtk_box_expose): only send exposes to drawable children.
11137
11138         * gtk/gtkhscale.c (gtk_hscale_draw): 
11139         * gtk/gtkvscale.c (gtk_vscale_draw):
11140         hm, this is an ugly one. we first compute the size of our trough area
11141         here (window relative) and then check intersection with the draw_area
11142         which is parent relative because we're a NO_WINDOW widget, so we need
11143         to offset the trough area by allocation.x and allocation.y before the
11144         check. (this must not be done for the background area though, since
11145         that's already computed parent relative).
11146
11147 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
11148
11149         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
11150         unrealize title buttons.
11151
11152 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
11153
11154         * gtk/gtkclist.c (gtk_clist_column_title_passive)
11155         (gtk_clist_column_title_active): 
11156         only connect/disconnect to GtkWidgetClass::event to block mouse events.
11157
11158         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
11159         zero initialize event, removed superfluous gdk_window_get_pointer call
11160
11161         * gtk/gtklist.c (gtk_list_vertical_timeout)
11162         (gtk_list_horizontal_timeout): removed superfluous
11163         gdk_window_get_pointer call
11164
11165 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
11166
11167         * plugging problems reported by "Bruce Mitchener, Jr."
11168         <bruce@puremagic.com> due to a purify session.
11169
11170         * gtk/gtkstyle.c:
11171         (gtk_style_ref): 
11172         (gtk_style_unref): assert ref_count to be > 0.
11173
11174         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
11175         the requisition.
11176         (gtk_clist_set_shift): likewise.
11177
11178         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
11179         adjustments.
11180
11181         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
11182         event before sending it and set send_event to TRUE (which needs to
11183         be done for *all* synthesized events).
11184         (gtk_list_vertical_timeout): likewise.
11185
11186         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
11187         leaks.
11188
11189         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
11190         to TRUE when synthesizing events.
11191
11192 [ *** end of merges from 1.2 *** ]      
11193         
11194 1999-11-21  Tor Lillqvist  <tml@iki.fi>
11195
11196         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
11197         (or copied from gdkconfig.h.win32 on Win32, sigh).
11198
11199         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
11200
11201         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
11202
11203         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
11204
11205         * gdk/gdkconfig.h.win32: New file.
11206
11207         * gdk/win32/makefile.cygwin: Build just a static archive here.
11208
11209         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
11210         for the DLL from the static archive built above.
11211
11212         * gdk/gdk.def: Moved here from the win32 subdirectory.
11213
11214         * gdk/win32/*: Adapt for the changed private struct organisation.
11215
11216         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
11217
11218 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
11219
11220         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
11221         for wheel mice (buttons 4 and 5).
11222
11223 1999-11-18  Tor Lillqvist  <tml@iki.fi>
11224
11225         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
11226         drawables use just the pixel field in the foreground and
11227         background GdkColor of the GdkGC.
11228
11229         gdk_gc_set_{fore,back}ground() are called in the GIMP with
11230         GdkColors containing uninitialized (red,green,blue) fields, and
11231         just the pixel field filled in, and furthermore in the
11232         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
11233         It thus turns out that we really don't need to have the full
11234         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
11235         it later to have just the pixel values.
11236
11237 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
11238
11239         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
11240
11241 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
11242
11243         * docs/gtkfaq.sgml: threads example from Erik Mouw.
11244         New question on GtkLabel background colors.
11245
11246         * docs/gtk_tut.sgml:
11247           - Correct the example code callback
11248             function definitions.
11249           - Update the gtkdial example code, from Frans van Schaik.
11250           - Update setselection.c to current API.
11251
11252         * examples/Makefile examples/*/*.c: Update to code
11253         listed in tutorial.
11254
11255 1999-11-10  Tor Lillqvist  <tml@iki.fi>
11256
11257         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11258         subrange table (from the "Developing International Software for
11259         WIndows 95 and Windows NT" book) was missing the Hangul syllable
11260         block... Get the loaded font's charset correctly.
11261
11262         (Note that this, and the other *-win32.c files, still really are
11263         the old ones, the win32 subdirectory is not ready for compilation
11264         yet after the reorg.)
11265
11266 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
11267
11268         * gtk/gtkclist.c: Fix off-by-one bug in parameter
11269         check.
11270
11271 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
11272
11273         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11274         on results of XQueryDeviceState().
11275
11276 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
11277
11278         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11279         we need to accesss only ->children. We need an accessor
11280         for the children.
11281
11282         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11283         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11284         to get rid of gdkx.h include.
11285         
11286         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11287         and random references to 'None'.
11288
11289         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11290         Get rid of unused #include <gdk/gdkx.h>
11291
11292         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11293         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11294         gdkconfig.h.
11295
11296 1999-11-08  Tor Lillqvist  <tml@iki.fi>
11297
11298         * gdk/win32/gdkdraw.c
11299         * gdk/win32/gdkfont.c
11300         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11301         following yesterday's changes. (Unrelated to Owen's reorg.)
11302
11303 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
11304
11305         * gdk/x11/gdkinput-gxi.c: Add missing include,
11306           fix GdkWindowPrivate => GdkDrawablePrivate.
11307
11308         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11309
11310         * gdk/x11/Makefile.am (xinput_sources): Add missing
11311         backslash to fix building with --with-xinput=none
11312
11313 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
11314
11315         Move all X specific code into the x11/ directory.
11316         Aside from shuffling things around, did the following:
11317
11318        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11319          gdk_arg_context_* - a simple argument parsing system
11320          in the style of popt.
11321
11322        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11323          gdk/x11/gdkprivate-x11.h:
11324          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
11325          add ->klass and ->klass_data fields. The klass_data
11326          field points to an auxilliary structure that is
11327          windowing system dependent.
11328
11329        * gdk/gdkfont.c: Make most of the measurement functions
11330          simply wrappers around gdk_text_extents().
11331
11332        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
11333          _gdk_font_strlen() function that hides the weird
11334          behavior in gtk+-1.[02] where a string is interpreted
11335          differently for 8-bit and 16-bit fonts.
11336
11337        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11338          to store common code for synthesizing double/triple
11339          press events.
11340         
11341        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11342          Make all the function that modify an existing GC
11343          simply wrappers around gdk_gc_set_values().
11344          
11345        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11346          for throwing out later.
11347
11348        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11349          GdkImagePrivate and GdkColormapPrivate to have a
11350          windowing system dependent part (GdkFontPrivateX etc.)
11351          that "derives" from the system-independent part.
11352
11353        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11354          Got rid of the included-source-files for XInput in
11355          favor of automake conditionals. (Which didn't exist
11356          when XInput support was originally added.)
11357
11358        * gdk/gdkrgb.c: Remove the visual id from the debugging
11359          statements since that is X11 specific; print out
11360          type/depth info instead.
11361          
11362
11363 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
11364
11365         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11366         loading duplicates of hashed fonts.
11367
11368         * gdk/gdk.c (gdk_keysym_convert_case): rename
11369         gdk_XConvertCase to gdk_keysym_convert_case, allow
11370         results to be NULL in the GTK+ style.
11371
11372         * gdk/gdkcompat.h: Started compatibility header
11373         for renames.
11374
11375 1999-11-07  Tor Lillqvist  <tml@iki.fi>
11376
11377         * gdk/win32/gdkprivate.h: New font private structures, related to
11378         fontsets.
11379
11380         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11381         gdk_font_list_free(). On X11, will just be wrappers to
11382         XListFonts() and XFreeFontNames(). On Win32, the code previously
11383         in gtkfontsel.c is now here.
11384
11385         New function gdk_font_xlfd_create(). On X11 will get the FONT
11386         property of the font (for GDK_FONT_FONTs), or call
11387         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11388         builds a XLFD style name from the font information in the LOGFONT
11389         struct(s).
11390
11391         New function gdk_font_xlfd_free(), which correspondingly frees the
11392         string returned by gdk_font_xlfd_create().
11393
11394         Implement fontsets on Win32. Add a function that iterates over a
11395         wide char string and calls a callback function for each substring
11396         of wide chars from the same Unicode subrange (and thus probably
11397         available in the same real font).
11398
11399         Improve the XLFD emulation a bit.
11400
11401         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
11402
11403         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
11404         Beta3, WM_IME_CHAR messages don't seem to contain the composed
11405         multi-byte char as with the Active IMM on Win9x. Oh well, handle
11406         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
11407         ImmGetCompositionStringW() to get the composed Unicode chars.
11408
11409         * gdk/win32/gdkgc.c
11410         * gdk/win32/gdkdraw.c: Changes needed because of the font private
11411         struct changes.
11412
11413         * gdk/win32/gdk.def: Add the new functions.
11414
11415 1999-11-04  Tor Lillqvist  <tml@iki.fi>
11416
11417         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
11418         get the Platform SDK to get <dimm.h>.
11419
11420         * gdk/win32/gdkevents.c: More event handling fixes and
11421         simplification. Never generate motion events with is_hint true. We
11422         used to do that on bogus grounds earlier. Windows sends
11423         WM_MOUSEMOVE messages on button events even if the mouse hasn't
11424         moved, ignore these.
11425
11426         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
11427
11428         * gdk/win32/gdkglobals.c
11429         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
11430         the TrackMouseEvent function, and use it.
11431
11432         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
11433         char before calling WideCharToMultiByte in order to get a string
11434         for the window title.
11435
11436         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
11437
11438         * gdk/win32/gdk.def: Remove obsolete functions.
11439
11440         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
11441         /nodefaultlib and /defaultlib switches.
11442
11443         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
11444
11445 1999-10-31  Tor Lillqvist  <tml@iki.fi>
11446
11447         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
11448         EuroSign).
11449
11450         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
11451         same type as GdkWChar, especially on Win32.
11452
11453         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
11454
11455         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
11456         before passing to Windows GDI for drawing etc. Convert to the
11457         system default codepage before passing to Windows as window
11458         titles.
11459
11460         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
11461         support changing input locale on the fly.
11462
11463         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
11464         on-the-fly changes. Convert incoming characters from the current
11465         codepage to Unicode (and then to a UTF-8 multi-byte string) based
11466         on the current input language. Use keysym<->Unicode mapping tables
11467         and functions borrowed from xterm sources.
11468
11469         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
11470         editions of Win9x, use the ActiveX-based Active IMM (Input Method
11471         Manager) if available. IMEs and the Active IMM are available under
11472         the disguise of Chinese, Korean and Japanese support for IE and
11473         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
11474         support is present in all editions (as long as you install it).
11475
11476         Call DispatchMessage from gdk_events_queue() (and thus
11477         gdk_WindowProc()), instead of duplicating the code in
11478         gdk_WindowProc().
11479
11480         Reworked the grab handling and propagation code, factored out
11481         duplicated code snippets into separate functions. Other cleanups,
11482         too.
11483
11484         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
11485         the <dimm.h> header describing the Active IMM.
11486
11487         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
11488         just do the same as for "single" fonts.
11489
11490         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
11491         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
11492         the new keysyms from gdkkeysyms.h.
11493
11494         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
11495         fontset, so that gtkentry uses wide characters.
11496
11497         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
11498         GTk+'s system directory "gtk+", not "gtk".
11499
11500 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
11501
11502         * docs/gtkfaq.sgml: FAQ update
11503
11504 1999-10-21  Tor Lillqvist  <tml@iki.fi>
11505
11506         * gdk/win32/gdkprivate.h: Add more font private data.
11507
11508         * gdk/win32/gdkfont.c
11509         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
11510         fonts and strings. Now works much better. You still have to
11511         have a correct font selected, though. No fontset emulation yet.
11512
11513 1999-10-19  Tor Lillqvist  <tml@iki.fi>
11514
11515         * gtk/maketypes.awk: Use G_OS_WIN32.
11516
11517         * gtk/gtk.def: Add some missing entry points. Also some non-public
11518         ones, but PyGTK porter claims to need them.
11519
11520         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
11521         built-in type generation.
11522
11523 1999-10-14  Tor Lillqvist  <tml@iki.fi>
11524
11525         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
11526         GDK_FONT_FONT fonts (which is all we have for now, we don't
11527         emulate fontsets). The X11 version uses plain XDrawString in that
11528         case, too. The string passed to gdk_draw_text_wc seems to be in
11529         fact (at least, when used by gtkentry and gtktext) either in a
11530         single-byte charset, or a DBCS. Not Unicode.
11531
11532         This fixes the problem in gtkfontsel, where even if you had
11533         selected a font with a non-Latin1 charset (windows-greek, for
11534         instance), the preview still used Latin-1 glyphs.
11535
11536         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
11537         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
11538         (gdk_font_load): Recognize the demibold etc weights, even if we
11539         don't have the corresponding constants in the headers.
11540         (gdk_font_hash_insert): Use same hash mechanism as in the X11
11541         version. Should save font resources a bit, when we don't have
11542         multiple HFONTs for the same font.
11543
11544         * gdk/win32/gdkprivate.h: Add the names field as in the X11
11545         version.
11546
11547 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
11548
11549         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
11550         X values
11551
11552 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
11553
11554         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
11555         layout support (as mentioned on
11556         http://www.jcinteractive.com/gnome-ui/software/widgets/)
11557
11558 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
11559
11560         * gtk/fnmatch.c
11561         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
11562
11563 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
11564
11565         * configure.in (ALL_LINGUAS): Added Galician (gl)
11566
11567 1999-10-05  Tor Lillqvist  <tml@iki.fi>
11568
11569         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
11570
11571         * gdk/win32/gdkcompat.c: New file, actually provide an
11572         implementation for the deprecated functions. (Just temporarily.)
11573
11574         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
11575
11576         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
11577
11578         * gdk/win32/gdk.def gtk/gtk.def: Updates.
11579
11580 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
11581
11582         * configure.in: Added "uk" to ALL_LINGUAS.
11583         
11584 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
11585
11586         * configure.in: correct checking for BeOS check
11587
11588         * gdk/gdktypes.h
11589         * gtk/fnmatch.c
11590         * gtk/gtkfilesel.c
11591         * gtk/gtkitemfactory.c
11592         * gtk/gtkmain.[ch]
11593         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
11594
11595 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
11596
11597         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
11598         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
11599         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
11600         by Bulgarian). 
11601
11602 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
11603
11604         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
11605         Fix a reference to window_private->destroyed.   
11606
11607         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
11608         (ugly) setting of an internal GdkWindow member to use
11609         a _slightly_ cleaner macro.
11610
11611         * gdk/gdkprivate.h: Split GdkWindowPrivate into
11612         GdkDrawablePrivate and GdkWindowPrivate.
11613         Add extra macros for accessing GDK_DRAWABLE_ components.
11614
11615         * *.[ch]: Massive adjustments for the above, use the
11616         new macros in a lot of places.
11617
11618 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
11619
11620         * gdk/gdktypes.h: Make GdkDrawable the base type,
11621         not GdkWindow.
11622
11623 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
11624
11625         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
11626
11627 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
11628
11629         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
11630
11631 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
11632
11633         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
11634         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
11635
11636         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
11637
11638         * docs/gtk-config.1: Now autogenerated.
11639         * docs/Changes-1.4.txt: started
11640         
11641 1999-10-03  Tor Lillqvist  <tml@iki.fi>
11642
11643         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
11644         to #ifdef also here.
11645
11646         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
11647         Owen did to the X11 backend.
11648
11649         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
11650         ScrollWindowEx when blitting inside a window, it can't be correct
11651         in the general case.
11652
11653         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
11654         WM_GETMINMAXINFO is easier.
11655
11656         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
11657         depth equal to the bitspixel value, not the visual's depth.
11658
11659         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
11660         to 24 even if the bitspixel value is 32.
11661
11662         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
11663         need to check for depth==32 when bpp==32, depth will always be 24.
11664
11665 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
11666
11667         * docs/Changes-1.4.txt: Started
11668         
11669         * gtk/Makefile.am (gdk_headers): Include all the new headers.
11670
11671         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
11672         
11673         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
11674         into C file.
11675         
11676         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
11677         header to gdkinputprivate.h.
11678
11679         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
11680         unused since before 1.2.
11681
11682 1999-09-30  Tor Lillqvist  <tml@iki.fi>
11683
11684         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
11685         expand possible hex escapes in the font family (put there by
11686         logfont_to_xlfd if the font name isn't a legal XLFD font family,
11687         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
11688         On Win32, add hex escapes here, too.
11689
11690 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
11691
11692         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
11693         to #ifdef GDK_WINDOWING_X11.
11694
11695 [ Merges from gtk-1-2 ]
11696
11697 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
11698
11699         * configure.in: fixed "GNU Make" check to pass with new make version
11700         3.77.95.
11701
11702 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
11703
11704         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
11705         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
11706         AM_PATH_GTK() macros don't get confused by the -pre1.
11707
11708 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11709
11710         * configure.in (REBUILD): Change check for perl5
11711           to check explicitely for v >= 5.002. (5.001
11712           does not work with our scripts.)
11713
11714 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
11715
11716         * configure.in: evaluate $PERL for the perl version check. added
11717         --disable-rebuilds to give the user an option to completely disable
11718         any source autogeneration rules.
11719
11720 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
11721
11722         * configure.in: evaluate $ac_make when checking for GNU Make.
11723
11724 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11725
11726         * docs/Makefile.am: added generation.txt.
11727
11728         * Makefile.am: require automake 1.4, build README from README.in and
11729         INSTALL from INSTALL.in in dist-hook.
11730         
11731         * README.in:
11732         * INSTALL.in: new files to autogenerate README and INSTALL from.
11733
11734         * configure.in: figure whether we have GNU Make
11735
11736         * docs/generation.txt: minor additions/corrections.
11737
11738 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
11739
11740         * docs/gtkfaq.sgml: FAQ Update
11741
11742 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11743         
11744         * configure.in: Fix autoconf warnings about cross compilation by
11745         trying to provide sane defaults for AC_TRY_RUN.
11746
11747 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
11748
11749         * ltconfig
11750         * ltmain.sh: upgrade to libtool 1.3.3
11751
11752 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
11753
11754         * INSTALL: Indicate that the --with-glib= configure
11755         time flag is unsupported.
11756
11757 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
11758
11759         * docs/generation.txt: Added a file that gives
11760         documenation about the autogeneration process for
11761         various autogenerated files.
11762         
11763 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11764
11765         * configure.in (LIBS): Look for libgmodule in the
11766         right location.
11767
11768 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
11769
11770         * docs/gtk_tut.sgml: Removed references to
11771         code examples in my directory on gtk.org as
11772         they should all be in the tutorial now.
11773
11774         * docs/gtk_tut.sgml: Added sources for dial-test
11775         and scribble-xinput programs that were previously
11776         missing.
11777
11778 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
11779
11780         * TODO: Added entry about menu keyboard navigation, removed
11781         some finished items.
11782
11783 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
11784
11785         * acinclude.m4: Standardize on func_dgettext
11786         not func_gettext, so that the checks for dgettext
11787         actually are paid attention to.
11788
11789 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
11790
11791         * configure.in (LIBS): Add $INTLLIBS into $LIBS
11792         directly, rather than repeating the checks for
11793         gettext.
11794
11795         * INSTALL: Added information about gettext and
11796         NLS support.
11797
11798         * acinclude.m4 (LIBM): Check for dgettext, not
11799         just gettext. This should hopefully fix things wrt
11800         systems with old versions of GNU gettext installed.
11801
11802 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11803
11804         * configure.in (LIBS): Look for libgmodule in the
11805         right location.
11806
11807 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11808
11809         * autogen.sh: add --enable-maintainer-mode
11810
11811         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
11812
11813 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
11814
11815         * docs/gtk-config.1.in:
11816           docs/Makefile.am:
11817           configure.in: gtk-config is now generated.
11818
11819         * docs/gtk-config.1: Removed, now generated.
11820
11821 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
11822
11823         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
11824         handle CreateNotify itself, still put out a debuging message for
11825         --gdk-debug=events. made the ReparentNotify debugging message more
11826         verbose.
11827         wrap xcoords translation for ConfigureEvents into an error trap,
11828         a destroy event may already be pending, and in that case, the
11829         actuall coordinate values are not at all critical.
11830
11831 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
11832
11833         * gdk/gdkcc.c: Stop leaking the color_hash all over
11834         the place. Simplify and improve the logic.
11835
11836 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11837
11838         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
11839         for prototypes and function implementations consistent (reported
11840         by Tomas Ogren).
11841
11842 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11843
11844         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
11845         send_event set in debugging output.
11846         (gdk_compress_exposures): default initialize the event so we don't
11847         operate on bogus values (namely send_event).
11848
11849 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11850
11851         * gdk/gdkwindow.c: When we receive an unexpected
11852         destroy notify on one of our windows, don't just
11853         warn about it, also mark our windows as destroyed.
11854
11855 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
11856
11857         * gdk/gdkfont.c (gdk_font_hash_insert): Add
11858           name => font and name => fontset hashes. The 
11859           name => fontset hash is a _big_ win since we
11860           weren't previously caching fontsets at all and loading
11861           fontsets is expensive. The name => font hash
11862           is less of a win, but it does save us from doing
11863           repeated XQueryFont calls on the same font.
11864
11865         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
11866           list so we can remove font/fontset from hash.
11867
11868 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11869
11870         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
11871           and slightly confusing test. [ XInternAtom (,,TRUE)
11872           will never return None ].
11873
11874 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
11875
11876         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
11877           gdk/gdkwindow.c (gdk_window_set_hints):
11878
11879         Don't omit setting the properties if flags == 0 -
11880         there may be an existing set of properties there
11881         already. (Very old bug. Would it be better to
11882         delete the property instead?)
11883
11884         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
11885           spelling error in comment.
11886
11887 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
11888
11889         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
11890           to avoid stomping over gdk_error_warnings.
11891
11892         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
11893           as (bits_per_pixel + 7) / 8. This gives the same
11894           result as before for multiples of 8, but actually
11895           a "reasonable" value for 1bit or 4bit displays.
11896
11897 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11898
11899         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
11900         GNU Make.
11901
11902 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11903
11904         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
11905         discarding configure events.
11906
11907 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11908
11909         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
11910         refcount is greater than zero.
11911
11912         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
11913
11914         * gdk/gdkfont.c (gdk_font_unref): Likewise.
11915
11916         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
11917
11918         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
11919
11920 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11921
11922         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
11923         that format 32 => sizeof(item) == 4. It really is
11924         sizeof(long).
11925
11926 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
11927
11928         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
11929         core dump at all on X IO errors, only core dump
11930         if --enable-debug for X errors.
11931
11932 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
11933
11934         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
11935         unknown window:" message. disabled ConfigureNotify discarding code,
11936         because it led to events being processed out of order.
11937
11938 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
11939
11940         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
11941
11942         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
11943         we export this function, supress error warnings and don't reset the
11944         error code in the first half of this function.
11945
11946         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
11947         code (instead of just -1) so gdk_error_trap_pop() reveals something
11948         actually informative about the error that happened.
11949
11950         * gdk/*.c:
11951         don't rely on gdk_error_code being -1 if an error occoured, but just
11952         gdk_error_code != 0.
11953
11954 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
11955
11956         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
11957         pointer *before* invoking the filter function, so we at least don't
11958         crash if a filter is removed that is currently executed. window filters
11959         *really* need to be made truely reentrant at some point.
11960
11961 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
11962
11963         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
11964         PropertyNotify debug messages.
11965
11966 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
11967         
11968         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
11969         
11970         * gdk/gdkim.c: Fix cut-and-paste errors for 
11971         x/y and PreeditAttributes/StatusAttributes.
11972
11973 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11974
11975         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
11976         G_MAXINT to 2^16 to alleviate overflow problems in
11977         various window managers.
11978
11979 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11980
11981         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11982         for fontsets.
11983
11984 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
11985
11986         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
11987         Initialize size_hints.x and size_hints.y because kwm
11988         brokenly pays attention to them.
11989         (Bug #1181 -  Lars Heete <hel@admin.de>)
11990
11991 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
11992
11993         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
11994         return value of gdk_list_visuals(). 
11995         (Bug #1193 - Morten Welinder <terra@diku.dk>)
11996
11997 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
11998
11999         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
12000         XSetIMValues to (void *) when comparing to NULL, to workaround
12001         the problem of some compilers barfing since older X headers don't
12002         have the prototype for it.
12003
12004 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
12005
12006         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
12007         for pseudocolor where colormap->colors was double
12008         allocated.
12009
12010         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
12011         color value in the hash table with the pixel filled
12012         in so when we do later hash table lookups, the color
12013         value is correct.
12014         
12015 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
12016
12017         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
12018         making the call
12019
12020 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
12021
12022         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
12023         pointed out by Morten Welinder <terra@diku.dk>.
12024
12025 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12026
12027         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12028           default filter from the list
12029
12030 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12031
12032         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12033           default filter from the list
12034
12035 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
12036
12037         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
12038
12039         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
12040         g_strdup_printf instead of calcing the length separately
12041
12042 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
12043
12044         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
12045         that we don't do in many other places. (Fixing duplicate 
12046         #include of config.h)
12047
12048         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
12049         Otherwise, #ifndef XINPUT_NONE check in the latter
12050         doesn't work. (Bug #546)
12051
12052 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
12053
12054         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
12055         "None" case insensitive.
12056
12057 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
12058
12059         * gdk/gdkselection.c: 
12060         Add error traps so if the other end of the connection
12061         dies, we survive.
12062
12063 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
12064
12065         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
12066         dest_xid field into two fields - one for the window
12067         to send in messages, one to indicate the last looked
12068         up window for caching purposes. This is needed, so
12069         that Leave messages get the correct window.
12070
12071 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
12072
12073         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
12074         Fix warning created by people mucking around
12075         with the gsource API.
12076
12077         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
12078         Change mapping between GIOCondition and GdkInputCondition
12079         to match the way the Linux kernel does it. This should
12080         fix problems where closed pipes were no longer signalling
12081         GDK_INPUT_READ on systems with a native poll().
12082
12083 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
12084
12085         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
12086         explicitly for the string "None" - it is in the XPM
12087         spec and some servers treat unknown colors in odd ways
12088         (like asking the user!)
12089
12090 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
12091
12092         * gdk/gdkevents.c: made "->" into a "." of previous change so
12093         it compiles
12094
12095 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
12096
12097         * gdk/gdkevents.c (gdk_compress_exposures): Set the
12098         window field of the event structure before calling
12099         user filters.
12100
12101 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12102
12103         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
12104         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
12105
12106 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
12107
12108         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
12109         intermediate text property - prevents major memory
12110         leak when gdk_use_mb.
12111         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
12112
12113 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
12114
12115         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
12116         gtk-a-higuti-990322-[0-3]
12117
12118         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
12119         sizeof(wchar_t) != sizeof (GdkWChar)
12120
12121         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
12122         that was causing -DX_LOCALE not to work.
12123
12124         * gtk/gtkrc.c (gtk_rc_init):
12125         X_LOCALE will never have LC_MESSAGES defined
12126
12127         * gdk/gdk.c (gdk_init_check):
12128         Remove --xim-preedit and --xim-status from argv properly.
12129
12130         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
12131         that the client window is present on the X server
12132         before we pass it to the input method.
12133
12134 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12135
12136         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
12137         if --display is specified on the command line, than
12138         the drag window will not be created on that display.
12139         
12140 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
12141
12142         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
12143         lookups with only_if_exists == TRUE were inserting
12144         bogus values into the atom cache.
12145
12146 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
12147
12148         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
12149         then reset it to NULL.
12150
12151         * gdk/gdkcolor.c:
12152         (gdk_colors_free): 
12153         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
12154         key for g_hash_table_remove() in both functions, this prevents us
12155         from accessing possibly uninitialized portions of a GdkColor structure
12156         where we are only interested in its pixel value.
12157
12158 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12159
12160         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12161         font hash table, if we have a GdkFontPrivate entry for this font
12162         already, simply increment its reference count, provided by Olaf Dietsche
12163         <olaf.dietsche+list.gtk@netcologne.de>.
12164
12165 1999-09-21  Tor Lillqvist  <tml@iki.fi>
12166
12167         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
12168         just to be sure.
12169
12170         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
12171         unused variables, leftovers from the X11 version.
12172
12173         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
12174
12175         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
12176         downcase fields on X11.
12177
12178 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
12179         
12180         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
12181         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
12182
12183 1999-09-17  Tor Lillqvist  <tml@iki.fi>
12184
12185         * gdk/win32/gdk.def: Add gdk_threads_mutex.
12186
12187         * gtk/makefile.msc: Correct path to libintl.
12188
12189         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
12190         use of gint vs. int, and gint vs. gboolean in headers and
12191         definitions. Use GtkType for the *_get_type functions. Note that
12192         these changes preserve binary compatibility.
12193
12194         * gdk/gdk.c
12195         * gdk/win32/gdk.c
12196         * gdk/gdk.h: Fix inconsistencies: gint vs int.
12197
12198         * gtk/gtkmain.c
12199         * gtk/gtkclist.c
12200         * gtk/gtkmenufactory.c
12201         * gtk/gtknotebook.c
12202         * gtk/gtkwidget.c: Fix inconsistencies, also gint
12203         vs. gboolean.
12204
12205         * gtk/gtkcolorsel.[ch]
12206         * gtk/gtkcombo.[ch]
12207         * gtk/gtkdrawingarea.[ch]
12208         * gtk/gtkgamma.[ch]
12209         * gtk/gtkhandlebox.[ch]
12210         * gtk/gtkhpaned.[ch]
12211         * gtk/gtkhruler.[ch]
12212         * gtk/gtkplug.[ch]
12213         * gtk/gtkpreview.[ch]
12214         * gtk/gtkruler.[ch]
12215         * gtk/gtksocket.[ch]
12216         * gtk/gtkstatusbar.[ch]
12217         * gtk/gtktoolbar.[ch]
12218         * gtk/gtkvbbox.[ch]
12219         * gtk/gtkvpaned.[ch]
12220         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
12221         functions.
12222
12223         * gtk/gtkgamma.h: Fix bug, missing () in call of
12224         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
12225
12226 1999-09-14  Tor Lillqvist  <tml@iki.fi>
12227
12228         * gdk/gdkcolor.c (gdk_colormap_new)
12229         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
12230         colormap->colors was allocated twice.
12231
12232         * gdk/win32/gdk.c: Remove some unused stuff.
12233
12234         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
12235         colormap.
12236
12237         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
12238         * gtk/gtklabel.h (gtk_label_get_type)
12239         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
12240         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
12241         in a couple of places, not guint.
12242
12243 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12244
12245         * configure.in,po/et.po: added Estonian language file
12246
12247 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
12248
12249         * configure.in,po/da.po: added Danish file
12250
12251 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12252
12253         * docs/gtkfaq.sgml: Minor FAQ Update
12254
12255 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12256
12257         * docs/gtkfaq.sgml: FAQ update
12258
12259 1999-08-27  Tor Lillqvist  <tml@iki.fi>
12260
12261         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12262         way to get window contents continually refreshed while resizing. I
12263         didn't like the effects myself, so it's not on by default.
12264
12265         * gdk/win32/gdkprivate.h: New flag variable
12266         gdk_event_func_from_window_proc, FALSE by default.
12267
12268         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12269         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12270         are passed --gdk-event-func-from-window-proc.
12271
12272         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12273         and we have am event_func, call it instead of enqueing the event.
12274
12275 1999-08-23  Tor Lillqvist  <tml@iki.fi>
12276
12277         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12278         Kelley: Set expose_count in GdkEventExposes correctly.
12279
12280         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12281         MULTIPLE_WINDOW_CLASSES).
12282
12283         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12284         for bug in NT, apparently NT *does* draw the end pixel, too, in
12285         LineTo with a one-pixel pen, so we don't have to do it ourselves.
12286
12287 1999-08-21  Tor Lillqvist  <tml@iki.fi>
12288
12289         Improvements by Hans Breuer: 
12290
12291         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12292
12293         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12294         CS_?REDRAW flags as they cause lots of (late) redraws when "show
12295         window contents while dragging" is turned on. Allocate at least
12296         one unique class for every GdkWindowType. If support for single
12297         window-specific icons is ever needed (eg. Dialog specific), every
12298         such window should get its own class.
12299
12300 1999-08-19  Tor Lillqvist  <tml@iki.fi>
12301
12302         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12303         error that caused crashes.
12304
12305 1999-08-17  Tor Lillqvist  <tml@iki.fi>
12306
12307         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12308         window, use ScrollWindowEx, and call UpdateWindow. This prevents
12309         bugs when for instance part of the window was outside the
12310         display. Thanks to Philippe Colantoni for finding and fixing this.
12311
12312 1999-08-16  Tor Lillqvist  <tml@iki.fi>
12313
12314         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12315         endpoint calculations which were totally wrong. (A little RTFMing
12316         helps a lot ;-)
12317
12318         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12319         from a separate directory, not from gettext, because of licensing
12320         issues (we want to use the LGPL version).
12321
12322         * README.win32: Mention the intl from glibc vs from gettext issue.
12323
12324 1999-08-13  Tor Lillqvist  <tml@iki.fi>
12325
12326         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12327         in the key event handling: Now AltGr chars work again. Also,
12328         now Alt-digits are passed up as well as Control-digits.
12329         Pass keypad plus and minus as normal plus and minus.
12330
12331 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12332
12333         * docs/gtkfaq.sgml: FAQ Update
12334
12335 1999-07-25  Tor Lillqvist  <tml@iki.fi>
12336
12337         * README.win32
12338         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12339         the Wintab SDK.
12340
12341         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12342         OK, but getting closer. Guard against bogus tilt data from Wacom
12343         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12344         enable easier building without Wintab.
12345
12346         * gdk/win32/gdkinput.h
12347         * gdk/win32/gdkevents.c 
12348         * gdk/win32/gdkwindow.c: Minor changes related related to above.
12349         
12350         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12351         code. As we have just one visual on Win32, no sense to have it in a
12352         table, and no need for the hash table.
12353
12354         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12355         better on white background.
12356
12357 1999-07-21  Tor Lillqvist  <tml@iki.fi>
12358
12359         * README.win32: Update gcc build instructions. Mention gettext is
12360         GPL.
12361
12362         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12363         supported cursor size with GetSystemMetrics.
12364
12365         * gdk/win32/gdkfont.c
12366         * gtk/gtkfontsel.c: Guard against some font weight and charset
12367         symbols being undefined (in mingw32 headers).
12368
12369         * gdk/win32/makefile.cygwin
12370         * gtk/makefile.cygwin
12371         * gtk/gtkthemes.c: No longer need to have differently named
12372         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12373
12374 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12375
12376         * docs/gtkfaq.sgml: Long awaited FAQ update.
12377
12378 1999-07-15  Tor Lillqvist  <tml@iki.fi>
12379
12380         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12381         it. Obscure bit manipulation needed.
12382
12383         * gdk/win32/gdkevents.c: Logging.
12384         
12385         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12386         style (file name include compiler name) for theme engines.
12387
12388 1999-07-13  Tor Lillqvist  <tml@iki.fi>
12389
12390         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
12391
12392         * gdk/win32/gdkevents.c: Fix long-standing bug in key
12393         events. The key.string wasn't zero-terminated, still we strdup'ed
12394         it in gdk_event_copy(). Synthesize crossing events for button
12395         events before possible propagation.
12396
12397         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
12398
12399         * gdk/win32/makefile.cygwin
12400         * gtk/makefile.cygwin: Use new DLL naming style for the
12401         GCC-compiled ones.
12402
12403         * gdk/win32/makefile.msc
12404         * gtk/makefile.msc: Cosmetics mostly.
12405
12406         * gtk/gtk.def: Add missing entry points.
12407
12408         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
12409
12410 1999-07-09  Tor Lillqvist  <tml@iki.fi>
12411
12412         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
12413         or height is zero. Don't print a warning if Pie or Arc fails, they
12414         always fail (?) for very narrow ellipses.
12415
12416         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
12417         the part or the destination window corresponding to source area
12418         outside of the source drawable's boundary.
12419
12420         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
12421         anything if less than two points.
12422
12423         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
12424         return NULL. Gtk cut-and-paste inside a single program works
12425         better this way. (It always gets the clipboard contents from
12426         Windows, not from its own copy, which is cleared anyway. I can't
12427         say I fully understand what happens... Emulating the X selection
12428         and property stuff is a bit of a mess.)
12429
12430         * gdk/win32/gdkevents.c
12431         * gdk/win32/gdkproperty.c: A bit more verbose logging.
12432
12433         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
12434         that never got deleted). Revamp gdk_region_shrink.
12435
12436         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
12437         after use.
12438
12439         * gtk/gtk.def: Add some missing entry points.
12440
12441         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
12442         component.
12443
12444 1999-07-04  Tor Lillqvist  <tml@iki.fi>
12445
12446         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
12447         Control-digits specially.
12448
12449 1999-07-03  Tor Lillqvist  <tml@iki.fi>
12450
12451         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
12452
12453 1999-06-28  Tor Lillqvist  <tml@iki.fi>
12454
12455         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
12456         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
12457         finding this.)
12458
12459 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
12460
12461         * gtk+.spec.in: Corrected some typos in files section.
12462         
12463 1999-06-15  Tor Lillqvist  <tml@iki.fi>
12464
12465         * README.win32: Mention using GNU gettext.
12466         * config.h.win32: Enable NLS stuff.
12467         * gtk/makefile.msc: Use GNU gettext.
12468         * gdk/win32/gdkdnd.c: Minor header reorg.
12469         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
12470         cosmetics.
12471         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
12472         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
12473
12474 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
12475
12476         * acinclude.m4
12477         * config.guess
12478         * config.status
12479         * ltconfig
12480         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
12481
12482 1999-05-30  Tor Lillqvist  <tml@iki.fi>
12483
12484         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
12485         SafeAdjustWindowRectEx. Don't override all calls to
12486         AdjustWindowRectEx by it, but use it only in two places: When
12487         creating a new top-level window and when moving a top-level
12488         window.
12489
12490         Use screen coordinate rectangle, not client rectangle, in
12491         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
12492         when we try to place a window so that the decoration (mainly,
12493         title bar) isn't visible.
12494
12495         These changes fix the bug that showed up for instance as the
12496         GIMP's saved top-level windows moving right and down (by an amount
12497         equal to the window decoration) for each session. This bug showed
12498         up also in testgtk's "Saved Position".
12499
12500         gdk_window_resize also redone a bit.
12501
12502 1999-05-25  Tor Lillqvist  <tml@iki.fi>
12503
12504         * gtk/testgtkrc: Add (commented out) Windows-style theme
12505         include line.
12506
12507         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
12508
12509 1999-05-18  Tor Lillqvist  <tml@iki.fi>
12510
12511         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
12512         gdkx.h to a gdk subdirectory, so that applications can include
12513         these with <gdk/*.h> without trouble.
12514
12515         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
12516         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
12517         have their bitmap destroyed.
12518
12519         * gdk/win32/gdk.def: Add gdk_root_parent.
12520
12521 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
12522
12523         * configure.in
12524           gtk-config.in
12525           ltconfig
12526           ltmain.sh     
12527           gtk/Makefile.am: changes to compile nicely (with xlib) 
12528           on BeOS
12529
12530 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
12531
12532         * acinclude.m4
12533         * config.guess
12534         * config.sub
12535         * ltconfig
12536         * ltmain.sh: upgrade to libtool 1.3
12537
12538 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
12539
12540         * gtk/gtkclist.c:
12541         * gtk/gtkctree.c: merges from gtk-1-2
12542
12543 1999-04-25  Tor Lillqvist  <tml@iki.fi>
12544
12545         Support added for building using a GNU toolchain on Win32,
12546         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
12547
12548         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
12549         * config.h.win32: Changes for gcc.
12550         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
12551         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
12552         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
12553         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
12554         Protect shl stuff unavaiilable with mingw32 headers.
12555         * gdk/win32/gdkevents.c: Fix typo.
12556         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
12557         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
12558         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
12559         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
12560         the mingw32 headers.
12561         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
12562         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
12563         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
12564         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
12565         Test for NATIVE_WIN32, not _MSC_VER.
12566         * gtk/gtkmain.c: No use warning about developer version on Win32,
12567         there aren't any non-developer versions anyhow.
12568         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
12569         * gtk/makefile.msc: Use pthread from another directory. Minor other
12570         changes. 
12571
12572 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12573
12574         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12575           default filter from the list
12576
12577 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
12578
12579         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
12580          when gtk_widget_grab_default() is called for a widget that
12581          is not within a GtkWindow.
12582
12583 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
12584
12585         * docs/gtk_tut.sgml, examples/clist.c: use a
12586           scrolled window in the clist example. Minor
12587           tutorial fixes.
12588
12589 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
12590
12591         * docs/gtk_tut.sgml: Style check from David King
12592           <dking@youvegotmail.net>
12593
12594 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
12595
12596         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
12597         compile with unknown value of GDK_WINDOWING
12598
12599 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
12600
12601         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
12602         after the rule is fired.
12603         (install-exec-local): Install gdkconfig.h only if the contents are
12604         different from the currently installed gdkconfig.h.
12605
12606 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
12607
12608         * gdk/Makefile.am (configexecincludedir): Rename from 
12609         configincludedir so that gdkconfig.h will be installed 
12610         as part of `make install-exec'. 
12611
12612 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
12613
12614         * acinclude.m4
12615         * config.guess
12616         * config.sub
12617         * ltconfig
12618         * ltmain.sh: upgrade to libtool 1.2f
12619
12620         * autogen.sh: libtool is not required to autogen gtk+
12621
12622         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
12623         needed)
12624
12625 1999-03-18  Tor Lillqvist  <tml@iki.fi>
12626
12627         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
12628         declaring gdk variables exported/imported from the DLL. New image
12629         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
12630         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
12631         GDK_DRAG_PROTO_OLE2.
12632
12633         * gdk/gdk.h: Merge in Win32 version: Two new functions,
12634         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
12635         declared only for the Win32 version, but could be in the X11
12636         version as well. (Needed for a Xlib-less gdk_imlib.)
12637         gdk_color_hash should have only one parameter. Declare
12638         gdk_threads_mutex with GDKVAR.
12639         
12640         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
12641         just one parameter.
12642
12643         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
12644         per pixel, not bits.
12645
12646         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
12647         Fetch bpp (which means bits-per-pixel here) from another place on
12648         Win32. Accept also depth==32 (which we might get on Win32) with
12649         bpp==32.
12650
12651         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
12652         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
12653         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
12654         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
12655         in the backend-dependent directory, not in the common gdk
12656         directory.
12657
12658         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
12659         headers.
12660
12661 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
12662
12663         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
12664         want to use the Gtk+ devel version (which is true, and yes - even i am
12665         currently working with the 1.2.x branch). so everyone reading this, you
12666         probably want to issue
12667         cvs checkout -r glib-1-2 glib
12668         and
12669         cvs checkout -r gtk-1-2 gtk+
12670         as your next two comands.
12671
12672 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
12673
12674         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
12675         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
12676
12677         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
12678         file. strongly deprecated the GTK_HAVE_* macros, we provide
12679         GTK_CHECK_VERSION() for people that need to check for certain
12680         Gtk+ versions.
12681
12682         * gtk/gtkcompat.h: removed this from CVS.
12683         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
12684         idea right from the start, it just didn't seem like that back then.
12685
12686 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
12687
12688         * merges from gtk-1-2:
12689
12690 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
12691
12692         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
12693         item factory class has been created.
12694         (gtk_item_factory_parse_rc): likewise.
12695
12696         * gtk/gtkmenu.c:
12697         keep proper references for old_active_menu_item.
12698         (gtk_menu_reparent): unset the usize of the new parent,
12699         so the menu can sanely be size requested and we don't get nasty screen
12700         artefacts upon next reparentation.
12701         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
12702         enter notify. only synthesize enter notifies if the pointer really is
12703         inside the event window.
12704         (gtk_menu_popdown): use gtk_menu_shell_deselect().
12705         (gtk_menu_popup): move the background setting stuff into
12706         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
12707
12708         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
12709         gtk_menu_shell_select_item() to select the new item.
12710         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
12711         do the right thing for deselection as well.
12712
12713 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
12714
12715         * gtk/gtkwidget.[hc]:
12716         (gtk_widget_accelerators_locked): return whether a widget's accelerators
12717         are locked.
12718
12719         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
12720         existing accelerators if the widget's accelerators are locked.
12721
12722 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
12723
12724         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
12725
12726         * gtk/gtkmenu.c: truely forward key press and key release events to
12727         the menu widget from the toplevel or tearoff window. we can't simply
12728         connect to that, we need to stop further processing of the events as
12729         well.
12730
12731 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
12732
12733         * gtk/gtkmenu.c:
12734         (gtk_menu_key_press): pass event->keyval, event->state to
12735         gtk_accelerator_valid, instead of event->keyval twice.
12736         refuse to install single letter accelerators for menus that use
12737         single letter shortcuts.
12738
12739         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
12740         gtk_menu_ensure_uline_accel_group().
12741
12742         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
12743         which will always return an uline accel group, made
12744         gtk_menu_get_uline_accel_group() return NULL if the group isn't
12745         yet created.
12746
12747 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
12748
12749         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
12750
12751         * gtk/gtkclist.c (gtk_clist_column_title_passive):
12752         Leave button sensitive, trap  button_press, button_release,
12753         motion_notify, enter_notify and leave_notify events instead.
12754         (gtk_clist_column_title_active): disconnect event handler.
12755         (gtk_clist_drag_data_get): fixed memory leak. Reported by
12756         Guillaume Laurent <glaurent@worldnet.fr>
12757
12758 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
12759
12760         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
12761         width/height mixups.
12762
12763         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
12764         if needed.
12765
12766 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
12767
12768         * gtk/testgtk.c (create_item_factory): unref the item factory after
12769         window's destruction.
12770
12771         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
12772         count on the menu shell around the menu item's activation, since the
12773         signal emission may cause menu shell destruction.
12774
12775         * gtk/gtkitemfactory.c:
12776         the previous code leaked one accel group per menu. we use
12777         gtk_menu_get_uline_accel_group() now to fix that, and with that
12778         also create the underline accelerator group of the menus only if
12779         required (i.e. an underline accelerator has been specified).
12780         (gtk_item_factory_construct):
12781         (gtk_item_factory_create_item): removed code that would create an
12782         extra accel group for the menu (and leak references).
12783         (gtk_item_factory_create_item): adapted the underline accelerator
12784         installation code to properly feature gtk_menu_get_uline_accel_group().
12785
12786         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
12787         menu->accel_group, this may return NULL if the accelerator group
12788         hasn't been set yet.
12789         added gtk_menu_get_uline_accel_group() to retrive the underline
12790         accelerator group of the menu, this will be created on demand
12791         and proper care is taken about its reference count.
12792
12793         * gtk/gtkitemfactory.h:
12794         * gtk/gtkitemfactory.c:
12795         dumped the approach of keeping a widgets by action list on the
12796         factory since the factory<->widget destroy negotiation didn't work
12797         and would be hard to get going at all. instead we keep a list of
12798         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
12799         persistant throughout a program's life time).
12800         also, i removed the static const gchar *key_* variables, and made
12801         them inline strings (they weren't actually used anyways).
12802         (gtk_item_factory_add_item): update ifactory->items.
12803         (gtk_item_factory_destroy): destroy ifactory->items (and remove
12804         the item factory pointer from the remaining ifactory widgets).
12805         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
12806         list to find the widget.
12807         (gtk_item_factory_get_item): new function that works around
12808         gtk_item_factory_get_widget() limitations, this function will only
12809         return menu items, even for <Branch> entries.
12810
12811 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12812
12813         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12814         font hash table, if we have a GdkFontPrivate entry for this font
12815         already, simply increment its reference count, provided by Olaf Dietsche
12816         <olaf.dietsche+list.gtk@netcologne.de>.
12817
12818         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12819         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12820
12821 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
12822
12823         * gtk/gtkcontainer.c:
12824         (gtk_container_add_with_args):
12825         (gtk_container_addv):
12826         (gtk_container_add): before adding a child to a conatiner, make sure
12827         it is (default) constructed, this is neccessary because under certain
12828         circumstances the child will get relized and mapped immediatedly, in
12829         which case it has to be constructed already.
12830
12831 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
12832
12833         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
12834         values > 1 as TRUE also.
12835
12836 1999-03-16  Tor Lillqvist  <tml@iki.fi>
12837
12838         * README.win32: New file.
12839                 
12840         * configure.in: Check for lstat.
12841
12842         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
12843         completeness.
12844
12845         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
12846
12847         * gtk/gtk.def: Removed CRs.
12848
12849         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
12850         ..\gdk\win32).
12851
12852         * gdk/win32/makefile.msc: Correct upwards relative paths.
12853         
12854 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
12855
12856         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
12857           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
12858           it was connecting a void function to expose_event and the int
12859           returning function to the draw signal
12860
12861 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
12862
12863         * configure.in:
12864         Use correct path to libgmodule.la when ref'ing uninstalled copy
12865         of glib.  (Already in stable branch, Bug #417)
12866
12867 1999-03-15  Tor Lillqvist  <tml@iki.fi>
12868
12869         Win32 merge and general portability stuff:
12870                 
12871         * acconfig.h,configure.in: Check for <sys/time.h>.
12872
12873         * gdk/win32: New directory (actually, been there for a while).
12874         
12875         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
12876         NATIVE_WIN32, and use these. Always case fold on Win32. No
12877         backslashed escapes on native Win32.
12878
12879         * gtk/{gtk.def,makefile.msc}: New files.
12880
12881         * gtk/Makefile.am: Add above new files.
12882         
12883         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
12884         instead of <strings.h>.
12885
12886         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
12887         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
12888         <unistd.h> appropriately.
12889
12890         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
12891         Use ABS() (from <glib.h>) instead of abs().
12892         
12893         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
12894         of gtk (and thus glib) headers, so that WIN32 will be
12895         defined. With MS C, include <direct.h> for mkdir prototype.
12896
12897         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
12898         some casts, needed by MS C.
12899
12900         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
12901         implemented).
12902
12903         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
12904         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
12905         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
12906
12907         * gtk/gtkmain.h: Mark variables for export/import on Win32.
12908                 
12909         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
12910         the event is not a hint, or its window is not the slider. Needed
12911         on Win32, at least.
12912
12913         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
12914         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
12915         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
12916         a subdirectory of the Windows directory as gtk system
12917         configuration directory.
12918
12919         * gtk/gtkselection.c: No chunks on Win32.
12920
12921         * gtk/gtksocket.c: Not implemented on Win32.
12922
12923         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
12924
12925         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
12926
12927         * gtk/maketypes.awk: Declare variables with a macro that expands to
12928         necessary export/import magic in the case of Win32.
12929                 
12930         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
12931
12932 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
12933
12934         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
12935         since those were meant only for gdki18n.h.  
12936         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
12937         for widechar tests.
12938         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
12939
12940 1999-03-13  Tor Lillqvist  <tml@iki.fi>
12941
12942         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
12943         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
12944
12945         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
12946         installed) to CFLAGS.
12947
12948         * gdk/Makefile.am: Add rules for gdkconfig.h.
12949
12950         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
12951         APIs.
12952
12953         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
12954         gdkx.h anyway when compiling for X11.
12955         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
12956         general): Merge in Win32 version.
12957         
12958         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
12959         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
12960         expansion (if we don't have HAVE_PWD_H), allow for drive
12961         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
12962         included code from Craig Setera's port to Win32 (the one that uses
12963         X11, and the cygwin dll), even if it probably will be abandoned.
12964
12965         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
12966         the user entered one herself.  This way one can complete *.h and
12967         don't get matches on any .help files, for instance.
12968         
12969 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12970
12971         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12972         font hash table, if we have a GdkFontPrivate entry for this font
12973         already, simply increment its reference count, provided by Olaf Dietsche
12974         <olaf.dietsche+list.gtk@netcologne.de>.
12975
12976         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12977         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12978
12979 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12980
12981         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
12982         the number of calls to gdk_draw_point() (and thus to X) by
12983         clipping the points by hand.
12984
12985         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
12986         the clip parameter.
12987         (gtk_handle_box_paint): Only paint the handle if the expose area
12988         intersects it.
12989
12990 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
12991
12992         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
12993
12994 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
12995
12996         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
12997         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
12998
12999 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
13000
13001         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
13002          textmode (O_TEXT) for OS/2 version.
13003
13004 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
13005
13006         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
13007         GtkSpinButton, "input" and "output", to make the output more flexible.
13008         The user has to provide a mapping between adjustment->value and the
13009         output string (and vice versa, if the spin button is editable). 
13010         See testgtk for examples.
13011
13012 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
13013
13014         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
13015         new one.
13016         
13017         * configure.in: set gtk+ version to 1.3.0.