]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
New function, copied from X11 version.
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2
3         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4         function, copied from X11 version.
5
6         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
7         DestroyCursor failures. The reason for the problem (despite the
8         inconsistent messages from GetLastError()) was that
9         DestroyCursor() cannot be called while a cursor is set in a
10         window. Set the new cursor first and then destroy the old one.
11         Thanks to jpe@archaeopteryx.com.
12
13         * gdk/win32/gdkcc-win32.c: Removed.
14
15         * gdk/gdk.def
16         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
17
18         * gtk/gtk.def
19         * gtk/makefile.mingw.in: Updates.
20
21 2001-02-08  Havoc Pennington  <hp@redhat.com>
22
23         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
24         add a widget to a bin that already has a child.
25
26         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
27
28         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
29         
30         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
31
32         * gdk/gdk.h: remove gdkcc.h
33
34         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
35
36         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
37         GdkPixbuf, since the previous implementation was GdkColorContext
38         dependent.
39
40         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
41         
42 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
43
44         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
45         a sane value!
46
47 2001-02-08  Havoc Pennington  <hp@redhat.com>
48
49         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
50         lighten them.
51
52 2001-02-08  Havoc Pennington  <hp@redhat.com>
53
54         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
55         validation idle
56
57         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
58         cell renderer
59
60         * demos/pixbuf-demo.c (timeout): remove deprecated
61         gtk_widget_draw
62
63         * demos/testpixbuf-save.c (main): remove deprecated
64         gtk_drawing_area_size
65
66         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
67         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
68         at the start of the allocation.
69         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
70         unsetup or NULL model.
71
72         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
73         even/odd/sorted cells in the tree view.
74
75         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
76         bugfixes
77
78         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
79         backgrounds with draw_flat_box using different detail for even/odd
80         rows.
81
82         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
83         row, so we can draw the alternating colors thing
84
85         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
86         property from a synonym property, notify for the synonym.
87         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
88         (gtk_text_tag_get_property): Always return the font, even if
89         all its fields aren't set
90
91         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
92         store the attr list; it leaves us with no way to change attributes
93         in _render according to the render flags, and no way to implement
94         get_property. Instead store all the specific text attributes. 
95         Separate whether an attribute is enabled from its value. Sync all
96         properties with GtkTextTag, make them all consistent, etc.
97
98         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
99         renderers can highlight the sort row/column     
100
101         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
102         accessor functions to get values; this has the side effect of
103         showing up which accessor functions were missing. Added those.
104
105         * gtk/gtktreeviewcolumn.h: Replace set_justification with
106         set_alignment, to be consistent with GtkLabel, GtkMisc
107
108         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
109         arrow.
110
111         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
112
113         * gtk/gtktreesortable.h: updates in here
114
115 2001-02-07  Sven Neumann  <sven@convergence.de>
116
117         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
118         pango dimensions after painting the background. We used to draw
119         gigantic flat boxes here.
120
121 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
122
123         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
124         error introduced with earlier commit) (pointed out by
125         Ollie Lho)
126
127 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
128
129         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
130         which are no longer necessary.
131
132 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
133
134         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
135
136 2001-02-04  Tor Lillqvist  <tml@iki.fi>
137
138         * gdk/gdk.def
139         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
140         Provide dummy implementations.
141
142 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
143
144         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
145
146         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
147         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
148         deprecated this function.
149
150         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
151         argument.
152
153 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
154
155         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
156
157 2001-02-03  Havoc Pennington  <hp@pobox.com>
158
159         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
160         Mikael Hermansson with patch from Mikael (if there was a toggle
161         start one after the first character in the range, this function
162         was broken). Bug #50380
163
164 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
165
166         * configure.in: Remove confusing comment about X11.
167
168 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
169
170         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
171         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
172         
173 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
174
175         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
176         it breaks things on BSD. If you want to compile GTK+ with
177         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
178         when configuring, since GTK+ simply can't be "pure ANSI" 
179         in the header files it uses. (#8170, Greg Hudson)
180
181 2001-02-02  Havoc Pennington  <hp@redhat.com>
182
183         * gtk/gtkwindow.c: docs
184
185         * gtk/gtkwidget.c: docs
186         (gtk_widget_set_colormap): add a reference to the colormap
187         (gtk_widget_get_default_colormap): add a reference to the colormap
188
189         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
190
191         * gtk/gtktextiter.c: docs
192
193         * gtk/gtkmain.c (gtk_propagate_event): docs
194
195         * gtk/gtkpaned.c (gtk_paned_get_position): docs
196         (gtk_paned_set_position): docs
197
198         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
199         sort interface, no implementation yet.
200
201         * demos/testpixbuf.c (new_testrgb_window): replace
202         gtk_drawing_area_size() with gtk_widget_set_usize()
203
204         * demos/testpixbuf-drawable.c (main): ditto
205         
206         * gtk/testgtk.c: remove use of GtkStatusbarMsg
207
208         * gtk/gtktextbuffer.c: docs
209
210         * gtk/gtkstock.c: docs
211
212         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
213
214         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
215
216         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
217         
218         * gtk/gtkimage.c: add some docs in here
219         (gtk_image_size_request): change name of
220         gtk_widget_render_stock_icon
221         (gtk_image_get_icon_set): don't dup returned string
222         (gtk_image_get_icon_set): don't dup returned string
223
224         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
225         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
226         and gtkiconfactory.h functions
227
228         * gtk/gtkiconfactory.c: add some docs in here
229
230         * gtk/gtkmain.c (gtk_get_default_language): document
231         (gtk_get_current_event): document
232         (gtk_get_current_event_state): document
233         (gtk_get_event_widget): document
234
235         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
236
237         * gtk/gtkcontainer.c: Add some documentation
238         (gtk_container_add): give a more explanatory warning on adding an
239         already-parented widget, this is kind of a FAQ and also a common
240         typo that's easier to debug with a nice warning 
241
242         * gtk/gtkcellrenderertoggle.c
243         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
244         adding this, it's useless
245         (gtk_cell_renderer_toggle_set_active): remove
246         (gtk_cell_renderer_toggle_get_radio): add
247
248         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
249         the NULL cell renderer, that doesn't make any sense to me. 
250
251         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
252         demo code should never use deprecated features.
253
254         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
255         code should never use deprecated features.
256
257         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
258         gtk_widget_queue_clear_area deprecated
259
260         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
261         deprecated
262
263         * gtk/gtklabel.h: mark gtk_label_get() deprecated
264
265         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
266         a GdkImage deprecated, replaced by new consistently-named
267         functions       
268
269         * gtk/gtkmain.h: Mark gtk_exit() deprecated
270
271         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
272
273         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
274         deprecated
275
276         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
277         so it won't appear in docs and confuse people.
278
279         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
280
281         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
282         macros deprecated. (can't mark the type itself deprecated, since
283         GtkProgressBar is not deprecated and we need the type decl to use
284         GtkProgressBar)
285
286         * gtk/gtkpixmap.h: Mark deprecated
287
288         * gtk/gtkoldeditable.h: Mark deprecated
289
290         * gtk/gtklist.h: Mark deprecated
291
292         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
293         for anything anymore.
294
295         * gtk/gtkctree.h: Mark deprecated
296
297         * gtk/gtkclist.h: Mark deprecated
298
299         * gtk/gtkpreview.h: Mark deprecated
300
301         * gtk/gtkpacker.h: Mark deprecated
302
303         * gtk/gtktipsquery.h: Mark deprecated
304
305         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
306
307         * gtk/gtkvruler.h: Add comment that it will move out of GTK
308
309         * gtk/gtkhruler.h: Add comment that it will move out of GTK
310
311         * gtk/gtkruler.h: Add comment that it will move out of GTK
312
313         * gtk/gtkgamma.h: Add comment that it will move out of GTK
314
315         * gtk/gtkcurve.h: Add comment that it will move out of GTK
316
317 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
318
319         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
320         gdk_colormap_sync private since it was never exported
321         in a header file.
322
323         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
324         colormap->colors[] for StaticGray, StaticColor colormaps.
325
326         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
327         was being used as if it was image->bits_per_pixel.
328
329         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
330         for the image in the GdkImage structure since it isn't
331         reconstructable, and we need it to handle packed types
332
333         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
334         the assumption that on Win32 image->bits_per_pixel == image->depth,
335         always.
336
337         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
338
339         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
340         warning message if no converter can be found. 
341
342 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
343
344         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
345         chars to isupper() / tolower(). (#567)
346
347         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
348         to clear up 64-bit warnings. (#567)
349
350 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
351
352         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
353         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
354
355         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
356         since some people set $(libdir) separately. (#1290, David Kaelbling)
357
358 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
359
360         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
361         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
362         MAXPATHLEN, but the code here depends on a fixed value.)
363         (#4524)
364
365 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
366
367         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
368         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
369
370 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
371
372         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
373         viewable there is no way that moving the node will cause the 
374         focus row to become not viewable, so omit check on the visibility
375         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
376
377 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
378
379         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
380         selection before inserting new text.
381
382 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
383
384         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
385         Make the sensitivity of the reparented child track that of
386         the original parent menu item. (#34218, David Hodson)
387
388         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
389         the case where the current item is destroyed properly.
390
391         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
392         some edge cases with child-less menuitems.
393         
394 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
395
396         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
397         key pop down window. (#12074, Jon K Hellan)
398
399 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
400
401         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
402         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
403         The solution here isn't perfect - you get an extraneous
404         emission of "toggle", which could conceivably confuse an app,
405         but better than the current situation. LXR search seems to
406         indicate that no apps in GNOME CVS connect to "toggle".
407
408 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
409
410         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
411         gtk_public_h_sources to directly here to avoid warning when
412         building srcdir != builddir. (#9656)
413
414 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
415
416         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
417         handlers in gtkrange.c return the proper values (TRUE == handled)
418         (#10316).
419
420         This is just the tip of the iceberg, but gtkrange.c is the
421         most common place where the propagation is problematical,
422         and also a place where it is almost certainly safe to change
423         this in the stable branch.
424
425         (You don't want right click popups on a range control or anything...)
426
427 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
428
429         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
430         area on focus out, even if a background pixmap isn't set.
431         (#13941)
432         
433 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
434
435         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
436         to deal with setting the shape properly when scrolling arrows are
437         turned on, but not visible because there is sufficient space.
438         (#13432)
439
440 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
441
442         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
443         items with submenus, destroy the item along with the submenu.
444         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
445         properly.
446
447         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
448         later.
449
450 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
451
452         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
453         the focus widget sometimes wasn't drawn with the default if there
454         was no default widget.
455
456         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
457         unreference pixmaps. 
458
459         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
460         for some extra safety.
461
462 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
463
464         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
465         the text of a cell to the old pointer value better, by
466         copying the new text before freeing the old text. Some code
467         cleanup. (#8079, Karl Nelson)
468
469 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
470
471         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
472         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
473
474 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
475
476         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
477         item from a menu, check to see if it matches 
478         menu->old_active_menu_item, and if so, unref and clear
479         old_active_menu_item (Patch from Pavel Cisler)
480
481         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
482         menu_shell->active_menu_item, if it is the child being
483         removed. (Patch based on that of Gene Ragan, #50337)
484
485 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
486
487         * gdk/linux-fb/gdkselection-fb.c: 
488         * gdk/linux-fb/gdkcolor-fb.c: 
489         * gdk/linux-fb/gdkdrawable-fb2.c: 
490         * gdk/linux-fb/gdkfont-fb.c: 
491         * gdk/linux-fb/gdkim-fb.c: 
492         * gdk/linux-fb/gdkinput.c: 
493         * gdk/linux-fb/gdkkeyboard-fb.c: 
494         * gdk/linux-fb/gdkmain-fb.c: 
495         * gdk/linux-fb/gdkrender-fb.c: 
496         A bunch of whitespace cleanup.
497         
498 2001-01-30  Havoc Pennington  <hp@pobox.com>
499
500         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
501         #ifdef GTK_ENABLE_BROKEN.
502
503         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
504         GTK_ENABLE_BROKEN just before including the broken headers.
505         
506         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
507         deprecated types registered.
508
509         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
510         we have to test the broken stuff.
511
512         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
513         
514 2001-01-30  Havoc Pennington  <hp@redhat.com>
515
516         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
517         here where prev pointer was set to the wrong thing
518
519         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
520         (gtk_tree_path_is_descendant): new function
521
522         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
523         cached length
524         (gtk_list_store_get_iter): don't modify iter if we can't get the
525         path.
526
527         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
528         
529         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
530         GtkTreeDragDest
531
532         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
533         was causing segfault
534
535         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
536         pointer to NULL
537
538         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
539
540         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
541         on returning FALSE
542         (gtk_list_store_iter_children): ditto
543         (gtk_list_store_iter_nth_child): ditto
544         (gtk_list_store_iter_nth_child): ditto
545         (gtk_list_store_iter_parent): ditto
546
547         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
548         on iter->user_data != NULL instead of silently accepting it.
549         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
550         we are returning TRUE.
551         (gtk_tree_store_iter_children): ditto
552         (gtk_tree_store_iter_nth_child): ditto
553         (gtk_tree_store_iter_parent): ditto
554         (gtk_tree_store_insert): remove handling of parent->user_data ==
555         NULL, replace with parent == NULL       
556
557         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
558         and a comment explaining things
559
560         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
561         interface support to GtkTreeStore.
562
563         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
564         FALSE if no prev, fix
565
566         * gtk/gtktreeview.c (set_source_row): use a row reference
567         (set_dest_row): use a row reference
568
569 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
570
571         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
572         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
573         (gtk_tree_selection_select_iter): The same as above.
574
575 2001-01-26  Havoc Pennington  <hp@redhat.com>
576
577         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
578         which holds a handle to a specific row (particular set of values
579         in the model, i.e. pointer-identity row).
580
581         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
582         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
583         Still need to use it for the src/dest row saved on the drag context.
584
585 2001-01-26  Havoc Pennington  <hp@redhat.com>
586
587         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
588
589         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
590         not offset by TREE_VIEW_HEADER_HEIGHT
591         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
592         TREE_VIEW_HEADER_HEIGHT
593
594         * configure.in (included_loaders): for me, --with-included-loaders
595         generates the error "the specified loader yes does not exist",
596         i.e. the arg defaults to "yes", so change test for value ""
597         to test for value "yes", and include all loaders in that case.
598
599         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
600
601         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
602         handle TREE_VIEW_VERTICAL_SEPARATOR
603         (gtk_tree_view_bin_expose): fix to consider the row offset as
604         pointing halfway into vertical separator.       
605         (gtk_tree_view_draw_node_focus_rect): ditto
606
607         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
608         --gtk-debug=updates, which causes gdk_window_set_debug_updates
609         (TRUE) to be called.
610
611         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
612         debug mode where the invalid region is colored in on invalidate,
613         so you can see the flicker and know whether your redraw code is 
614         doing a good job.
615
616         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
617         tree window coordinates (clip rect is in tree window coords)
618
619         * gtk/Makefile.am: add gtktreednd.[hc]
620
621         * gtk/gtkliststore.c: implement gtktreednd interfaces.
622
623         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
624         drag-and-drop data operations on a model (so we can set up tree
625         drag-and-drop automatically)
626
627         * gtk/testgtk.c: Add a window to change sensitivity in the
628         GtkLabel test; add a way to change the entry frame in GtkEntry
629         test
630
631         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
632         (gtk_entry_get_has_frame): new functions to remove the frame
633         around an entry
634         (gtk_entry_size_request): shrink requisition if no frame
635         (gtk_entry_draw_focus): don't draw frame if no frame
636
637         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
638         checks inside a cell renderer
639         (gtk_default_draw_option): ditto for options
640
641         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
642         children from the alignment, not the button
643         (gtk_tree_view_column_init): ref/sink the column, to emulate
644         GObject refcounting.
645
646         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
647         
648         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
649         Use theme functions to draw the toggles 
650
651         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
652
653         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
654         GdkPangoAttrEmbossed to use in rendering insensitive text
655
656         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
657
658         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
659         using new GDK features
660         
661 2001-01-24  Alexander Larsson  <alexl@redhat.com>
662
663         * gtk/gtkimage.c:
664         Splitted gtk_image_clear into gtk_image_clear() and
665         gtk_image_reset(). Call gtk_image_clear() in ::destroy
666         to avoid leaks.
667
668         * gtk/gtklabel.c (set_markup):
669         Don't leak text.
670
671         * gtk/gtktextlayout.c:
672         Always free display->shaped_objects.
673
674         * gtk/testgtk.c (create_clist):
675         Don't leak custom style.
676
677 2001-01-23  Alexander Larsson  <alexl@redhat.com>
678
679         * gtk/gtkcolorsel.c (grab_color_at_mouse):
680         Don't leak image. Simplify using gdk_colormap_query_color().
681         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
682
683         * linux-fb/gdkcolor-fb.c:
684         Implemented gdk_colormap_query_color.
685
686 2001-01-23  Alexander Larsson  <alexl@redhat.com>
687
688         * linux-fb/gdkcursor-fb.c:
689         Don't leak built-in cursors.
690
691         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
692         Don't leak tmp_points.
693
694         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
695         Don't modify desc. Don't leak font if the PangoFont
696         isn't found.
697         
698         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
699         Free dash_list.
700
701         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
702         Don't leak string.
703         
704 2001-01-20  Havoc Pennington  <hp@pobox.com>
705
706         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
707         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
708         me, matches Pango
709
710 2001-01-22  Havoc Pennington  <hp@redhat.com>
711
712         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
713
714         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
715
716         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
717         Remove, move back to gdk-pixbuf
718
719         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
720         to all the word functions
721
722         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
723         before doing anything on NULL layout or if we don't have the focus
724
725         * gtk/testtext.c (fill_example_buffer): "justification"
726
727         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
728         to be called "justification" not "justify"
729
730         * demos/gtk-demo/textview.c (create_tags): "justification"
731         
732         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
733
734 2001-01-22  Alexander Larsson  <alexl@redhat.com>
735
736         * gdk/gdkwindow.c (gdk_window_invalidate_region):
737         Don't leak visible_region. Use visible_region instead of region.
738         
739         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
740         Don't do extra gdk_drawable_ref(). This is not X.
741         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
742         gdk_fb_focused_window is ref:ed.
743         (gdk_fb_window_send_crossing_events): Watch out for destroyed
744         windows.
745
746 2001-01-22  Alexander Larsson  <alexl@redhat.com>
747
748         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
749         Don't leak the PangoFontDescriptor.
750
751 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
752
753         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
754         when not realized.
755         (gtk_tree_view_scroll_to_cell): Make work when not realized.
756         (gtk_tree_view_realize): add scroll_to support
757         (gtk_tree_view_finalize): add a finalize method.  Populate.
758         (gtk_tree_view_insert_column): ref and sink the column.
759         (gtk_tree_view_append_column): ref and sink the column.
760         (gtk_tree_view_queue_draw_node): New function to handle redrawing
761         individual nodes.  Should make the code much more efficient, if
762         actually used.
763
764 2001-01-19  Havoc Pennington  <hp@redhat.com>
765
766         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
767         byte_offset variable was being used to mean both "offset into
768         layout" and "offset into buffer line" which was no longer true
769         with addition of preedit string; fix
770
771 2001-01-19  Havoc Pennington  <hp@redhat.com>
772
773         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
774
775         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
776         function
777
778         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
779         implement
780
781         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
782         scroll_to_cell, matches TextView scroll functions better
783         (gtk_tree_view_tree_to_widget_coords): new function
784         (gtk_tree_view_widget_to_tree_coords): new function
785         (gtk_tree_view_get_visible_rect): new function
786         (gtk_tree_view_get_path_at_pos): accept negative coordinates
787         (gtk_tree_view_draw_node_focus_rect): new function moved from
788         draw_focus, also, use width of bin_window as width of the focus
789         rect
790         (gtk_tree_view_expand_row): fix bug where it didn't recognize
791         already-expanded rows
792         (gtk_tree_view_get_cell_rect): new function
793         (gtk_tree_view_get_path_at_pos): return the click position
794         relative to the passed-in cell
795         (gtk_tree_view_set_expander_column): new function
796
797         * configure.in: remove gtk-config-2.0 chmod
798
799         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
800         and properly handle drags with targets we don't understand
801         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
802         scrolling anyway
803         (gtk_text_view_drag_drop): stop scrolling here though, and set the
804         mark invisible
805
806         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
807         function
808         (gtk_drag_dest_get_target_list): new function
809         (gtk_drag_dest_set_target_list): new function
810         
811         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
812
813         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
814         related to drag-and-drop
815
816 2001-01-19  Alexander Larsson  <alexl@redhat.com>
817
818         * gdk/linux-fb/gdkprivate-fb.h:
819         Define EMULATE_GDKFONT.
820         Add extra pango_font stuff to GfkFontPrivate.
821         
822         * gdk/linux-fb/gdkdrawable-fb2.c:
823         * gdk/linux-fb/gdkfont-fb.c:
824         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
825         emulation using PangoFont.
826
827 2001-01-17  Havoc Pennington  <hp@pobox.com>
828
829         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
830         all the non-deprecated set_foo functions. Added missing object
831         properties, and added g_object_notify() to setters. 
832         Wrote docs.
833         
834 2001-01-18  Tor Lillqvist  <tml@iki.fi>
835
836         * gtk/gtkmain.c
837         * gtk/gtkrc.c: (Win32) Use the new
838         g_win32_get_package_installation_(sub)directory() functions.
839
840         * config.h.win32.in: New file.
841         
842         * config.h.win32: Removed.
843
844         * configure.in: Output config.h.win32.
845
846         * Makefile.am: Add it to EXTRA_DIST.
847
848         * gtk/gtk.def: Update.
849
850 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
851
852         * gtk/gtklabel.c (gtk_label_size_request): Set the
853         attributes onto the PangoLayout even if they are newly
854         created from label->pattern.
855
856 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
857
858         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
859
860         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
861         structures in functions. Fixes bug where gtk_dataset_*
862         was accidentally still being used in one place, causing
863         every dest side event to be treated independently.
864
865         * gtk/gtkdnd.c: Remove last vestages of handling
866         ::draw (fixes warning)
867         
868         * gtk/gtkentry.[ch]: Add drag and drop support.
869
870         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
871         new function gtk_check_drag_threshhold() for checking
872         to check if (dx,dy) has exceeded the threshhold for starting
873         a drag and use it everywhere.
874
875 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
876
877         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
878         add -I{includedir}/gtk-2.0.
879
880         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
881         gdk/gdk-pixbuf.h: Doc fixups.
882         
883         * gtk/gtkobject.h: Remove trailing , from enum
884
885 2001-01-17 Alexander Larsson <alexl@redhat.com> 
886
887         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
888         Doh! Mixed up x and y.
889
890         * gdk/linux-fb/gdkglobals-fb.c:
891         Removed gdk_fb_pointer_grab_window_events,
892         added _gdk_fb_pointer_grab_owner_events and
893         _gdk_fb_keyboard_grab_owner_events.
894
895         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
896         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
897         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
898         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
899         Send crossing events after ungrab finished.
900         (gdk_keyboard_grab): Set ..._owner_events
901         (type_masks): Move out of function.
902         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
903         gdk_fb_keyboard_event_window): New functions, return the
904         window an event should be targeted at. Handles grabs and
905         event propagation. Can return NULL.
906         (gdk_event_make): Remove event_mask checking. Now always
907         returns an event.
908                 
909         * gdk/linux-fb/gdkkeyboard-fb.c:
910         * gdk/linux-fb/gdkproperty-fb.c:
911         * gdk/linux-fb/gdkselection-fb.c:
912         Use new event_window/gdk_event_make() behaviour.
913         
914         * gdk/linux-fb/gdkmouse-fb.c:
915         Use new event_window/gdk_event_make() behaviour.
916         Only send motion events if in the same window.
917         If grabbed, use cursor from window if sibling of grabbed
918         window, and cursor from grabbed window otherwise.
919
920         * gdk/linux-fb/gdkprivate-fb.h:
921         Update gdk_fb_window_send_crossing_events, gdk_event_make
922         and grab varaible declarations. Add gdk_fb_*_event_window().
923
924         * gdk/linux-fb/gdkwindow-fb.c:
925         Use new event_window/gdk_event_make() behaviour.
926         Keep correct track of focus window.
927         (gdk_window_set_events): Set all specific button motion masks
928         if GDK_BUTTON_MOTION_MASK set.
929
930         * gtk/gtkdnd.c (gtk_drag_update):
931         Free info->last_event if gdk_drag_motion returned FALSE.
932
933 2001-01-16  Tor Lillqvist  <tml@iki.fi>
934
935         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
936         Eliminate redraws when input-only windows are shown or
937         hidden. Thanks to jpe@archaeopteryx.com.
938
939 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
940
941         * docs/faq/gtk-faq.sgml: FAQ update:
942           - Update to bugzilla
943           - Add GTK+ and security/SUID/SGID
944           - Add DnD question
945
946 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
947
948         * gdk/linux-fb/gdkdnd-fb.c:
949         Some cleanups.
950         
951 2001-01-15  Havoc Pennington  <hp@pobox.com>
952
953         * tests/testtreeview.c: add test stuff for CellRendererToggle
954
955         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
956         accessor
957
958         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
959         only toggle on button press (would do release like GtkButton, but
960         we'd need implicit grab code for treeview cells)
961
962 2001-01-16  Tor Lillqvist  <tml@iki.fi>
963
964         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
965
966         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
967         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
968
969         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
970         to g_{locale,filename}_{to,from}_utf8 to match current API.
971
972         * gtk/makefile.msc.in (gtk_OBJECTS)
973         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
974
975         * gtk/gtk.def: Update.
976
977 2001-01-15  Tor Lillqvist  <tml@iki.fi>
978
979         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
980         implementaion that more closely mimics the events that an X server
981         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
982         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
983         with nested preview widgets, for instance, more responsive when
984         you move the mouse quickly into them.
985         (find_window_for_pointer_event): Make it actually compile.
986         (gdk_event_translate): Set send_event to the value of
987         InSendMessage (). This doesn't really mean the same as X11's
988         send_event flag, but is close enough, says jpe@archaeopteryx.com
989
990 2001-01-15  Alexander Larsson  <alexl@redhat.com>
991
992         * gdk/linux-fb/gdkdnd-fb.c:
993         Implemented drag and drop.
994         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
995         when it tries to free and then copy the same event (info->last_event).
996         I am not sure about why this happens, but will continue looking.
997
998 2001-01-15  Alexander Larsson  <alexl@redhat.com>
999
1000         * gdk/linux-fb/gdkwindow-fb.c:
1001         Use gdk_window_invalidate_rect instead of
1002         gdk_window_invalidate_rect_clear to minimise flashing.
1003         When hiding windows you need to clear the root window though.
1004
1005 2001-01-15  Alexander Larsson  <alexl@redhat.com>
1006
1007         * gdk/linux-fb/gdkdrawable-fb2.c:
1008         For optization, add an full_shapes argument to gdk_fb_clip_region.
1009         If this is false, only the cliprects of the shapes are used.
1010
1011         * gdk/linux-fb/gdkprivate-fb.h:
1012         Export gdk_fb_window_peek_shape.
1013         Add full_shapes to gdk_fb_clip_region.
1014
1015         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
1016         When moving a window, don't clear everything under the it, just the
1017         root window. Makes stuff faster and flash less.
1018         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
1019         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
1020         offset of the shape.
1021         
1022
1023 2001-01-12  Havoc Pennington  <hp@redhat.com>
1024
1025         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
1026         current invalid region, fixes redraw bug while scrolling the 
1027         text widget
1028
1029         * gtk/gtktextview.c, gtk/gtktextview.h:
1030         Rearrange the scrolling/validation/etc. code in a major way, 
1031         so it seems to make sense to me. Probably isn't genuinely that
1032         much better, but...
1033
1034         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
1035         notifies
1036
1037         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
1038
1039 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
1040
1041         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
1042         Hide mouse pointer while rotation. Show it afterwards.
1043
1044 2001-01-12  Alexander Larsson  <alexl@redhat.com>
1045
1046         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
1047         windows in consideration when generating clip region.
1048
1049         * gdk/linux-fb/gdkfb.h:
1050         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
1051
1052         * gdk/linux-fb/gdkprivate-fb.h:
1053         Add shape to GdkWindowFBDatat.
1054         exported gdk_fb_window_get_abs_shape().
1055         removed gdk_fb_draw_lines declaration.
1056
1057         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
1058         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
1059         send focus changes when there is a grabbed window.
1060         (gdk_window_get_pointer): Handle shaped windows.
1061         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
1062         (gdk_fb_window_peek_shape): Returns the shape for a window,
1063         handles GDK_FB_USE_CHILD_SHAPE.
1064         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
1065         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
1066         (gdk_window_shape_combine_mask): Implement.
1067
1068         * gtk/gtkwindow-decorate.c:
1069         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
1070         setting the shape of a window makes the window transparent.
1071
1072 2001-01-11  Havoc Pennington  <hp@redhat.com>
1073
1074         * gtk/gtktreemodelsimple.h: Oops, broke some macros
1075
1076 2001-01-10  Havoc Pennington  <hp@redhat.com>
1077
1078         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
1079         add this function, bug 40251
1080
1081         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
1082         of type macro   
1083
1084 2001-01-11  Alexander Larsson  <alexl@redhat.com>
1085
1086         * acconfig.h:
1087         Added ENABLE_SHADOW_FB
1088
1089         * configure.in:
1090         Added --disable-shadowfb
1091
1092         * gdk/linux-fb/gdkcursor-fb.c:
1093         Update shadowfb when updating cursor
1094
1095         * gdk/linux-fb/gdkdrawable-fb2.c:
1096         Added wrappers for shadowfb that calls  the normal drawable
1097         methods, but calls gdk_shadow_fb_update(bounding box) when
1098         GdkWindows are drawed to.
1099         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
1100         which also returns the bounding box.
1101
1102         * gdk/linux-fb/gdkfb.h:
1103         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
1104
1105         * gdk/linux-fb/gdkgeometry-fb.c:
1106         Update shadowfb when scrolling window.
1107
1108         * gdk/linux-fb/gdkglobals-fb.c:
1109         Add _gdk_fb_screen_angle.
1110         
1111         * gdk/linux-fb/gdkkeyboard-fb.c:
1112         Test code for screen rotation. Shift-F2 in the xlate driver
1113         rotates the screen.
1114
1115         * gdk/linux-fb/gdkmain-fb.c:
1116         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
1117
1118         * gdk/linux-fb/gdkmouse-fb.c:
1119         Use fb_width/height instead of modeinfo.xres/yres.
1120
1121         * gdk/linux-fb/gdkprivate-fb.h:
1122         Added fb_men, fb_width, fb_height & fb_stride. When using
1123         shadow fb these can differ from the framebuffer stuff.
1124         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
1125         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
1126         _gdk_fb_screen_angle. Removed CM, RP.
1127
1128         * gdk/linux-fb/gdkrender-fb.c:
1129         Added code for shadowfb handling and screen rotation using
1130         shadowfb.
1131
1132         * gdk/linux-fb/gdkwindow-fb.c:
1133         Use fb_mem, fb_stride, fb_width, fb_height.
1134         Added recompute_rowstride to reset the rowstride of all windows.
1135         Added gdk_fb_recompute_all() which recomputes rootwindow size,
1136         window abs positions and window rowstrides. Usefull when the
1137         rotation has changed.
1138
1139 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
1140
1141         * docs/faq/gtk-faq.sgml: update to make web site updating easier
1142
1143 2001-01-10  Havoc Pennington  <hp@redhat.com>
1144
1145         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
1146         where sibling == iter
1147         (gtk_tree_store_insert_after): handle sibling == iter
1148         (gtk_tree_store_prepend): remove stamp checks
1149         (gtk_tree_store_insert_before): ditto
1150         (gtk_tree_store_append): ditto
1151         (gtk_tree_store_get_path): ditto
1152         (gtk_tree_store_get_value): ditto
1153         (gtk_tree_store_iter_has_child): ditto
1154         (gtk_tree_store_iter_n_children): ditto
1155         (gtk_tree_store_iter_nth_child): ditto
1156         (gtk_tree_store_insert_after): ditto
1157         (gtk_tree_store_is_ancestor): ditto
1158         (gtk_tree_store_iter_depth): ditto
1159         (gtk_tree_store_insert_before): assert that sibling's parent is
1160         the same as the passed-in parent
1161         (gtk_tree_store_insert_after): assert that sibling's parent is
1162         the same as the passed-in parent
1163
1164         
1165         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
1166         function to get the first iterator in a model
1167         
1168         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
1169         conventionally the "root" in this sense is just NULL afaict.
1170
1171         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
1172         where sibling == iter
1173         (gtk_list_store_insert_after): handle case where sibling == iter
1174
1175         * tests/testtreeview.c (run_automated_tests): fairly lame basic
1176         automated tests for ListStore, TreeStore
1177
1178         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
1179         (gtk_list_store_insert): update tail pointer, and fix it to work
1180         (gtk_list_store_insert_before): update tail pointer, and fix it to work
1181         (gtk_list_store_append): use tail to be faster
1182         (gtk_list_store_prepend): fix it, update tail pointer
1183         (gtk_list_store_insert_after): fix it, update tail pointer
1184
1185         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
1186         the list
1187
1188 2001-01-09  Havoc Pennington  <hp@redhat.com>
1189
1190         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
1191         is NULL due to a pending resize
1192
1193         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
1194         column width to values less than 1
1195
1196         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
1197         width to be between min/max width, and still set the width 
1198         even if autosize is turned on, so the tree view can use this 
1199         function in order to autosize.
1200         (gtk_tree_view_column_init): set initial width to 1 not 0
1201
1202         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
1203         setter function to modify column width, so we get notification
1204         (gtk_tree_view_insert_iter_height): ditto
1205         (gtk_tree_view_calc_size): ditto
1206         (gtk_tree_view_check_dirty): ditto
1207
1208         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
1209         properties to change all the interesting attributes of the tree
1210         view column.
1211         (gtk_tree_view_column_set_header_clickable): rename set_clickable
1212         (gtk_tree_view_column_get_clickable): add
1213         (gtk_tree_view_column_set_cell_renderer): don't unset the current
1214         attributes; assume a cell renderer with equivalent object
1215         properties has been swapped in. Do g_object_notify().
1216         (gtk_tree_view_column_set_visible): g_object_notify
1217         (gtk_tree_view_column_get_sizing): rename from get_col_type
1218         (gtk_tree_view_column_set_sizing): g_object_notify
1219         (gtk_tree_view_column_set_width): add g_object_notify
1220         (gtk_tree_view_column_set_min_width): ditto
1221         (gtk_tree_view_column_set_max_width): ditto
1222         (gtk_tree_view_column_set_title): ditto
1223         (gtk_tree_view_column_set_clickable): ditto
1224         (gtk_tree_view_column_set_widget): ditto
1225         (gtk_tree_view_column_set_justification): ditto
1226
1227 2001-01-09  Havoc Pennington  <hp@redhat.com>
1228
1229         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
1230         there are no rows in the model
1231
1232         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
1233         NULL, then return the start of the list
1234
1235         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
1236         if we can't get any rows from an empty model 
1237
1238         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
1239         extraneous * after function pointer typedef usage
1240
1241         * Makefile.am: don't specify full path to cp and rm
1242
1243         * gtk/gtkcellrenderertextpixbuf.c
1244         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
1245         NULL before dereferencing, fixes a segfault that happened from
1246         time to time
1247
1248         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
1249         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
1250         and reindent the function
1251         (gtk_cell_renderer_pixbuf_get_size): indentation
1252
1253         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
1254         we quit it
1255         (gtk_dialog_add_buttons_valist): add g_return_if_fail
1256         (gtk_dialog_set_default_response): New function, to set default
1257         button
1258         (gtk_dialog_set_response_sensitive): New function, to set 
1259         sensitivity of buttons
1260
1261         * gtk/gtkcellrendererpixbuf.c
1262         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
1263         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
1264
1265         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1266         handle any G_TYPE_OBJECT subclass, not just the base class, and 
1267         also boxed types.
1268         (_gtk_tree_data_list_value_to_node): ditto
1269
1270         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
1271         --gtk-debug=tree
1272
1273         * gtk/gtkmain.c: add GTK_DEBUG_TREE
1274
1275         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
1276
1277 2001-01-09  Tor Lillqvist  <tml@iki.fi>
1278
1279         * gdk/win32/gdkevents-win32.c: Implement better mouse
1280         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
1281         (find_window_for_pointer_event): New function.
1282         (gdk_event_translate): Use it when handling mouse events.
1283
1284 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
1285
1286         * configure.in:
1287         Added --with-included-loaders option
1288
1289         * gdk-pixbuf/Makefile.am:
1290         * gdk-pixbuf/gdk-pixbuf-io.c:
1291         Add support for including selected gdk-pixbuf loaders only.
1292
1293         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
1294         gtk_window_set_has_frame):
1295         Added inline documentation.
1296
1297         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
1298         * docs/reference/gdk/tmpl/windows.sgml:
1299         Added inline documentation.
1300
1301 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
1302
1303         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
1304         realizing buttons that have already been realized.
1305
1306 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
1307
1308         * tests/testtreeview.c (main): Show menu items before adding to
1309         option menu.
1310
1311         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
1312         around if we kill them.
1313
1314         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
1315         Return if we pass in a NULL model.
1316
1317 2001-01-08  Havoc Pennington  <hp@redhat.com>
1318
1319         * tests/testtreeview.c: hack on this some
1320
1321         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
1322         gtk_tree_store_set_valist, v is for arrays, valist for varargs
1323         list
1324         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
1325
1326         * gtk/gtkliststore.h: Add varargs set() and get() convenience
1327         functions
1328
1329 2001-01-08  Alexander Larsson  <alexl@redhat.com>
1330
1331         * gtk/gtkwindow-decorate.[hc]:
1332         * gtk/Makefile.am:
1333         New files. Contains an implementation of a minimal WM for
1334         linux-fb.
1335
1336         * gtk/gtkwindow.h:
1337         Add the possibility for GtkWindows to specify a frame. This
1338         is used for the window decoration code, but could concievably
1339         be used for X programs too (xmms style windows).
1340         GtkWindow->frame is the toplevel window if the window is framed.
1341         The signal frame_event gets all events that are targeted to
1342         GtkWindow->frame.
1343         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
1344         
1345         * gtk/gtkwindow.c:
1346         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
1347         Call out to gtkwindow-decorate.c for WM support in linx-fb.
1348
1349 2001-01-08  Alexander Larsson  <alexl@redhat.com>
1350
1351         * docs/README.linux-fb:
1352         Correct filename ~/.pangoft2_aliases
1353
1354         * gdk/gdkwindow.h:
1355         Added new function gdk_window_get_decorations.
1356
1357         * gdk/linux-fb/gdkfb.h:
1358         Removed _gdk_window_get_decorations declaration.
1359         Renamed _gdk_window_set_child_handler to
1360         gdk_fb_window_set_child_handler.
1361
1362         * gdk/linux-fb/gdkwindow-fb.c:
1363         Renamed _gdk_window_set_child_handler to
1364         gdk_fb_window_set_child_handler.
1365
1366         * gdk/x11/gdkwindow-x11.c:
1367         New function gdk_window_get_mwm_hints().
1368         Implemented gdk_window_get_decorations.
1369
1370         * docs/reference/gdk/tmpl/windows.sgml:
1371         * docs/reference/gdk/gdk-sections.txt:
1372         Added gdk_window_get_decorations docs.
1373         
1374 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
1375
1376         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
1377         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
1378         gdk_fb_window_send_crossing_events):
1379         Possibly send focus events when the mouse moves from one
1380         window to another.
1381
1382 2001-01-07  Tor Lillqvist  <tml@iki.fi>
1383
1384         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
1385         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
1386         to match current API.
1387
1388         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
1389         environment variable is set, don't call g_error when on a
1390         palettized (PseudoColor) display. Some people want to use GTK+ 
1391         in 256-colour mode even though works only partially.
1392
1393         * gdk/gdk.def
1394         * gtk/gtk.def
1395         * gtk/makefile.mingw.in: Update.
1396
1397 2001-01-05  Havoc Pennington  <hp@redhat.com>
1398
1399         * tests/testtreeview.c: hack on this a bit
1400
1401         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
1402         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
1403
1404         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
1405         was spelled incorrectly
1406         (GTK_IS_TREE_MODEL_SIMPLE): ditto
1407
1408         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
1409         from gtk_tree_view_set_headers_active   
1410
1411         * gtk/gtktexttag.c:
1412         (gtk_text_tag_get_property): handle PROP_DIRECTION
1413         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
1414         properties, bug 40235
1415
1416         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
1417         forward_to_line_end
1418
1419 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
1420
1421         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
1422         modules/input/gtkimcontextxim.c: Adapt to new prototypes
1423         for unicode,locale,filename conversion functions.
1424
1425 2001-01-05  Havoc Pennington  <hp@redhat.com>
1426
1427         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
1428         broken if called on the first position in the buffer.
1429
1430         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
1431         forward_to_delimiters to be called only if we aren't already at
1432         the delimiters.
1433
1434 2001-01-05  Havoc Pennington  <hp@redhat.com>
1435
1436         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
1437
1438 2001-01-05  Alexander Larsson  <alexl@redhat.com>
1439
1440         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
1441         colormap in here. Sync from X port.
1442         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
1443         Sync from X port.
1444         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
1445         This happens now and then, and i don't think it is a bug.
1446         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
1447         != endpoint.
1448         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
1449         GDK_LINE_SOLID.
1450
1451         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
1452         some of the fields filled in at least.
1453
1454         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
1455         miLineArcD is no more, remove it from the function definition.
1456
1457 2001-01-04  Havoc Pennington  <hp@redhat.com>
1458
1459         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
1460         this
1461
1462         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
1463         user_data instead of tree_node
1464
1465         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
1466         TREE_VIEW_COLUMN_SIZE
1467
1468         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
1469         "size" field to "width" finishes bug 40061
1470
1471         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
1472         for bitfields, bug 40268
1473
1474 2001-01-04  Havoc Pennington  <hp@redhat.com>
1475
1476         Rename some stuff:
1477         
1478         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
1479
1480         s/GtkModelSimple/GtkTreeModelSimple/g;
1481         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
1482         s/gtk_model_simple/gtk_tree_model_simple/g;
1483         s/gtkmodelsimple/gtktreemodelsimple/g;
1484
1485         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
1486
1487         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
1488         s/column_set_col_type/column_set_sizing/g;
1489
1490         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
1491         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
1492
1493         s/GtkCellRendererType/GtkCellRendererState/g;
1494         
1495         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
1496         (gtk_cell_renderer_toggle_class_init): change "state" property to
1497         "active", to match GtkToggleButton
1498         (gtk_cell_renderer_toggle_get_active): new function, bug
1499         40269
1500         (gtk_cell_renderer_toggle_set_active): new function
1501         (gtk_cell_renderer_toggle_set_property): route changes to toggle
1502         state through gtk_cell_renderer_set_active
1503
1504 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
1505
1506         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
1507         temporarily until they work again.  Brought up to date with
1508         changes in the model.
1509         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
1510         model.
1511
1512 2001-01-04  Havoc Pennington  <hp@redhat.com>
1513
1514         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
1515         equal to the line length, then position iterator before paragraph 
1516         separators. Fixes crash reported by Mikael Hermansson when
1517         pressing left arrow from the start of a line.   
1518
1519         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
1520         about byte indexes off the end
1521         (iter_set_from_char_offset): add g_error about char offsets
1522         off the end
1523
1524 2001-01-03  Havoc Pennington  <hp@redhat.com>
1525
1526         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
1527
1528         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
1529         of private functions; remove inclusion of private headers.
1530
1531         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
1532         function, so we don't need private functions in gtktextdisplay.c
1533
1534         * gtk/gtktextiterprivate.h: underscore-ification
1535
1536         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
1537         to instead say "only useful to implement widgets"
1538
1539         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
1540         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
1541         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
1542
1543         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
1544         This function was completely broken
1545
1546         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
1547
1548         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
1549
1550         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
1551
1552         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
1553
1554         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
1555
1556         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
1557
1558         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
1559         gtk_paint_layout
1560
1561         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
1562         gtk_paint_layout
1563
1564         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
1565         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
1566         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
1567         which were not implemented.     
1568
1569         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
1570         insert_pixbuf signal. Rename delete_text to delete_range since it
1571         also deletes pixbufs and child anchors. This almost closes bug
1572         40245 (still need to deal with child anchors)
1573
1574         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
1575         insert_pixbuf, change signal names as appropriate, change types of
1576         signals taking marks/tags to have the specific type, not just
1577         G_TYPE_OBJECT
1578         
1579         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
1580         closes bug 40051
1581
1582         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
1583         unnecessary remove_contents() call
1584         (gtk_option_menu_class_init): add a "changed" signal, closes
1585         bug 40039
1586         (gtk_option_menu_update_contents): emit "changed" if the 
1587         active menu item changes
1588
1589         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
1590         cast to GtkObject, reported by Jonas Borgstrom
1591         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
1592         we can't do stuff with side effects in finalize. Instead, spew a
1593         warning if the loader isn't closed.
1594
1595         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
1596         colormap in here, non-X ports probably need to sync to this change
1597
1598         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
1599         assertion that colormap != NULL, you can set the colormap to NULL
1600         if you like.
1601         
1602         * Makefile.am: remove gtk-config-2.0
1603
1604         * configure.in: Use pkg-config to locate GLib. Remove
1605         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
1606         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
1607         Use pkg-config to locate Pango. Output correct Pango libs to
1608         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
1609
1610         * Makefile.am (pkgconfig_DATA): install only target-specific pc
1611         files
1612         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
1613         X11 pc files
1614
1615         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
1616         unref from here
1617
1618 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
1619
1620         * configure.in:
1621         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
1622
1623 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1624
1625         * gtk/gtktextlayout.c
1626         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
1627         variable when moving back onto a single line.
1628
1629 2001-01-01  Havoc Pennington  <hp@redhat.com>
1630
1631         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1632
1633         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
1634
1635         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
1636         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
1637
1638 2001-01-01  Havoc Pennington  <hp@redhat.com>
1639
1640         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
1641
1642         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
1643         GtkTextAttributes
1644
1645         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
1646         #40246
1647         (gtk_text_attributes_copy_values): rename from 
1648         gtk_text_attributes_copy
1649         (gtk_text_attributes_copy): a more standard GTK copy function, 
1650         which returns a new object
1651
1652 2001-01-01  Havoc Pennington  <hp@redhat.com>
1653
1654         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
1655         
1656         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
1657         don't fill in tree_view->priv->selection, kind of an unexpected
1658         side effect
1659
1660         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
1661         gtkintl.h
1662         
1663         * gtk/gtkcellrenderer.c: Remove definition of _ and include
1664         gtkintl.h
1665         (gtk_cell_renderer_get_property): remove calls to g_value_init
1666
1667         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
1668         gtkintl.h
1669
1670         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
1671         and include gtkintl.h
1672         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
1673         property names
1674
1675         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
1676         GtkTreeSelection
1677         (_gtk_tree_selection_new_from_with_view): rename, return
1678         GtkTreeSelection
1679         (_gtk_tree_selection_set_tree_view): rename with uscore
1680         (gtk_tree_selection_get_selected): fill in the "model" out param
1681         first, so it gets filled in even if we return at the top of the 
1682         function
1683         (gtk_tree_selection_real_select_all): add a comment and an else{}
1684         to clarify this a bit
1685         (gtk_tree_selection_real_unselect_all): add the same else{}
1686
1687         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
1688         set_tree_view to have underscore prefixes, move them to the
1689         private header, fix return type of new_with_tree_view
1690         (struct _GtkTreeSelection): mark struct
1691         fields private  
1692
1693         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
1694         GtkTreeModelFlags, not a guint
1695         (gtk_tree_path_prev): return gboolean not gint
1696         (gtk_tree_path_up): return gboolean not gint
1697
1698         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
1699         return GtkTreeModelFlags, not a guint
1700
1701         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
1702         that child model is non-null before unrefing it
1703         (g_value_int_compare_func): make this a qsort compare func, not 
1704         a boolean predicate
1705
1706         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
1707         (add -umn to the end), and mark it unimplemented
1708         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
1709         I don't see what it's for - doesn't the model always sort itself?
1710         (gtk_tree_model_sort_set_compare): this had the wrong signature
1711
1712         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
1713         Fix the docs to say that it destructively replaces existing
1714         attributes (previously said that it added attributes).
1715         (gtk_tree_view_column_set_visible): canonicalize bool before
1716         equality testing. Also, check for realization before
1717         hiding/showing the tree_column->window; if this window could exist
1718         before realization, then it's busted and needs fixing, we can't 
1719         create GDK resources pre-realization. Also, remove
1720         superfluous queue_resize(), since set_size() does that for us.
1721         (gtk_tree_view_column_set_col_type): check realization before 
1722         using tree_column->window
1723
1724         * gtk/gtktreedatalist.c: fix filename in copyright notice
1725
1726 2000-12-31  Havoc Pennington  <hp@pobox.com>
1727
1728         * gtk/gtktextview.c: Rearrange all the
1729         scroll-while-dragging-or-selecting code to be different, not
1730         necessarily better. ;-)
1731         (gtk_text_view_scroll_to_mark): Change this
1732         function to take within_margin as a fraction instead of a pixel
1733         value, and to take alignment arguments (indicating where to align 
1734         the mark inside the visible area)
1735         
1736         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
1737         to GtkObject
1738
1739         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
1740         behavior so that offsets past the end of the line are not 
1741         allowed, and an offset equal to the line length moves the iterator
1742         to the next line
1743         (gtk_text_iter_set_line_index): make parallel change
1744         (gtk_text_iter_get_bytes_in_line): add this function
1745         
1746         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
1747         of byte indexes off the end of the line; byte index at the end of
1748         the line now returns FALSE and doesn't fill in the requested
1749         values, byte index past the end of the line is an error.  Also,
1750         don't allow -1 offset anymore, since its meaning is unclear.
1751
1752         This change exposes some bug in visual cursor motion, where we
1753         end up with a huge invalid byte index; needs fixing. Symptom of 
1754         bug is a crash when you hit up arrow.
1755         
1756         (_gtk_text_line_char_locate): match the change to byte_locate
1757
1758         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
1759         from start of line properly. fixes bug reported by Mikael
1760         Hermansson where backspace would delete all text before the
1761         cursor.
1762
1763 2000-12-30  Tor Lillqvist  <tml@iki.fi>
1764
1765         * gdk/win32/gdkwindow-win32.c
1766         (gdk_window_impl_win32_get_visible_region): New function, as in
1767         the X11 backend.
1768         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
1769         instead of duplicating the same code here.
1770
1771         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
1772         GDK_COLORMAP macro.
1773
1774         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
1775         destroy function.
1776         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
1777         access that.
1778
1779         * gtk/gtk.def: Update.
1780
1781         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
1782
1783 2000-12-30  Havoc Pennington  <hp@pobox.com>
1784
1785         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
1786         colormap on input only windows, to avoid special cases all over
1787         the code for these windows.
1788
1789 2000-12-26  Tor Lillqvist  <tml@iki.fi>
1790
1791         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
1792         we are on a palettized display ("PseudoColor" in X11), as the code
1793         for that doesn't work anyway, and never has.
1794
1795 2000-12-22  Alexander Larsson  <alexl@redhat.com>
1796
1797         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
1798         Don't use isprint() for chars > 255.
1799
1800 2000-12-21  Havoc Pennington  <hp@redhat.com>
1801
1802         * tests/testtreeview.c: more work
1803
1804 2000-12-21  Alexander Larsson  <alexl@redhat.com>
1805
1806         * docs/README.linux-fb:
1807         Update the docs to the new pangoft2 way.
1808
1809 2000-12-21  Alexander Larsson  <alexl@redhat.com>
1810
1811         * configure.in:
1812         For linux-fb get the pangoft2 cflags and libs. This needs a recent
1813         pango version.
1814         Remove modules/linux-fb/Makefile.
1815
1816         * gdk/linux-fb/gdkdrawable-fb2.c:
1817         Render glyphs using freetype.
1818
1819         * gdk/linux-fb/gdkfb.h:
1820         Add new fb-specific functions needed for managing windows.
1821
1822         * gdk/linux-fb/gdkmain-fb.c:
1823         Remove gdk_font_init/fini() calls.
1824
1825         * gdk/linux-fb/gdkpango-fb.c:
1826         Remove old implementation. Use pangoft2 instead.
1827
1828         * gdk/linux-fb/gdkprivate-fb.h:
1829         Remove PangoFBFont and related stuff.
1830
1831         * gdk/linux-fb/gdkwindow-fb.c:
1832         Implement drawable->get_visible_region.
1833         Implement support for _gdk_window_set_child_handler () and
1834         _gdk_window_get_decorations().
1835
1836         * modules/Makefile.am:
1837         Remove linux-fb subdir.
1838
1839         * modules/linux-fb/*:
1840         Removed all.
1841         
1842 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
1843
1844         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
1845         calls, as they are no longer needed.
1846
1847         * gtk/gtktreemodelsort.c: Fix up the comparison code.
1848         
1849         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
1850         figure out how to emit a signal on an interface.
1851
1852 2000-12-20  Havoc Pennington  <hp@redhat.com>
1853
1854         * tests: new directory to contain tests, gtk/test* should move
1855         here sometime (with appropriate on-cvs-server hackery)
1856
1857         * tests/testtreeview.c, tests/Makefile.am: a test
1858         
1859         * configure.in (AC_OUTPUT): add tests/Makefile
1860
1861         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
1862         and "invisible_set" which were missing
1863
1864         * gtk/gtkrbtree.h: some cheesy indentation fix
1865         
1866 2000-12-20  Alexander Larsson  <alexl@redhat.com>
1867
1868         * gtk/gtkinvisible.c (gtk_invisible_realize):
1869         Attach the style to the window so that the style it is not
1870         leaked when unrealizing the window.
1871
1872 2000-12-18  Havoc Pennington  <hp@redhat.com>
1873
1874         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
1875         begin/end user action where appropriate
1876         (gtk_text_view_commit_handler): add begin/end user action
1877
1878         * gtk/gtktextbuffer.c: add begin/end user action signals, and
1879         bracket interactive operations with begin/end user action pair.
1880         
1881         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
1882         "interactive" arg from insert_text and delete_text signals.
1883         Add begin_user_action, end_user_action signals
1884         (gtk_text_buffer_begin_user_action): 
1885         (gtk_text_buffer_end_user_action): New functions to delimit 
1886         a user-visible action
1887
1888         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
1889         signals.
1890         
1891 2000-12-18  Havoc Pennington  <hp@redhat.com>
1892
1893         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
1894         was pretty non-working.
1895
1896         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
1897         by passing the length to g_utf8_validate().
1898
1899 2000-12-16  Havoc Pennington  <hp@pobox.com>
1900
1901         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
1902         Port to GObject, can go back in gdk-pixbuf after setting up 
1903         a gdk-pixbuf-marshal.h header over there.
1904
1905         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
1906         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
1907         args
1908         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
1909         set
1910         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
1911         here, do it when we create the buttons later
1912         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
1913         (gtk_tree_view_map): paranoia checks that column->button is shown 
1914         and unmapped
1915         (gtk_tree_view_size_request): only request visible children.
1916         Move header size calculation in here, for cleanliness, and 
1917         to maintain invariants for child widgets if we eventually 
1918         let users set different children inside the buttons
1919         (gtk_tree_view_map_buttons): factor out code to map buttons,
1920         since it was being called several times
1921         (gtk_tree_view_size_allocate_buttons): move_resize the drag
1922         windows instead of just moving them; their height may change 
1923         if we allow random widgets in there, or the theme changes.
1924         (gtk_tree_view_size_allocate): move button size allocation 
1925         above emitting the scroll signals, to ensure a sane state when we
1926         hit user code
1927         (gtk_tree_view_button_release): remove queue_resize after
1928         tree_view_set_size(), set_size() will handle any resize queuing
1929         that's needed
1930         (gtk_tree_view_focus_in): just queue a draw, don't fool with
1931         draw_focus goo
1932         (gtk_tree_view_focus): use gtk_get_current_event() and
1933         gdk_event_get_state()
1934         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
1935         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
1936         semicolon
1937         (gtk_tree_view_create_button): show the button here
1938         (gtk_tree_view_button_clicked): actually emit the clicked signal
1939         on the column
1940         (_gtk_tree_view_set_size): return right away if the size is
1941         unchanged, as a cheesy optimization
1942         (gtk_tree_view_setup_model): rename set_model_realized to 
1943         setup_model to match the flag that indicates whether we've 
1944         called it
1945         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
1946         exist, because set_scroll_adjustment does that and it shouldn't
1947         matter what order you call these in
1948         (gtk_tree_view_get_vadjustment): ditto
1949         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
1950         for paranoia
1951         (gtk_tree_view_set_headers_visible): call
1952         gtk_tree_view_map_buttons() instead of using cut-and-paste code
1953         (gtk_tree_view_append_column): clarify whether the return value
1954         is the count of columns before or after, and do the increment 
1955         separately from the return statement so you can tell from the code.
1956         (gtk_tree_view_remove_column): ditto
1957         (gtk_tree_view_insert_column): ditto
1958         (gtk_tree_view_get_column): remove g_return_if_fail for columns
1959         outside the existing range, the docs say that outside-range
1960         columns are allowed, so we handle them as documented. (Presumably
1961         this allows a nice loop with column != NULL as test.)
1962         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
1963         mean (left/right/center etc.).
1964         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
1965         (gtk_tree_view_expand_row): add docs
1966         (gtk_tree_view_collapse_row): add docs
1967
1968         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
1969         function to emit the clicked signal on a column
1970         
1971         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
1972         state of an event
1973         (gdk_event_get_time): don't treat GDK_SCROLL 
1974         as a button event, remove default case from switch so gcc 
1975         will whine if we don't explicitly handle all event types
1976
1977         * gtk/gtktreeselection.h: added some FIXME 
1978         
1979         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
1980         "columns" to "n_columns" and "column" to "columns" for clarity
1981
1982 2000-12-16  Havoc Pennington  <hp@pobox.com>
1983         
1984         * gtk/gtktextiter.c: General cleanup of the log attr iteration
1985         stuff. This should make e.g. the delete key work again in the
1986         text widget...
1987         (gtk_text_iter_forward_cursor_positions): handle negative count
1988         (gtk_text_iter_backward_cursor_positions): handle negative count
1989         (gtk_text_iter_forward_word_ends): handle negative count
1990         (gtk_text_iter_backward_word_starts): handle negative count
1991
1992         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
1993         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
1994         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
1995         GObject. No doubt will cause breakage.
1996
1997         * demos/gtk-demo/textview.c: remove hacks around
1998         non-GObject-ification of the text objects
1999
2000         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
2001         the text tag
2002         
2003 2000-12-14  Havoc Pennington  <hp@pobox.com>
2004
2005         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
2006         that we have Xrender
2007
2008 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
2009
2010         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
2011         Add two virtualized functions gdk_drawable_get_clip_region - to
2012         get the clip region when drawing.
2013         
2014         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
2015         use invalidate_region.
2016
2017         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
2018         region.
2019
2020         * acconfig.h configure.in: Check for Xft. For now, assume
2021         that if Xft is found, Pango was compiled with Xft support
2022         as well.
2023
2024         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
2025         gdk_colormap_query_color().
2026         
2027         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
2028         with Xft if appropriate.
2029
2030         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
2031         a pangoxft context if we have XFT and the environment
2032         variable GD_USE_XFT is set.
2033         
2034         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
2035         and also possibly an XftDraw structure.
2036
2037         * gtk/gtkfontsel.c: Handle the case where the font from the
2038         style doesn't match any of the fonts a bit better.
2039         
2040         * gtk/testgtk.c: Add tabs between directional segments for
2041         hebrew/arabic test. (Not really necessary, just a little
2042         prettier.)
2043
2044 2000-12-14  Havoc Pennington  <hp@redhat.com>
2045
2046         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
2047         reading a file
2048
2049 2000-12-14  Havoc Pennington  <hp@redhat.com>
2050
2051         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
2052         unused call to get_last_line()
2053
2054         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
2055         here until boxed is working (and maybe after that - we should
2056         really not gratuitously break old code)
2057
2058         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
2059         specific types for font_desc and tabs args, move them to
2060         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
2061         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
2062
2063         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
2064         use GTK_TYPE_POINTER for signal signatures as a hack-around
2065
2066         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
2067         PangoTabArray
2068
2069         * gtk/gtktextlayout.c (line_display_iter_to_index): 
2070         make static
2071         (line_display_index_to_iter): make static
2072
2073         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
2074         to marshal a string not a boxed
2075
2076         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
2077
2078         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
2079         since the UTF-8 isn't validated yet
2080
2081         * gtk/gtktextsegment.c (char_segment_check_func): don't require
2082         lines to end in '\n'
2083         
2084         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
2085         forward_to_delimiters, and grapheme boundaries
2086         (gtk_text_view_delete_from_cursor): properly handle non-newline
2087         delimiters, and grapheme boundaries
2088
2089         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
2090         to gtk_text_iter_forward_to_delimiters, and make it work properly
2091         if empty lines end with a character other than '\n'
2092
2093         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
2094         position
2095
2096 2000-12-15  Tor Lillqvist  <tml@iki.fi>
2097
2098         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
2099
2100         * gtk/gtk.def
2101         * gdk/gdk.def: Update.
2102
2103         * gdk/win32/gdkmain-win32.c
2104         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
2105         gdkmain-win32.c here.
2106
2107         * gdk/win32/makefile.mingw.in (all): No need to make
2108         gdk-win32res.o here, the makefile one step up will call us to make
2109         it.
2110
2111         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
2112         gdkkeys-win32.
2113
2114         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
2115
2116         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
2117         call to g_source_add().
2118
2119         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
2120         leak. Thanks to Andreas Kemnade.
2121
2122 2000-12-13  Havoc Pennington  <hp@pobox.com>
2123
2124         * gtk/gtktextbtree.h: Remove double _ in front of some functions
2125
2126         * gtk/gtktext*.[hc]: update accordingly
2127         
2128 2000-12-13  Havoc Pennington  <hp@pobox.com>
2129
2130         * gtk/gtktextbtree.h: Put _ in front of every function in this 
2131         header file
2132
2133         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
2134
2135 2000-12-13  Alex Larsson  <alexl@redhat.com>
2136
2137         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
2138         Add support for ps2 intellimouse.
2139
2140         * gdkkeyboard-fb.c:
2141         Move shift-F1 repaint handling to xlate handler only.
2142         
2143         * docs/README.linux-fb:
2144         Add imps2 to docs.
2145         Document the new refresh keys.
2146         
2147 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
2148
2149         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
2150
2151         * gtk/gtkbox.c: change property types from (u)long to (u)int for
2152         ::position and ::padding.
2153
2154         * gtk/gtkcontainer.c: make ::border_width an INT property.
2155
2156         * gtk/gtkpacker.c: make ::position an INT property.
2157
2158         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
2159         guard against NULL h/v scrollbars, since this is used at construction
2160         time.
2161
2162         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
2163         internal gtk_clist_constructor().
2164
2165         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
2166         gtk_ctree_constructor().
2167
2168         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
2169         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
2170
2171         * docs/reference/Makefile.am: fun stuff, disabled docs generation
2172         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
2173
2174         * gtk/gtkwidget.[hc]:
2175         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
2176         and gtk_widget_get().
2177         (gtk_widget_new): use g_object_new_valist().
2178         (gtk_widget_set): use g_object_set_valist().
2179
2180         * gtk/gtkobject.[hc]:
2181         removed gtk_object_arg_get_info(), gtk_object_getv(),
2182         gtk_object_query_args(), gtk_object_newv(),
2183         gtk_object_class_add_signals(),
2184         gtk_object_class_user_signal_new(),
2185         gtk_object_class_user_signal_newv(),
2186         gtk_object_arg_set(), gtk_object_arg_get(),
2187         gtk_object_args_collect(),
2188         gtk_object_default_construct(),
2189         gtk_object_constructed(),
2190         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
2191         removed nsignals, signals and n_args members from GtkObjectClass.
2192         (gtk_object_new): use g_object_new_valist().
2193         (gtk_object_set): use g_object_set_valist().
2194         (gtk_object_get): use g_object_get_valist().
2195         
2196         * gtk/gtkcompat.h: define gtk_object_default_construct().
2197         
2198         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
2199         g_object_new().
2200
2201         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
2202         fucntions, cleaned up method assignments (make sure your structures
2203         are setup properly before calling out). removed all GTK_CONSTRUCTED
2204         hacks ;)
2205
2206 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
2207
2208         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
2209         off-by-one error in checks. (Dave Lambert)
2210
2211 2000-12-12  Alexander Larsson  <alexl@redhat.com>
2212
2213         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
2214         Don't free gdk_fb_keyboard twice.
2215
2216 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
2217
2218         * gtk/testgtk.c:
2219         (create_tooltips): 
2220         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
2221         use GObject swapped_signal:: properties instead.
2222
2223         * gtk/gtkcellrenderertoggle.c: 
2224         * gtk/gtkcellrenderertextpixbuf.c: 
2225         * gtk/gtkcellrenderertext.c: 
2226         * gtk/gtkcellrendererpixbuf.c: 
2227         * gtk/gtkcellrenderer.c:
2228         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
2229         missing warnings for invalid property ids, install properties
2230         with g_object_class_install_property() now.
2231         
2232         * gtk/gtksignal.c:
2233         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
2234         
2235 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
2236         
2237         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
2238         to determine if a window is the focus widget within
2239         its toplevel.
2240
2241         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
2242         to be boolean.
2243
2244         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
2245         of the case where the container CAN_FOCUS to here instead
2246         of having it in each individual move-the-focus place.
2247
2248         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
2249         focusing to be geometric in a much more obvious sense. Arrowing
2250         around is still non-intuitive because it isn't perfect and
2251         because entries, etc, grab the arrow keys, but it at least
2252         usually will do what you expect now.
2253         
2254         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
2255         file.
2256
2257         * gtk/gtknotebook.c: Change tabs to be a single item in
2258         the focus chain. Make movement of focus on tabs with arrow
2259         keys wrap around.
2260         
2261         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
2262         CHECK_FIND_CHILD macro to give informative error messages
2263         instead of silent returns.
2264
2265         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
2266         flag since we handle GdkReturn on the tabs.
2267
2268         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
2269         windows rather than sending expose events directly.
2270
2271         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
2272         definition for GtkNotebookPage into .c file, since it is private.
2273
2274         * gtk/testgtk.c (create_notebook): Add option for 
2275         testing borderless notebook.
2276
2277         * gtk/testgtk.c (page_switch): Removed egregious poking
2278         around in GTK+ internals.
2279
2280         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
2281
2282         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
2283         properly through gtk_clist_focus. Make the title headers a
2284         single item in the tab-focus chain, and make left-right wrap
2285         around.
2286
2287         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
2288         focus method so that wrapping around works properly.
2289
2290         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
2291         that is handled for the widget now. 
2292
2293 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
2294
2295         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
2296         widgets as TOPLEVEL.
2297
2298         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
2299         TOPLEVEL widgets are containers.
2300
2301         * gtk/gtkinvisible.h: Remove useless include.
2302
2303 2000-12-11  Havoc Pennington  <hp@redhat.com>
2304
2305         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
2306         Handle chopping off \r\n and 0x2029 in addition to \n before
2307         passing to PangoLayout
2308
2309         * gtk/gtkimcontextsimple.c
2310         (gtk_im_context_simple_get_preedit_string): 
2311         return an empty string if no match is pending
2312
2313         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
2314         assertion that the returned preedit string was sane
2315
2316         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
2317         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
2318         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
2319
2320 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
2321
2322         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
2323         Fix up finalizer to chain to its parent.
2324
2325 2000-12-11  Alexander Larsson  <alexl@redhat.com>
2326
2327         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
2328         Clearified the difference between the keyboard types. Wrote a note
2329         about the magic sysrq key to get out of raw mode.
2330
2331 2000-12-09  James Henstridge  <james@daa.com.au>
2332
2333         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
2334         member to hold masks for detecting the start of a protocol packet.
2335         (mouse_devs): add packet start masks for ps2 and ms device types.
2336         Left the mask for fidmour blank, as I have no idea what it should
2337         be.
2338         (handle_mouse_io): skip bytes until we get to the start of a
2339         packet.  My Logitech mouse seems to be passing an extra NULL pad
2340         byte, and GPM does a similar thing here.
2341         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
2342         this is the ms mouse driver.
2343         (gdk_fb_mouse_ms_packet): fix up button handling, which was
2344         completely broken except for button1.  It was checking the wrong
2345         bit in the packet for the status of the right mouse button, and
2346         wrongly assuming right == button2 rather than 3.  I fixed that and
2347         also added support for middle button (button2).
2348
2349 2000-12-08  Havoc Pennington  <hp@redhat.com>
2350
2351         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
2352         that cause a segfault on text insertion
2353
2354         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
2355         warning
2356
2357         * gtk/gtktextiter.c (test_log_attrs): use
2358         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
2359
2360         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
2361         Get log attrs for a line, using a cache stored on the buffer
2362         
2363         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
2364         reported by Jeff Franks
2365
2366 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2367
2368         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
2369         /dev/ttyS0 -> /dev/mouse
2370
2371 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2372
2373         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
2374         Added dummy gdk_fontset_load.
2375
2376 2000-12-08  Alexander Larsson  <alexl@redhat.com>
2377
2378         * docs/README.linux-fb:
2379         * docs/Makefile.am:
2380         Initial GtkFB docs.
2381         
2382         * gdk/linux-fb/Makefile.am:
2383         Define GDK_DATA_PREFIX.
2384
2385         * gdk/linux-fb/gdkmain-fb.c:
2386         Fix typo.
2387         Change default display to /dev/fb0.
2388
2389         * gdk/linux-fb/gdkpango-fb.c:
2390         Add $(prefix)/share/fonts/ to font path.
2391         
2392 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
2393
2394         * gdk/linux-fb/gdkkeyboard-fb.c:
2395         New file containing the abstracted keyboard driver. Most code
2396         taken from gdkinput-ps2.c
2397
2398         * gdk/linux-fb/gdkinput-ps2.c:
2399         Removed file.
2400         
2401         * gdk/linux-fb/Makefile.am:
2402         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
2403
2404         * gdk/linux-fb/gdkcolor-fb.c:
2405         display->fb was renamed to display->fb_fd.
2406
2407         * gdk/linux-fb/gdkcursor-fb.c:
2408         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2409
2410         * gdk/linux-fb/gdkinput.c:
2411         Moved gdk_input_init here from gdkinput-ps2.c
2412
2413         * gdk/linux-fb/gdkmain-fb.c:
2414         display->fb was renamed to display->fb_fd.
2415         Now the tty and the console is opened here instead
2416         of in the keyboard driver. Also check GDK_VT to see what
2417         tty to open.
2418         Move gdk_beep () here from gdkinput-ps2.c
2419         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2420
2421         * gdk/linux-fb/gdkmouse-fb.c:
2422         Add header.
2423         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2424         Return correct keyboard modifiers.
2425         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
2426
2427         * gdk/linux-fb/gdkprivate-fb.h:
2428         Add tty and vt info to display.
2429         Add orignal modeinfo storage to display
2430         Update global functions
2431
2432         * gdk/linux-fb/gdkwindow-fb.c:
2433         Added gdk_fb_window_find_focus().
2434         gdk_mouse_get_info -> gdk_fb_mouse_get_info
2435
2436 2000-12-07  Havoc Pennington  <hp@pobox.com>
2437
2438         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
2439         function, noticed by Alex
2440
2441 2000-12-06  Elliot Lee  <sopwith@redhat.com>
2442
2443         * configure.in: Detect freetype properly
2444
2445         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
2446         above.
2447
2448 2000-12-06  Alexander Larsson  <alexl@redhat.com>
2449
2450         * gdk/linux-fb/Makefile.am:
2451         Add gdkmouse-fb.c
2452         
2453         * gdk/linux-fb/gdkmouse-fb.c:
2454         New file. Abstracted the mouse drivers a bit.
2455
2456         * gdk/linux-fb/gdkcursor-fb.c:
2457         The cursor hide/show functions was moved here from gdkinput-ps2.c.
2458
2459         * gdk/linux-fb/gdkinput-ps2.c:
2460         Removed old mouse handling code. Moved cursor handling code
2461         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
2462         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
2463         gdk_mouse_get_info.
2464
2465         * gdk/linux-fb/gdkmain-fb.c:
2466         Pass NULL pointers for x,y in gdk_mouse_get_info call.
2467
2468         * gdk/linux-fb/gdkprivate-fb.h:
2469         Removed public gdk_fb_find_common_ancestor, added and renamed
2470         functions for the new mouse handling code.
2471
2472         * gdk/linux-fb/gdkwindow-fb.c:
2473         Moved gdk_fb_window_send_crossing_events here. added global
2474         variable gdk_fb_window_containing_pointer. made
2475         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
2476         renamed to gdk_mouse_get_info.
2477
2478 2000-12-06  Alexander Larsson  <alexl@redhat.com>
2479
2480         * gdk/linux-fb/gdkevents-fb.c:
2481         Update to match latest gmain/gsource changes.
2482
2483         * gdk/linux-fb/gdkinput-ps2.c:
2484         Bogus gdk_keymap_get_entries_for_keycode implementation so that
2485         it links. Will be implemented later.
2486
2487 2000-12-03  Havoc Pennington  <hp@pobox.com>
2488
2489         * gdk/Makefile.am: add gdkkeys.[hc]
2490
2491         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
2492         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
2493
2494         * acconfig.h, configure.in: add checks and command line options
2495         for XKB
2496
2497         * gdk/x11/gdkkeys-x11.c: Implement the above functions
2498         
2499         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
2500         and group in the key event
2501
2502         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
2503         field with the low-level hardware key code, and a group
2504         field with the keyboard group
2505
2506         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
2507         and declare a couple globals used for keymap handling
2508         
2509         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
2510         hold down Shift-Control and type a hex number to get a Unicode 
2511         character corresponding to the hex number
2512         (gtk_im_context_simple_get_preedit_string): Fix cursor position
2513         (return bytes not chars)
2514
2515 2000-12-05  Elliot Lee  <sopwith@redhat.com>
2516
2517         * gdk/gdkcolor.h: Make GdkColor specify element sizes
2518         to avoid waste on 64-bit platforms.
2519
2520 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
2521
2522         * INSTALL: Fix link to PNG home, remove reference
2523         to fribidi.
2524
2525         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
2526         
2527         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
2528         tested.)
2529
2530         * gtk/gtkcheckmenuitem.c: Permanently turn on
2531         always_show_toggle.
2532
2533         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
2534         be NULL. (Vladimir Klebanov, #26545)
2535
2536         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
2537         some signed/unsigned comparison problems. (#6510,
2538         David Kaelbling)
2539
2540         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
2541         return type to boolean (Oskar Liljeblad, #18648)
2542
2543 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2544
2545         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
2546         Remove bogus colormap setting.
2547
2548 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2549
2550         * gdk/linux-fb/gdkcolor-fb.c:
2551         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
2552
2553         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
2554         Must set colormap.
2555         
2556 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
2557
2558         * docs/tutorial/gtk-tut.sgml: DND updates
2559
2560 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
2561
2562         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2563         Remove old debug g_warning().
2564         (gdk_fb_draw_drawable): The src argument can be either a wrapper
2565         or an implementation, just pass the implementation to draw_drawable_2.
2566         
2567         * gdk/linux-fb/gdkprivate-fb.h:
2568         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
2569
2570         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2571         clear and invalidate area when window is destroyed.
2572         (send_map_events): Remove old commented out code.
2573
2574 2000-12-05  Alexander Larsson  <alexl@redhat.com>
2575
2576         * gdk/linux-fb/gdkpango-fb.c:
2577         Use italic instead of oblique in font aliases.
2578         
2579         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
2580         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
2581         other unsupported functions.
2582
2583 2000-12-04  Havoc Pennington  <hp@redhat.com>
2584
2585         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
2586
2587         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
2588
2589         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
2590
2591         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
2592         hack to avoid infinite loops (synthetic expose event) - 
2593         Owen has more appropriate fixes in a branch he'll check in later.
2594
2595         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
2596         separator, CR, and CRLF as line ends
2597
2598         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
2599         into lines using pango_find_paragraph_boundary(); other bits of
2600         the widget are still going to be broken if the boundary isn't '\n'
2601         though
2602
2603 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2604
2605         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
2606         multiply.
2607
2608         * gdk/linux-fb/gdkpango-fb.c:
2609         Copied some 26.6 scaling macros from pango to clean up the rounding.
2610         (pango_fb_font_get_glyph_info): Correct sign on x value.
2611
2612         * gdk/linux-fb/gdkprivate-fb.h:
2613         Removed unreferenced external functions.
2614
2615         * modules/linux-fb/Makefile.am: Use ` instead of '.
2616
2617         * modules/linux-fb/basic.c:
2618         Remove dead code. In particular the dummy lang engine which broke all
2619         pango layouts in GtkFB. Don't include tables-big.i anymore.
2620
2621         * modules/linux-fb/tables-big.i:
2622         Upgrade to latest version from pango. Left for reference, basic_ranges
2623         moved to basic.c.
2624         
2625 2000-12-04  Havoc Pennington  <hp@redhat.com>
2626
2627         Fix bugs Alex found:
2628         
2629         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
2630         to "draw"
2631
2632         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
2633
2634         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
2635
2636         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
2637         implementation in here, apparently the expose() implementation was
2638         dead code.
2639
2640 2000-12-04  Alexander Larsson  <alexl@redhat.com>
2641
2642         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
2643         Return positive descent.
2644
2645 2000-12-02  Havoc Pennington  <hp@pobox.com>
2646
2647         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
2648         method and signal
2649         
2650         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
2651         calls gdk_window_process_updates() to push the exposes through
2652         (gtk_widget_class_init): No more draw signal, no
2653         gtk_widget_real_draw()  
2654         
2655         * gtk/gtkbin.c (gtk_bin_draw): remove
2656
2657         * gtk/gtkbox.c (gtk_box_draw): remove
2658
2659         * gtk/gtkbutton.c (gtk_button_draw): remove
2660
2661         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
2662
2663         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
2664
2665         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
2666
2667         * gtk/gtkclist.c (gtk_clist_draw): remove
2668
2669         * gtk/gtkentry.c (gtk_entry_draw): remove
2670
2671         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
2672
2673         * gtk/gtkfixed.c (gtk_fixed_draw): remove
2674
2675         * gtk/gtkframe.c (gtk_frame_draw): remove
2676
2677         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
2678
2679         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
2680
2681         * gtk/gtklayout.c (gtk_layout_draw): remove
2682
2683         * gtk/gtklist.c (gtk_list_draw): remove
2684
2685         * gtk/gtklistitem.c (gtk_list_item_draw): remove
2686
2687         * gtk/gtkmenu.c (gtk_menu_draw): remove
2688
2689         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
2690
2691         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
2692
2693         * gtk/gtknotebook.c (gtk_notebook_draw): remove
2694
2695         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
2696
2697         * gtk/gtkpacker.c (gtk_packer_draw): remove
2698
2699         * gtk/gtkrange.c (gtk_range_draw): remove
2700
2701         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
2702
2703         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
2704
2705         * gtk/gtktable.c (gtk_table_draw): remove
2706
2707         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
2708
2709         * gtk/gtktext.c (gtk_text_draw): remove
2710
2711         * gtk/gtktextview.c (gtk_text_view_draw): remove
2712
2713         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
2714
2715         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
2716
2717         * gtk/gtktree.c (gtk_tree_draw): remove
2718
2719         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
2720
2721         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
2722
2723         * gtk/gtkviewport.c (gtk_viewport_draw): remove
2724
2725         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
2726
2727         * gtk/gtkvscale.c (gtk_vscale_draw): remove
2728
2729         * gtk/gtkwindow.c (gtk_window_draw): remove
2730
2731 2000-20-01  Anders Carlsson  <andersca@gnu.org>
2732
2733         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
2734         a GtkToggleButton is both insensitive and active, it was being
2735         drawn by the GtkButton draw handler which doesn't check the
2736         state. Now it's calling gtk_toggle_button_paint instead.
2737         
2738 2000-12-01  Havoc Pennington  <hp@redhat.com>
2739
2740         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
2741         dangling pointers to the appearance attributes from the 
2742         line display
2743
2744         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
2745         width/height to mean "full width/height of drawable"
2746
2747         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
2748         click to select word/line
2749         
2750         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
2751         when getting log attrs. Get a slice, so that pixmaps and stuff
2752         are properly handled.
2753
2754         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
2755         paste into the selection (replaces selection now, previously
2756         crashed or added to selection). Reveals longstanding btree bug -
2757         select multiple lines, middle-click on the selection, boom. This
2758         isn't related to my changes though.
2759
2760         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
2761         PangoLogAttrs changes
2762         (gtk_entry_move_backward_word): ditto
2763
2764         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
2765         functions return bool whether the iter moved onto a
2766         dereferenceable position.
2767  
2768         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
2769         functions for motion in terms of display lines.
2770
2771         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
2772         get the buffer a mark is inside
2773         
2774 2000-12-01  Alexander Larsson  <alexl@redhat.com>
2775
2776         * gdk/linux-fb/Makefile.am:
2777         * modules/linux-fb/Makefile.am:
2778         Freetype 2 final uses freetype-config
2779
2780         * gdk/linux-fb/gdkpango-fb.c:
2781         Upgrade to use Freetype 2 final.
2782         More flexible support for font aliases, this also fixes a bug with
2783         GtkFontSelector, as the aliases must be visible in the font/family list,
2784         or GtkFontSelector reads uninitialized memory.
2785
2786 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
2787
2788         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
2789         XGetIMValues to properly terminate variable argument list, and do
2790         NULL return check for ic_values and xim_styles.
2791
2792         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
2793         Restore preedit state after XmbResetIC().
2794         
2795         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
2796         XvaCreateNestedList() should take XvaNestedList, but not
2797         XvaNestedList*.
2798
2799         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
2800         preedit_draw_callback, preedit_caret_callback): Match
2801         "preedit-changed" signal name to "preedit_changed" to be
2802         consistent to the spec.
2803
2804         * gtk/gtkimcontextsimple.c (check_table):
2805         Match "preedit-changed" to "preedit_changed" to be consistent
2806         to the spec.
2807
2808 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
2809
2810         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
2811         gc->clip_region == NULL>
2812
2813 2000-11-30  Tor Lillqvist  <tml@iki.fi>
2814
2815         Changes by Hans Breuer:
2816         
2817         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
2818         Dont't use negative width and height as max_hints. This fixes
2819         Owen's recent testgtk changes for win32.
2820
2821         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
2822         gdk_win32_hdc_release): These are exported and may be called with
2823         other drawable types than our GdkDrawableImplWin32 (?).
2824
2825         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
2826         so always #define USE_BACKING_STORE.
2827
2828         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
2829         of printf for debugging output.
2830
2831         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
2832         
2833         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
2834
2835         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
2836         declaration.
2837
2838         * gtk/gtktexttypes.h: Ditto.
2839
2840         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
2841         (GDK_VoidSymbol) also if in case of arg check failure.
2842
2843         * gtk/gtkimcontextsimple.c
2844         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
2845         position to the pointer, but to the variable it points to.
2846
2847         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
2848
2849         * gtk/gtk.def: Updates.
2850
2851 2000-11-29  Elliot Lee  <sopwith@redhat.com>
2852
2853         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
2854         GTK_TYPE_TREE_MODEL.
2855
2856 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2857
2858         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
2859         Set the size of the font from the description.
2860         (gdk_text_width): Gross hack that calculates the width
2861         of text by text_length * size/2. This is necessary because
2862         GtkLabel does some ugly gtk_string_width call to calculate
2863         an good size.
2864         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
2865
2866 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
2867
2868         * docs/tutorial/gtk-tut.sgml: DND updates
2869
2870 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2871
2872         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2873         If you pass width or height == 0 to gdk_window_clear_area they
2874         should be calculated from the window size.
2875
2876 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2877
2878         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
2879         a grab, but no grab-cursor, use the cursor from the grabbed
2880         window. (gdk_fb_window_send_crossing_events): Send normal
2881         enter/leave notifications if grab and owner_events == TRUE.
2882
2883 2000-11-29  Alexander Larsson  <alexl@redhat.com>
2884
2885         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2886         Do implicit button grabs, even if the window doesn't
2887         want the event.
2888         (gdk_fb_window_send_crossing_events): If there is a
2889         grab, only the grabbed window gets normal enter/leave
2890         notifications. On ungrab go from grabbed window to current.
2891         Don't send any notification to b when propagating from c -> b.
2892         If setting a grab on window, don't set prev_window.
2893         (handle_mouse_input): Send enter/leave events to the window the
2894         mouse is over, not the grabbed one.
2895         
2896 2000-11-28  Elliot Lee  <sopwith@redhat.com>
2897
2898         * gdk/gdkregion-generic.c: Zap warning.
2899         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
2900         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
2901
2902 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
2903
2904         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
2905         The cursor should be hidden if it is part of either the
2906         source or destination region. Not only if it is in both.
2907         (gdk_window_set_transient_for): Silence warnings.
2908
2909 2000-11-28  Alexander Larsson  <alexl@redhat.com>
2910
2911         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
2912         The default mode in X is Pie Arcs, therefore that is
2913         what Gtk+ uses.
2914
2915 2000-11-28  Alexander Larsson  <alexl@redhat.com>
2916
2917         * gdk/linux-fb/gdkinput-ps2.c:
2918         Implement correct EnterNotify/LeaveNotify:
2919         (gdk_fb_window_send_crossing_events): New function that sends
2920         all GdkCrossingEvents from the last mouse-window to the specified
2921         destination.
2922         (gdk_fb_window_visibility_crossing): Removed function.
2923         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
2924         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
2925         instead of gdk_window_get_pointer() for better readability.
2926
2927         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
2928         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
2929
2930         * gdk/linux-fb/gdkprivate-fb.h:
2931         removed gdk_fb_window_visibility_crossing, added
2932         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
2933
2934         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
2935         New function that finds the least common ancestor of two windows.
2936         (gdk_window_show, gdk_window_hide):
2937         Use gdk_fb_window_send_crossing_events.
2938         (gdk_fb_window_move_resize): Send configure events to toplevel
2939         windows. Use gdk_fb_window_send_crossing_events.
2940
2941 2000-11-27  Havoc Pennington  <hp@redhat.com>
2942
2943         * gtk/gtkprivate.h (enum): Remove a trailing comma
2944
2945 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
2946
2947         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
2948         the "changed" callback of the adjustment.  We need to redraw the
2949         spin button's arrows when the adjustment's range changes.
2950         (adjustment_changed_cb): Draw the arrows.
2951         (gtk_spin_button_value_changed): Draw the arrows.
2952
2953 2000-11-23  Alexander Larsson  <alexl@redhat.com>
2954
2955         * gdk/linux-fb/gdkselection-fb.c:
2956         Initial selection implementation.
2957
2958         * gtk/gtkselection.c:
2959         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
2960         requestor in gtk_selection_request.
2961         
2962         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
2963         Added gdk_selection_property atom.
2964
2965         * gdk/linux-fb/gdkprivate-fb.h:
2966         Export _gdk_selection_window_destroyed.
2967         Removed mask_off_x/y from GdkCursorPrivateFB.
2968         Removed hbearing, added top, left to PangoFBGlyphInfo.
2969
2970         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
2971         Call _gdk_selection_window_destroyed
2972         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
2973         the root window has been created.
2974         (static_dx_hack, static_dy_hack, compare_draw_rects,
2975         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
2976         in region. They are already sorted. Instead just traverse them in
2977         reverse if draw_direction < 0.
2978         
2979         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
2980         Double-clicks must be sent after the normal button_press.
2981         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
2982         
2983         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
2984         Pass _gdk_fb_screen_gc instead of NULL.
2985
2986         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2987         Initialize gdk_selection_property.
2988         (gdk_event_make): Remove unused code.
2989
2990         * gdk/linux-fb/gdkcursor-fb.c:
2991         Make the pixmap for the cursor the same size as the mask. Also remove
2992         the mask_off_x/y fields in GdkCursorPrivateFB and combine
2993         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
2994         Now the whole cursor is visible.
2995
2996         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
2997         Fix bug where xdest+height instead of ydest+height was used
2998         to calculate if the source and dest overlapped. This fixes the
2999         redraw bug when the main window in testgtk was scrolled when
3000         partially covered by a tall window.
3001         Copy rectangles in region in order depending on draw_direction.
3002         Also moved the draw_direction flipping of start_y and end_y into
3003         the gc functions, as this might not be what all of them want.
3004         (gdk_fb_draw_lines): Support dashed lines.
3005         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
3006         so that the text is positioned correctly (was 1 pixel high).
3007
3008         gdk/linux-fb/gdkgc-fb.c:
3009         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
3010         all lines were drawn a pixel to short. Also checked the default of
3011         the rest of the values, and they're the same as X now.
3012
3013         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
3014         Clean up pixel positioning of the glyphs. Just use bgy->top and
3015         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
3016         to all divisions to get correct rounding behaviour.
3017
3018         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
3019         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
3020         Moved start_y/end_y flip into draw_drawable implementations.
3021         Flip also x rendering when draw_direction < 0.
3022         Remove unneccesary multiply with draw_direction.
3023
3024 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
3025
3026         * docs/tutorial/gtk-tut.sgml:
3027           - get rid of gtk_toggle_button_toggled FUD
3028           - start DND section - needs work - based on:
3029                 http://wolfpack.twu.net/docs/gtkdnd/
3030
3031 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3032
3033         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
3034         Correct calculation of font metrics. Now GtkEntrys have sane
3035         size.
3036
3037 2000-11-22  Alexander Larsson  <alexl@redhat.com>
3038
3039         * gdk/gdktypes.h:
3040         Add new type GdkSpan
3041         
3042         * docs/reference/gdk/gdk-sections.txt,
3043         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
3044         gdk/gdkregion.h:
3045         Implement and document gdk_region_spans_intersect_foreach.
3046
3047         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
3048         Add new file gdkrender-fb.c which contains all core
3049         rendering code.
3050         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
3051         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
3052         (optimized rectangle fillers).
3053
3054         * gdk/linux-fb/gdkdrawable-fb2.c:
3055         Move all rendering code to gdkrender-fb.c.
3056         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
3057         Use the new span intersection functions in gdk_fb_fill_spans.
3058         gdk_fb_draw_rectangle() clips filled rectangles and calls
3059         gc->fill_rectangle with the result.
3060         gdk_fb_fill_spans() gets extra argument "sorted".
3061
3062         * gdk/linux-fb/gdkevents-fb.c:
3063         Remove unused includes and defines.
3064         New function gdk_fb_get_time() to get correct time for events.
3065
3066         * gdk/linux-fb/gdkinput-ps2.c:
3067         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
3068         Make sure to set the time of all events.
3069
3070         * gdk/linux-fb/gdkmain-fb.c:
3071         Use gdk_fb_get_time ().
3072
3073         * gdk/linux-fb/gdkprivate-fb.h:
3074         New virtual GC calls: fill_span & fill_rectangle.
3075         Export gdk_fb_get_time().
3076         gdk_fb_fill_spans() gets extra argument "sorted".
3077
3078         * gdk/linux-fb/mi*.c:
3079         Use GdkSpan instead of GdkRectangle.
3080         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
3081         from XFree 4 source)
3082         
3083 2000-11-22    <jrb@redhat.com>
3084
3085         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
3086         reversing the order in an if statement will do.  Doing so managed
3087         to make the treemodelsort half work.  Other half will follow after
3088         I get the insert function fully fixed.
3089
3090 2000-11-21  Elliot Lee  <sopwith@redhat.com>
3091         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
3092         more than 2 bits. Besides, I need to implement an evil hack. :)
3093
3094 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
3095
3096         * docs/tutorial/gtk-tut.sgml: minor corrections
3097
3098 2000-11-20  Jonathan Blandford <jrb@redhat.com>
3099         * gtk/gtktreemodelsort.h: Add convertion functions to let you
3100           convert to and from relative path's and iters.
3101
3102         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
3103           testing sorting functions a bit better.  Currently broken -- will
3104           fix in morning.
3105
3106 2000-11-20  Havoc Pennington  <hp@redhat.com>
3107
3108         * gtk/gtkwidget.c: Documented a bunch of functions in here
3109         (gtk_widget_realize): Warn if you try to realize
3110         a widget with no parent that isn't a toplevel
3111         (gtk_widget_intersect): return a gboolean
3112
3113 2000-11-20  Havoc Pennington  <hp@redhat.com>
3114
3115         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
3116         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
3117         scrolling to be implemented in GDK to finish. Also, right now
3118         we just size_allocate all children on every layout change,
3119         which is pretty lame. Test commented out of testtext.c, 
3120         until it works better.
3121
3122 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
3123
3124         * gdk/linux-fb/gdkdrawable-fb2.c:
3125         Removed unused arguments from gdk_fb_drawable_get_pixel().
3126
3127         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
3128         Renamed fidur specific mouse packet data in MouseDevice to
3129         generic. Used it in ps2 mouse handling code to avoid blocking
3130         reads.
3131
3132 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
3133
3134         * demos/gtk-demo/main.c: Changed to have the list become
3135         non-italic when the demo window is destroyed through an external
3136         event (like a close button).  Doing so found three bugs in the
3137         widget.
3138
3139         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
3140
3141         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
3142         we actually set the cell.
3143
3144         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
3145
3146         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
3147         free a leaked path.  Thanks memprof.
3148
3149 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
3150
3151         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
3152         off-by-one error when destroying allocated segments
3153         on failure. (Elliot)
3154
3155 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
3156
3157         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
3158         memleaks found by Evan Martin.
3159
3160 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
3161
3162         * Released 1.3.2
3163         
3164         * NEWS: Updates for 1.3.2
3165
3166 2000-11-17  Tor Lillqvist  <tml@iki.fi>
3167
3168         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
3169         but in general for window system specific events.
3170
3171         * gtk/gtk.def
3172         * gtk/makefile.mingw.in
3173         * gtk/makefile.msc.in: Update.
3174         
3175         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
3176
3177 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
3178
3179         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
3180         distribute gtk.immodules.
3181
3182         * gtk/Makefile.am (install-data-local): Don't install the
3183         gtk.immodules file created for the uninstalled modules;
3184         instead run gtk-query-immodules after install
3185
3186 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
3187
3188         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
3189         -rpath to the right install location.
3190
3191         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
3192         -export-dynamic.
3193
3194         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
3195         properly.
3196
3197 2000-11-15  Havoc Pennington  <hp@pobox.com>
3198
3199         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
3200         patch from Mikael Hermansson to temporarily stop blinking while
3201         the user is using the keyboard to type or navigate. 
3202
3203         Also, when blinking, stay on for longer than we stay off. Also,
3204         return from start_cursor_blink if !cursor_visible, to save
3205         checking that flag all over the place before we call
3206         start_cursor_blink.
3207
3208 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
3209
3210         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
3211         only contain a "fontset" line, which is now ignored.
3212
3213         * gtk/gtkentry.c (gtk_entry_button_release): Make 
3214         double-click-to-select-word work.
3215         
3216 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
3217
3218         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
3219         Don't move back one char when we are actually at the end of the 
3220         paragraph.
3221
3222 2000-11-15  Robert Brady  <robert@suse.co.uk>
3223
3224         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
3225         'o' < 'p'.
3226         
3227         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
3228         bind_textdomain_codeset.
3229
3230         (gtk_init_check): Make the warning about translating default:LTR
3231         sterner.
3232         
3233 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
3234
3235         * **/Makefile.am : remove unecessary rules for win32-specific
3236         config-substituted targets. If you want these rules, use
3237         --enable-maintainer-mode (called automatically by autogen.sh).
3238         Stops a lot of unneccessary make-time warnings.
3239
3240         * gtk/gtktext{layout,display}.c: Factor in total width as
3241         well as screen when figuring alignment for word-wrap as well as
3242         no wrap; this is necessary to handle lines that cannot be wrapped
3243         at all.
3244
3245 2000-11-15  Havoc Pennington  <hp@redhat.com>
3246
3247         * gtk/testtext.c: Implement essential color cycling feature
3248
3249 2000-11-15  Havoc Pennington  <hp@redhat.com>
3250
3251         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
3252         when we invalidate the main window.
3253
3254         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
3255         GtkTextView will now invalidate the side windows for us when text
3256         changes.
3257
3258 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
3259
3260         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
3261         unconditionally, since we may need to update the horizontal
3262         scrollbars even if the height didn't change.
3263
3264         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
3265         the extra attrs, since some of them affect size.
3266
3267         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
3268         x_offset correctly.
3269
3270 2000-11-15  Havoc Pennington  <hp@redhat.com>
3271
3272         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
3273         don't move the first line out into the margin, instead move the
3274         whole paragraph in order to make space for the first line within 
3275         the margin
3276
3277 2000-11-15  Havoc Pennington  <hp@redhat.com>
3278
3279         * gtk/gtktextview.c (changed_handler): offset redraw rect by
3280         xoffset in addition to yoffset, so horizontal scrolling doesn't
3281         break redraws
3282
3283 2000-11-15  Havoc Pennington  <hp@redhat.com>
3284
3285         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
3286         from the cursor
3287         (render_layout_line): fix reversed test that caused weird
3288         underlines to get drawn
3289
3290 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
3291
3292         * gdk/linux-fb/gdkprivate-fb.h:
3293         Fix debug macros.
3294         
3295 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
3296
3297         * gdk/linux-fb/gdkprivate-fb.h:
3298         Added virtual functions set_pixel, get_color,
3299         fill_span and draw_drawable to the GC.
3300         Added global _gdk_fb_screen_gc to use instead of
3301         NULL when drawing to the screen.
3302         Added _gdk_fb_gc_calc_state() prototype.
3303
3304         * gdk/linux-fb/gdkgc-fb.c:
3305         Call _gdk_fb_gc_calc_state() on any gc state change.
3306
3307         * gdk/linux-fb/gdkglobals-fb.c:
3308         Add _gdk_fb_screen_gc
3309                 
3310         * gdk/linux-fb/gdkdrawable-fb2.c:
3311         _gdk_fb_gc_calc_state() calculates best functions
3312         for the GC state and depth.
3313         Moved bpp specialized code to separate functions.
3314         Added optimized 24 bpp AA draw_drawable.
3315
3316         * gdk/linux-fb/gdkevents-fb.c:
3317         Silence gcc warning.
3318
3319         * gdk/linux-fb/gdkimage-fb.c:
3320         Use _gdk_fb_screen_gc
3321
3322         * gdk/linux-fb/gdkwindow-fb.c:
3323         Init and use _gdk_fb_screen_gc
3324
3325         * gdk/linux-fb/mitypes.h:
3326         Remove unused types.
3327
3328 2000-11-14  Havoc Pennington  <hp@pobox.com>
3329
3330         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
3331         to pixels
3332
3333 2000-11-14  Havoc Pennington  <hp@pobox.com>
3334
3335         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
3336
3337         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
3338         unknown char, no real reason we were using a variable. 
3339         Remove gtk_text_unknown_char variable. Fix all the text widget
3340         files accordingly.
3341
3342         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
3343         since the Unicode spec seems to prefer that character for our
3344         purposes.
3345
3346 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
3347
3348         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
3349         value of g_getenv() isn't freeable, so g_strdup it.
3350
3351         * modules/input/inuktitut.c: Inuktitut input method.
3352
3353         * modules/input/Makefile.am: Build this.
3354         
3355 2000-11-14  Elliot Lee  <sopwith@redhat.com>
3356
3357         * gtk/Makefile.am: Install gtk.immodules, needed for operation
3358         of gtk programs.
3359
3360 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
3361
3362         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
3363         reversed > that was causing Home to go to end of previous line.
3364
3365         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
3366         modified-keypresses (leave for bindings.)
3367
3368         * modules/input/Makefile.am: Remove useless -export-dynamic
3369         from module LDFLAGS.
3370
3371 2000-11-14  Havoc Pennington  <hp@redhat.com>
3372
3373         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
3374         higher.
3375
3376         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
3377         account. Also, render rise, underline, background, etc. for
3378         pixbufs as well as text. Also, draw underlines one pixel higher.
3379
3380         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
3381         PangoAttribute for the rise, so it gets drawn properly. Also,
3382         add the GtkTextAppearance attribute for pixbuf/widget segments
3383         as well; we should go ahead and have rise, underline, background,
3384         stipple work for those
3385
3386         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
3387         Pango
3388
3389 2000-11-15  Tor Lillqvist  <tml@iki.fi>
3390
3391         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
3392
3393         * gtk/gtk.def: Update.
3394
3395         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
3396         included.
3397         (gtk_rc_get_im_module_file): Use run-time installation directory
3398         on Win32.
3399
3400         * gdk/win32/rc/gdk.rc: Remove.
3401         * gdk/win32/rc/gdk.rc.in: New file.
3402         * gdk/win32/rc/Makefile.am: New file
3403         * gdk/win32/Makefile.am: Corresponding changes.
3404
3405         * gtk/gtk.rc: Remove.
3406         * gtk/gtk-win32.rc.in: New file.
3407         * gtk/Makefile.am: Corresponding changes.
3408
3409         * configure.in: Corresponding changes.
3410
3411         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
3412         has a built gtkcompat.h. Developers using CVS code on Win32 can
3413         hand-edit it from gtkcompat.h.in.
3414
3415         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
3416         gtkcompat.h from gtkcompat.h.win32.
3417
3418 2000-11-14  Havoc Pennington  <hp@redhat.com>
3419
3420         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
3421         to default to GDK_ACTION_MOVE if the drag is within a single
3422         widget. Defaults to GDK_ACTION_COPY between widgets.
3423
3424 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
3425
3426         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
3427
3428         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
3429
3430         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
3431         srcdir != builddir
3432
3433         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
3434
3435         * configure.in (GTK_VERSION): Up to 1.3.2
3436
3437         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
3438         gtkimcontextxim.h
3439
3440         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
3441         missing doc comment.
3442
3443 2000-11-14  Alexander Larsson  <alexl@redhat.com>
3444
3445         * modules/linux-fb/basic.c:
3446         Use the glib iconv wrappers.
3447
3448 2000-11-13  Havoc Pennington  <hp@pobox.com>
3449
3450         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
3451         still more bugs.
3452
3453         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
3454         scroll the GdkWindows before realization.
3455
3456 2000-11-13  Havoc Pennington  <hp@redhat.com>
3457
3458         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
3459         where GC didn't always get updated properly
3460
3461         * demos/gtk-demo/textview.c (create_tags): Use subattributes
3462         of fonts instead of setting the entire font
3463
3464         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
3465         setting entire font
3466
3467         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
3468
3469         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
3470         a bunch of individually-settable font attributes. You can still 
3471         use the "font" and "font_desc" args, they just set all the font
3472         attributes at once.
3473
3474 2000-11-13 Elliot Lee <sopwith@redhat.com>
3475
3476         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
3477
3478 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
3479
3480         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
3481         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
3482
3483         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
3484         work better.
3485
3486 2000-11-13  Havoc Pennington  <hp@redhat.com>
3487
3488         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
3489         the module file.
3490
3491         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
3492         dest->language
3493
3494         * gtk/testtext.c: Test pixels above/below/inside paragraphs
3495         settings
3496
3497         * gtk/gtktextview.c: Implement object args and setters/getters for
3498         all the aspects of the GtkTextAttributes that are not set from
3499         GtkWidget attributes. This is spacing, justification, margins,
3500         etc.
3501
3502         (gtk_text_view_set_arg)
3503         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
3504         args
3505         (gtk_text_view_class_init): Add args for justify, left_margin,
3506         right_margin, indent, and tabs
3507         
3508
3509         * gtk/gtktextlayout.c (set_para_values): fix to display indent
3510         attribute properly
3511
3512         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
3513         replace with indent attribute
3514
3515         * gtk/gtktextlayout.c (set_para_values): multiply indent by
3516         PANGO_SCALE
3517
3518         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
3519         rearranging code to do that
3520         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
3521         i.e. don't subtract the top_margin first, just to keep
3522         all margin-futzing in one place.
3523
3524         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
3525
3526         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
3527         special case of last line, Pango now handles this itself.
3528         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
3529         Y coordinate
3530         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
3531         (find_display_line_above): wasn't moving the byte index as it
3532         iterated over lines, so always returned byte 0. Also, port to use
3533         PangoLayoutIter.
3534         (find_display_line_below): same problem as
3535         find_display_line_above. Also, port to use PangoLayoutIter.
3536
3537 2000-11-13  Alexander Larsson  <alexl@redhat.com>
3538
3539         * gdk/linux-fb/*.[ch]:
3540         Massive reindent to gtk+ standard. My hands hurt.
3541
3542         * gdk/linux-fb/gdkcolor-fb.c:
3543         Move GdkColorPrivateFB from inherited to windowing_data
3544
3545         * gdk/linux-fb/gdkcursor-fb.c:
3546         _gdk_cursor_new_from_pixmap made static
3547
3548         * gdk/linux-fb/gdkdnd-fb.c:
3549         GdkDragContextPrivate moved to windowing_data
3550
3551         * gdk/linux-fb/gdkdrawable-fb2.c:
3552         Removed endian.h, use glib endianness macros instead
3553         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
3554         and GDK_DRAWABLE_IMPL_FBDATA
3555
3556         * gdk/linux-fb/gdkfont-fb.c:
3557         Add empty gdk_font_load(). Needed for linking of Gtk+.
3558
3559         * gdk/linux-fb/gdkimage-fb.c:
3560         Removed endian.h, use glib endianness macros instead
3561         Moved GdkImagePrivateFB to windowing_data
3562         gdk_image_new_bitmap didn't always allocate enough
3563         memory.
3564
3565         * gdk/linux-fb/gdkinput-ps2.c:
3566         Added semi-working support for MS serial mice.
3567
3568         * gdk/linux-fb/gdkprivate-fb.h:
3569         s/GdkWindowPrivate/GdkWindowObject/
3570         Removed GdkWindowPrivate typedef
3571         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
3572         Removed GDK_DRAWABLE_P
3573         Move GdkColorPrivateFB from inherited to windowing_data
3574         Moved GdkImagePrivateFB to windowing_data
3575
3576         * gdk/linux-fb/gdkvisual-fb.c:
3577         Removed some unused debug code.
3578
3579         * gdk/linux-fb/gdkwindow-fb.c:
3580         Use stock cursors instead of including X headers.
3581         s/GdkWindowPrivate/GdkWindowObject/
3582
3583         * gdk/linux-fb/mitypes.h:
3584         Removed unused types.
3585
3586         * modules/linux-fb/basic.c:
3587         Use the pango fribidi wrappers.
3588
3589 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
3590
3591         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
3592         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
3593         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
3594         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
3595         GEqualFunc where applicable.
3596         
3597         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
3598         pango_font_description_equal as changed in pango.
3599         
3600         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
3601
3602         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
3603
3604         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
3605
3606         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
3607
3608         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
3609
3610         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
3611
3612         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
3613         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
3614
3615         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
3616         gtk_rc_styles_compare -> gtk_rc_styles_equal.
3617
3618 2000-11-12  Havoc Pennington  <hp@pobox.com>
3619
3620         * demos/gtk-demo/Makefile.am (democodedir): change demo install
3621         dir to datadir/gtk+-2.0/demo
3622
3623         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
3624         sorts of text widget and Pango font bugs. Urgh.
3625
3626         * demos/gtk-demo/Makefile.am (demos): Add textview.c
3627
3628         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
3629         tree that you should double click to see the demo. Fix 
3630         types of variables to reflect changed return values from 
3631         GtkTreeStore and GtkTreeViewColumn constructors.
3632
3633         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
3634         newly-created buffer to prepare for GObject semantics
3635
3636         * gtk/testtext.c: don't leak the buffer with GObject semantics
3637
3638         * gtk/testtextbuffer.c: ditto
3639         
3640 2000-11-12  Havoc Pennington  <hp@pobox.com>
3641
3642         Rename this testgtk to gtk-demo to avoid confusion, and 
3643         install it so people can use it as a supplement to 
3644         the documentation.
3645         
3646         * demos/gtk-demo: Moved from demos/testgtk
3647
3648         * demos/testgtk: Removed
3649
3650         * configure.in: make Makefile in gtk-demo
3651         
3652         * demos/gtk-demo/Makefile.am: Install sample source to 
3653         datadir/gtk-demo (maybe there's a better place?), and 
3654         rename the binary to gtk-demo
3655         
3656         * demos/gtk-demo/main.c (load_file): Load installed sample
3657         source if source isn't found in pwd.
3658
3659 2000-11-09  Havoc Pennington  <hp@pobox.com>
3660
3661         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
3662         argument to set the char displayed when visibility == FALSE
3663         (gtk_entry_create_layout): If !entry->visible, replace 
3664         all chars with the "invisible char"
3665
3666         * gtk/testgtk.c: Test the invisible_char deal
3667         
3668 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
3669
3670         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
3671         can't get a native font in the right encoding.
3672
3673 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
3674
3675         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
3676         respectively.
3677
3678 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
3679
3680         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3681         Fix warning when moving between paragraphs.
3682
3683         * gtk/gtkentry.[ch]: Change move => move_cursor, 
3684         delete => delete_from_cursor, insert => insert_at_cursor
3685
3686 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
3687
3688         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
3689
3690         * modules/input/imthai-broken.c: A Thai input method for use if
3691         Thai keys are really generating Latin1 keysyms.
3692
3693         * modules/input/Makefile.am: Build these.
3694
3695 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
3696
3697         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
3698         g_filename_{to,from}_utf8 now takes an extra parameter.
3699
3700         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
3701         strftime into UTF-8.
3702
3703         (column_from_x, gtk_calendar_paint_day_names): Support RTL
3704         calendars.
3705
3706         (gtk_calendar_paint_day_names): Draw day names in the right 
3707         place.
3708         
3709 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
3710
3711         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
3712         problem with using result of g_get_charset() backwards -
3713         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
3714
3715         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
3716         negative min_width/height and max_width/height to
3717         mean "requisition"; this allows setting a window
3718         to be user-resizable in only one direction easily.
3719
3720         * gtk/testgtk.c (create_main_window): Remove hard-coded
3721         usize - set a default size in the vertical direction.
3722
3723 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
3724
3725         * gtk/gtkrange.c: Add some missing casts. Support 
3726         2 and 3 button clicks on the arrows to mean 
3727         "move by pages" and "jump to end". (Like gtkspinbutton)
3728
3729 2000-11-12 Hans Breuer <Hans@Breuer.Org>
3730
3731         * gdk/win32/makefile.msc : reflect build module changes
3732
3733         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
3734         from GdkPixmap*, cast implementation member instead.
3735
3736         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
3737         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
3738         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
3739         more Gdi functions return value checking. 
3740         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
3741         GdkImagePrivateWin32 *.
3742
3743         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
3744         menus useable again. Add #pragma message to keep reminded on this issue.
3745         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
3746         windows. This allows to enable backing store on Win32!
3747
3748         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
3749         in drawable is of impl type. Correct specific type checks appropriate.
3750  
3751         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
3752         GDK_WINDOW_DESTROYED before allocating new resources.
3753
3754         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
3755
3756         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
3757         (gdk_window_foreign_new) initialize parent handle.
3758         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
3759
3760         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
3761         Let the GDI invalidate the window on MoveWindow call to fix scrolling
3762         problems (e.g. main buttons in testgtk). 
3763
3764 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
3765
3766         * gtk/gtkentry.c (gtk_entry_key_press): Call 
3767         gtk_widget_activate for GDK_Return.
3768
3769         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
3770         of preedit cursor position.
3771
3772 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
3773
3774         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
3775         static.
3776
3777 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
3778
3779         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
3780         out support for multiple locales; that simple doesn't
3781         work reliably with current Xlib
3782
3783         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
3784         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
3785         Add support for positioning the cursor within the preedit string.
3786
3787 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
3788
3789         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
3790         at XIM input method module.
3791
3792         * gtk/gtktextview.c: Check for bindings after passing
3793         events to im context filter.
3794
3795 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
3796
3797         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
3798         empty attribute lists properly.
3799
3800 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
3801
3802         * gtk/queryimmodules.c (main): Return non-zero exit
3803         status if errors were encountered querying any
3804         modules.
3805
3806         * modules/input/Makefile.am (moduledir): remove
3807         leftover bin program target.
3808
3809         * docs/make-todo: Fix typo in error message.
3810
3811 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
3812
3813         * configure.in: Add modules/input/Makefile
3814
3815 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
3818         don't include gtkthemes.h.
3819
3820         * gtk/testgtk.c gtk/testtext.c: Set environment variables
3821         to point
3822
3823         * gtk/Makefile.am: Add new .c and .h files, build 
3824         gtk-query-immodules and use it to create a gtk.immodules
3825         file for use of test programs.
3826
3827         * gtk/gtkpreview.c: remove extra blank line.
3828
3829 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
3830
3831         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
3832         Add the ability to add extra tables beyond the default
3833         one, and also the ability to have compose sequences 
3834         that are prefixes of other compose sequences. 
3835
3836         * gtk/gtkimcontextsimple.c: Export a preedit string which
3837         consists of possible candidates for keystrokes that have
3838         been entered but not yet committed.
3839
3840         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
3841         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
3842
3843         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
3844         Add a function to add input-method switching menu items
3845         to a menu.
3846
3847         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
3848         when switching input methods.
3849
3850         * gtk/gtkimcontextsimple.[ch]: Change the format of
3851         the compose table to allow compose tables of different
3852         lengths / sequence.
3853
3854 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
3855
3856         * gtk/gtkimmodule.[ch]: Support routines for loading
3857         GtkIMContext implementations dynamically at runtime.
3858
3859         * modules/input/imcyrillic-translit.c: A sample input
3860         method (based on GtkIMContextSimple with an extra table),
3861         which demonstrates preedit strings and the module
3862         system for input modules
3863
3864         * gtk/queryimmodules.c: Program to query the available
3865         input modules and write the results into a file.
3866          
3867         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
3868         extra config options "im_module_file" (cache file for
3869         input method modules), and "im_module_path" - path
3870         to look for modules when generating cache file.
3871
3872         This doesn't scale.
3873
3874 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
3875
3876         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
3877         generic code from gtkthemes into a new abstraction
3878         GtkModule which has the logic for implementing
3879         a loadable module which implements a number of 
3880         GObject types.
3881
3882 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
3883
3884         * gtk/gtkeditable.[ch]: Convert GtkEditable from
3885         a class into an interface  
3886         
3887         * gtk/gtkoldeditable.[ch]: Move the old editable
3888         implementation into here, so legacy widgets can
3889         still rely on the implemenation. GtkOldEditable
3890         exports GtkEditable. Make selection handling
3891         code use new text conversion functions (and
3892         handle UTF-8 as a side-effect). Use GtkClipboard
3893         for CLIPBOARD.
3894
3895         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
3896         Adopt to match above changes.
3897
3898         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
3899         avoid GtkOldEditable implementation. Restructure
3900         to reduce number of places that modify state directly.
3901         Move to GtkBindingSet. Display the preedit string.
3902         Queue recomputation of PangoLayout and scroll position
3903         to improve effiency of doing complex changes naively.
3904         Add a menu with cut/copy/paste and input method selection.
3905
3906 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
3907
3908         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
3909         to set preedit string and attributes; display preedit string by
3910         inserting string and attributes at cursor when creating the
3911         GtkTextLineDisplay.
3912
3913         * gtk/gtktextlayout.c: Move all conversions between byte
3914         positions in PangoLayout and GtkTextIter into new functions
3915         line_display_iter_to_index/index_to_iter that properly
3916         handle the preedit string.
3917
3918         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
3919         it to return const char * (eventually will end up
3920         as GCONST char *, most likely.)
3921
3922         * gtk/gtktextview.[ch]: Handle the preedit string, call
3923         gtk_im_context_reset() as necessary, add a menu to switch
3924         input methods.
3925         
3926         * gtk/gtktextlayout.[ch]: Remove useless
3927         gtk_text_layout_get_log_attrs() function.
3928
3929 2000-11-11  Tor Lillqvist  <tml@iki.fi>
3930
3931         * gdk/gdk.def
3932         * gtk/gtk.def: Update.
3933
3934         * gdk/win32/*.c: Add last argument to g_type_register_static()
3935         calls.
3936
3937         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
3938
3939         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
3940         generated by older wheel mouse drivers. Get the correct y
3941         coordinate from WM_MOUSEWHEEL messages.
3942
3943         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
3944         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
3945         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
3946         Debugging functions.
3947
3948         * gdk/win32/gdkprivate-win32.h: Declare them.
3949
3950         * gdk/win32/gdkinput-win32.h: Add declaration for
3951         gdk_input_window_destroy().
3952
3953         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
3954
3955 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
3956
3957         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
3958         function to help handle keeping things in sync.
3959
3960 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
3961
3962         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
3963         BOXED marshallers.
3964
3965         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
3966         (gtk_list_store_class_init): use the new BOXED marshallers.
3967
3968         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
3969         new_with_values to new_with_types.
3970         (gtk_tree_store_get_column_type): add this.
3971         (gtk_tree_store_class_init): use the new BOXED marshallers.
3972
3973         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
3974         mirror some POINTER marshallers.
3975
3976 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
3977
3978         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
3979         allow more interesting iterators.  Also, made the lifecycle of
3980         iterators more explicit.
3981
3982         * gtk/gtktreemodelsort.[ch]: New model for sorting.
3983
3984         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
3985         types.
3986
3987 2000-11-09  Alexander Larsson  <alexl@redhat.com>
3988
3989         * demos/testgtk/menus.c:
3990         Changes to make the new testgtk compile after
3991         gtk_menu_append was removed.
3992
3993         * gdk/linux-fb/gdkdrawable-fb2.c
3994         (gdk_fb_get_depth, gdk_fb_get_visual,
3995         gdk_drawable_impl_fb_class_init): Implement
3996         these drawable functions. Now GtkImages work again.
3997
3998         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
3999
4000         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
4001         
4002         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
4003         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
4004         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
4005         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
4006
4007 2000-11-08  Havoc Pennington  <hp@pobox.com>
4008
4009         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
4010         visible_set args, don't know where these had gone, I thought they
4011         used to be there
4012
4013         * gtk/testtext.c: Add a menu item to apply invisibility tag;
4014         now we can test the feature and see that it's totally broken.
4015
4016 2000-11-08  Havoc Pennington  <hp@pobox.com>
4017
4018         Make DND copy pixbufs and tags when source and target share a 
4019         tag table.
4020         
4021         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
4022         in-process GTK_TEXT_BUFFER_CONTENTS target
4023         (gtk_text_view_drag_data_received): Paste from
4024         GTK_TEXT_BUFFER_CONTENTS if we receive it.
4025
4026 2000-11-08  Alexander Larsson  <alexl@redhat.com>
4027
4028         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
4029         API changes.
4030
4031         * gtk/gtkmenu.c: Add support for scrolling menus.
4032         Remove gtk_menu_append/prepend/insert, these have been moved to
4033         gtkcompat.h as #defines.
4034
4035         * gtk/gtkcompat.h.in:
4036         Add compatibility #defines for gtk_menu_append/prepend/insert
4037
4038         * gtk/gtkmenu.h: Add data needed for scrolling menus.
4039         GtkMenuPositionFunc gets an extra argument push_in.
4040         gtk_menu_append/prepend/insert removed.
4041         
4042         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
4043         positioning behaviour to fit to scrolling menus.
4044
4045         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
4046         into menuitem->submeny. That is wrong, and broke torn
4047         off submenus of torn off menus, since they were unrealized
4048         when the first menu was unrealized.
4049
4050         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
4051         gtk_menu_shell_select_item() since these need to be overridden in
4052         GtkMenu.
4053
4054         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
4055         positioning behaviour to fit to scrolling menus.
4056         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
4057         the current item so that it is prelighted when the menu pops up.
4058         This is a workaround to the fact that the menu doesn't get the
4059         initial enter event (due to grabs).
4060
4061         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
4062         s/gtk_menu_append/gtk_menu_shell_append/
4063
4064         * gtk/gtknotebook.c:
4065         s/gtk_menu_insert/gtk_menu_shell_insert/
4066
4067         * gtk/testgtk.c (create_menu, create_menus):
4068         Create the first menu with 50 items so that menu scrolling
4069         can be tested.
4070         
4071         
4072         Patch from Jonathan Blandford  <jrb@redhat.com>
4073
4074         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
4075         system to handle size requests.  First, we ask what the size of
4076         the toggle is.  Then, when allocating the size, we allocate the
4077         toggle_size first.  This way we can have multiple menu-item
4078         classes w/o needing a seperate class for each.
4079
4080         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
4081         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
4082
4083         * gtk/gtkcheckmenuitem.c
4084         (gtk_check_menu_item_toggle_size_request): New function to handle
4085         the toggle size-request.
4086
4087 2000-11-07  Havoc Pennington  <hp@redhat.com>
4088
4089         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
4090         Half-ass somewhat fix this function, so that scrolling to the
4091         insertion point works. Pango hacking is in the future to really
4092         fix it.
4093
4094         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
4095         length of data, no longer used.
4096
4097         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
4098         method contents in here, get rid of destroy method
4099         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
4100         that were backward. Remove debug spew.
4101         (cut_or_copy): Make the clipboard work with insert_range to
4102         preserve tags and pixbufs, not just the primary selection.
4103
4104 2000-11-07  Havoc Pennington  <hp@redhat.com>
4105
4106         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
4107         to gtk_text_mark_get_visible
4108
4109         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
4110         bug that was generating an invalid iterator
4111
4112         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
4113         ensure_char_offsets() in front of code placing the iter in an
4114         invalid state.
4115
4116         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
4117         make override_location arg const
4118         (paste): Replace the selection if we paste into the 
4119         current selection
4120
4121         * gtk/gtkselection.h: Remove "GtkSelectioData"
4122         (struct _GtkSelectionData): move the definition here.
4123
4124         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
4125         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
4126
4127         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
4128
4129         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
4130         (gtk_text_buffer_insert_range_interactive): implement
4131         (gtk_text_buffer_get_tags): Remove, replaced by
4132         gtk_text_iter_get_tags()
4133
4134         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
4135         limit parameter, to avoid infinite linear scan.
4136         (gtk_text_iter_backward_search): Add search limit
4137         (gtk_text_iter_forward_find_char): Add search limit
4138         (gtk_text_iter_backward_find_char): Add search limit
4139
4140 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
4141
4142         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4143         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
4144         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
4145         gdk/linux-fb/gdkwindow-fb.c:
4146         use g_object_new() instead of g_type_create_instance() which
4147         is a private function for fundamental type implementations.
4148
4149         * gdk/linux-fb/gdkinput-ps2.c:
4150         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
4151         instead just store the current modifier state. Add a (somewhat broken)
4152         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
4153         Rename exported function gdk_input_ps2_get_mouseinfo to
4154         gdk_input_get_mouseinfo.
4155
4156         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
4157         gdk/linux-fb/gdkwindow-fb.c:
4158         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
4159         
4160
4161 2000-11-02  Havoc Pennington  <hp@redhat.com>
4162
4163         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
4164         use stock buttons. Should be 100% source compatible, appropriate
4165         filesel fields now point to dialog->vbox and dialog->action_area.
4166         On the bizarre side, dialog->action_area and filesel->action_area
4167         are not the same widget.
4168         (gtk_file_selection_init): Put some padding around the selection
4169         entry, so it isn't touching the GtkDialog separator.    
4170
4171         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
4172         use stock buttons, etc. Should also be source compatible.
4173         Set the dialog default title in _init not _new().
4174         
4175         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
4176         Use stock buttons; don't put a button box inside the existing
4177         dialog button box. Don't bother with push/pop colormap anymore.
4178
4179         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
4180         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
4181         for message dialog, and necessary for the font selection and color
4182         selection with help and apply buttons.
4183         
4184         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
4185         to the created button widget. Set GTK_CAN_DEFAULT on the button.
4186         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
4187         between buttons, put less padding around the action area.
4188         (gtk_dialog_run): Exit on unmap rather than on destroy. 
4189         This will also exit the loop if the widget is hidden.
4190         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
4191         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
4192         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
4193         special-case delete event.
4194
4195         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
4196         formatting
4197         
4198 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
4199
4200         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
4201         button to temporarily disable position recording in the
4202         "saved position" test.
4203
4204 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
4205
4206         * gtk/gtkthemes.c: added compat code that temporarily implements
4207         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
4208         going to be revamped by owen's upcoming GtkModule patches, but
4209         untill then people want gtk to build, right? ;)
4210
4211 2000-11-04  Havoc Pennington  <hp@pobox.com>
4212
4213         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
4214         list
4215
4216         * docs/Changes-2.0.txt: Add note about
4217         gtk_container_get_toplevels()
4218
4219         * gtk/gtktextview.h: formatting
4220         
4221         * gtk/gtktextview.c: don't start descriptions with "Returns",
4222         confuses gtk-doc
4223
4224 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
4225
4226         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
4227         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
4228
4229 2000-11-03  Havoc Pennington  <hp@redhat.com>
4230
4231         * gtk/gtktexttagtable.c: Docs
4232         (gtk_text_tag_table_size): return a signed int
4233
4234         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
4235         (gtk_text_tag_event): make the event_object a GObject
4236
4237         * gtk/gtktextview.c: Write API docs for all functions.
4238
4239         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
4240         for gtk_text_view_get_window_type() called on one of the private
4241         windows.
4242
4243         * gtk/gtktextview.c: Instead of accessing text_view->buffer
4244         directly, call get_buffer() which demand-creates a default
4245         buffer. So gtk_text_view_new() can be used to create a view with a
4246         default buffer in it, if you just want an empty text box users can
4247         put data in. Useful for GUI builders also.
4248
4249 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
4250
4251         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
4252         the charset encodign portion MUST be in lowercase.
4253         * gtk/gtkrc.az: added file for Azeri language
4254
4255 2000-11-03  Havoc Pennington  <hp@redhat.com>
4256
4257         Get widgets working on the btree/buffer side. Display of them 
4258         still doesn't work.
4259         
4260         * gtk/gtktextview.c: start implementing child widget stuff
4261
4262         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
4263
4264         * gtk/gtktextlayout.c: handle embedded widgets
4265
4266         * gtk/gtktextdisplay.c: handle embedded widgets
4267
4268         * gtk/gtktextchild.c: Implement all the child anchor goo
4269
4270         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
4271         function
4272
4273         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
4274         (insert_pixbuf_or_widget_segment): abstract out common portions of 
4275         creating a child anchor or a pixbuf segment.
4276         (gtk_text_btree_create_child_anchor): new function
4277         (gtk_text_btree_unregister_child_anchor): new function
4278
4279         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
4280         allocate_child signal on GtkTextLayout
4281
4282         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
4283         values
4284         (gtk_text_iter_get_child_anchor): new function
4285
4286         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
4287         default handler for the changed signal, which calls
4288         gtk_text_buffer_set_modified(), instead of just always emitting
4289         changed then calling set_modified() manually. I guess this is
4290         maybe more flexible. It seems logical.
4291
4292 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
4293
4294         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
4295         now.
4296
4297         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
4298
4299 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
4300
4301         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
4302         been marked static.
4303
4304 2000-11-02  Havoc Pennington  <hp@redhat.com>
4305
4306         * gtk/testgtk.c (create_labels): had a test backward
4307
4308         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
4309         fields, so the dest GC ends up with the correct clip origin, 
4310         etc. Fixes a bug where colored labels didn't redraw 
4311         properly.
4312
4313 2000-11-02  Alexander Larsson  <alexl@redhat.com>
4314
4315         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
4316         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
4317         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
4318         Add last argument to t_type_register_static call.
4319         
4320         * gdk/linux-fb/gdkdrawable-fb2.c:
4321         Add last argument to t_type_register_static call.
4322         export the get_image drawable virtual function.
4323
4324         * gdk/linux-fb/gdkimage-fb.c:
4325         Add last argument to t_type_register_static call.
4326         rename gtk_image_get to _gdk_fb_get_image and
4327         export it for use by gdkdrawable-fb2.
4328
4329         * gdk/linux-fb/gdkprivate-fb.h:
4330         export _gdk_fb_get_image.
4331
4332         * gdk/linux-fb/gdkselection-fb.c:
4333         Add new api call stubs.
4334
4335         * gtk/Makefile.am:
4336         Missing ( in linux-fb part.
4337
4338         * modules/linux-fb/Makefile.am:
4339         Must link with gdk_pixbuf or get unresolved symbol.
4340
4341 2000-11-01  Havoc Pennington  <hp@pobox.com>
4342
4343         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
4344         GTK_TYPE_TEXT_ITER and BOXED marshallers
4345
4346         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
4347
4348         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
4349         
4350         * gtk/gtk-boxed.defs: add GtkTextIter
4351
4352         * gtk/gtkmarshal.list: Add marshallers for text widget that 
4353         properly use OBJECT and BOXED
4354
4355 2000-11-01  Havoc Pennington  <hp@redhat.com>
4356
4357         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
4358
4359         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
4360         before returning it. 
4361         
4362 2000-11-01  Havoc Pennington  <hp@redhat.com>
4363
4364         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4365         Clip the rectangle to be rendered to the drawable, since
4366         get_from_drawable() requires a region within the drawable
4367
4368 2000-11-01  Havoc Pennington  <hp@redhat.com>
4369
4370         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
4371         from coordinates.
4372
4373 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
4374
4375         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
4376         it isn't NULL.
4377
4378 2000-11-01  Havoc Pennington  <hp@pobox.com>
4379
4380         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
4381         on a label
4382         (gtk_label_finalize): unref the attr list if any.
4383
4384         * gtk/testgtk.c (create_get_image): close test on second click
4385         (make_message_dialog): close dialog if it exists
4386
4387         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
4388
4389         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
4390         gdk-pixbuf
4391
4392         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
4393         from Pango markup format
4394         (gtk_label_set_markup_with_accel): ditto but with accelerator
4395         parsing
4396
4397         * gtk/gtkimage.c (gtk_image_expose): reformatting.
4398
4399         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
4400         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
4401         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
4402         call gdk_window_get_origin().
4403
4404         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4405         implement GDK_PIXBUF_ALPHA_FULL
4406         
4407 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
4408
4409         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
4410         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
4411         g_signal_handlers_disconnect_matched to block/unblock and disconnect
4412         multiple handlers respectively, instead of only treating the
4413         first handler found (bug reported by owen).
4414
4415 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
4416
4417         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
4418
4419         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
4420
4421         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
4422         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
4423         gtk/gtktreeviewcolumn.h: Fixed inline docs.
4424
4425         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
4426         widget.  Needs writing someday.
4427
4428         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
4429         the docs.
4430
4431 2000-10-30  Havoc Pennington  <hp@redhat.com>
4432
4433         * gtk/gtktextview.h, gtk/gtktextview.c:
4434         Rename delete_at_cursor delete_from_cursor, and 
4435         move to move_cursor.
4436
4437 2000-10-30  Havoc Pennington  <hp@redhat.com>
4438
4439         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
4440         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
4441         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
4442         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
4443         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
4444         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
4445         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
4446         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
4447         gtktexttypes.h, gtktextview.c, gtktextview.h:
4448
4449         Massive reindentation and reformatting. Arg alignment and comments
4450         still need fixing in various places.
4451
4452 2000-10-30  Havoc Pennington  <hp@redhat.com>
4453
4454         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
4455         to be named insert_at_cursor and delete_at_cursor so C++ can
4456         handle them.
4457
4458 2000-10-28  Tor Lillqvist  <tml@iki.fi>
4459
4460         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
4461         to get a double directory separator in case the home directory
4462         ends with one. This would cause trouble especially on Windows,
4463         where the path will be confused with the syntax for an an UNC
4464         (network share) path \\server\share\path.
4465         (gtk_rc_add_initial_default_files): Ditto.
4466
4467 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
4468
4469         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
4470
4471         * gtk/gtktextview.c: Use correct marshallers.
4472
4473 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
4474
4475         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
4476         use new iter stuff, and added all the appropriate signals et al.
4477
4478         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
4479         code is internal to gtk only.
4480
4481 2000-10-28  Tor Lillqvist  <tml@iki.fi>
4482
4483         * gtk/gtk.def
4484         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
4485         glib-genmarshal etc.
4486
4487 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
4488
4489         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
4490         parallel builds.
4491
4492 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
4493
4494         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
4495
4496 2000-10-27  Robert Brady  <robert@suse.co.uk>
4497
4498         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
4499         en_GB (British), ia (Interlingua).
4500
4501 2000-10-26  Havoc Pennington  <hp@redhat.com>
4502
4503         * gtk/gtktextiter.c (my_strrstr): fix constness warning
4504
4505         Fixed output of:
4506         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
4507         
4508         * gtk/gtktextsegment.c (char_segment_new): rename
4509         (_char_segment_new_from_two_strings): rename
4510         (_toggle_segment_new): rename
4511         
4512         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
4513         (make_clipboard_widget): make it static
4514         (text_get_func): static
4515         (text_clear_func): static
4516
4517         * gtk/gtkcolorsel.c (adjustment_changed): make this function
4518         static
4519         (hex_changed): make it static
4520         (hsv_changed): make it static
4521         (opacity_entry_changed): make it static
4522
4523         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
4524         (toggle_segment_check_func): rename with _gtk
4525
4526         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
4527         (_widget_segment_new): rename
4528         (_widget_segment_add): rename
4529         (_widget_segment_remove): rename
4530         (_widget_segment_ref): rename
4531         (_widget_segment_unref): rename
4532
4533         * gtk/gtktextmark.c (_mark_segment_new): Rename
4534         _gtk_mark_segment_new   
4535
4536 2000-10-26  Havoc Pennington  <hp@redhat.com>
4537
4538         * gtk/gtkmarshal.list: add new marshallers used by the text widget
4539         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4540         types
4541
4542         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
4543         marshaller types
4544
4545         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
4546         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
4547         license on these files.
4548
4549         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
4550         work.
4551
4552         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
4553         runtime random number different for each tree, instead of 
4554         a constant I made up.
4555
4556 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
4557
4558         * gtk/Makefile.am: buncha cleanups, kludged build sources
4559         dependencies with a Makefile: oldest-source-stamp dependancy
4560         for the moment. automake is really fighting us here, with
4561         intentionally not allowing user-defined rules or dependancies
4562         prior to it's -include $(DEP_FILES) statement. sucks rocks!
4563
4564         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
4565         to public headers. tehy have a comment stating that they are
4566         "semi-public" aren't included by gtk.h and if enums popup there,
4567         they can be /*< skip >*/-ed.
4568
4569         * gtk/gtktextlayout.h: 
4570         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
4571         added LGPL... <SIGH>
4572
4573 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
4574
4575         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
4576         GtkTreeIter.  Added iterators everywhere.
4577
4578         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
4579
4580         * gtk/gtktreeviewselection.c: Changed to use the iterators.
4581
4582         * gtk/gtktreestore.c: Changed to use the iterators.
4583
4584         * gtk/gtkliststore.c: Commented out the code.  Will convert to
4585         iterators tomorrow.
4586
4587         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
4588         iterators tomorrow.
4589
4590         * gtk/treestoretest.c: Changed to use iterators.
4591
4592         * demos/testgtk/main.c: Moved to use the new iterator system.
4593
4594 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
4595
4596         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
4597         localization misbehaviour.
4598
4599         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
4600         a useless type without copy/free.
4601
4602         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
4603         of GTK_TYPE_CTREE_NODE.
4604
4605 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
4606
4607         * gtk/gtksignal.c:
4608         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
4609         applicable.
4610
4611         * gtk/gtk-boxed.defs (GtkSelectionData): specify
4612         gtk_selection_data_copy and gtk_selection_data_free
4613         do GtkSelectionData work as params in signals.
4614
4615 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
4616
4617         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
4618         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
4619         couldn't they at least give it a non-standard name?
4620         
4621         * gtk/gtktextlayout.c: arg! yet another implementation of
4622         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
4623
4624         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
4625         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
4626         home. now i know this _is_ a conspiracy.
4627
4628         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
4629         ::state-changed.
4630
4631         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
4632         (gtk_accel_group_create_add): marshaller signature fixups.
4633
4634         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
4635         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
4636
4637         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
4638         anymore.
4639
4640 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
4641
4642         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
4643         due to the signal system changes, it wouldn't build currently. to
4644         be fixed soon.
4645
4646         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
4647
4648         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
4649         so it needs gtk_marshal_VOID__ENUM() instead of
4650         gtk_marshal_NONE__UINT().
4651
4652         * gdk/gdk*.c: adapted type registration functions.
4653
4654         * gtk/gtkbindings.c:
4655         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
4656         gone.
4657
4658         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
4659
4660         * gtk/gtkobject.c:
4661         (gtk_object_destroy):
4662         (gtk_object_shutdown): fixed recursion guards. basically we have to
4663         catch the case where any of GObject.shutdown() or gtk_object_destroy()
4664         is called during ::destroy, and avoid recursion there.
4665
4666         * gtk/gtktypeutils.c:
4667         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
4668         boxed_copy/boxed_free. this needs a more general solution based on a
4669         publically installed code-generator utility.
4670
4671         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
4672         glib's gobject has support for that now.
4673         define GtkSignalMarshaller in terms of GSignalCMarshaller.
4674
4675 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
4676
4677         * gtk/gtksignal.[hc]:
4678         * gtk/gtkmarshal.[hc]:
4679         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
4680         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
4681         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
4682         care of that.
4683
4684         * *.c: marshaller name fixups.
4685
4686         * gtk/gtkmarshal.list: added a comment briefing the format.
4687
4688 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
4689
4690         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
4691         compatibility macros here now. more specifically, most of
4692         the API is preserved (yes, _most_, nonwithstanding the
4693         following exceptions listed, the API is stil lHUGE ;)
4694         things that got removed completely:
4695         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
4696         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
4697         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
4698         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
4699         gtk_signal_remove_emission_hook().
4700         non-functional functions variants:
4701         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
4702         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
4703         not supported anymore.
4704         (gtk_signal_compat_matched): new internal function to aid
4705         implementation of the compatibility macros, it  provides
4706         functionality to block/unblock/disconnect handlers based
4707         on func/data.
4708
4709         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
4710
4711         * *.c: adaptions to new type registration API signatures.
4712
4713 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
4714
4715         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
4716
4717 2000-10-25  Robert Brady  <robert@suse.co.uk>
4718
4719         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
4720         gdk_property_delete): If window == NULL, assume the root window.
4721         (restoring the behaviour that was in 1.2).
4722         
4723         * gtk/testtext.c (save_buffer): Allow creation of new files when
4724         saving.
4725
4726         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
4727         calls to read().
4728
4729 2000-10-25  Tor Lillqvist  <tml@iki.fi>
4730
4731         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
4732
4733         * gdk/win32/gdkdrawable-win32.c
4734         * gdk/win32/gdkimage-win32.c
4735         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
4736         X11 backend.
4737
4738         * gdk/win32/gdkcc-win32.c
4739         * gdk/win32/gdkcolor-win32.c
4740         * gdk/win32/gdkfont-win32.c
4741         * gdk/win32/gdkinput-win32.c
4742         * gdk/win32/gdkmain-win32.c
4743         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
4744
4745 2000-10-24  Havoc Pennington  <hp@redhat.com>
4746
4747         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
4748         it a static function
4749
4750         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
4751         redraw text when a tag is applied to it.
4752
4753         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
4754         (gtk_text_tag_affects_nonsize_appearance): private functions to
4755         see if a tag requires various kinds of redraw/layout to be queued
4756         up.
4757
4758         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
4759
4760         * gtk/testtext.c (fill_example_buffer): Put the cursor 
4761         at the start of the buffer, so search works by default
4762
4763         * gtk/gtktextiter.c (lines_match): init match_start always
4764
4765         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
4766         function, get iter at a line + a byte index
4767
4768         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
4769         to set byte position within a line
4770         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
4771
4772 2000-10-23  Havoc Pennington  <hp@redhat.com>
4773
4774         * gtk/testtext.c: Re-enable the "find" dialog
4775
4776         * gtk/testgtk.c: Add test for gdk_drawable_get_image
4777         
4778         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
4779         the arguments to gdk_draw_drawable were in the wrong order
4780         (gdk_window_paint_init_bg): This function was ignoring the
4781         init_region, instead of clipping to it, so the entire backing
4782         pixmap was cleared on every begin_paint()
4783         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
4784         was in here again, the loop kept using the same GtkWindowPaint
4785         over and over.
4786         (gdk_window_begin_paint_region): Fix a bug where we had two
4787         x_offset instead of x_offset and y_offset
4788
4789         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
4790         before we get the image.
4791         (gdk_draw_drawable): get the composite before we draw the drawable.
4792         (gdk_drawable_real_get_composite_drawable): default
4793         get_composite_drawable implementation that returns the drawable 
4794         itself
4795
4796         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
4797         get_composite_drawable virtual function
4798
4799         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
4800         list-walking bug
4801
4802         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
4803         make this work if the source drawable is a GdkDrawableImplX11
4804         instead of a public drawable type. This is really broken; the
4805         problem is that GdkDrawable needs a virtual method get_xid(), but
4806         of course that doesn't work in practice. Enter RTTI.
4807
4808         Also, improve mismatched depth message.
4809
4810         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
4811         GdkPixmap
4812
4813         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
4814         install _gdk_x11_get_image as our implementation of get_image
4815         
4816         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
4817         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
4818
4819         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
4820         gdk_drawable_get_image
4821
4822         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
4823
4824         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
4825         get_image
4826
4827         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
4828         trailing semicolon after for loop
4829
4830 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
4831
4832         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
4833         where font_desc for widget's context lagged widget's font_desc by
4834         one step.
4835
4836 2000-10-22  Tor Lillqvist  <tml@iki.fi>
4837
4838         * gdk/win32/gdkgc-win32.c
4839         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
4840
4841         * gtk/makefile.mingw.in
4842         * gtk/gtk.def: Updates.
4843
4844         * gtk/testgtk.c: sleep() is called _sleep in MS's C
4845         library.
4846
4847         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
4848
4849         * gtk/makefile.msc: Remove
4850
4851         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
4852
4853         * gtk/Makefile.am: Add it.
4854
4855         * configure.in: Generate it.
4856
4857         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
4858         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
4859         something even if not implemented, to satisfy picky MSVC.
4860
4861         Patches by Hans Breuer:
4862         
4863         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
4864         SetBkMode() and SetTextAlign() before calling
4865         pango_win32_render().
4866
4867         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
4868         Set hcliprgn to NULL after destroying it.
4869         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
4870
4871         * gdk/win32/gdkgeometry-win32.c
4872         (_gdk_windowing_window_queue_antiexpose): More effective
4873         implementation.
4874
4875         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
4876         depth as default, not the visual's.
4877
4878         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
4879         against empty title.
4880
4881         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
4882         IMAGE_PRIVATE_DATA.
4883
4884         * gdk/win32/gdkimage-win32.c: Use it.
4885
4886 2000-10-22  Robert Brady  <robert@suse.co.uk>
4887
4888         * configure.in: Check for bind_textdomain_codeset
4889
4890         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
4891         present, make use of it.
4892
4893         Add a translatable string "default:LTR" which, if translated
4894         to "default:RTL", will cause the default direction to be
4895         Right-to-Left.
4896
4897         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
4898         direction if marked as flippable.
4899
4900         * gtk/gtkhscale.c: Mark widget as flippable.
4901         
4902 2000-10-04  Havoc Pennington  <hp@redhat.com>
4903
4904         * gtk/testgtk.c (create_buttons): create some stock buttons
4905         with the default accel group
4906         (create_image): test some new GtkImage features
4907         (make_message_dialog): test GtkMessageDialog
4908         (create_modal_window): fix someone's bizzarro indentation
4909
4910         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
4911         GTK_WIN_POS_CENTER_ON_PARENT. 
4912         Add "destroy with parent" setting, which means the window goes
4913         away with its transient parent.
4914         (gtk_window_get_default_accel_group): get the default accel group
4915         for the window.
4916         (gtk_window_set_destroy_with_parent): set/unset destroy with
4917         parent flag
4918         (gtk_window_read_rcfiles): invalidate icon set caches
4919         after reloading rcfiles 
4920
4921         * gtk/gtkenums.h (GtkWindowPosition): add
4922         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
4923         on its parent window when the dialog is mapped for the first time.
4924
4925         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
4926         a simple message dialog class
4927         
4928         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
4929         handler to emit response signal, and maybe later it would
4930         honor a hide_on_delete flag - though that isn't there yet.
4931         Set border width on the vbox to 2, so we get some padding.      
4932         Use a button box for the action area.
4933         (gtk_dialog_key_press): synthesize a delete event if Esc
4934         is pressed and the GtkWidget key press handler didn't 
4935         handle the escape key.
4936         (gtk_dialog_new_with_buttons): new function creates a dialog
4937         with some default buttons in it.
4938         (gtk_dialog_add_action_widget): add an activatable widget
4939         as a button in the dialog - you can also add a non-activatable
4940         widget by accessing the action area directly.
4941         (gtk_dialog_add_button): add a simple button - stock ID or 
4942         label - to the action area
4943         (gtk_dialog_response): emit response signal
4944         (gtk_dialog_run): block waiting for the dialog, return 
4945         the response. Override normal delete_event behavior, so that 
4946         delete_event does nothing inside gtk_dialog_run().
4947
4948         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
4949         emitted when an action widget is clicked or the dialog gets
4950         delete_event
4951
4952         * gtk/gtk.h: add gtkmessagedialog.h
4953
4954         * gtk/Makefile.am: add gtkmessagedialog.[hc]
4955
4956 2000-10-18  Havoc Pennington  <hp@redhat.com>
4957
4958         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
4959         where any number of empty lines would get skipped
4960
4961         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
4962         edge.
4963
4964         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
4965         warning about invalid iterators (explain more thoroughly)
4966         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
4967
4968         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
4969         big
4970
4971         * demos/*.c: Add error handling
4972
4973         * gtk/gtktextbuffer.c: don't modify const iterators
4974
4975         * gtk/gdk-pixbuf-loader.c: Add full error handling here
4976
4977         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
4978         on file load
4979
4980         * gtk/gtkiconfactory.c: Update to reflect addition of error
4981         handling to gdk-pixbuf loaders
4982
4983 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
4984
4985         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
4986         move to new modularized testgtk.
4987
4988 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
4989
4990         * gtk/gtktreeview.c: Draw the arrows correctly.
4991
4992         * gtk/gtktreemodel.c: Added user docs.
4993
4994         * gtk/gtk.h: remove gtktreedatalist.h.
4995
4996         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
4997         parent when generating my type.
4998
4999         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
5000         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
5001
5002 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5003
5004         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
5005         GtkTreeModel from object to interface.
5006
5007 2000-10-16  Havoc Pennington  <hp@redhat.com>
5008
5009         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
5010         compilation
5011
5012 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
5013
5014         * gtk/gtktreeselection.c: Add API documentation to all public
5015         functions.
5016
5017         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
5018         functions.
5019
5020 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
5021
5022         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
5023         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
5024         docs to all public functions.
5025
5026         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
5027         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
5028         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
5029         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
5030         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
5031         issue.
5032
5033 2000-10-14  Robert Brady  <robert@suse.co.uk>
5034
5035         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
5036
5037 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
5038
5039         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
5040         values other then G_TYPE_STRING.
5041         * gtk/gtktreeselection.c: Minor commenting updates.
5042         * gtk/gtktreeview.c: Format updates.
5043
5044 2000-10-09  Tor Lillqvist  <tml@iki.fi>
5045
5046         * README.win32: Update.
5047
5048         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
5049         lines that had been deleted by mistake (?).
5050
5051         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
5052         also the case fg==white and bg==black (but still not randomly
5053         coloured cursors). Thanks to Wolfgang Sourdeau.
5054
5055         * gdk/win32/*.c: Silence gcc -Wall.
5056
5057         * gtk/gtk.def: Add missing entry points.
5058
5059         Fixes by Hans Breuer:
5060
5061         * gdk/makefile.msc
5062         * gdk/win32/makefile.msc: Update.
5063
5064         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
5065         some MSVC thing, presumably), cause breakpoint on failures. Add
5066         GDK_NOR case. Call g_log_set_always_fatal.
5067
5068         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
5069         should be pased by reference.
5070         
5071         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
5072         
5073         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
5074
5075         * gdk/win32/gdkevents-win32.c
5076         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
5077
5078         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
5079         implementation object.
5080
5081         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
5082         not just windows.
5083         
5084         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
5085         Use the wrapper object.
5086         
5087 2000-10-06  Havoc Pennington  <hp@redhat.com>
5088
5089         * Makefile.am (SRC_SUBDIRS): contrib subdir
5090
5091         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
5092         so it can be used in Xlib version
5093
5094         * demos/testpixbuf.c (update_timeout): error checking from 1.0
5095         tree
5096
5097         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
5098         change from 1.0 tree that returns first frame of animation
5099         if the loaded file is an animation.
5100
5101         * contrib: add new directory to hold stuff that comes with GTK+
5102         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
5103         
5104         * configure.in: add contrib/*
5105
5106 2000-10-05  Havoc Pennington  <hp@redhat.com>
5107
5108         * demos/testpixbuf-save.c: add pixbuf save test
5109
5110         * demos/Makefile.am: add testpixbuf-save.c
5111
5112 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
5113
5114         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
5115         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
5116         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
5117         * gtk/gtktreeselection.[ch]: Replaced
5118         "node_selected"/"node_unselected" signal with "selection_changed"
5119         signal.
5120
5121 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5122
5123         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
5124         tree widget.
5125
5126 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
5127
5128         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
5129         drawing.
5130
5131 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
5132
5133         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
5134         Move list pointer forwards before removing item from
5135         list. (Crash reported by Salmaso Raffaele)
5136
5137         * gdk/gdkwindow.h: Remove spurious trailing ,
5138
5139         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
5140         dependencies on uninstalled libraries, sorry folks.
5141
5142 2000-10-04  Havoc Pennington  <hp@redhat.com>
5143
5144         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5145         gtk/gtkiconfactory.c: Fix copyrights    
5146
5147         * demos/testpixbuf.c: add inline pixbuf test
5148         
5149 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
5150
5151         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
5152         Add gdk_window_iconify.
5153
5154         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
5155         (gdk_window_set_geometry_hints): Add win_gravity
5156         to geometry structure.
5157
5158         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
5159         Implement _NET_WM_PING.
5160
5161         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
5162         Set _NET_WM_PID on the client leader.
5163
5164         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
5165         Handle UTF-8 better.
5166
5167         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
5168         UTF-8 better, set _NET_WM_NAME as well. Only set
5169         icon name if it hasn't previously been explicitely 
5170         set.
5171
5172 2000-10-03  Havoc Pennington  <hp@redhat.com>
5173
5174         * gtk/testtextbuffer.c: clean up trailing whitespace,
5175         add extensive tests for tag toggle iteration.
5176         
5177         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
5178         distance
5179
5180         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
5181         optimize case where the tag root is on level 1
5182         (gtk_text_line_previous_could_contain_tag): attempt to implement
5183         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
5184         functionality
5185
5186         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
5187         Implement this, though not very efficiently.
5188
5189         * gtk/gtktextiterprivate.h: reformat
5190
5191         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
5192         iterator
5193
5194         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
5195         this to properly revalidate the iterators.
5196
5197         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
5198         properly at the end of the line (and therefore on empty lines)
5199
5200         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
5201         maybe we should return a value...
5202
5203 2000-10-03  Tor Lillqvist  <tml@iki.fi>
5204
5205         * config.h.win32: Guard definition of alloca(). glib.h now handles
5206         that.
5207
5208         * gdk/gdk.def
5209         * gtk/gtk.def: Add new entry points.
5210
5211         Changes just to make GTK+ build without errors on Win32. No hope
5212         of it working in its current state, though...:
5213         
5214         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
5215         some functions from the X11 backend, just to make GTK+ build.
5216
5217         * gdk/makefile.mingw.in
5218         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
5219         number. Add new object files.
5220
5221         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
5222         GetMessageTime to get timestamp (where on X11 uses
5223         gdk_x11_get_server_time()).
5224
5225 2000-10-02  Havoc Pennington  <hp@pobox.com>
5226
5227         * gtk/gtktextview.c: text_window_* weren't static and should have
5228         been.
5229         Start work on child widgets; not yet complete, syncing to 
5230         office computer.
5231
5232         * gtk/gtktextchild.h: change this to contain a public interface,
5233         starting work on child interfaces.
5234         * gtk/gtktextchildprivate.h: move private interfaces here
5235
5236         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
5237
5238         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
5239         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
5240         gtk/gtktextmark.c: copyright notices
5241
5242         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
5243         internal functions      
5244
5245         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
5246         internal function
5247
5248         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5249         Reformatting    
5250
5251 2000-09-30  Havoc Pennington  <hp@pobox.com>
5252
5253         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
5254         NULL start/end pointers
5255
5256         * gtk/gtktextbuffer.c: Write some docs
5257         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
5258         NULL, so you can just check whether there's a selection.        
5259
5260         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
5261         cleanup_line or segments_changed ourselves, it gets done 
5262         in unlink_segment
5263
5264         * gtk/gtktextmark.h:
5265         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
5266         
5267         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
5268
5269         * gtk/gtktextmark.c: delete some more old Tk cruft
5270
5271         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
5272         mark before removing it, so we can emit MARK_DELETED with a valid
5273         pointer.
5274         (gtk_text_buffer_mark_set): hold ref across signal emission
5275
5276         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
5277         whining about attempts to delete special marks
5278
5279         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
5280         underscore, since it's internal.
5281
5282         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
5283         now implemented in terms of iterators in gtktextiter.h
5284
5285         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
5286         New function, destructively sets contents of buffer. Also 
5287         a convenient way to clear the buffer by setting text to ""
5288
5289         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
5290         multiline string literal
5291
5292         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
5293         text changes.
5294
5295         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
5296         is not dereferenceable
5297         (gtk_text_iter_forward_lines): fix return value
5298
5299 2000-09-29  Havoc Pennington  <hp@redhat.com>
5300
5301         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
5302
5303         * gtk/gtktextview.c: Implement drag thresholding; change functions 
5304         that set border window size to have nicer name
5305         (gtk_text_view_mark_set_handler):  Fix this to have the 
5306         right signature.
5307
5308         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
5309
5310         * gtk/testtext.c: Update with API changes, put line numbers on 
5311         both sides.
5312         
5313         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
5314         with this
5315
5316         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
5317         pixbuf; delete a big block of #if 0 Tk code
5318
5319         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
5320         insert_pixmap with insert_pixbuf
5321
5322 2000-09-29  Martin Baulig  <baulig@suse.de>
5323
5324         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
5325         confusion with the GdkPixbuf of the GNOME 1.x platform.
5326
5327 2000-09-29  Havoc Pennington  <hp@pobox.com>
5328
5329         * gtk/gtktextview.c: Implement the side windows.
5330
5331         * gtk/testtext.c: Implement simple line numbering in the 
5332         left side window; seems to make scrolling sloooow. Oops.
5333         Also, cursor blink is for some reason causing redraws
5334         of the line numbers. Should investigate...
5335
5336 2000-09-28  Havoc Pennington  <hp@redhat.com>
5337
5338         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
5339         scrolling child windows, and draw focus rectangle properly.
5340         
5341         (gtk_text_view_buffer_to_window_coords):
5342         Coordinate transformation to deal with all these freaking windows
5343         and offsets
5344         (gtk_text_view_window_to_buffer_coords): transform the other way
5345
5346         * gtk/testtext.c (create_buffer): Update to match Pango API change
5347
5348         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
5349         anonymous tags
5350         (foreach_unref): don't emit remove signal from finalize, just
5351         set tag's parent to NULL
5352
5353 2000-09-26  Havoc Pennington  <hp@redhat.com>
5354
5355         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
5356         Fix some warnings       
5357
5358 2000-09-26  Havoc Pennington  <hp@redhat.com>
5359
5360         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
5361         headers into the private header list
5362
5363         * Makefile.am (pkgconfig_DATA): install pkg-config files
5364
5365         * configure.in: add pkg-config files
5366
5367         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
5368
5369         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
5370         outstanding icon caches on theme change.
5371
5372         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
5373         important types:
5374
5375         (GtkIconSource): Specification for creating a pixbuf 
5376         appropriate for a direction/state/size triplet from 
5377         a source pixbuf or filename
5378
5379         (GtkIconSet): List of GtkIconSource objects that are used to
5380         create the "same" icon (e.g. an OK button icon), and cache for
5381         rendered icons
5382
5383         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
5384         up the icon set for a given stock ID.  GTK maintains a stack of
5385         GtkIconFactory to search, and applications or libraries can add
5386         additional icon factories on top of the stack
5387         
5388         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
5389         the set of GtkIconSource specified for a given stock ID into 
5390         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
5391         RcStyle, under the specified stock ID.
5392
5393         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
5394         render_icon used to derive a GdkPixbuf from a GtkIconSource.
5395         This allows people to theme how prelight, insensitive, etc. are
5396         done.
5397
5398         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
5399         icon factories for a style, and return the resulting 
5400         icon set if any.
5401
5402         (gtk_style_render_icon): Render an icon using the render_icon 
5403         method in the GtkStyleClass.
5404
5405         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
5406         Use the style for a given widget to look up a stock ID, get the
5407         icon set, and render an icon using the render_icon method 
5408         of the style
5409
5410         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
5411         (contains information about a stock item), the built-in stock item
5412         IDs, and functions to add/lookup stock items.
5413
5414         * gtk/stock-icons/*: Stock icons that come with GTK
5415
5416         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
5417         a button based on a GtkStockItem
5418         (gtk_button_new_accel): Takes a uline string and accel group, and
5419         installs the accelerator.
5420
5421         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
5422         image-display widget.
5423
5424 2000-09-25  Havoc Pennington  <hp@redhat.com>
5425
5426         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
5427
5428         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
5429         Fix a bug when removing node data, we didn't properly 
5430         re-splice the linked list after removing the data.
5431
5432         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
5433         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
5434
5435         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
5436
5437         * gtk/gtktextlayout.c (set_para_values): Set tab array 
5438         for the layout from the GtkTextTag.
5439
5440         * gtk/gtktexttypes.h: delete tab and search cruft, 
5441         remove g_convert() in favor of GLib version
5442
5443         * gtk/gtktexttypes.c: remove tab implementation from here,
5444         move to Pango
5445
5446         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
5447         tab stuff using new PangoTabArray from Pango
5448
5449         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
5450         unused border_width stuff
5451
5452 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
5453
5454         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
5455         glib) and now useless utf_to_latin1() latin1_to_utf()
5456
5457         * gtk/gtktextview.[ch]: Change ::move_insert and
5458         ::delete_text action signals to ::move and ::delete;
5459         create the signals with the right enumeration type,
5460         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
5461         C-v bindings, change Home, End to move to beginning/end
5462         of line, Add C-Home C-End to move to beginning/end
5463         of buffer. Change ::cut_text to ::cut_clipboard, etc;
5464         combine ::scroll_text into ::move; use new GtkSelectionData
5465         functions to simplify DND text handling.
5466         
5467         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
5468         deletion enumerations here, rename enumeration values to 
5469         be consistently plural.
5470
5471         * gtk/gtktextbuffer.c: Use new clipboard interfaces
5472         for cut/copy/paste and primary selection.
5473
5474         * gtk/gtktextbuffer.[ch]: Remove excess time and
5475         'interactive' arguments from cut/copy/paste;
5476         rename cut to cut_clipboard, etc; remove
5477         gtk_text_buffer_get_clipboard_contents().
5478
5479         * gtk/gtktextlayout.[ch]: Add 
5480         gtk_text_layout_move_iter_to_line_end() to move the iter to 
5481         line ends.
5482
5483         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
5484         Functions to set or get a UTF-8 string on the selection
5485         data.
5486
5487         * gtk/gtkclipboard.[ch]: New, simplified selection handling
5488         interfaces.
5489
5490         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
5491         created widgets - one of these is useless if we don't.
5492
5493         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
5494         a public function clear all targets registered for the
5495         widget.
5496
5497         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
5498         Never call gtk_widget_realize() - that was just asking
5499         for bizarre side-effects.
5500
5501         * gtk/gtkselection.c (gtk_selection_owner_set): Call
5502         gdk_selection_owner_set even if the widget is the
5503         same so that we reliably update the timestamp on
5504         the server.
5505
5506         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
5507         gdk_x11_get_server_time() function.
5508         
5509         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
5510         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
5511         Add some tricky filtering on serial numbers for
5512         selection clear events to fix up long-standard
5513         race condition FIXME's in gtkselection.c.
5514
5515         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
5516         routines to convert from utf8 to compound text or
5517         STRING and from a text property to UTF-8.
5518
5519         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
5520         a convenience function gdk_get_current_event_time().
5521
5522         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
5523         and free selection_data->data properly
5524
5525 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
5526
5527         * gtk/gtkthemes.c: Remove some unecessary includes.
5528
5529 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
5530
5531         * gtk/gtktextdisplay.c
5532         * gtk/gtktextlayout.c
5533         * gtk/gtktexttag.c
5534         * gtk/gtktexttag.h
5535         * gtk/testtext.c: Change the overstrike property to strikethrough,
5536         to closer match pango.
5537
5538 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
5539
5540         * gtk/gtktextview.c: Fix up visibility so that focus,
5541         cursor_visible and blink interact properly.  Reenable cursor blink
5542         which had been roughly disabled. Make blink and focus
5543         properly per-view.
5544
5545         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
5546         Add a flag for whether to display insertion cursor and
5547         a function to set the flag.
5548
5549         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
5550         get_line_y() to get_line_yrange(), to be a bit more generally
5551         useful.
5552
5553 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
5554
5555         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
5556           do stop_navigating_submenu, to clear last timeout properly.
5557           Also in gtk_menu_motion_notify move ignore_enter above
5558           the conditional to make it always happen as suggested by Owen
5559
5560 2000-09-07  Tor Lillqvist  <tml@iki.fi>
5561
5562         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
5563
5564         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
5565         w32api headers.
5566
5567         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
5568         declarations.
5569
5570         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
5571         (gdk_win32_get_colormap): A line had been deleted by mistake.
5572
5573         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
5574         (gdk_event_translate): Handle more virtual keycodes to be able to
5575         generate GDK events for Control-comma, Control-period, etc.
5576
5577         * gtk/gtk.def: Add some missing entry points.
5578
5579 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
5580
5581         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
5582         Doc comment fixing. (Mostly non-matching parameter names.)
5583
5584         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
5585         comments a little to avoid looking like a doc comment.
5586
5587         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
5588         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
5589         conversions be changed to GError?)
5590
5591         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
5592         Move private #defines into .c file.
5593
5594         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
5595         order of argument addition, remove duplicates.
5596
5597         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
5598         parent class is FrameClass, not BinClass.
5599
5600         * gtk/gtk.h: Add gtkinvisible, which was missing.
5601         (It's occasionalyl useful for client apps, if seldom.)
5602
5603         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
5604         #define.
5605
5606 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
5607
5608         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
5609         coordinates when creating window, instead of GDK-space
5610         coordinates. (Avoid BadValue on too large windows.)
5611
5612 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5613
5614         * configure.in (use_mmx_asm): Remove conftest* after use along the
5615         lines of AC_TRY_COMPILE.        
5616         
5617         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
5618         of g_dirname, which is deprecated.
5619         (gtk_rc_parse_any): Removed calls to
5620         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
5621
5622         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
5623         Removed calls to g_hash_table_{freeze,thaw}, as they are
5624         deprecated now.
5625
5626         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
5627         instead of g_basename.
5628         
5629 2000-09-04 Elliot Lee <sopwith@redhat.com>
5630         
5631         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
5632         ANSI warning.
5633
5634 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
5635
5636         * gtk/gtkwidget.h:  Add some documenting comments about 
5637           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
5638           just as owen said on irc.
5639
5640         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
5641           set HAS_DEFAULT.  Only set it if there isn't another window
5642           holding it (a focus window which RECEIVES_DEFAULT) and only unset
5643           it if the widget is not the focused window with RECEIVES_DEFAULT.
5644           This fixes weird double default bugs in dialogs which has things
5645           call gtk_window_set_default at times.
5646
5647 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
5648
5649         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
5650         Nils Barth and David Santiago to improve submenu
5651         navigation. The patch does this by creating a triangular
5652         region from the point where the pointer leaves the
5653         menu to the submenu.  While the pointer is in
5654         that region and a timeout has not expired, events 
5655         that would cause the active submenu to change are
5656         ignored.
5657
5658 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
5659
5660         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
5661         moving a toplevel window immediately after sizing it would
5662         result in it being sized back to the old size since 
5663         impl->width, impl->height aren't updated until we hear
5664         back from the server. There is still a (longstanding) bug
5665         here that gdk_window_get_size() will give the wrong size
5666         until we do hear back.
5667
5668 2000-08-31  Havoc Pennington  <hp@redhat.com>
5669
5670         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
5671         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
5672         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
5673         Rename GtkTextStyleValues to GtkTextAttributes
5674
5675 2000-08-31  Havoc Pennington  <hp@pobox.com>
5676
5677         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
5678         for rapid testing whether an iterator is the end iterator
5679         (gtk_text_btree_new): init end line cache
5680         (gtk_text_line_is_last): use fast cached line to 
5681         see if we're the last line.
5682         (get_last_line): use cached line here too, should 
5683         speed up some random unrelated code.
5684         
5685 2000-08-30  Havoc Pennington  <hp@pobox.com>
5686
5687         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
5688         signals.
5689
5690         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
5691         delete_text signals. This allows the signals to be used for
5692         implementing undo.
5693
5694         * gtk/gtktextbuffer.c: Change signal handler signatures; 
5695         provide "interactive" argument when emitting insert_text or
5696         delete_text signal.
5697         
5698 2000-08-30  Havoc Pennington  <hp@pobox.com>
5699
5700         * gtk/gtktextbuffer.c: Docs
5701
5702 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
5703
5704         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
5705         from switch statements, since Tor removed the enumeration
5706         value.
5707         
5708         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
5709         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
5710
5711 2000-08-29 Elliot Lee <sopwith@redhat.com>
5712         * */*.h: Use G_GNUC_CONST.
5713
5714 2000-08-27  Havoc Pennington  <hp@pobox.com>
5715
5716         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
5717         minor indentation fixes, inserted some FIXME about stuff I
5718         realized was broken while documenting it.
5719         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
5720         GTK convention  
5721
5722 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
5723
5724         * gtk/testgtk.c (create_styles): Fix double free of
5725         font desc.
5726
5727 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
5728
5729         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
5730         
5731         * gtk/testgtk.c (create_styles): Add a test for modifying
5732         the style through gtk_widget_modify_*.
5733
5734         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
5735         a function to get the current modifier style.
5736
5737         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
5738         of the passed in GtkRcStyle instead of ref'ing it.
5739
5740         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
5741
5742 2000-08-20  Tor Lillqvist  <tml@iki.fi>
5743
5744         * gdk/gdkimage.h
5745         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
5746         shared memory image+pixmap GdkImage type, or
5747         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
5748         I am dropping that.
5749
5750         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
5751         actually call gtk_init_abi_check(), passing also
5752         sizeof(GtkWindow). Ditto for gtk_init_check(). 
5753
5754         * gtk/gtk.def
5755         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
5756         New functions, used to check that the GTK+-using code has been
5757         compiled using the correct compiler and switches. In particular,
5758         with gcc one has to use the -fnative-struct switch as GTK+ is
5759         compiled with that.
5760
5761 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
5762
5763         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
5764         ->prev fields when merging lists. (Found simultaneously
5765         by Pawel Salek and Jakub Jelinek)
5766
5767 2000-08-12  Tor Lillqvist  <tml@iki.fi>
5768
5769         * gdk/gdk.def
5770         * gtk/gtk.def: Add missing entries.
5771
5772         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
5773         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
5774
5775         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
5776         function. Dummy implementation at this point.
5777
5778         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
5779         rules. Undefine GTK_COMPILATION when compiling the test programs.
5780         
5781         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
5782
5783 2000-08-11  Tor Lillqvist  <tml@iki.fi>
5784
5785         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
5786         to convert back and forth from UTF-8 and the "system" (or "current
5787         locale") charset when necessary. Indentation/spacing cleanup.
5788
5789 2000-08-10  Havoc Pennington  <hp@redhat.com>
5790
5791         * Makefile.am (snapshot): Change the format of the snapshot
5792         version to match glib
5793
5794         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
5795         from EXTRA_DIST since it doesn't seem to exist
5796
5797 2000-08-10  Tor Lillqvist  <tml@iki.fi>
5798
5799         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
5800         version of the directory name (not the UTF-8 one) when building
5801         the path name to stat().
5802
5803 2000-08-03  Elliot Lee  <sopwith@redhat.com>
5804
5805         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
5806         PANGO_ATTR_SHAPE set.
5807
5808 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
5809
5810         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
5811         Peter Osterlund to simplify the code while keeping the
5812         functionality the same.
5813
5814 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
5815
5816         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
5817         is_viewable() test further inside the function, since removing the 
5818         window from the redraw list without clearing ->update_area
5819         was also very broken.
5820
5821 2000-08-02  Tor Lillqvist  <tml@iki.fi>
5822
5823         * configure.in: Check for <unistd.h>.
5824
5825 2000-08-01  Martin Baulig  <baulig@suse.de>
5826
5827         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
5828         to display the message that this is a development version of GTK+.
5829
5830 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
5831
5832         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
5833         was depending on widget->allocation instead of the width of text_area,
5834         which was incorrect for subclasses like GtkSpinButton.
5835
5836         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
5837         with width == 1 tests that should be width == -1.
5838
5839 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
5840
5841         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
5842         (broken, Elliot, every single window blank on X) custom code with call
5843         to gdk_window_is_viewable() which a) prevents code duplicate and
5844         b) works. 
5845
5846 2000-07-31  Elliot Lee  <sopwith@redhat.com>
5847
5848         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
5849         to get the GDK_PARENT_ROOT() macro to work.
5850         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
5851         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
5852         of, windows that aren't shown.
5853         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
5854         pointer grab stuff.
5855
5856 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
5857
5858         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
5859           s/gtk_main_iteration/g_main_iteration/
5860
5861           Did this already in change:
5862                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
5863           don't know how it got reverted.
5864
5865 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
5866
5867         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
5868         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
5869
5870         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
5871         not gdk_pixbuf.
5872
5873 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
5874
5875         * configure.in,po/{sp,sr}.po: Added Serbian files
5876
5877 2000-07-30  Tor Lillqvist  <tml@iki.fi>
5878
5879         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
5880
5881         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
5882         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
5883         GIOChannel implementation.
5884
5885         * gdk/win32/gdkinput.c
5886         * gdk/win32/gdkpango-win32.c: Update license name here, too.
5887
5888         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
5889         definition to match prototype.
5890
5891         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
5892
5893 2000-07-27  Elliot Lee  <sopwith@redhat.com>
5894
5895         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
5896         function, to allow handling image formats that cannot be detected
5897         by looking at content alone.
5898
5899 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
5900
5901         * docs/tutorial/*.gif *.jpg *.eps
5902           Update these to the same look-n-feel.
5903           Why does including images in DocBook suck so badly?
5904
5905 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
5906
5907         * gtk/gtktable.c: applied patch from Phil Thompson
5908         <phil@river-bank.demon.co.uk> that enables space settings for
5909         the last row/columns as well.
5910
5911 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
5912
5913         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
5914         updates the license headers to the GNU Lesser General Public License,
5915         as well as updating the copyright year to 2000.
5916
5917 2000-07-26  Robert Brady  <rwb197@zepler.org>
5918
5919         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
5920           and po/Makefile, was installing and looking for them under gtk20
5921           and gtk2 respectively.
5922
5923 2000-07-25  Havoc Pennington  <hp@redhat.com>
5924
5925         * gtk/testtext.c: Comment out some stuff that depends on the rest
5926         of my patches.
5927
5928 2000-07-25  Havoc Pennington  <hp@redhat.com>
5929
5930         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
5931         buffer
5932
5933 2000-07-25  Havoc Pennington  <hp@redhat.com>
5934
5935         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
5936         widget changes.
5937
5938         * gtk/gtktextview.h: To be consistent with usage of "line"
5939         throughout the API to mean "newline-terminated thingy", change
5940         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
5941         to MOVEMENT_LINE.
5942
5943         (GtkTextView): Add flags for default editability, and whether to
5944         show the cursor. Add functions to get/set that. Add 
5945
5946         (gtk_text_view_get_iter_location): new function
5947
5948         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
5949         gtktextlayout.h
5950         (g_convert): Add g_convert temporarily, will go in glib in a bit
5951         
5952         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
5953         GtkTextTagTableForeach instead of brokenly using GHFunc.
5954         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
5955
5956         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
5957         moved to public header.
5958
5959         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
5960         "invisible", since "elide" was a bad name.
5961         (gtk_text_tag_get_priority): Added
5962
5963         (GtkTextStyleValues): put this in public header, along with
5964         functions to use it.
5965
5966         * gtk/gtktextmarkprivate.h: Include more headers, since we no
5967         longer include gtktextbtree.h.
5968
5969         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
5970         gtk_text_mark_deleted
5971
5972         * gtk/gtktextlayout.h: Don't include the "really private" headers,
5973         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
5974         to make this possible. Now we only need to install
5975         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
5976         (However the Makefile.am isn't changed yet because of the
5977         logistics of merging gtk-hp-patches piecemeal)
5978
5979         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
5980         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
5981         gtk_text_iter_get_line is now used in the public API for a
5982         different purpose.
5983
5984         * gtk/gtktextiter.h: Clean up function names to be more
5985         consistent. Always call char offset "offset" and byte index
5986         "index". A "line" is always a line number. 
5987
5988         (gtk_text_iter_is_last): new function, more efficient than 
5989         the existing way to check
5990         (gtk_text_iter_is_first): new function, also more efficient
5991
5992         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
5993
5994         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
5995         gtk_text_iter_forward_char, etc.
5996
5997         (gtk_text_iter_forward_to_tag_toggle): Renamed from
5998         forward_find_tag_toggle, since this isn't a linear search
5999
6000         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
6001
6002         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
6003         New functions, search for a buffer substring.
6004
6005         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
6006         interactive and default editable (since we need to store that info
6007         until we receive the selection data).
6008
6009         Remove all the _at_char and at_line etc. versions of functions;
6010         only have iterator versions.
6011
6012         Add _interactive() versions of functions, that consider the
6013         editability of text. (FIXME add interactive flag to the 
6014         insert/delete signals per Darin's suggestion)
6015
6016         (gtk_text_buffer_get_tag_table): new function, demand-creates the
6017         tag table if necessary
6018
6019         Remove declaration of gtk_text_buffer_get_iter_from_string
6020
6021         (_gtk_text_buffer_get_btree): private/internal function, added.
6022         
6023
6024         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
6025         (gtk_text_line_is_last): new function
6026
6027 2000-07-25  Havoc Pennington  <hp@redhat.com>
6028
6029         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
6030         using GtkProgressBar. See Changes-2.0.txt for details.
6031
6032         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
6033         "pulse_step" which are the equivalent of
6034         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
6035         Implement new API.
6036         
6037         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
6038         (use_text_format) to mark whether text set on the progress bar is
6039         a format string. Deprecate entire GtkProgress interface.
6040
6041         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
6042         (gtk_progress_build_string): make this a no-op if use_text_format
6043         is FALSE
6044
6045         * docs/Changes-2.0.txt: Describe progress bar changes.
6046
6047 2000-07-25  Tor Lillqvist  <tml@iki.fi>
6048
6049         * Makefile.am: Include the build directory.
6050
6051         * configure.in: Generate build/Makefile, build/win32/Makefile,
6052         gdk/, gdk/win32/, and gtk/makefile.mingw.
6053
6054         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
6055         Add GETTEXT_PACKAGE.
6056         
6057         * gdk/gdk.def
6058         * gtk/gtk.def: Updates.
6059
6060         * gdk/gdkfont.h
6061         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
6062         need them any longer.
6063
6064         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
6065
6066         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
6067         PANGOWIN32_LIBS and gdk_pixbuf.
6068
6069         * gdk/win32: Compiles, but no doubt doesn't work at all.
6070
6071         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
6072
6073         * gdk/win32/gdkinput.c: New file, temporarily.
6074         
6075         * gdk/win32/gdkinput-win32.h: New file
6076
6077         * gdk/win32/gdkinputprivate.h: Remove.
6078
6079         * gdk/win32/gdkpango-win32.c: New file.
6080
6081         * gtk/makefile.mingw.in: New file
6082
6083         * gtk/makefile.cygwin: Removed
6084         
6085         * gtk/Makefile.am: Update accordingly.
6086
6087         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
6088         made externally visible.
6089
6090         * gtk/gtkmain.c: Use it.
6091         
6092         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
6093         is enough.
6094
6095         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
6096
6097 2000-07-24 Elliot Lee <sopwith@redhat.com>
6098         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
6099         individual backends already.
6100         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
6101         again. Yes, there really is a good reason for this, if you are using the gdkregion
6102         internals, and if you're not, why do you care?
6103         * gdk/gdkwindow.c: Fix inverted condition
6104         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
6105         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
6106         * gtk/gtkrange.c: Redraw trough when moving.
6107         * gtk/gtktypeutils.c: Fix warning by adding const cast.
6108         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
6109
6110 2000-07-23  Tor Lillqvist  <tml@iki.fi>
6111
6112         * configure.in: Check for mkstemp and sigsetjmp. Output
6113         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
6114
6115         More work on GDK for Win32. Still in an intermediate state.
6116
6117         * gdk/makefile.cygwin
6118         * gdk/win32/makefile.cygwin: Removed.
6119         
6120         * gdk/makefile.mingw.in
6121         * gdk/win32/makefile.mingw.in: New files.
6122
6123         * gdk/Makefile.am
6124         * gdk/win32/Makefile.am: Generate and distribute them.
6125
6126         * gdk/win32/gdkwindow-win32.h
6127         * gdk/win32/gdkdrawable-win32.h
6128         * gdk/win32/gdkpixmap-win32.h: New files.
6129
6130         * gdk/win32/gdkcolor-win32.c
6131         * gdk/win32/gdkcursor-win32.c
6132         * gdk/win32/gdkdrawable-win32.c
6133         * gdk/win32/gdkgc-win32.c
6134         * gdk/win32/gdkimage-win32.c
6135         * gdk/win32/gdkprivate-win32.h
6136         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
6137         Rename fields and variables called xcursor, xid, etc (these names
6138         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
6139
6140 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
6141
6142         * gtk/gtkentry.[ch]: Fix some problems with vertical
6143         alignment.
6144
6145         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
6146         char/byte confusion.
6147
6148 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
6149
6150         * gtk/gtktextview.c (changed_handler): Fix bug where
6151         redraw wasn't being done properly when height of
6152         dirty region changed.
6153
6154         * demos/Makefile.am: Remove various references to
6155         -lgmodule
6156
6157 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
6158
6159         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
6160         PangoAttrShape to reserve space for pixmaps, add 
6161         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
6162         in the display functions.
6163         
6164         * gtk/testgtk.c (create_layout): Set some more exotic
6165         scrolled window options
6166
6167         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
6168         Add function to set the shadow type of a window, to allow
6169         putting a shadow around widgets such as GtkLayout or GnomeCanvas
6170         which don't draw their own frame.
6171
6172 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
6173
6174         * docs/tutorial/package-db-tutorial.sh: New file for
6175           packaging DocBook format tutorial
6176
6177 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
6178
6179         * docs/tutorial/gtk-tut.sgml: Minor updates
6180
6181         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
6182
6183 2000-07-19  Tor Lillqvist  <tml@iki.fi>
6184
6185         * gtk/gtksignal.c: Fix C++ comment.
6186
6187         * gtk/gtkimmulticontext.c
6188         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
6189         don't return value from void functions.
6190
6191         * gtk/gtk.def: Add gtk_rc_style_unref.
6192
6193 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6194
6195         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
6196         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
6197         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
6198         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
6199         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
6200         gtk/gtktypeutils.h: Include files outside of the extern "C"
6201         block. Makes some C++ compiler happy. Reported by Denis Vakatov
6202         <vakatov@peony.nlm.nih.gov>.
6203
6204 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
6205
6206         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
6207           Completes first pass. Hurrah!
6208
6209 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
6210
6211         * docs/tutorial/gtk-tut.sgml: More clean ups.
6212
6213 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
6214
6215         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
6216         paint the background of the text area which was accidentally
6217         removed at some point.
6218
6219         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
6220           
6221          - Move most of the functionality from the theme vtable
6222            into GtkRcStyleClass and GtkStyleClass. The moved
6223            vtable functions were changed a bit in the move to
6224            work better in their new home.
6225
6226          - Get rid of the engine and engine_data fields from
6227            GtkRcStyle and GtkStyle; instead the theme
6228            engine derives theme-specific subclasses of GtkRcStyle
6229            and GtkStyle
6230
6231          - Add extra dlsym() found entry point to themes,
6232            theme_create_rc_style().
6233
6234         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
6235         in gtk_style_real_copy.
6236
6237         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
6238         to register a type associated with an engine. (The engine
6239         won't be unloaded as there is an instance of the type.)
6240
6241
6242 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
6243
6244         * docs/tutorial/gtk-tut.sgml: Clean ups.
6245
6246 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
6247
6248         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
6249           of cleaning up to do.
6250
6251 2000-07-15  Tor Lillqvist  <tml@iki.fi>
6252
6253         * gdk/testgdk.c: New file, quick hack to test backends for
6254         pixel-by-pixel correctness of the most simple graphic operations.
6255
6256 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
6257
6258         * Really release 1.3.1
6259         
6260         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
6261         include structure.
6262
6263 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
6264
6265         * Released 1.3.1
6266
6267 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
6268
6269         * gtk/gtktextlayout.c: use FALSE for size_only most
6270         of the time when calling gtk_text_layout_get_line_display()
6271         to avoid causing double reshapes when a redraw follows
6272         immediately after.
6273
6274 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
6275
6276         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
6277         appropriate region and gdk_window_process_updates() so trough
6278         updating doesn't lag behind the window being scrolled.
6279
6280         * gdk/gdkgc.c: Make parent_class pointer static.
6281          
6282 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
6283
6284         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
6285         include <string.h>.
6286          
6287         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
6288         cut-and-paste error in computing memory offset for 4 channels.
6289
6290 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
6291
6292         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
6293         gtk_rc_append_default_pixmap_path(), since it wasn't
6294         adding an interesting path and we don't have a meaningful
6295         default for this value.
6296
6297 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
6298
6299         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
6300         gtk-config to gtk-config-2.0 move gtk_.m4 to
6301         gtk-2.0.m4
6302
6303         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6304         gdk/Makefile.am demos/Makefile.am: Change 
6305         library names to libgtk-1.3.la, etc, so that we
6306         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
6307
6308         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
6309         gdk/Makefile.am gdk/x11/Makfile.am
6310         Move include files into /usr/include/gtk-2.0, 
6311         /usr/lib/gtk-2.0/include/
6312          
6313         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
6314         gtk/gtkintl.h: Change package for gettext from 
6315         gtk+ to gtk20. Put hack in autogen.sh to modify
6316         po/Makefile.in.in after gettextize to make this
6317         possible.
6318
6319         * gtk+.spec: Some updates, not tested.
6320
6321         * gdk-pixbuf/Makefile.am: Move loaders into
6322         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
6323
6324         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
6325         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
6326         to THEMENAME/gtk-2.0/. Move engine directory  to
6327         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
6328         
6329 2000-07-12  Tor Lillqvist  <tml@iki.fi>
6330
6331         Win32 changes, still doesn't build though.
6332
6333         * gdk/makefile.cygwin
6334         * gdk/win32/makefile.cygwin
6335         * gtk/makefile.cygwin: Updates.
6336
6337         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
6338         default values for fg and bg pixel as X11 does (0 and 1), not
6339         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
6340         Use 0 for pen width by default (treated as 1 anyway later, but for
6341         apps that might check the value in the GdkGC).
6342         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
6343         interface to gdk_gc_predraw and _postdraw.
6344
6345         * gdk/win32/gdkwin32.h
6346         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
6347
6348         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
6349         extraneous semicolon.
6350
6351         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
6352
6353         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
6354         not the Win32 bitspixel value.
6355
6356         * gdk/win32/gdkcc-win32.c:
6357         * gdk/win32/gdkcolor-win32.c 
6358         * gdk/win32/gdkprivate-win32.h
6359         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
6360         GDK object structure.
6361
6362 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
6363
6364         * docs/tutorial/gtk_tut_12.es.sgml (name): 
6365         * docs/tutorial/gtk_tut_it.sgml (name): 
6366         * docs/tutorial/gtk_tut_fr.sgml (name): 
6367         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
6368         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
6369
6370 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
6371
6372         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
6373           small changes.
6374
6375 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
6376
6377         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
6378         a bug here, never been here and never fixed anything ;(
6379         (don't segfault if tree->root_tree is NULL, which happens prior
6380         to widget realization, but puke instead).
6381
6382 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
6383
6384         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
6385         add the necessary tokens.
6386
6387         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
6388         (gtk_rc_style_to_style): copy thicknesses.
6389         (gtk_rc_init_style): apply thicknesses.
6390         (gtk_rc_parse_style): parse xthickness and ythickness.
6391
6392         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
6393
6394         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
6395         (gdk_window_new): 
6396         (_gdk_windowing_window_init): 
6397         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
6398         (gdk_pixmap_create_from_data): 
6399         (gdk_bitmap_create_from_data): 
6400         (gdk_pixmap_new): 
6401         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
6402         (gdk_image_new): 
6403         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
6404         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
6405         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
6406         (gdk_colormap_get_system): 
6407         (gdk_colormap_new): 
6408         * gdk/gdkwindow.c (gdk_window_init): 
6409         * gtk/gtkstyle.c (gtk_style_new):
6410         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
6411         * gdk/gdkpixmap.c (gdk_pixmap_init): 
6412         * gtk/gtkrc.c (gtk_rc_style_new):
6413         use g_object_new() instead of g_type_create_instance() which
6414         is a private function for fundamental type implementations.
6415
6416 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
6417
6418         * configure.in: Add check for db2html
6419
6420 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
6421
6422         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
6423         hack to set glib_debug_objects based on gtk_debug_flags.
6424
6425 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
6426
6427         * INSTALL.in: Update the Prerequisites section.
6428
6429         * Makefile.am demos/Makefile.am docs/Makefile.am
6430         docs/tutorial/Makefile.am gdk/x11/Makefile.am
6431         gdk/linux-fb/Makefile.am: Dist fixes
6432
6433 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
6434
6435         * NEWS: 10,000 foot view of 1.3.1 changes.
6436
6437 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
6438
6439         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
6440         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
6441         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
6442         gdk/x11/gdkmain-x11.c: 
6443
6444         Patch from George Lebl to add a GdkGrabStatus enumeration to use
6445         as a return value of gdk_*_grab(). Previously, we just
6446         returned the X11 values directly.
6447
6448 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
6449
6450         * gdk/x11/Makefile.am: Patch from George Lebl to 
6451         install all the headers in the right place.
6452
6453 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
6454
6455         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
6456           initial conversion to DocBook.
6457
6458 2000-07-04  Tor Lillqvist  <tml@iki.fi>
6459
6460         * README.win32: Improve a bit.
6461
6462         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
6463         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
6464         Alt+0nnn on the numpad (used to enter characters by numeric code
6465         from current DOS or ANSI codepage) working correctly, as in other
6466         Windows apps.
6467
6468         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
6469         same argument validity tests as in X11 version.
6470         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
6471
6472         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
6473         definitions in case missing from headers.
6474
6475         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
6476         destroy the window-specific cursor.
6477         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
6478         calling GetModuleHandle(NULL).
6479         (gdk_window_set_cursor): Reworked to always copy the passed cursor
6480         with CopyCursor before setting it as the window-specific
6481         cursor. It is OK for the caller to destroy the GdkCursor (and thus
6482         also its Windows cursor) after calling this function. Destroy any
6483         previous window-specific cursor.
6484
6485 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
6486
6487         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
6488         font charset is iso8859-1, not iso-8859-1.
6489
6490 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
6491
6492         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
6493         Use g_get_charset() instead of g_get_codeset().
6494
6495         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
6496         Comment out some strdup'ing functions to keep timj
6497         happy until we finish fighting this out.
6498
6499 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
6500
6501         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
6502         <= width or height.
6503
6504         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
6505         from 1.2 for parent/child states.
6506
6507         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
6508         of typos.
6509
6510         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
6511         event structures, replace with a generic axes field. Replace 
6512         deviceid/sourec with GdkDevice *device.
6513
6514         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
6515         to extract particular axis use value from event. (Also
6516         can be used for normal X/Y.)
6517
6518         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
6519         allow for arbitrary number of axes, namespace everything
6520         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
6521         everywhere.
6522
6523         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
6524         Get rid of the gdk_input_vtable setup if favor of simply
6525         defining the functions in gdkinput-none/gxi/xfree.c in
6526         a similar fashion to the way that the port structure is 
6527         done.
6528
6529         * gtk/gtkdnd.c: Fix fields of synthesized button press event
6530         for new event structures. 
6531
6532         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
6533         new device interfaces.
6534
6535 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
6536
6537         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
6538         set the initial text.
6539
6540         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
6541         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
6542         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
6543         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
6544
6545         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6546         pango_layout_set_font_description to simplify.
6547
6548 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
6549
6550         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
6551         pango_layout_set_font_description to simplify.
6552
6553 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
6554
6555         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
6556         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
6557         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
6558
6559         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
6560         PANGO_PIXELS() macro.
6561
6562 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
6563
6564         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
6565         that returns a PangoContext owned by the widget and updated to
6566         match future changes in the widget. Also, make 
6567         gtk_widget_create_pango_layout() use this context. If we ever
6568         add a ::changed signal to PangoContext, this will make things
6569         much more convenient. 
6570
6571         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
6572         in the appropriate places instead of destroying the layouts and
6573         creating new ones.
6574
6575         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
6576         in a few strategic places.
6577
6578 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
6579
6580         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
6581         gtk_widget_size_request() on reparented child, if one. Otherwise,
6582         queue_resize() on the child never results in it getting size-requested
6583         at all.
6584
6585         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
6586         in option menus, so that (with luck) people won't copy it into
6587         their apps in the future.
6588
6589         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
6590         to gtk_option_menu_calc_size. This isn't perfect, but should fix
6591         a lot of problems with changing the size of the menu's menu
6592         items after adding it to the option menu.
6593
6594         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
6595
6596         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
6597         the text direction for a widget changes.
6598
6599         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
6600         ::direction_changed to get rid of various hacks.
6601
6602 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
6603
6604         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
6605         name.
6606
6607 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
6608
6609         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
6610         flag to the structure. Do not call XFreePixmap on pixmaps created
6611         by gdk_pixmap_foreign_new().
6612
6613 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
6614
6615         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
6616         value using GdkRGB functionality given GdkColormap and GdkColor.
6617         (name not final, waiting for inspiration.)
6618         
6619         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
6620         set the foreground/background of a GC using the GC's colormap
6621         and GdkRGB. (name not final, waiting for inspiration.)
6622
6623         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
6624         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
6625
6626         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
6627         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
6628         purely a function of the corresponding colormap. Make
6629         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
6630
6631         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
6632         gdk_pixbuf_*create_from_xpm_* in terms of
6633         gdk_pixbuf_new_from_xpm_data(), move into platform independent
6634         code.
6635
6636         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
6637         advantage of the new draw_rgb_32_image_dithalign.
6638
6639         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
6640
6641         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
6642         on each created GC.
6643
6644         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
6645
6646         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
6647         which we initialize from the drawable when the GC is created,
6648         if the drawable has a colormap.
6649
6650         * gdk/x11/gdkgc-x11.c: include string.h for memset.
6651
6652         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
6653
6654         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
6655
6656 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
6657
6658         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
6659         actually returning expose events, make sure to set
6660         the count field properly.
6661
6662         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
6663         accidentally reintroced bug which always cleared
6664         the graphics_exposures value. 
6665
6666 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
6667
6668         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
6669
6670 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
6671
6672         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
6673
6674 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
6675
6676         * docs/faq/gtk-faq.sgml: Start of Section 6.
6677
6678 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
6679
6680         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
6681         
6682         (Fixes problem with drawing childless frames. Pointed out
6683         by and a first patch from Anders)
6684         
6685         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
6686         compute a child_allocation, even if we don't have a child.
6687
6688         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
6689         Always chain to the parent's impl, even if we don't have a child.
6690
6691 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
6692
6693         * gdk/gdkrgb.c: If possible, create only a single shm segment and
6694         use multiple parts of it instead of creating a bunch of separate
6695         segments, since the maximum number of segments per system is not
6696         large. (This might be worth backporting to GTK+-1.2.x if we make a
6697         new release )
6698
6699         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
6700         structure in preparation for per-colormap GdkRGB.
6701
6702         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
6703         to False when we get EINVAL from shmget so that the caller of
6704         gdk_image_new can retry with a smaller segment size.
6705
6706 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
6707
6708         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
6709
6710 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
6711
6712         * configure.in: make the current version number 1.3.1 (binary age 0,
6713         interface age 0).
6714         
6715         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
6716         gtkcompat.h is all we want.
6717
6718         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
6719         GLib primitive types. fixed g_type_register_fundamental() argument
6720         ordering.
6721
6722         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
6723         compiles.
6724
6725         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
6726         object code cleanup, comment trigraph fixes, etc...
6727
6728 2000-06-23  Havoc Pennington  <hp@redhat.com>
6729
6730         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
6731         instead of making up a bogus name for first_para_mark
6732
6733         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
6734         0 as a context ID
6735
6736 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
6737
6738         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
6739
6740 2000-06-21  Havoc Pennington  <hp@pobox.com>
6741
6742         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
6743         we didn't check window->bg_pixmap != GDK_NO_BG.
6744
6745         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
6746         gdk-pixbuf
6747
6748 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
6749
6750         * docs/faq/gtk-faq.sgm: Move file to here.
6751           TODO: Update Makfile.am 
6752
6753 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
6754
6755         * docs/gtk-faq.sgm: Add Section 2
6756
6757 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
6758
6759         * docs/gtk-faq.sgm: New file. Start of DocBook
6760           version of the FAQ.
6761
6762 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
6763
6764         * configure.in (GDK_PIXBUF_MAJOR): Define version
6765         numbers for GDK_PIXBUF_*, as they get substituted
6766         into a header file. Need to consider versioning
6767         for gdk-pixbuf more carefully later.
6768
6769 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
6770
6771         Work with srcdir != builddir.   
6772         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
6773         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
6774         * demos/testpixbuf.c: Likewise.
6775         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
6776         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
6777         <gdk/x11/gdkx.h>.
6778         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
6779         "gdk-pixbuf.h".
6780         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
6781
6782 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
6783
6784         * TODO.xml: Change 1.4 version numbers to 2.0.
6785
6786 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
6787
6788         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
6789         fixups to GTK+ standard.
6790
6791 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
6792
6793         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
6794         gdk-pixbuf.
6795
6796         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
6797         fixups for GObject.
6798
6799         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
6800         gdk-pixbuf with GDK dependencies moved into GDK.
6801         
6802         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
6803         move gdk-pixbuf-loader here until GObject has signals.
6804
6805         * demos/: New directory of demos. Move demos from
6806         gdk-pixbuf here.
6807
6808         * demos/pixbuf-init.c: Small bit of code to check for
6809         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
6810         set GDK_PIXBUF_MODULEDIR appropriately.
6811
6812         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
6813         define which no longer makes sense.
6814
6815 2000-06-21  Havoc Pennington  <hp@redhat.com>
6816
6817         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
6818         gtk_get_default_language
6819
6820         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
6821         new function to get the default language
6822
6823         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
6824         s/gtk_text_view_style_values/gtk_text_style_values/
6825
6826         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
6827         Add a "language" field to tags.
6828
6829         (gtk_text_tag_set_arg): Fix bug in setting
6830         "bg_full_height_set" tag.
6831
6832 2000-06-21  Havoc Pennington  <hp@redhat.com>
6833
6834         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
6835         in the interfaces
6836
6837         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
6838         stuff instead when possible.
6839
6840         * gtk/gtktexttypes.h: Delete some unused constants
6841
6842         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
6843         testtextbuffer.c: use glib instead of custom unicode routines
6844
6845 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
6846
6847         * docs/es/: Removed mistakenly added generated sgml
6848
6849         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
6850         Remove outdated info files.
6851
6852         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
6853         Moved tutorial files into subdir
6854
6855         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
6856         subdir.
6857
6858         * docs/man/gtk_button.pod: Remove. (contents will be
6859         integrated into gtk-reference button page.)
6860
6861         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
6862         docs/faq/Makefile.am: Adjust for new organization
6863
6864 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
6865
6866         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
6867         not $(MKINSTALLDIRS)
6868
6869 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
6870
6871         * gtk/testgtk.c (create_text): Finish the job Elliot started
6872         of removing font setting test for text widget. (Since text widget
6873         and GdkFont are not deprecated, and cause portability problems.)
6874
6875 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
6876
6877         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
6878         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
6879         Remove use of libunicode in favor of new GLib functions.
6880
6881         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
6882         nano-x, framebuffer. The X11 include is just a hack until we get
6883         the necessary functions in gdkcolor.h, so there is no reason to
6884         add other includes of platforms.
6885
6886         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
6887         window bigger than the screen change.
6888
6889         * gtk/testgtk.c: Revert some random changes from Elliot
6890         that had no particular point and were causing testgtkrc
6891         not to function correctly.
6892         
6893         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
6894         because GdkSegment and GdkRegionBox have the same fields,
6895         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
6896         results in clearer code.
6897
6898         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
6899         gdk_input_translate_coordinates): Fix missed GdkObjectification
6900
6901 2000-06-18  Elliot Lee  <sopwith@redhat.com>
6902
6903         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
6904         * gtk/gtk{plug,socket}.h: Missed commits from previous.
6905
6906 2000-06-20  Havoc Pennington  <hp@redhat.com>
6907
6908         * modules/linux-fb/Makefile.am: Make this compile
6909         without framebuffer enabled
6910
6911         * gdk/linux-fb/Makefile.am: Add conditional to not build
6912         framebuffer unless specified in configure
6913
6914         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
6915         the size of the target instead of source if -1 was passed for
6916         width/height
6917
6918         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
6919         width/height confusion.
6920
6921 2000-06-19  Havoc Pennington  <hp@redhat.com>
6922
6923         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
6924         GDK_DRAWABLE_XID. In the future, we probably want to make it
6925         faster with G_DISABLE_CHECKS turned on.
6926
6927 2000-06-14  Havoc Pennington  <hp@redhat.com>
6928
6929         * gdk/Makefile.am: add gdkpixmap.c
6930
6931         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
6932         s/gdk_image_init/_gdk_windowing_image_init
6933
6934         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
6935         ref/unref
6936
6937         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
6938
6939         * gdk/gdkcompat.h: remove GdkWindowType compat, since
6940         GdkWindowType is now non-deprecated; 
6941         change gdk_window_get_type() compat to be
6942         gdk_window_get_window_type().
6943
6944         * gdk/gdkdnd.h: make GdkDragContext a GObject.
6945
6946         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
6947         virtual GObject. Make all functions call into the vtable.
6948         Move gdk_image_put() guts in here. Remove GdkDrawableType
6949         and gdk_drawable_get_type(), these are now GdkWindow-specific.
6950         draw_image, get_depth, get_size, set_colormap, get_colormap,
6951         get_visual added to the vtable.
6952         
6953         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
6954         GObject. Virtualize everything. 
6955         (gdk_gc_new_with_values): remove check for destroyed window,
6956         because now GdkWindow::create_gc will check this.
6957         (gdk_gc_set_values): New function to set GC values, this 
6958         was already implemented but wasn't in the header
6959
6960         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
6961
6962         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
6963         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
6964         remove _gdk_window_class; add _gdk_window_impl_get_type() and
6965         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
6966         _gdk_windowing_window_init, rename gdk_image_init to
6967         _gdk_windowing_image_init.
6968         
6969         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
6970         (gdk_draw_layout): Remove check for destroyed window, 
6971         because all the drawable methods already check it.
6972         
6973         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
6974         Add gdkpixmap.c which contains implementation of GdkDrawable
6975         virtual table (by chaining to a platform-specific implementation
6976         object).
6977         
6978         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
6979         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
6980         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
6981         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
6982         GdkColormapPrivate. 
6983
6984         * gdk/gdktypes.h: #include <glib-object.h>
6985
6986         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
6987         Move most functionality to platform-specific implementation
6988         object. GdkWindow itself now handles the backing store, then
6989         chains to the platform-specific implementation.
6990         (gdk_window_get_window_type): return GdkWindowType of the window.
6991         (gdk_window_peek_children): New routine, returns the children of 
6992         a GdkWindow
6993         (gdk_window_get_children): Was in X11-specific code and did 
6994         XQueryTree. Changed to simply return a copy of window->children; 
6995         so it can go in cross-platform code.
6996         
6997         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
6998
6999         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
7000         GdkColormap; just changed to use the new private data instead
7001         of casting to GdkColormapPrivate.
7002
7003         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
7004         gdk_cursor_new().
7005
7006         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
7007         (private data member in the GObject). 
7008         (xdnd_manager_source_filter): Function had broken 
7009         error handling, fix it (use gdk_error_trap_push).
7010
7011         * gdk/x11/gdkdrawable-x11.c: This file now implements
7012         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
7013         base class is purely for the convenience of the X port,
7014         and not part of the interface to cross-platform GDK.
7015
7016         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
7017         
7018         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
7019         specific to X, and returned by the create_gc virtual method
7020         of GdkDrawableImplX11. 
7021         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
7022         rather than gchar, this was also changed in the GdkGC vtable.
7023         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
7024         mask is 0, return immediately, instead of checking every flag.
7025         This is faster, and keeps us from segfaulting if values is NULL
7026         and the mask contains some nonzero flags.
7027
7028         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
7029         GdkWindow.
7030
7031         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
7032         GdkWindowPrivate is gone.
7033
7034         * gdk/x11/gdkim-x11.c: rename things that got renamed.
7035
7036         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
7037         remove the image_put stuff that got transferred to GdkDrawable.
7038         
7039         * gdk/x11/gdkinput.c: renamings
7040
7041         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
7042
7043         * gdk/x11/gdkpixmap-x11.c: GObject conversion
7044
7045         * gdk/x11/gdkprivate-x11.h: indentation fixes
7046
7047         * gdk/x11/gdkproperty-x11.c: renamings
7048
7049         * gdk/x11/gdkselection-x11.c: renamings
7050
7051         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
7052         implements the platform-specific "impl" object.
7053         Moved gdk_window_get_children to gdk/gdkwindow.c
7054
7055         * gdk/x11/gdkx.h: Remove all the private structs and private datas
7056         that no longer exist. Add declaration of GdkGCX11 object here.
7057         Fix all the macros to still work. 
7058
7059         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
7060         GdkDragContext from the boxed types since they are now GObjects.
7061
7062         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
7063         moved xthickness/ythickness into the instance. GtkStyleClass
7064         functions are now in the standard vtable for GtkStyle, so you have
7065         to create a GObject subclass to write a theme engine.
7066         (gtk_style_copy): fixed a leaked PangoFontDescription
7067         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
7068         can be the standard GObject function.
7069         
7070         * Throughout GTK:
7071         s/style->klass->[xy]thickness/style->[xy]thickness
7072         s/pango_layout_unref/g_object_unref/
7073
7074         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
7075         
7076         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
7077         accessing GDK internals.
7078
7079         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
7080         accessing GDK internals.
7081
7082 2000-06-18  Elliot Lee  <sopwith@redhat.com>
7083
7084         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
7085
7086         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
7087         problem by calculating event position relative to the trough
7088         rather than the slider.
7089         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
7090
7091         * gdk/gdkgc.h: Add GDK_NOR.
7092
7093         * configure.in, Makefile.am: Add modules top level dir
7094         * configure.in: Only use pangox library if building x11 target.
7095         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
7096
7097 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7098
7099         * gtk/gtkcolorsel.c: Change private class member to be named
7100         private_data throughout the file.
7101
7102         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
7103         private_data to avoid clashing with keyword.
7104
7105 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
7106
7107         * gdk/gdkdnd.h: Add comment to remove warning.
7108
7109 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
7110
7111         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
7112         Byelorussian language; changed the Makefile and file names 
7113         to reflect that.
7114
7115 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
7116
7117         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
7118         rather than gdk_window_hide; this makes things work
7119         correctly if the window is programmatically hidden while
7120         iconified.
7121
7122 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
7123
7124         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
7125         cut and paste typo where wrong pixmap was being
7126         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
7127
7128 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
7129
7130         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
7131         Add helper function to compute format / bytes 
7132         relationship. Use in a couple places to fix up
7133         errors which assume 8 * format.
7134
7135         * gtk/gtkselection.c (gtk_selection_request): Use 32
7136         rather than 8 * sizeof (GdkAtom), to work correctly
7137         on Alpha.
7138
7139 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
7140
7141         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
7142         libgtk.la
7143         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
7144         versions
7145
7146         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
7147         checking macros return NULL since the function has a return value.
7148
7149 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
7150
7151         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
7152         GTK+ from building at all.
7153
7154         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
7155
7156 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
7157
7158         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
7159         gtk/Makefile.am: make it possible to configure gtk for different
7160         targets on the same platform. The library name is now 
7161         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
7162         flag. Only the x11 target compiles right now.
7163         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
7164         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
7165         * gdk/nanox/gdk*generic*: delete generic region code.
7166         * gdk/linux-fb/gdk*generic*: delete generic region code.
7167         * README.nanox: update information.
7168         
7169 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
7170
7171         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
7172         prepend not append. (Pointed out by Brett Hall.)
7173
7174 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
7175
7176         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
7177
7178 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
7179
7180         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
7181         need this later, and this makes sure that the atexit for
7182         glib gets called after that for GDK, so atexits are
7183         properly ordered for object leak checking.
7184
7185         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
7186
7187         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
7188         pango_x_shutdown_display()
7189
7190         * gtk/simple.c (main): Close window on destroy.
7191
7192 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
7193
7194         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
7195         to treat initial creation different from setting with 
7196         regards to the graphics-exposures parameter, so add a parameter
7197         indicating whether this is initial or not.
7198
7199 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
7200
7201         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
7202         to sort of work by adding an extra return_exposes arg
7203         to gdk_event_translate() - it might be better to simply
7204         deprecate the function altogether and force people to rewrite
7205         without it. gdk_window_scroll() handles most of it, and where
7206         gdk_window_scroll() doesn't work, simply redrawing more does.
7207
7208         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
7209         assertion.
7210
7211         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
7212
7213         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
7214         bunch of pretty much useless /* Print debugging info */ comments 
7215         which had drifted away from the code they were commenting.
7216
7217 2000-06-02  Havoc Pennington  <hp@pobox.com>
7218
7219         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
7220         is in working order.
7221         
7222         * gtk/testtext.c: Change to reflect anonymous mark API
7223
7224         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
7225
7226         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
7227         field, which was unused.
7228
7229         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
7230         saves some typing.
7231
7232         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
7233
7234         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
7235         flag on the insertion point and selection bound
7236
7237         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
7238         make mark-manipulation functions take a GtkTextMark* instead of a
7239         mark name.
7240         
7241         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
7242         GtkTextMarkBody; will be used to detect attempts to delete
7243         the permanent marks (insert and selection bound)
7244
7245         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
7246
7247 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
7248
7249         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
7250         flag to on.
7251
7252         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
7253         Honor DOUBLE_BUFFRED_FLAG
7254
7255         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
7256         function to set the DOUBLE_BUFFERED flag.
7257
7258         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
7259         or not exposes done on the widget should be double-buffered.
7260
7261         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
7262         to be what would be expected. (Fixes problem with a
7263         g_return_if_fail() validating a TextDirection enumeration)
7264
7265 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
7266
7267         * gtk/gtkwidget.c: Remove all references to 
7268         offscreen flag which was no longer used.
7269
7270         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
7271
7272         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
7273         for non-null label_widget->parent.
7274
7275         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
7276         which no longer was used.
7277
7278         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
7279
7280         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
7281         for null arguments.
7282
7283         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
7284         check for destroyed windows.
7285
7286 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
7287
7288         * gtk/gtkimmulticontext.c: Add a finalize method and unref
7289         the slave context there.
7290
7291         * gtk/gtkinvisible.[ch]: Make reference counting behavior
7292         identical to GtkWindow.
7293
7294 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
7295
7296         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
7297         pangox to here, so we can write them independent of rendering
7298         system, using GDK primitives.
7299
7300         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
7301         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
7302         since we have a rendering-system independent implementation in
7303         terms of draw_glyphs().
7304         
7305         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
7306         function to render a single line.
7307
7308         * gdk/x11/gdkpango.c: Move the guts of this file mostly
7309         into ../gdkpango.c, which simplifies things, since we
7310         don't have to deal with raw X gc's.
7311
7312 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
7313
7314         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
7315         get the logical attributes for a given GtkTextLine.
7316
7317 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
7318
7319         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
7320         g_locale_get_codeset() to g_get_codeset() change.
7321
7322 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
7323
7324         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
7325         descriptions.
7326
7327         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
7328         the entry.
7329
7330         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
7331         redoing (vastly simplifying) for Pango. Still needs quite
7332         a bit of work. (Size selection is currently poor. List of 
7333         predefined sizes is not a good idea, since all of these
7334         sizes won't necessarily be distinct.)
7335
7336 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
7337
7338         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
7339         CODESET results for LANG=C.
7340
7341 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
7342
7343         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
7344         which takes a stringized pango font description;
7345         ignore the older 'font' and 'fontset' declarations.
7346
7347         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
7348         field with a GdkFont derived via gdk_font_from_description(),
7349         for compatibility. (Should we just remove it entirely?
7350         Probably too much compatibility breakage, but people
7351         should be migrating to the new Pango stuff as quickly
7352         as possible.)
7353
7354 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
7355
7356         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
7357
7358 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
7359
7360         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
7361         redoing; there are some bugs in size allocation right
7362         now, the semi-existant distinction between header / day
7363         fonts was removed, but, with Pango, could actually
7364         be made functional in a nice way.
7365         
7366         * gtk/testcalender: Move calender from examples into this
7367         directory as a test program. (We really need to restrcture
7368         testgtk into a whole directory full of tests for every
7369         widget or functionality group, separated into multiple .c
7370         files.)
7371
7372 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
7373
7374         * gtk/testgtk.c (file_exists): Fix stupid typo that
7375         was keeping RC file from being loaded.
7376
7377         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
7378         RC file font code.
7379
7380 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
7381
7382         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
7383         Add function to load a GdkFont from a PangoFontDescription.
7384
7385 2000-05-29  Tor Lillqvist  <tml@iki.fi>
7386
7387         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
7388         variable should be of type GdkEventPrivate.
7389
7390 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
7391
7392         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
7393         to have any widget for the label, use a GtkLabel widget
7394         to display the text. (Based partially on a patch from
7395         Anders Carlson.)
7396
7397         (Quite a bit of code reorganization - strip 90% of the
7398         guts out of gtkaspectframe and add a single virtual
7399         func to GtkFrameClass - compute_child_allocation.)
7400
7401 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
7402
7403         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
7404         (Removed clist->row_center_offset field because caching
7405         it wasn't saving time or code, added private function
7406         _gtk_clist_create_cell_layout()).
7407
7408 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
7409
7410         * gtk/gtkaccellabel.c: Pangoized.
7411
7412         * gtk/[hv]ruler.c: Pangoized
7413
7414 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
7415
7416         * gtk/gtkfilesel.c (gtk_file_selection_init):
7417         Use gtk_clist_set_column_auto_resize() to remove need
7418         need for manual column width computations.
7419
7420 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
7421
7422         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
7423         ensuring Pango correctness, and considerably simplifying the
7424         code.
7425         
7426         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
7427
7428         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
7429         getting of numbers of lines.
7430
7431         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
7432         to the actual requested width of the lable, not to the wrap
7433         width we set.
7434
7435         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
7436
7437         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
7438           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
7439
7440         * gtk/gtktextview.c: Fix structure inheritance.
7441
7442         * gtk/gtkprogressbar.c: Pangoize.
7443
7444 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
7445
7446         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
7447         in a function.
7448
7449         * gtk/gtktextlayout.c (find_display_line_above): Fixed
7450         bug with computing line tops.
7451
7452         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
7453
7454 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
7455
7456         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
7457         and y_offset coordinates to do what we need now. (The offset between
7458         buffer and layout coordinates has been reintroduced, but is a 
7459         bit different than before.)
7460
7461         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
7462         handle the adjustments ourselves, and scroll as necessary using
7463         the new gdk_window_scroll().
7464         
7465         The advantage of this is that when we are incrementally revalidating,
7466         we are essentially rearranging things around the visible portion
7467         of the screen. With the old setup, the visible portion of the
7468         screen was moved around in the layout, so scrolling and redrawing
7469         to track that caused jumping of the display. Since we now
7470         control the scrolling ourselves, we can suppress this and
7471         only redraw when things actually change.
7472
7473 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
7474
7475         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
7476         the region not just redisplay it after-all, since we store the
7477         cursors in the LineDisplay. (Ugly interactions here between
7478         GtkLayout and GtkTextBTree here.)
7479         
7480         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
7481
7482 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
7483
7484         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
7485         Added function to scroll contents of a window while keeping the
7486         window constant. Works by XCopyArea or guffaw-scrolling depending
7487         on the details of how the window is set up. (guffaw-scrolling
7488         still needs to be filled in.)
7489
7490 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
7491
7492         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
7493         move the debugging that was tied to a global variable
7494         to that.
7495
7496         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
7497
7498         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
7499         validated flag, in line data instead of setting height/width to
7500         -1. This allows us to perform operations with partially invalid
7501         buffer (using the old size for invalid lines) and thus to do
7502         incremental vaidation. Keep height/width aggregates up to date
7503         when deleting text and rebalancing the tree.
7504
7505         * gtk/gtktextbtree.[ch]: Add functions validate a line
7506         (gtk_text_btree_validate_line), and to validate up
7507         to a number of pixels (gtk_text_btree_validate).
7508
7509         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
7510         that indicates that something is changed and a revalidation
7511         pass is needed. Change ::need_repaint to ::changed, and
7512         make it take old and new yranges instead of a rectangle.
7513
7514         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
7515         the line_data_destroy() function from 
7516         gtk_text_btree_add_view() to a virtual function in 
7517         GtkTextLayout
7518
7519         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
7520         since we are handling partial repaints in a different fashion
7521         now.
7522
7523         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
7524         of the selection instead of queueing a repaint on the
7525         entire widget.
7526
7527         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
7528         get_selection_bounds() down to btree, make the function
7529         in buffer a wrapper around the btree function.
7530
7531         * gtk/gtktextlayout.[ch]: Add functions to check if the
7532         layout is valid and to recompute either a range of pixels
7533         aroudn a line or a certain total number of pixels.
7534
7535         * gtk/gtktextlayout.[ch]: Cache a single line display;
7536         now that we only redraw the needed portions, the hit rate
7537         for this cache is quite high.
7538         
7539         * gtk/gtktextview.[ch]: Keep track of the first paragraph
7540         on the screen so that when re-laying-out the buffer, we can
7541         keep the same place. This requires connecting to ::value_changed
7542         on the adjustments
7543
7544         * gtk/gtktextview.[ch]: Add idle functions to revalidate
7545         the buffer after we receive an ::invalidated signal.
7546         
7547 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
7548
7549         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
7550         to max of allocation and layout size, not just to the
7551         layout size.
7552
7553         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
7554         Invalidate window so it gets redrawn properly.
7555
7556         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
7557         to mean the entire window.
7558
7559         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
7560         into public header.
7561
7562 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7563
7564         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
7565         to get the name of a mark.
7566
7567         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
7568         to find the paragraph from a y position.
7569
7570 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
7571
7572         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
7573         nodes have width/height >= 0, not > 0.
7574
7575 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
7576
7577         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
7578         Add a size_only flag, so when we only need the size, we don't create
7579         useless appearance attributes.
7580
7581         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
7582         duplicate setting of font description.
7583
7584         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
7585
7586 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
7587
7588         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
7589         EXTRA_DIST. It does not work well when the file that
7590         everything depends on is not in the tarball.
7591
7592 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
7593
7594         * gtk/testgtk.c: Some hacks and fixes so that it basically
7595         works when not sitting in the GTK+ build tree.
7596
7597 2000-05-03  Havoc Pennington  <hp@redhat.com>
7598
7599         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7600         Properly determine the ordering of the tag root and the current
7601         line within the tree. Previous algorithm only worked if the tag
7602         root's immediate parent was the common root of both the current
7603         line and the tag root.
7604
7605 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
7606
7607         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
7608         alignment.
7609
7610         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
7611         the widget text directional dynamically.
7612
7613         * gtk/gtktextview.[ch]: Added functions to get and set default
7614         wrap mode.
7615
7616 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
7617
7618         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
7619         in cursor location computation.
7620
7621 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
7622
7623         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
7624         vadjusment values properly when layout gets smaller.
7625
7626         * gtk/gtktextview.c (need_repaint_handler): Areas being
7627         passed in are far completely inaccurate, and sometimes
7628         too small, so, for now, just queue a redraw on the
7629         whole visible region.
7630
7631 2000-04-25  Havoc Pennington  <hp@redhat.com>
7632
7633         * gtk/gtktextbtree.c (summary_destroy): new function to 
7634         destroy tag summary nodes
7635         (gtk_text_line_next_could_contain_tag): this function was 
7636         totally broken if the line passed in wasn't below the tag
7637         root. Fix it.
7638         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
7639         "wildcard" case, we have to do a linear scan. Blah.
7640         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
7641         we have to do the linear scan
7642         (tag_removed_cb): When a tag is removed from the tag table, 
7643         remove the GtkTextTagInfo node from the btree.
7644         (gtk_text_btree_spew): Implement the spew function, for 
7645         our debugging pleasure.
7646
7647 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
7648
7649         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
7650         a problem with referring to the wrong buffer.
7651
7652         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
7653
7654         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
7655         font description to gtk_style_new() - otherwise things
7656         don't work without a .gtkrc file.
7657
7658         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
7659         tags table if we create it ourself, too.
7660
7661         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
7662         it was conflicting with XKB modifiers.
7663
7664         * gtk/gtktextview.[ch]: Add simple support for 
7665         GtkIMContext.
7666
7667 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
7668
7669         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
7670         with deletion from last commit.
7671
7672 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
7673
7674         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
7675         in the context from the current locale.
7676         
7677         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
7678         context, not hardcoded value.
7679
7680         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
7681         not logical.
7682
7683 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
7684
7685         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
7686         attributes - that doesn't handle partial-glyph selection
7687         properly. Instead use new pango_layout_line_get_x_ranges()
7688         functionality to draw the selection.
7689
7690         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
7691         now properly handles out-of-range coordinates.
7692
7693         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
7694
7695         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
7696         public.
7697
7698         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
7699         for paragraphs opposite to the base direction of the widget.
7700
7701         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
7702
7703         * gtk/gtktextlayout.c: Don't split segments on marks, since that
7704         causes Arabic words to reshape as you cursor through.
7705
7706         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
7707         cursor position when moving vertically with the arrow keys and
7708         scrolling with page-up/page-down. (Arrow keys save only the X,
7709         scrolling saves both X and Y.)
7710
7711         This means you can line-up / line-down or page-up / page-down
7712         without losing your place, and also that moving vertically
7713         with the cursor keys keeps the same X position, not the same
7714         character count:
7715
7716         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
7717         arrow keys move by display lines, not paragraphs.
7718
7719 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
7720
7721         * gtk/gtklayout.c: Make sure that the bin window is at least
7722         as big as the allocation. (Should we also make sure that the
7723         bin window is big enough to completely cover widget->window?)
7724
7725         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
7726         function to get the onscreen rectangle.
7727
7728         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
7729         for offsets in window coordinates.
7730
7731 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
7732
7733         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
7734         confusion.
7735
7736         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
7737         from the widget direction.
7738
7739         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
7740         Add a "direction" attribute.
7741
7742         * gtk/gtktextview.c: global s/tkxt/text_view/.
7743
7744         * gtk/testtext.c: Added long block of text in Arabic, to test out
7745         the direction attributes. (Some problems with the shaping system
7746         for arabic become obvious - like the fact the cursor splits words
7747         into unjoined pieces.)
7748
7749 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
7750
7751         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
7752
7753         * gtk/gtktextlayout.c: Fix up alignment.
7754
7755         * gtk/testtext.c: Add some tests for centering, wrapping.
7756
7757 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
7758
7759         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7760         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
7761         If we wrote GTK+-specific layout-render function this could just replace
7762         the draw_layout() operation in the vtable.
7763
7764         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
7765         pango_layout_get_cursor_pos() and use that function.
7766
7767         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
7768         is a non-static symbol.
7769
7770         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
7771         with gtk_text_btree_find_line_by_y()
7772
7773         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
7774         renderer that handles GtkTextAppearance attributes.
7775
7776         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
7777
7778           - Move the values in the style that don't affect geometry into a
7779             GtkTextAppearance structure.
7780           - Change underline to take a PangoUnderline and "font" a string
7781             representation of a font description
7782           - Add a "font_desc" attribute which takes a FontDescription structure.
7783
7784         * gtk/gtktextlayout.[ch]:
7785
7786           - Get rid of the display-line list per each line. Instead, we
7787             generate, on demand, a GtkTextLineDisplay structure which]
7788             contains a PangoLayout * and other necesary information
7789             (offsets, cursor locations) for displaying a paragraph.
7790           - Get rid of the code to wrap lines, create display chunks,
7791             etc. Instead, we just go through a paragraph and convert
7792             it into the necessary inputs to a PangoLayout.
7793           - Implement a new attribute type, GtkTextAttrAppearance. This
7794             holds a GtkTextAppearance, and is used to pass colors, 
7795             stipple, etc, through from the layout to the display without
7796             having to use lots and lots of individual attributes.
7797           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
7798             in terms of PangoLayout functions.
7799         
7800         * gtk/gtktextview.c: 
7801          
7802           - Handle passing the necessary PangoContext to the layout
7803           - Some fixups in painting to deal with the automatic backing store
7804             and offsetting of GTK+-1.4
7805           - Add a style_set handler so that the default style reacts
7806             properly to theme changes.
7807         
7808         * gtk/gtktext?*.[ch]: Random code-style fixes.
7809
7810         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
7811
7812 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
7813
7814         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
7815         in original form preparatory to Pango-ization and gdkimcontext-ization.
7816
7817 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
7818
7819         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
7820         so that we can derive from gtkimcontext in language bindings properly.
7821
7822 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
7823
7824         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
7825         Add a compose table including (almost) all the compose combinations
7826         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
7827         data in the XIM implementation.
7828
7829         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
7830         Moved functions to convert keyvalues from and to unicode here from
7831         the win32 port and made them public.
7832
7833 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
7834
7835         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
7836
7837 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
7838
7839         * gtk/gtkimcontext.[ch]: Base class for new input context system
7840
7841         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
7842         the real input context implementation to be loaded from modules
7843         and switched on the fly.
7844
7845         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
7846         context that just does direct keysymbol => unicode translation.
7847
7848         * gtk/gtkentry.[ch]: Start switching editing over to using
7849         GtkInputContext. (No handling of preedit yet.)
7850
7851 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
7852
7853         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
7854         many substitutions. (klass should not be subsituted.)
7855
7856 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
7857
7858         * configure.in: Add checks for Pango
7859
7860         * configure.in docs/Makefile.am: Add test for sgml2html
7861         and allow 'make dist' without building html, but print out
7862         warnings in that case. (For making snapshots)
7863
7864         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
7865         Add Pango libraries and C flags
7866
7867         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
7868         Add function (gdk_draw_layout) to draw a pango layout.
7869
7870         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
7871         for getting Pango contexts for GDK.
7872
7873         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
7874
7875         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
7876         editing.
7877
7878         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
7879         keysym => unicode translations. More languages can be added
7880         here, but real input-method support is needed.
7881
7882         * docs/Changes-1.4.txt: Added note about entry behavior.
7883         
7884         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
7885         to set the reading direction for a widget and the global direction.
7886         Add test which allows toggling the global direction. Two private
7887         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
7888
7889         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
7890           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
7891
7892         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
7893
7894         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
7895         underlining now handled by Pango.
7896
7897         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
7898         to RCStyle and Style. (Having both this and the old font name and GdkFont 
7899         is temporary.)
7900
7901         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
7902         convenience functions for creating contexts and layouts for widgets.
7903
7904         * gtk/testgtk.c: Enhance label tests with multilingual labels.
7905
7906 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
7907
7908         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
7909         titles to be active, even if they aren't visible.
7910         (gtk_clist_column_titles_passive):  Ditto.
7911
7912 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
7913
7914         * gtkmenu.c:
7915         * gtkmenu.h:
7916         * gtktypeutils.h: Spelling/grammar fixes in comments.
7917
7918 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
7919
7920         * gdk/nanox/*.h: add missing header files.
7921
7922 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
7923
7924         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
7925         send_event to TRUE.
7926         (gtk_drawing_area_size): queue a resize.
7927
7928 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
7929
7930         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
7931         the handlers, also invalidate them. bug nailed down by Karl Nelson
7932         <kenelson@ece.ucdavis.edu>.
7933
7934 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
7935
7936         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
7937         "(nil)" foundries, patch from Grigorios Magklis.
7938
7939         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
7940         on non-available fonts, based on a patch by Grigorios Magklis
7941         <maglis@cs.rochester.edu>.
7942
7943 2000-05-18  Elliot Lee  <sopwith@redhat.com>
7944
7945         * gdk/x11/gdkregion-generic.c: If a region does not have any
7946         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
7947         instead of GDK_OVERLAP_RECTANGLE_IN.
7948
7949 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
7950
7951         * gtk/gtklayout.c (gtk_layout_map): Remove references to
7952         OFFSCREEN, as it is no longer necessary.
7953
7954 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
7955
7956         * gtk/gtkcolorsel.c: Patch from David Santiago
7957         <mrcooger@cyberverse.com> to change things so that the 
7958         indicator of the active palette entry is done independently,
7959         not via the focus, since it should always be visible.
7960
7961 2000-05-17  Tor Lillqvist  <tml@iki.fi>
7962
7963         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
7964         refcount leaks as in the X11 backend.
7965
7966         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
7967         cosmetics.
7968
7969         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
7970         backend. Add _gdk_windowing_window_destroy().
7971
7972         * gtk/gtkcolorsel.c: Include correct backend-specific header.
7973         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
7974         either, but these probably do exist on nanox?)
7975         
7976         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
7977         which isn't necessarily defined by <math.h>.
7978
7979         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
7980         ancestry past GtkObject.
7981
7982         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
7983         from DLL on Win32.
7984
7985         * gtk/gtk.def: Update corresponding to recent changes.
7986
7987         * gtk/makefile.{cygwin,msc}: Updates.
7988
7989 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
7990
7991         * docs/Changes-1.4.txt: A bit of editing.
7992
7993         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
7994         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
7995         to clear the update area for the window, and clear it
7996         when hiding a window.
7997
7998         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
7999         if window destroyed.
8000
8001         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
8002
8003         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
8004         gdk_window_destroy() to the generic code, since there was a lot of 
8005         window-system-independent logic it in. Add a function:
8006         
8007          _gdk_window_destroy() 
8008
8009         to the internal API to destroy a window without unreferencing it.
8010         Add a function:
8011
8012          _gdk_windowing_window_destroy()
8013
8014         That does the windowing-system-dependent part of destroying 
8015         the window.
8016
8017 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
8018
8019         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
8020
8021 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
8022
8023         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
8024         Make gtk_widget_shape_combine_mask() keep a reference count on
8025         the pixmap since it keeps it around.
8026
8027 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
8028
8029         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
8030         leak.
8031
8032         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
8033         leak with event filters.
8034
8035 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
8036
8037         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
8038         signal handlers with the right data arguments. (Fixes
8039         some warnings when a widget was repeatedly set as a drag
8040         destination.)
8041
8042         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
8043         window so we can avoid avoid setting the DND properties on the
8044         toplevel window repeatedly.
8045
8046 2000-05-13  Tor Lillqvist  <tml@iki.fi>
8047
8048         * gdk/win32/gdkwin32.h: Define more message types missing from
8049         mingw headers.
8050
8051         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
8052         call gdk_window_destroy_notify(). It was never called. This
8053         probably meant that the GdkWindow was never freed. Thanks Owen for
8054         noticing (!).
8055
8056         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
8057         window as destroyed before calling DestroyWindow(). DestroyWindow()
8058         causes a call to the window procedure (gdk_WindowProc), which
8059         calls gdk_event_translate(), which calls
8060         gdk_window_destroy_notify(), which gets confused unless the window
8061         is set as destroyed.
8062
8063         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
8064         this function to indicate it's win32 only. Put inside #ifdef
8065         G_ENABLE_DEBUG.
8066
8067         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
8068         debugging function. (gdk_event_translate:) Add a default branch
8069         that uses the above function to print debug messages with all
8070         Windows messages symbolically.
8071
8072         * gdk/win32/gdkprivate-win32.h: Declare it, and
8073         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
8074
8075 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
8076
8077         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
8078         public header file.
8079
8080 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
8081
8082         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
8083
8084         * gtk/gtktext.c: made the adjustments no-construct args, simply
8085         provide default adjustments.
8086         (gtk_text_destroy): release adjustments.
8087
8088         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
8089         adjustment argument non-construct.
8090
8091         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
8092         instead of in finalize.
8093         (gtk_progress_get_text_from_value): 
8094         (gtk_progress_get_current_text): 
8095         (gtk_progress_set_value): 
8096         (gtk_progress_get_percentage_from_value): 
8097         (gtk_progress_get_current_percentage): 
8098         (gtk_progress_set_percentage): 
8099         (gtk_progress_configure): ensure an adjustment is present.
8100
8101 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
8102
8103         * gtk/gtkcolorsel.[hc]:
8104         * gtk/gtkcolorseldialog.[hc]:
8105         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
8106         their parent implementation, use bit fields for boolean values, don't
8107         create unused widgets, usage of glib types, braces go on their own
8108         lines, function argument alignment, #include directives etc. etc. etc..
8109
8110         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
8111
8112 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
8113
8114         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
8115
8116         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
8117         of NULL.
8118
8119         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
8120         to freed data.
8121         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
8122
8123         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
8124         to NULL when the toplevel is getting destroyed.
8125         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
8126         (gtk_menu_destroy): 
8127         (gtk_menu_init): store the information of whether we have to
8128         readd the initial child ref_count during destruction in a new
8129         GtkMenu field needs_destruction_ref_count.
8130
8131         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
8132         here, those reading: learn from my mistake! ;)
8133         in order for set_?adjustment to support a default adjustemnt if
8134         invoked with an adjustment pointer of NULL, the code read (pseudo):
8135         if (v->adjustment) unref (v->adjustment);
8136         if (!adjustment) adjustment = adjustment_new ();
8137         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
8138         now imagine the first unref to actually free the old adjustment and
8139         adjustment_new() creating a new adjustment from the very same memory
8140         portion. here, the latter comparision will unintendedly fail, and
8141         all hell breaks loose.
8142         (gtk_viewport_set_hadjustment):
8143         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
8144         after unreferencing it.
8145
8146         * gtk/gtkcontainer.[hc]: removed toplevel registration
8147         functions: gtk_container_register_toplevel(),
8148         gtk_container_unregister_toplevel() and
8149         gtk_container_get_toplevels() which had wrong semantics
8150         anyways: it didn't reference and copy the list.
8151
8152         * gtk/gtkwindow.c: we take over the container toplevel registration
8153         bussiness now. windows are registered across multiple destructions,
8154         untill they are finalized. the initial implicit reference count
8155         users are holding on windows is removed with the first destruction
8156         though.
8157         (gtk_window_init): ref & sink and set has_user_ref_count, got
8158         rid of gtk_container_register_toplevel() call. add window to
8159         toplevel_list.
8160         (gtk_window_destroy): unref the window if has_user_ref_count
8161         is still set, got rid of call to
8162         gtk_container_unregister_toplevel().
8163         (gtk_window_finalize): remove window from toplevel list.
8164         (gtk_window_list_toplevels): new function to return a newly
8165         created list with referenced toplevels.
8166         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
8167
8168         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
8169         adjustment a non-construct arg.
8170         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
8171         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
8172         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
8173
8174         * gtk/gtkrange.c: added some realized checks.
8175         (gtk_range_destroy): get rid of the h/v adjustments in the
8176         destroy handler instead of finalize. remove timer.
8177         (gtk_range_get_adjustment): demand create adjustment.
8178
8179         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
8180         we simply create them on demand now and get rid of them in
8181         the destroy handler.
8182         (gtk_viewport_destroy): get rid of the h/v adjustments in the
8183         destroy handler instead of finalize.
8184         (gtk_viewport_get_hadjustment): 
8185         (gtk_viewport_get_vadjustment): 
8186         (gtk_viewport_size_allocate): demand create h/v adjustment
8187         if required.
8188
8189         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
8190         gtk_widget_real_destroy () functionality.
8191         (gtk_widget_real_destroy): reinitialize with a new style, instead
8192         of setting widget->style to NULL.
8193
8194 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
8195
8196         * gtk/gtkcalendar.c:
8197         * gtk/gtkbutton.c: ported _get_type() implementation over to
8198         GType, either to preserve memchunks allocation facilities,
8199         or because Gtk+ 1.0 GtkTypeInfo was still being used.
8200
8201         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
8202         over. prepare for ::destroy to be emitted multiple times.
8203         removed reference tracer magic. chain into GObjectClass.shutdown()
8204         to emit ::destroy signal.
8205
8206         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
8207         fundamental.
8208
8209         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
8210         cludge.
8211
8212         * gtk/gtksocket.c:
8213         * gtk/gtkplug.c:
8214         * gtk/gtklayout.c:
8215         * gtk/gtklabel.c:
8216         * gtk/gtkargcollector.c:
8217         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
8218         not being a fundamental anymore, and to work with the new
8219         type system (nuked fundamental type varargs clutter).
8220
8221         * gtk/*.c: install finalize handlers in the GObjectClass
8222         part of the class structure.
8223         changed direct GTK_OBJECT()->klass accesses to
8224         GTK_*_GET_CLASS().
8225         changed direct object_class->type accesses to GTK_CLASS_TYPE().
8226
8227         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
8228         GType. made most of the GTK_*() type macros and Gtk* typedefs
8229         simple wrappers around macros and types provided by GType.
8230         most notably, a significant portion of the old API vanished:
8231         GTK_TYPE_MAKE(),
8232         GTK_TYPE_SEQNO(),
8233         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
8234         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
8235         GTK_TYPE_ARGS,
8236         GTK_TYPE_CALLBACK,
8237         GTK_TYPE_C_CALLBACK,
8238         GTK_TYPE_FOREIGN,
8239         GtkTypeQuery,
8240         gtk_type_query(),
8241         gtk_type_set_varargs_type(),
8242         gtk_type_get_varargs_type(),
8243         gtk_type_check_object_cast(),
8244         gtk_type_check_class_cast(),
8245         gtk_type_describe_tree(),
8246         gtk_type_describe_heritage(),
8247         gtk_type_free(),
8248         gtk_type_children_types(),
8249         gtk_type_set_chunk_alloc(),
8250         gtk_type_register_enum(),
8251         gtk_type_register_flags(),
8252         gtk_type_parent_class().
8253         replacements, where available are described in ../docs/Changes-1.4.txt.
8254         implemented compatibility functions for the remaining API.
8255
8256         * configure.in: depend on glib 1.3.1, use gobject module.
8257
8258 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
8259
8260         * TODO.xml: Various updates to current status.
8261
8262 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
8263
8264         * gtk.m4: Print out version when test succeeds.
8265
8266 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
8267
8268         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
8269         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
8270         
8271         (Original triangle color selector from Simon Budig
8272         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
8273         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
8274         Santiago <mrcooger@cyberverse.com>)
8275
8276         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
8277         out into a separate widget.
8278
8279         * gtk/testgtk.c: Add some checkbuttons for toggling palette
8280         and opacity controls.
8281
8282 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
8283
8284         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
8285         snuck in prematurely.
8286
8287 2000-05-07  Tor Lillqvist  <tml@iki.fi>
8288
8289         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
8290         had deleted a ! operator by mistake, which caused
8291         GDK_SELECTION_CLEAR events never to be generated, which caused
8292         only the first copy to the clipboard from an gtkeditable to
8293         actually cause a copy to the Windows clipboard.
8294
8295 2000-05-06  Tor Lillqvist  <tml@iki.fi>
8296
8297         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
8298         compilation, too. Current mingw gcc distributions include the
8299         necessary headers. Also the necessary IIDs are now in mingw
8300         headers/libraries, and own definitions unnecessary.
8301
8302         More hacking on OLE2 DND, still doesn't work though, and thus
8303         ifdeffed out.
8304
8305         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
8306         here, too.
8307
8308 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
8309
8310         * gdk/nanox/*: nano-X port work in progress.
8311         * gdk/simple.c: simple test for Gdk.
8312         * README.nanox: notes about the port: read this first!
8313         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
8314         with nano-X.
8315
8316 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
8317
8318         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
8319         gdk_window_clear() into common code, implement in terms of
8320         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
8321         not redirected to the backing rectangle.
8322
8323 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
8324
8325         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
8326         EXTRA_DIST. It does not work well when the file that
8327         everything depends on is not in the tarball.
8328
8329 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
8330
8331         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
8332         with recursion where process_updates() is called from
8333         an expose handler. (GtkTextView is highly broken in
8334         doing this, but it should work, so it is a nice test
8335         case.)
8336
8337 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8338
8339         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
8340         handle the case where updates are queued during processing of
8341         updates.
8342
8343 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
8344
8345         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
8346         window is on gdk_display - use that instead of segfaulting.
8347
8348 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
8349
8350         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
8351         broken and require an empty arg, give it to them.
8352
8353 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
8354
8355         * gtk/gtklabel.h: indentation fixes.
8356
8357 2000-05-02  Tor Lillqvist  <tml@iki.fi>
8358
8359         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
8360         draw too narrow or too low arcs, they seem to fail, at least with
8361         some display drivers.
8362
8363         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
8364
8365         Large changes to the Win32 backend, partially made necessary by
8366         the changes to the backend-independent internal
8367         structures. Attempts to implement similar backing store stuff as
8368         on X11. The current (CVS) version of the Win32 backend is *not* as
8369         stable as it was before the no-flicker branch was merged. A
8370         zipfile with that version is available from
8371         http://www.gimp.org/win32/. That should be use by "production"
8372         code until this CVS version is usable. (But note, the Win32
8373         backend has never been claimed to be "production quality".)
8374
8375         * README.win32: Add the above comment about versions.
8376
8377         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
8378
8379         * gdk/gdk.def: Update.
8380
8381         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
8382         presumably be replaced by some more better mechanism as 1.4 gets
8383         closer to release shape.
8384
8385         * gdk/makefile.{cygwin,msc}: Update.
8386
8387         * gdk/win32/*.c: Correct inclusions of the backend-specific and
8388         internal headers. Change code according to changes in these. Use
8389         gdk_drawable_*, not gdk_window_* where necessary.
8390
8391         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
8392         our old DND.
8393
8394         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
8395         to interpret single characters as UTF-8. Thanks to Hans Breuer.
8396         Use correct function name in warning messages.
8397
8398         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
8399         GSourceFuncs gdk_event_prepare and gdk_event_check.
8400         (gdk_event_get_graphics_expose): Do implement, use
8401         PeekMessage. Thanks to Hans Breuer.
8402         (event_mask_string): Debugging function to print an GdkEventMask.
8403         (gdk_pointer_grab): Use it.
8404
8405         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
8406         (old) book I used claimed was Hangul actually is CJK Unified
8407         Ideographs Extension A. Also, Hangul Syllables were missing.
8408         Improve logging.
8409
8410         * gdk/win32/gdkgc-win32.c: Largish changes.
8411
8412         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
8413         g_win32_getlocale() from GLib, and not setlocale() to get current
8414         locale name.
8415
8416         * gdk/win32/gdkprivate-win32.h
8417         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
8418         gdkwin32.h, similarily as in the X11 backend.
8419
8420         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
8421         assignment was used instead of equals in if test. Thanks to Hans
8422         Breuer.
8423
8424         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
8425         the X11 version.
8426
8427         * gdk/win32/makefile.{cygwin,msc}
8428         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
8429         path to the Win32 headers that works also with the mingw compiler.
8430
8431         * gtk/gtkstyle.c: Include <string.h>.
8432
8433 2000-04-26  Havoc Pennington  <hp@redhat.com>
8434
8435         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
8436         replacing the broken gtk_label_get ()
8437
8438 2000-04-15  Havoc Pennington  <hp@pobox.com>
8439
8440         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
8441         this keeps scanner scripts from getting confused.
8442
8443         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
8444         data, rather than void
8445
8446 2000-04-15  Tor Lillqvist  <tml@iki.fi>
8447
8448         * gtk/gtkclist.c (gtk_clist_motion)
8449         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
8450         with is_hint FALSE, get x and y from the event. They used to be
8451         used uninitialised. The Win32 backend never sends motion events
8452         marked as hints. This for instance fixes the annoying file and
8453         font selector behaviour in the Win32 version.
8454
8455 2000-04-14  Tor Lillqvist  <tml@iki.fi>
8456
8457         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
8458         gtk_private_n_signals variables, they are used by some software,
8459         sigh.
8460
8461         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
8462         installation directory from the Registry, where the installer
8463         should have put it.
8464
8465 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
8466
8467         * gdk/x11/Makefile.am: Fix problem with installation directory for
8468         gdkx.h
8469
8470         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
8471         <mrcooger@cyberverse.com> so that when selecting menus with the
8472         mouse, the first item will not be selected, but when selecting
8473         with an accelerator, or navigating left-right on a menubar with
8474         the menus popped up, the first item will be selected.
8475
8476 2000-04-05  Dan Damian  <dand@dnttm.ro>
8477
8478         * configure.in: Added "ro" to ALL_LINGUAS.
8479
8480 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
8481
8482         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
8483         indentation.
8484
8485         * Makefile.am (EXTRA_DIST): Fix typo.
8486
8487         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
8488         to catch gdkconfig.h
8489
8490         * gtk/gtkitemfactory.c: Added FIXME.
8491
8492 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
8493
8494         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
8495         s/return_if_fail/return_val_if_fail/g and add a return value.
8496
8497 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
8498
8499         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
8500         merge slipup.
8501
8502         * gdk/gdkinput.h: Fix missing line from merge.
8503
8504 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
8505
8506         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
8507         instead of gdkprivate.h.
8508
8509 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
8510
8511         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
8512         parent class to correctly be GtkDialogClass.
8513
8514 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
8515
8516         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
8517         toplevel windows and their immediate children by their parents,
8518         since the size of toplevel windows is out of our immediate
8519         control and we don't get any real benefit from trying to track
8520         this size for clipping.
8521
8522         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
8523         for input_only windows.
8524
8525         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
8526         to fix some hacks and make sure that we don't try to set the
8527         background of input only windows.
8528
8529 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
8530
8531         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
8532         the _really_ internal stuff, and leave gdkprivate.h for the fake private
8533         stuff that we've traditionally exposed.
8534
8535         * gdk/**.c: Use gdkinternals.h where appropriate.
8536
8537         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
8538         not include gdkprivate-x11.h, move all stuff of conceivable public
8539         interest into gdkx.h; keep all really private stuff in
8540         uninstalled header gdkprivate-x11.h.
8541
8542         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
8543         image->image_put on windows through a new function _gdk_window_draw_image()
8544         to allow us to do backing store for images. (Sort of ugly)
8545
8546         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
8547         contexts locally so that we can offset them properly when drawing 
8548         onto backing pixmaps.
8549
8550         * gdk/gdkinput.h: Reindented
8551
8552         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
8553         pixmap or color for the window, so we can properly initialize
8554         our double-buffer pixmaps, and also so that we temporarily set
8555         a background of None while scrolling.
8556
8557         * gdk/gdkregion.h: Revise region boolean operators to have an
8558         interface that is actually convenient - switch from creating new
8559         regions on every op, to "methods" that modify existing regions
8560         (A = A OP B). 3 argument forms which allow dest == src, would also
8561         be possible, but the current interfaces seem to map nicely
8562         onto what needs to be done. (There is quite a lot of region
8563         code in GDK now.)
8564
8565         * gdk/gdkregion.h: Add constructor from rectangle and a copy
8566         operator.
8567
8568         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
8569         gdkpoly-generic.h: Copy region code from Xlib, switch it over
8570         to 32 bit coordinates, modify it to be mostly GTK+ style
8571         and to have interfaces that match gdkregion.h.
8572
8573         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
8574         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
8575         create a backing pixmap and redirect all drawing to
8576         that backing pixmap until a matching gdk_window_end_paint().
8577
8578         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
8579         Create a special drawable class for GtkWindow's that 
8580         redirects the drawing to the backing pixmap as necessary
8581         and then calls the real operations in _gdk_windowing_window_class.
8582
8583         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
8584         Store invalid region for each window. Generate expose events for invalid
8585         region in an idle. This replaces both the expose compression
8586         and the redrawing queuing in GTK+. It is both more efficient and
8587         simpler than either one individually and far more so then the
8588         combination.
8589
8590         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
8591         Emulate 32 bit coordinates for windows with 16 bit coordinates
8592         by offsetting drawing, guffaw scrolling techniques and
8593         mapping/unmapping child windows as necessary.
8594
8595         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
8596         where, when invalid regions are processed, the region is stored,
8597         and if expose events come in that are detectably duplicate
8598         the processed exposes (by comparison of event serial numbers),
8599         the stored region is subtracted out of those exposes.
8600
8601         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
8602         regions newly exposed when scrolling or resizing windows.
8603         This, combined with forcing processesing of queued invalidated
8604         regions, gives nice flicker-free scrolling.
8605
8606         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
8607         invalidated regions after every scroll.
8608
8609         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
8610         emulation in GDK. Its, for all practical purposes just a
8611         GtkViewport/GtkFixed hybrid now.
8612
8613         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
8614         (16-bit) structures as necessary instead of just casting.
8615
8616         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
8617         in terms of the structures from gdkregion-generic.c, using appropriate
8618         offsets from GDK to X11 coordinates. Cache clip mask and
8619         origin and ts origin locally and only flush to the server
8620         when drawing, to avoid constantly setting and resetting these
8621         values when offsetting GC's for scrolling and backing pixmaps.
8622
8623         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
8624
8625         * gtk/gtkcontainer.c: Call process_all_updates at end
8626         of resizing to reduce flicker. (Avoids having redraw
8627         lag arbitrarily behind resize under some circumstances)
8628
8629         * gtk/gtkentry.c: Remove old backing store code, and simply take
8630         advantage of the new backing store capabilities of GDK.
8631
8632         * gtk/gtkmain.c: Simple implementation of widget backing
8633         store - simply push a paint while handling each expose.
8634         (Should really be configurable widget for widget.)
8635         
8636         * gtk/gtkwidget.c: Remove all the old complicated redraw
8637         code, and simply invalidate the GDK windows from
8638         gdk_window_queue_clear(), etc. (Sigh, so much carefully
8639         debugged complexity ... gone to the winds.)
8640
8641         Remove all the code for suppressing expose events while
8642         resizes are pending; this isn't needed since the invalid
8643         areas won't be processed until after the resizes are
8644         processed, since they are in a lower priority idle.
8645
8646 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
8647
8648         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
8649         and height of dest rectangle for non-intersecting rectangles.
8650
8651 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
8652
8653         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
8654         for GdkRectangle.
8655
8656 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
8657
8658         * gdk/gdk{events,image,private,types,window}.h
8659          gdk/x11/gdkinputprivate.h: Change all coordinates
8660          from int16 to int. Also, Change width and height from
8661          unsigned to signed to avoid all the stupid C 
8662          signedness bugs.
8663
8664 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
8665
8666         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
8667         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
8668         Add some more detailed checking.
8669
8670         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
8671         New function to retrieve the depth of a drawable.
8672
8673         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
8674         field, reorder fields to save memory. 
8675
8676 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
8677
8678         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
8679         of the background image instead of scaling the background down to
8680         a line.
8681
8682         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
8683         which temporarily set slider to wrong size.
8684
8685         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
8686         queue_clear().
8687
8688 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
8689
8690 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
8691
8692         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
8693
8694 2000-03-17  Tor Lillqvist  <tml@iki.fi>
8695
8696         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
8697         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
8698
8699         * gdk/win32/gdkfont-win32.c
8700         * gdk/win32/gdkproperty-win32.c
8701         * gdk/win32/gdkselection-win32.c
8702         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
8703         now declared such.
8704
8705 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
8706
8707         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
8708
8709 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
8710
8711         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
8712         is called without trapping X errors.
8713
8714 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
8715
8716         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
8717         way into the fontset lists.
8718
8719 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
8720
8721         * gtk/gtkthemes.h: add extern "C" scope.
8722
8723 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
8724
8725         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
8726         to make appends to the list constant. (gtk-guy-990901-0.patch)
8727
8728 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
8729
8730         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
8731         for the typename hash table.
8732
8733 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
8734
8735         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
8736         to make sure we never divide by zero. 
8737         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
8738
8739 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
8740
8741         * gtk/gtkfontsel.c: Apply patch from
8742         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
8743         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
8744
8745         Also, some cleanups in atom handling.
8746
8747 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
8748
8749         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
8750         not GtkWidget.
8751
8752 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
8753
8754         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
8755         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
8756         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
8757         more guint wrap-around bugs before going to bed.
8758
8759 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
8760
8761         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
8762         guint wrap arounds in allocation.width.
8763
8764         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
8765         process untill we fit the allocation given.
8766
8767 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
8768
8769         * gtk/gtkwidget.c:
8770         (gtk_widget_unrealize): guard widget access with ref/unref
8771         around signal emission.
8772         (gtk_widget_hide): same here, but also check its destroyed
8773         state before queueing a resize.
8774
8775 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
8776
8777         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
8778         of gtk_default_insensitive_bg as insensitive base color.
8779
8780         * gtk/gtktext.c (gtk_text_style_set): set the background color according
8781         to the widget's state.
8782         (gtk_text_realize): same here.
8783         (gtk_text_state_changed): same here.
8784         (draw_bg_rect): compare background color against base[] from
8785         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
8786
8787 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
8788
8789         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
8790         grabs are active, unless a delete event is send to the toplevel
8791         of the currently grab holding widget.
8792
8793 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
8794
8795         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
8796         debugging g_print's.
8797
8798 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
8799
8800         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
8801         ever make the scrolled-window requisition ever depend on the 
8802         visibility state of the scrollbars for the AUTOMATIC policy. 
8803         This breaks the GTK+ requisition model, and causes loops.
8804
8805 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
8806
8807         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
8808         the default font to avoid problems with XFree86-4.0 where the
8809         default charset is iso10646-1, not iso8859-1.
8810
8811 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
8812
8813         * acinclude.m4
8814         * config.guess
8815         * config.sub
8816         * ltconfig
8817         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
8818
8819         * gtk/Makefile.am: minor cosmetic consistency tweak
8820
8821 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
8822
8823         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
8824         the activate_time to 0, so that we handle a quick
8825         press/release press/release properly and don't suppress
8826         the second release. (Red Hat bug #7545)
8827
8828 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
8829
8830         * gtk/gtkctree.c (row_delete):
8831         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
8832         bugs with destruction notifier, *always* update internal
8833         structures *before* calling user code.
8834
8835 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
8836
8837         A few more fixes for bug #5487, #2051, #2677.
8838         * gtk/gtkclist.c : 
8839         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
8840         not GDK_BUTTON_PRESS.
8841         (resync_selection): resync only if selection_mode is
8842         GTK_SELECTION_EXTENDED
8843         * gtk/gtkctree.c (resync_selection): same here
8844
8845 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
8846
8847         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
8848         gdk_drag_get_selection() and gtk_menu_detach().
8849
8850         [ From Jeroen Ruigrok/Asmodai ]
8851
8852 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
8853
8854         * gtk/gtknotebook.c (gtk_notebook_size_request): 
8855         page->tab_label can be NULL.
8856
8857 2000-01-25  Havoc Pennington  <hp@pobox.com>
8858         
8859         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
8860         arg is boolean
8861
8862         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
8863
8864         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
8865
8866         * gdk/gdkproperty.c (gdk_property_get): return boolean
8867
8868         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
8869
8870         * gdk/gdkim.c (gdk_im_ready): return boolean
8871
8872         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
8873
8874         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
8875         glib clash, should fix glib)
8876
8877         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
8878         (gdk_get_show_events): return gboolean, and canonicalize 
8879         to TRUE/FALSE
8880
8881         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
8882         colormap is private
8883         (gdk_colors_alloc): gboolean whether to be contiguous
8884         (gdk_color_equal): return gboolean since we are a predicate
8885         and not a qsort() (this looks semi-wrong due to glib breakage,
8886         IMO glib should be fixed)
8887         
8888         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
8889         (gdk_get_use_xshm): return gboolean
8890         (gdk_pointer_is_grabbed): return gboolean
8891
8892         * gdk/gdk.h: Change prototypes to match all the above changes,
8893         and re-run egtk-format-protos as required.
8894
8895 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
8896
8897         * gtk/gtkctree.c (resync_selection): 
8898         * gtk/gtkclist.c (resync_selection):
8899
8900         Return immediately if clist->drag_pos < 0. This is a workaround
8901         for the corrupt state that the clist gets into when a
8902         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
8903
8904         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
8905         
8906         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
8907         variable from recent commit.
8908
8909 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
8910
8911         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
8912
8913 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
8914
8915         * gtk/Makefile.am: prefix all autogenerated source that get build in
8916         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
8917         in builddir. since we subsequently cd into srcdir for autogeneration,
8918         the paths have to be stripped from the target file names, thusly we
8919         use $(@F) as target names now.
8920         put a comment about configure.in's --disable-rebuilds option,
8921         which can be used for non-writable source directories, for development
8922         setups though, srcdir has to be *writable*.
8923
8924 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
8925
8926         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
8927           Finish the job of allowing event to be NULL.
8928           (Fixes bug #4283, reported by Chris Blizzard)
8929
8930         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
8931           things so that the cursor appears on screen, properly
8932           take into account INNER_BORDER.
8933           (Fixes bug #4754, reported by Antonio Campos)
8934
8935 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
8936
8937         * gtk/gtknotebook.c (gtk_notebook_map): Don't
8938           show the tab_label unless it itself is visible.
8939
8940           gtk/gtknotebook.c (gtk_notebook_size_request):
8941           Do a better job of making sure that the visibility
8942           of the tab label corresponds to whether it should
8943           be mapped or not.
8944
8945 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
8946
8947         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
8948           Use the requisition, not the allocation, since the
8949           allocation has not necessarily been computed yet.
8950           (Pointed out by Eugene Osintsev)
8951
8952 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
8953
8954         * gtk/gtkstyle.c (gtk_style_new): Dont' set
8955           style/base[GTK_STATE_INSENSITIVE] both to
8956           gtk_default_insensitive_bg!
8957           (Bug #2187, reported by Jonathan Blandford)
8958
8959         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
8960           Add Alt_L, Alt_R to list of invalid accelerators.
8961           (Bug #3736, reported by Vlad Harchev)
8962
8963 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
8964
8965         * gtk/gtkfilesel.c (open_ref_dir): Fix several
8966         bugs which occured after an attempt to open 
8967         invalid home directory left cmpl_state->reference_dir == NULL.
8968
8969          - completion on files in home directory didn't work
8970          - completion on an empty string caused  segfault
8971
8972          (Bug #3678, reported by Steve Ratcliffe)
8973
8974         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
8975         cut and paste error that was causing scales to
8976         be incorrectly positioned.
8977         (Bug #2956,
8978          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
8979
8980 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
8981
8982         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
8983         when checking for dcgettext, if we've found we needed
8984         it for dgettext.
8985 +
8986 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
8987
8988         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
8989         queue_clear on NO_WINDOW widgets during a reparent,
8990         since at that point the window and widget heirarchies
8991         are out of sync. This stops crashing in some cases
8992         (the scrolled window reparent test, for instance), and
8993         _probably_ won't cause drawing errors.
8994
8995         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
8996         test do what it was supposed to do and be robust against
8997         window closings, etc. (Bug #2443)
8998
8999 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
9000
9001         * gtk/gtkentry.c: Fix return values on mouse events.
9002         (Bug #2686, Sky <seb_sky@yahoo.com>)
9003
9004         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
9005         (pointed out by George Lebl)
9006
9007         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
9008         (From Ettore Perazzoli  <ettore@helixcode.com>)
9009  
9010 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
9011
9012         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
9013         clicks between rows or outside calender area correctly.
9014         (Patch from Damon Chaplin)
9015
9016         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
9017         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
9018           Call destroy function when overwriting existing data. 
9019           (Pointed out by Damon Chaplin)
9020
9021 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
9022
9023         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
9024           which was causing problems on various systems with Xmu.
9025           This hasn't been needed for a very long time.
9026           (Fixes #1185 3167)
9027
9028 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
9029
9030         * gdk/gdki18n.h: Include <ctype.h> when defining
9031           gdk_isw* in terms of is* as a fallback.
9032           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
9033
9034 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
9035
9036         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
9037           realize the widget when it is size allocated!
9038           (old, old bug)
9039
9040         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
9041           Removed unused call to gdk_window_get_size() that
9042           showed up when the above was fixed.
9043
9044 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
9045
9046         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
9047           fix up widget->window when the widget is a
9048           NO_WINDOW container widget.
9049
9050 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
9051
9052         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
9053           to account for the fact that feof() does _not_ 
9054           return TRUE on errors, and thus avoid infinite loops
9055           when trying to use gdk_pixmap_create_from_xpm()
9056           on unreadable values.
9057
9058 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
9059
9060         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
9061
9062 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
9063
9064         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
9065           gdk_gc_set_dashes to take gint8 instead of gchar to
9066           make it clearer that it is _not_ a NULL terminated string.
9067
9068         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
9069           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
9070           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
9071           arguments.
9072
9073 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
9074
9075         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
9076         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
9077         background size relative to our allocation, guard against small
9078         allocations, we may have not yet been size allocated.
9079
9080 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
9081
9082         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
9083         not just version == 3. We implement all 3 + most of 4 - 
9084         (we don't support matching text/plain;charset=iso-8859-1
9085         to a dest that expects text/plain). We'll still advertise
9086         3 to be safe, but any client implementing version >= 3
9087         must interoperate with 3.
9088         
9089 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9090
9091         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
9092         background and gc members, add a warning in gtk_tooltips_set_color()
9093         indicating that this function is deprecated.
9094
9095 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
9096
9097         * docs/gtkfaq.sgml: FAQ Update:
9098           - Minor cleanups (Emmanuel, me)
9099           - New questions:
9100                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
9101                 How can I retrieve the text from a GtkMenuItem? (timj)
9102                 How do I validate/limit/filter the input to a GtkEntry? (me)
9103                 Memory does not seem to be released when I free the list
9104                         nodes I've allocated (timj)
9105
9106 2000-03-07  Tor Lillqvist  <tml@iki.fi>
9107
9108         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
9109         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
9110         for which it is no use to call GetLastError onWin9x.
9111         (gdk_other_api_failed) New function, for general error
9112         reporting without calling GetLastError.
9113         (gdk_win32_api_failed) OTOH, this function always calls
9114         GetLastError. (gdk_win32_last_error_string) Remove this function,
9115         GLib has the equivalent now.
9116
9117         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
9118         call them with function name, file name and line number in the
9119         arguments.
9120
9121         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
9122         functions.
9123         
9124         * gtk/gtk.def: Add some missing entry points.
9125
9126         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9127         gtk_paned_set_gutter_size, which don't exist any longer, as void.
9128         
9129         Fixes by Hans Breuer:
9130
9131         * gdk/makefile.msc: Update for debugging.
9132
9133         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
9134         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
9135         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
9136         in the dash_list.
9137
9138         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
9139         the x11 backend.
9140
9141         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
9142
9143         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
9144
9145 2000-03-04  Tor Lillqvist  <tml@iki.fi>
9146
9147         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
9148         just pixel value of background colour.
9149
9150         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
9151         containing code snippet previously duplicated in a couple of
9152         places.
9153         
9154         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
9155         gdk_colormap_color.
9156
9157         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
9158         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
9159         events for autorepeated Shift, Control and Alt keys. Use
9160         gdk_colormap_color.
9161
9162         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
9163         pointer is inside the window the cursor of which we are setting,
9164         call SetCursor immediately.
9165
9166         * gdk/win32/makefile.cygwin
9167         * gtk/makefile.cygwin: If we don't have the build number stamp
9168         file, use zero.
9169
9170         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
9171         gtk_paned_set_gutter_size as empty.
9172
9173         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
9174         
9175 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
9176
9177         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
9178           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
9179           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
9180           docs/gtk_tut.sgml docs/gtk.texi TODO:
9181
9182           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
9183
9184 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
9185
9186         * gtk/gtkcalendar.c: Implement num_marked_dates,
9187           and don't emit mutiple day_selected signals on
9188           month_prev.
9189
9190 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
9191
9192         * docs/make-todo (lineno): let title and logo be configurable so
9193         that GNOME can use this script too.
9194
9195         * TODO.xml: added logourl and a title
9196
9197 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
9198
9199         * TODO.xml: Added some UI items, and an explanatory
9200         comment at the top of the file.
9201
9202 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
9203
9204         * TODO.xml: some updates, added abunch of new entries.
9205         a note for those fiddeling with this file, when done
9206         with it, invoke:
9207         $ ./docs/make-todo TODO.xml >/dev/null
9208         and correct output errors before comitting changes.
9209
9210 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
9211
9212         * TODO.xml: Added XML-structured TODO file.
9213         * docs/make-todo: python script to turn TODO.xml into
9214           pretty XML output. 
9215
9216 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
9217
9218         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
9219         the function to let it draw the seven dots, instead of the old,
9220         much maligned, method.
9221         (draw_dot): New function to draw a dot.
9222
9223         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
9224         to draw the handle inside the border width as opposed to outside.
9225         Use paint function instead of gdk_draw_point.
9226
9227         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
9228         to draw the handle inside the border width as opposed to outside.
9229         Use paint function instead of gdk_draw_point.
9230
9231         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
9232         Change indenting to be more GTK like.
9233
9234 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
9235
9236         * docs/gtk_tut.sgml: New section on GtkCalendar
9237         * examples/calendar: Update example code
9238
9239 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
9240
9241         * docs/gtkfaq.sgml: FAQ Update
9242
9243 2000-02-19  Anders Carlsson  <andersca@gnu.org>
9244
9245         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
9246         to prevent the scroll event to be propagated upwards.
9247
9248 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
9249
9250         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
9251         OwnerGrabButtonMask from button entries for
9252         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
9253
9254         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
9255         to the event mask (which will result in button/press release
9256         being added to the event mask on Unix) so scrolling works
9257         for layouts in scroll windows.
9258
9259         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
9260
9261         Patch from Anders Carlsson  <andersca@gnu.org> to add
9262         a scroll event.
9263
9264         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
9265         scrolling to the "Test Scrolling" part of testgtk.
9266  
9267         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
9268  
9269         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
9270         it against GDK_SCROLL.
9271  
9272         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
9273         way of mouse wheel scrolling.
9274  
9275         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
9276  
9277         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
9278  
9279         * gtk/gtkmain.c: Removed previous mouse wheel hack.
9280  
9281         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
9282         gdk_event_mask_table.
9283  
9284         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
9285         GdkEventScroll handler.
9286  
9287         * gdk/gdkevents.h: Added GdkEventScroll structure.
9288  
9289 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
9290
9291         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
9292         and Anders Carlsson to change the Paned widgets so that they
9293         can be dragged from anywhere along the length. Also change
9294         the way that this is drawn to make this apparent.
9295
9296         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
9297         from George Lebl to check that option_menu->menu is present
9298         before getting history.
9299
9300 2000-02-14  Tor Lillqvist  <tml@iki.fi>
9301
9302         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
9303         before the assertion for non-NULL segment list.
9304
9305         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
9306         Seems that pattern brushes *must* be 8x8 pixels! At least on my
9307         machine, but it might be display driver dependent. Sigh, so make
9308         sure the stipple is that size. Does Windows suck or what?
9309
9310         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
9311         places.
9312
9313 2000-02-13  Havoc Pennington  <hp@pobox.com>
9314
9315         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
9316         refcount to 1
9317         (gdk_cursor_new): init refcount to 1
9318
9319         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
9320
9321 2000-02-13  Tor Lillqvist  <tml@iki.fi>
9322
9323         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
9324         so that we don't have to do unnecessary settings to the HDC.
9325
9326         * gdk/win32/gdkdrawable-win32.c
9327         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
9328         gdk_gc_predraw.
9329
9330         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
9331         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
9332         GDI paths, call WidenPath to get the outline of the stroken path,
9333         and then fill the outline (with the brush that was built from the
9334         stipple).
9335
9336         * gdk/win32/gdkgc-win32.c: Factor out common code from
9337         _gdk_win32_gc_new and gdk_win32_gc_set_values into
9338         gdk_win32_gc_values_to_win32values. Use correct colour for
9339         SetBkColor() (Until now the code actually used a random colour in
9340         the call to SetBkColor()... but that didn't show up as not many
9341         GDI APIs use the background colour. Pattern (opaque stippled)
9342         brushes do.)
9343
9344         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
9345         gdk_win32_api_failed): New functions for error logging.
9346
9347         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
9348         WIN32_API_FAILED to call them, passing function or file name and
9349         line number.
9350
9351         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
9352
9353         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
9354         GdkColor for foreground and background in GdkGCWin32Data.
9355
9356         * gdk/makefile.cygwin: Link in the resource object separately.
9357
9358         * gdk/win32/rc/gdk.rc
9359         * gtk/gtk.rc (New file)
9360         * gdk/win32/makefile.cygwin
9361         * gtk/makefile.cygwin: Update build number in DLLs automatically,
9362         as in GLib.
9363
9364 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
9365
9366         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
9367         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
9368         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
9369         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
9370         parameters given and cursor->ref_count. coding style fixups.
9371
9372         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
9373         not GtkWidget.
9374         
9375         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
9376         fix up widget macros and add _GET_CLASS() variant.
9377         
9378         * gtk/*.c: some GtkType fixups.
9379
9380 2000-02-09  Tor Lillqvist  <tml@iki.fi>
9381
9382         * gdk/win32/gdkproperty-win32.c
9383         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
9384         were reversed.
9385
9386 2000-02-04  Tor Lillqvist  <tml@iki.fi>
9387
9388         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
9389         g_filename_to_utf8 to convert the font names Windows gives us from
9390         whatever is the default codepage to UTF-8.
9391         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
9392         in the other direction.
9393
9394         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
9395         error in debugging output.
9396
9397 2000-02-02  Tor Lillqvist  <tml@iki.fi>
9398
9399         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
9400         and height parameters to gdk_window_clear_area(). Not minus one.
9401
9402 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
9403
9404         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
9405         checks if the widget passed to gtk_drag_get_data() was not the
9406         dest widget.
9407
9408 2000-02-01  Tor Lillqvist  <tml@iki.fi>
9409
9410         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
9411         g_filename_from_utf8 functions (which were added a moment ago to
9412         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
9413         size buffers.
9414
9415         gtk_file_selection_get_filename returns the filename in the C
9416         runtime encoding. It calls g_filename_from_utf8, but copies the
9417         returned string to a static buffer, which is returned. I think
9418         this is better than returning the result from g_filename_from_utf8
9419         directly, which would mean all apps that use it would have to free
9420         the return value. Or should this function care about this issue at
9421         all? Maybe a new function with clearly defined semantics.
9422
9423         * gtk/gtkfilesel.h: Add comment about
9424         gtk_file_selection_get_filename returning the filename in the C
9425         runtime's encoding.
9426
9427         * README.win32
9428         * gdk/gdk.def
9429         * gdk/makefile.{cygwin,msc}
9430         * gtk/gtk.def: Updates.
9431
9432         * gdk/gdkcursor-win32.c: Initialise refcount.
9433
9434 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
9435
9436         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
9437
9438 2000-01-30  Havoc Pennington  <hp@pobox.com>
9439
9440         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
9441         destroy
9442
9443         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
9444
9445         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
9446         implemented in platform-specific code
9447
9448         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
9449
9450         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
9451         underscore in front
9452
9453         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
9454         put an underscore in front
9455
9456         * gdk/gdkcursor.c: new file, implements
9457         gdk_cursor_ref/gdk_cursor_unref
9458
9459         * gdk/gdkcursor.h: Refcount GdkCursor
9460
9461         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
9462
9463 2000-01-29  Tor Lillqvist  <tml@iki.fi>
9464
9465         * gdk/gdkwindow.h
9466         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
9467
9468 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9469
9470         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
9471         structures to properly inherit from GtkWidget not GtkBin.
9472
9473 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
9474
9475         * gtk+.spec.in: Added lib/gtk+/include/* to %files
9476         (bug #5178 - Peter Wainright)
9477         
9478         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
9479         so that it will be installed.
9480         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
9481
9482 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
9483
9484         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
9485         for the GtkStyleClass vtable const.
9486
9487         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
9488         take a const string argument like GtkTranslateFunc. This will
9489         require changes in use code.
9490
9491 2000-01-19  Tor Lillqvist  <tml@iki.fi>
9492
9493         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
9494         semantics (to mimic the X11 backend, which just calls XClearArea)
9495         is to check for zero width (and height), and in that case use the
9496         window's width minus x (height minus y). This fixes for instance
9497         some redraw problems with gtkclist, which were easily noticeable
9498         in the gtk file selection widget.
9499
9500         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
9501         windows.
9502
9503 2000-01-13  Tor Lillqvist  <tml@iki.fi>
9504
9505         * configure.in
9506         * gdk/Makefile.am
9507         * gdk/x11/Makefile.am
9508         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
9509         (bug #5177).
9510         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
9511         out later.
9512
9513 2000-01-09  Tor Lillqvist  <tml@iki.fi>
9514
9515         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
9516         WM_MOVE for iconified or invisible windows. This fixes various
9517         problems when minimising windows. Thanks to Bernd Herd.
9518
9519 2000-01-05  Tor Lillqvist  <tml@iki.fi>
9520
9521         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
9522         backend's draw_lines method, not draw_points.
9523
9524 2000-01-02  Tor Lillqvist  <tml@iki.fi>
9525
9526         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
9527         before Owen's reorganisation: Don't have queued_events and
9528         queued_tail statics in this file, but use gdk_queued_events and
9529         gdk_queued_tail. This makes exposure event compression work again.
9530
9531         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
9532         seem to be needed?
9533
9534 1999-12-30  Tor Lillqvist  <tml@iki.fi>
9535
9536         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
9537         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
9538         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
9539         doesn't do anything.
9540
9541         * gdk/gdk.def: Add gdk_xid_table_insert.
9542
9543         * gdk/win32/gdkprivate-win32.h
9544         * gdk/win32/gdkevents-win32.c
9545         * gdk/win32/gdkinput-win32.c
9546         
9547         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
9548         extension_events field in the GdkWindowWin32Data struct. Use only
9549         the extension_events field in GdkWindowPrivate. Previously one was
9550         set, and the other one tested, which broke tablet
9551         functionality. Thanks to Keishi Suenaga for pointing this out.
9552
9553 1999-12-18  Tor Lillqvist  <tml@iki.fi>
9554
9555         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
9556         When handling a single character (text length == 1), don't handle
9557         it as if it was UTF-8.
9558
9559 1999-12-11  Tor Lillqvist  <tml@iki.fi>
9560
9561         * Makefile.am: Distribute README.win32.
9562         
9563         * gdk/Makefile.am
9564         * gdk/win32/Makefile.am: Distribute Win32 files.
9565
9566         * gdk/makefile.msc: New file.
9567
9568         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
9569         after label).
9570
9571         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
9572         gdk_error_code as GDKVAR, as they are referred outside GDK.
9573
9574         * gdk/win32/makefile.msc: Update.
9575
9576         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
9577         tweaks. Check only if at least one of those Unicode subrange bits
9578         we care for is set. If no code page bits are set, guess (wildly)
9579         based on the charset.
9580
9581         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
9582
9583         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
9584         non-NULL.
9585
9586         * gtk/gtkdnd.c
9587         * gtk/gtklayout.c
9588         * gtk/gtkplug.c
9589         * gtk/gtkselection.c
9590         * gtk/gtksocket.c
9591         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
9592         appropriate. There must be a cleaner way to handle this?
9593
9594         * gtk/gtkrc.c: Must include windows.h on Win32.
9595
9596         * gtk/testgtk.c: No need to include gdkx.h.
9597
9598         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
9599
9600 1999-12-07  Tor Lillqvist  <tml@iki.fi>
9601
9602         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
9603         the rbearing is set to the same as the width, but this should be
9604         fixed.
9605
9606 1999-12-06  Tor Lillqvist  <tml@iki.fi>
9607
9608         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
9609         function. If Windows doesn't tell us what Unicode subranges a font
9610         covers, guesstimate based on the codepages it covers. This will
9611         hopefully help those Windows versions or fonts that don't give us
9612         any useful Unicode subrange information with GetTextCharsetInfo.
9613         Call this function in gdk_font_load_internal.
9614
9615         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
9616         minor changes.
9617
9618 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
9619
9620         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
9621         New function, long needed.
9622
9623 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
9624
9625         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
9626         only_if_exists argument of gdk_atom_intern to
9627         bool.
9628
9629 1999-11-25  Tor Lillqvist  <tml@iki.fi>
9630
9631         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
9632         Fix two copy&paste errors.
9633
9634         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
9635         win32 has changed.
9636
9637         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
9638         GdkWin32SingleFont struct.
9639
9640         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
9641         subranges of loaded fonts. Clear font signature first, in case
9642         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
9643         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
9644
9645         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
9646         Unoffset clip region.
9647
9648 1999-11-23  Tor Lillqvist  <tml@iki.fi>
9649
9650         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
9651         event->any.window before calling filter functions.
9652
9653 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
9654
9655         * gtk/gtkgamma.h: Adapt cast macros to standard.
9656
9657 [ Merges from 1.2 ]
9658
9659 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
9660
9661         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
9662         If translation does not include a '/', use entire
9663         translation instead of crashing.
9664
9665 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
9666
9667         * docs/gtk_tut.sgml:
9668         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
9669
9670 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
9671
9672         * gtk/gtkselection.c (gtk_target_list_remove): Use
9673         g_list_remove_link, not g_list_remove.
9674
9675         [ From Geert Bevin <gbevin@thunderstorms.org> ]
9676         
9677 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
9678
9679         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
9680         statement upon unselection (how the heck did that slip in?).
9681
9682 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
9683
9684         * gtk/gtktext.c (gtk_text_freeze): 
9685         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
9686         in frozen state (and aparently crashes). patch provided by Anders
9687         Melchiorsen <and@kampsax.dtu.dk>.
9688
9689 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
9690
9691         * fix insensitive default/focus widget activation,
9692         reported by Matt Goodall <mgg@isotek.co.uk>.
9693
9694         * gtk/gtkwindow.c (gtk_window_key_press_event): 
9695         (gtk_window_activate_default):
9696         (gtk_window_activate_focus):
9697         return handled=FALSE for actiavtion of insensitive default
9698         widgets. return handled=TRUE for activation of insensitive
9699         focus widgets. don't activate in either case.
9700
9701 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
9702
9703         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
9704         and $glib_cflags to match library order and in the
9705         theory that an old version of GLib is more likely to
9706         be in the include directory for X then vice-versa.
9707         (Bug #2776)
9708
9709 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
9710
9711         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
9712         to determine the locale for fontsets, not LC_MESSAGES;
9713         the user may want English messages with a handling
9714         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
9715         will still be broken) (Bug #2891)
9716
9717 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
9718
9719         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
9720
9721 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
9722
9723         * gtk/gtkrc.ko: Changed the Korean default fontset.
9724
9725 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
9726
9727         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
9728         where when scrolling to the left or top double exposes
9729         were done, causing major slowdowns.
9730
9731 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
9732
9733         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
9734         names to lowercase and alphanumeric, before looking
9735         them up.
9736
9737         * gtk/Makefile.am: Install codeset variant gtkrc files
9738         with normalized names.
9739
9740 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
9741
9742         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
9743         popup menus when the menu is already visible, but its parent
9744         is still hidden, (happens after tornoff window got hidden).
9745
9746 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
9747
9748         * gtk/Makefile.am (install-data-local): Fix
9749         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
9750         deleted, causing error messages on install.
9751
9752 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
9753
9754         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
9755         the handle as well, since we now sometimes ignore
9756         exposes on the handle while resizing.
9757
9758 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
9759
9760         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
9761         extra g_free introduced in one of the last one or two 
9762         commits.
9763
9764 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
9765
9766         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
9767         consistent, put each style that a gtkrc.* file creates
9768         in a unique namespace, remove old files before installing.
9769
9770 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
9771
9772         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
9773         gtk_rc_init is called multiple times. (Yes, people who
9774         do that have bugs in their code.)
9775
9776 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
9777
9778         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
9779         Remove it since it's generated by the Makefile anyway
9780
9781 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
9782
9783         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
9784         device->info.axes for core pointer.
9785
9786 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
9787
9788         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
9789         idle_id, to deal with obsolete, broken C libraries.
9790
9791 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
9792
9793         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
9794         allocation->x/y twice!
9795
9796         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
9797         consistent with gtk_vscale_pos_trough().
9798
9799 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
9800
9801         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
9802         be queueing a resize on a toplevel container between
9803         the time we show it and when we map it. So, we need
9804         to test GTK_WIDGET_VISIBLE() for toplevels, and only
9805         use GTK_WIDGET_DRAWABLE() for child windows.
9806
9807 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
9808
9809         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
9810         (fixes bug #2144)
9811
9812 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
9813
9814         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
9815         container DRAWABLE (instead of VISIBLE), so we don't queue
9816         resizes on non-toplevel containers.
9817
9818 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
9819
9820         * gtk/gtkselection.[ch]: Make the data argument
9821         const guchar *.
9822
9823 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
9824
9825         * gtk/gtkwindow.c: Try to behave sensibly if 
9826         the focus widget is the window itself. (Should
9827         we allow this at all?)
9828
9829 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
9830
9831         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
9832         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
9833         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
9834         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
9835         in prototypes and implementations consistent (Tomas Ogren).
9836
9837         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
9838         before the widget is unparented (reported by damon).
9839
9840         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
9841         since we provide unsigned data anyways.
9842
9843 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
9844
9845         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
9846         the call to gtk_tooltips_layout_text() until later.
9847
9848         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
9849         Call gtk_widget_ensure_style() before using the style.
9850
9851 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
9852
9853         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
9854         for old widgets that don't propagate draws to all
9855         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
9856
9857 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
9858
9859         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
9860         for a redraw but just the widget that requested the resize.
9861
9862 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
9863
9864         * gtk/gtkcontainer.c: added new widget level method
9865         gtk_container_set_reallocate_redraws() and a GtkContainer flag
9866         reallocate_redraws : 1 to reflect the setting, exported this through
9867         the argument system as a boolean ::reallocate_redraws.
9868
9869         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
9870         on the widget because the allocation changes, do so as well for
9871         widget->parent if the parent has reallocate_redraws set to TRUE.
9872         with that containers requesting reallocation redraws get automatically
9873         redrawn if their children changed allocation (this unfortunately
9874         affects also other children that didn't change allocation, but we
9875         cannot work around that before 1.3).
9876
9877 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
9878
9879         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
9880         _and_ height are >0 (not _or_).
9881
9882         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
9883         instead of gtk_container_queue_resize(), which is a core gtk internal
9884         function (must have been on crack when i queued that).
9885
9886         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
9887         we can check more reliably if we want to discard expose events.
9888         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
9889         flag.
9890         
9891         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
9892         we simply trust these events. for deciding whether to discard exposes,
9893         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
9894         
9895 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
9896
9897         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
9898         queues of areas that are completely off screen.
9899
9900         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
9901         logic for handleboxes.
9902
9903         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
9904         check on width/height.
9905
9906 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
9907
9908         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
9909         we are fine with using $@ the way we do (if we actually encounter
9910         brokeness with $@ in VPATH builds because of additional path prefixes,
9911         we need to use $(@F) actually).
9912
9913 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
9914
9915         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
9916         short lived bugs, that would allow language bindings to do surgeries
9917         to our guts.
9918
9919 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
9920
9921         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
9922         where comparison was being done against an uninitialized
9923         value causing intermittant results depending on
9924         compiler flags. Also make it clearer that we aren't
9925         ever initializing the child as 0x0 (though this will
9926         be caught in gtk_widget_size_allocate())
9927
9928 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
9929
9930         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
9931         gtk_window_unset_transient_for() call after we do checks
9932         involving the old transient parent.
9933         [ From Lance Capser <lmc@cyberhighway.net> ]
9934
9935 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
9936
9937         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
9938         an empty file.
9939
9940 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
9941
9942         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
9943         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
9944
9945 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
9946
9947         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
9948         `$@' is valid only in the build dir, not after we've done 
9949         `cd $srcdir'.  Also use `test -f' instead of less portable
9950         `test -e'.
9951
9952 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
9953
9954         * gtk/gtktext.c (correct_cache_insert): Rewrite
9955          for simplicity, and hopefully correctness.
9956          (Fixes bug #1322, which was a segfault when
9957           on some insertions with the properties around
9958           the insertion set up just wrong.)
9959
9960         * gtk/gtktext.c (gtk_text_adjustment): When we receive
9961          a "changed" signal, clamp the new value to the adjustment
9962          bounds to avoid segfaulting if someone tries to change
9963          the adjustment to a bogus value. (Bug #1795)
9964
9965 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
9966
9967         * gtk/gtkmain.c: Ignore unexpected destroy notifies
9968         for children, for toplevel windows handle them
9969         like delete_event.
9970
9971         * gtk/gtkplug.c: Add an unrealize handler so that
9972         we unref plug->socket_window when we are done
9973         with it.
9974
9975 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
9976
9977         * gtk/gtktext.c (clear_area): Fix stupid signedness
9978          problem that was causing background to sometimes
9979          be misaligned.
9980
9981 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
9982
9983         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
9984         
9985         * gtk/gtkmenu.c (gtk_menu_position): Make
9986          sure we never position menus with negative x, y,
9987          since gtk_widget_set_uposition() can't handle that.
9988
9989         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
9990          Modify the positioning code a bit so that we always
9991          put the top-left corner onscreen. (This is for
9992          UI reasons, gtk_menu_position() now takes care of
9993          gtk_widet_set_uposition() brokeness.)
9994
9995 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
9996
9997         * gtk/Makefile.am: fixed up things for -jx, x > 1.
9998
9999 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
10000
10001         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
10002           RC style that is passed in. The lack of the ref
10003           before was a bug. If people worked around this
10004           bug, this will introduce a slight memory leak
10005           in their code. The code should typically look like:
10006
10007             rc_style = gtk_rc_style_new ();
10008             [...]
10009             gtk_widget_modify_style (widget, rc_style);
10010             gtk_rc_style_unref (rc_style);
10011
10012         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
10013           the style if it was already set.
10014
10015         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
10016           style if it was set before.
10017
10018 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
10019
10020         * gtk/testgtk.c (main): Add a check to see if we
10021           are being run from the correct directory and
10022           to quit nicely if we are not.
10023
10024         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
10025           static.
10026
10027 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
10028
10029         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
10030
10031         * gtk/gtkwindow.c:
10032         queue resizes unconditionally (gtk_widget_queue_resize will figure
10033         what to do if the window is not realized).
10034         (gtk_window_move_resize): only recenter the window
10035         for GTK_WIN_POS_CENTER_ALWAYS.
10036         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
10037         the same way as GTK_WIN_POS_CENTER.
10038
10039 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
10040
10041         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
10042         with (!(info->last_flags & GDK_HINT_POS)) instead of
10043         (!info->last_flags & GDK_HINT_POS).
10044
10045         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
10046         new_height unconditionally, because we use these values even if
10047         !default_size_changed && !hints_changed.
10048         comented the (default_size_changed || hints_changed) case with
10049         respect to resize rejects from the window manager.
10050
10051         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
10052         in the zvt condition hack, since this includes the window hints, set
10053         the hints after the handling_resize case.
10054
10055         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
10056         window is initially shown with to the geometry.
10057
10058 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
10059
10060         * gtk/gtkwindow.c (gtk_window_move_resize):
10061         s/size_changed/default_size_changed/g so i know what's
10062         really going on (frying brain on smaller flame now).
10063
10064 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
10065
10066         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
10067         we have size_changed upon handling_resize. this is a gross
10068         workaround for the broken zvt widget and should be removed in
10069         1.3 again (search for FIXME).
10070         Owen provided an accurate comment for this:
10071
10072         /* We could be here for two reasons
10073          *  1) We coincidentally got a resize while handling
10074          *     another resize.
10075          *  2) Our computation of size_changed was completely
10076          *     screwed up, probably because one of our children
10077          *     is broken. It's probably a zvt widget.
10078          *
10079          * For 1), we could just go ahead and ask for the
10080          * new size right now, but doing that for 2)
10081          * might well be fighting the user (and can even
10082          * trigger a loop). Since we really don't want to
10083          * do that, we requeue a resize in hopes that
10084          * by the time it gets handled, the child has seen
10085          * the light and is willing to go along with the
10086          * new size. (this happens for the zvt widget, since
10087          * the size_allocate() above will have stored the
10088          * requisition corresponding to the new size in the
10089          * zvt widget)
10090          *
10091          * This doesn't buy us anything for 1), but it shouldn't
10092          * hurt us too badly, since it is what would have
10093          * happened if we had gotten the configure event before
10094          * the new size had been set.
10095          */
10096
10097 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
10098
10099         * gtk/gtkrc.c: deal properly with the fact that RC
10100           style lists may include rc styles more than once.
10101
10102         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
10103           unused static function.
10104
10105         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
10106           stack of directories of RC files currently being
10107           parsed and implicitely add them to pixmap path.
10108           
10109           This fixes a bug where the directory would get
10110           appended then overwritten by pixmap_path declarations.
10111
10112           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
10113
10114         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
10115           theme's exit function. (Patch from Peter Wainwright,
10116           bug #1454)
10117
10118         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
10119           Add a destroy() handler to take care of removing
10120           group for menu item. (Fixes bug #1197)
10121
10122         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
10123           in warning message.
10124
10125 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
10126
10127         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
10128         roundtrip to figure window's width and height, since we know that
10129         anyways from widget->allocation.
10130
10131 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
10132
10133         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
10134           the hints after we request the new size.
10135
10136 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
10137
10138         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
10139           GTK_WIDGET_REALIZED() assertion - we can compute the
10140           hints before we are realized.
10141
10142         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
10143           hint changing so that we have a value of hints_changed
10144           when we decide whether to constrain the window size.
10145
10146         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
10147
10148         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
10149         change back to G_MAXINT.
10150
10151 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
10152
10153         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
10154         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
10155         contain uncluttered values.
10156         (gtk_window_compute_hints): simply assert that window is realized
10157         and that geometry_info is valid, since we rely on this anyways.
10158         (gtk_window_constrain_size): major cleanups to the code.
10159         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
10160         for the base size, instead of the minimums. use 32767 as max width
10161         and height (like in gtkwindow.c) instead of G_MAXINT.
10162
10163 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
10164
10165         * cleaned up the GtkContainer.need_resize flag handling mess, we
10166         only need to force resize requests when we were prematurely
10167         realized, or our widget tree was modified when we were temporarily
10168         hidden. handling these cases directly upon showing the window (i.e.
10169         while the GdkWindow is still unmapped) avoids the need to wait for
10170         a configure event response and therefore makes the GUI more snappier
10171         and avoids blank windows during the roundtrip.
10172
10173         * gtk/gtkwidget.c:
10174         (gtk_widget_hide): 
10175         (gtk_widget_show): don't queue resizes on toplevels, they know how
10176         to deal with matters.
10177
10178         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
10179         flag directly for not visible resize containers and spare us unecessary
10180         signal emissions.
10181
10182         * gtk/gtkwindow.c:
10183         (gtk_window_realize): if we need to enforce premature size allocation,
10184         queue a container resize so we are correctly resized later on.
10185         (gtk_window_init):
10186         (gtk_window_size_request):
10187         don't freak around with the ->need_resize flag,
10188         gtk_container_queue_resize() will care about that.
10189         (gtk_window_show):
10190         handle initial resizing issues here, we can handle matters better in
10191         this place, especially since we know that our GdkWindow is still
10192         unmapped.
10193         (gtk_window_move_resize):
10194         don't care about ->need_resize at all.
10195         handle size changes properly that occoured while we waited for a
10196         configure event.
10197
10198 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
10199
10200         * gtk/gtkwidget.c (gtk_widget_set_uposition):
10201         * gtk/gtkwindow.[hc] (gtk_window_reposition):
10202         Move the hint setting code from gtk_widget_set_uposition
10203         to here; set the hints so that we respect any previously
10204         set geometry hints.
10205
10206         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
10207         change the window hints here or move the window here,
10208         let that happen in gtk_window_move_resize().
10209
10210 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
10211
10212         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
10213         to already queued resizes (and therefore redraws) on a widget, check
10214         its anchestry as well.
10215
10216         * gtk/gtkcontainer.c:
10217         (gtk_container_queue_resize): clear resize widgets for resize
10218         containers before aborting prematurely. this is especially important
10219         for toplevels which may need imemdiate processing or their resize
10220         handler to be queued.
10221         (gtk_container_dequeue_resize_handler): added new internal function for
10222         gtkwindow.c.
10223
10224         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
10225         configure event, take possible changes in window position into account
10226         as well.
10227         if we request a new window size, queue up a resize handler that will
10228         last until the configure event response arrives.
10229         combined the ->need_resize case (initial show) with the general size
10230         (hints) changed case and added even more comments.
10231         if !auto_shrink, only revert to the old allocation if the new size
10232         is smaller than the current allocation.
10233
10234 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
10235
10236         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
10237                            gtk_window_set_geometry_hints
10238                            gtk_window_set_default_size):
10239         When hints are set, queue a resize so that the hints will
10240         be eventually reset on the toplevel.
10241
10242         * gtk/gtkwindow.c (gtk_window_show): Use
10243         gtk_window_compute_default_size(). Clear the need_resize flag
10244         on the initail map so that we don't unnecessarily trigger the
10245         resize code.
10246
10247         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
10248         into separate functions. Compare the hints we are setting
10249         with what we set last time so that we can accurately
10250         tell when we need to reset the hints.
10251
10252         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
10253         function to figure out the size from requisition
10254         and default_size.
10255
10256         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
10257         from fvwm to constrain a size to the geometry hints.
10258
10259         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
10260         to compare two sets of geometry hints.
10261
10262         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
10263         from gtk_window_set_hints(), just compute the hints,
10264         don't set them.
10265
10266         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
10267         code from gtk_window_move_resize() to separate function,
10268         rationalize a bit.
10269
10270 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
10271
10272         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
10273         structure into a new private structure.
10274
10275         * gtkrc.c: Split GtkRcStyle into public/private.
10276         In the private part, add a list of pointers to the
10277         RcStyle lists this RcStyle participates in.
10278
10279         * gtkrc.c: When a RcStyle is free, remove all
10280         lists referencing it from the 
10281         realized_style_ht hash, and free those lists.
10282         
10283         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
10284         gtk_rc_init(), since that adds the default styles
10285         to the list of parsed RC files again.
10286
10287         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
10288         
10289 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
10290
10291         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
10292         checks that ensure that a widget's allocation is at least 1 in width
10293         and height. (GNOME note: this doesn't affect old panel code anymore,
10294         because GtkSocket will request width and height of at least 1 since
10295         Fri Jul 23).
10296
10297         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
10298         allocated yet (happens if the user realizes the window prematurely),
10299         size request and allocate it.
10300         (gtk_window_size_allocate): guard against guint underflows.
10301
10302 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
10303
10304         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
10305         in gtk_built_sources, so gtk.defs gets built prior to all other
10306         sources.
10307
10308 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
10309
10310         * gtk/Makefile.am:
10311         invoke indent on gtkmarshal.*. 
10312         rewrote source generation rules, use COPYING as oldest source tag for
10313         a piggyback rule to generate all sources from (don't touch it ;).
10314         major cleanups, strip spaces on build rules for GNU Make.
10315
10316         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
10317         source and target files from commandline arguments. don't invoke indent.
10318
10319 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
10320
10321         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10322         notebook after switch to avoid drawing problems.
10323         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10324         
10325         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
10326         show them instead. 
10327         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10328
10329 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
10330
10331         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
10332         notebook after switch to avoid drawing problems.
10333         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
10334         
10335         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
10336         show them instead. 
10337         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
10338
10339 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
10340
10341         * gtk/gtkwindow.c:
10342         we use window->need_resize from configure_event now, to indicate that
10343         the gtkwindow should keep its allocation (e.g. because the user resized
10344         the window through window manager handles). resize_count is now reliably
10345         used to figure whether we got the allocation we requested from the
10346         window manager.
10347         configure events get queued as resizes now, the real stuff (size
10348         computation and allocation) now only goes on in gtk_window_move_resize().
10349         GtkWindow's requisition now contains its *real* requisition (like all
10350         other widgets), *not* taking usize into account.
10351         geometry_info->last_{width|height} is now updated from set_hints() only
10352         so it always contains the last hints we set for the window manager.
10353         made some event handlers return TRUE instead of FALSE.
10354         the overall code should be much more straight forward now, and the
10355         significant code portions are accompanied by comments now.
10356         (gtk_window_set_hints):
10357         removed requisition argument and made it
10358         fetch the requisition through gtk_widget_get_child_requisition.
10359         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
10360         does that now.
10361         (gtk_window_show):
10362         ensure that the widget is realized before calling 
10363         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
10364         ensure that we got properly size requested and allocated before
10365         realization.
10366         (gtk_window_configure_event):
10367         ignore plain window moves, or reallocate the widget tree through the
10368         resize queue otherwise.
10369         (gtk_window_move_resize):
10370         mostly rewrote this function to figure window manager hints more
10371         reliably, coalesce window moves and resizes to reduce configure events
10372         and do actuall size allocations.
10373
10374 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
10375
10376         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
10377         that have a resize pending, because a redraw is already queued for them.
10378
10379         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
10380         hack to clear resize_widgets.
10381
10382         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
10383         for resize containers prior to size allocation. (this is also a bit
10384         ugly, but avoids side effects for stopped emissions and is thus more
10385         reliable).
10386         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
10387
10388         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
10389         function from gtk_tooltips_expose, as we connect to ::expose_event
10390         *and* ::draw now.
10391
10392 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
10393
10394         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
10395         checks.
10396         (gtk_target_list_unref): Likewise.
10397
10398         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
10399
10400 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
10401
10402         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
10403         guard against division by zero. (Fixes bug #1339)
10404
10405 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
10406
10407         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
10408         Prevent the trivial leak of information of allowing
10409         word motion when the entry is not visible.
10410
10411 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
10412
10413         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
10414         modality to error dialog as well as confirmation dialogs.
10415         (Bug #1803, reported by Rosanna Wing Sze Yuen)
10416
10417 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
10418
10419         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
10420         tree->view_lines.
10421         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
10422
10423         * gtk/Makefile.am (install-data-local): Solaris apparently
10424         has various troubles with ln -f; use rm first instead.
10425         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
10426
10427 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
10428
10429         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
10430         use `cp' followed by `rm' (the `rm' was already there).
10431
10432 July 30, 1999 Elliot Lee <sopwith@redhat.com>
10433         
10434         * configure.in: Fix autoconf warnings about cross compilation by
10435         trying to provide sane defaults for AC_TRY_RUN.
10436         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
10437         put them into $(srcdir) when generated. Also add a dependency of
10438         gtksignal.h on gtkmarshal.h for -j builds. 
10439         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
10440
10441 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
10442
10443         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
10444         GDK_THREADS_{LEAVE,ENTER} pair.
10445         (From Paul Fisher <pnfisher@redhat.com>)
10446
10447 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
10448
10449         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
10450         width and height are always >0 (owen).
10451
10452 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
10453
10454         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
10455         change that assured that a widget's allocated with and height are
10456         always >1, since this breaks *buggy* panel code. unfortunately this
10457         back-breaks the gimp's color selector.
10458
10459         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
10460         allocation is always >0 in width and height, before sending the
10461         configure event; this is a *gross* hack to get the gimp back to work.
10462         
10463         * marked both cases with TODO-1.3
10464
10465 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
10466
10467         * gtk/gtktext.c: Don't display wrap indicators when
10468         text is not editable and word wrap is on.
10469
10470 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
10471
10472         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
10473         option menus here as they are not derived from menu shell, assure that
10474         the option menu has a menu we can add items to.
10475
10476 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
10477
10478         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
10479         width/height to (gint) before calculations and check against < 0 to
10480         avoid guint wraparounds.
10481
10482 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
10483
10484         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
10485         width and height is never zero. sanity check both dimensions against
10486         32767 and issue a warning if the allocation is greater than that.
10487
10488 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
10489
10490         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
10491         to g_main_pending() as well.
10492
10493 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
10494
10495         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
10496         call to g_main_iteration() - since that will regrab
10497         GTK+ lock to process events.
10498
10499 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
10500
10501         * gtk/gtkwindow.c
10502         - Regularize with the rest of GTK+ by making widget->requisition
10503           not reflect the set_usize()
10504         - Always recompute geometry hints, then check if they
10505           changed before sending them to the X server. The
10506           previous checks for changes would fail in a number
10507           of circumstances. 
10508
10509 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
10510
10511         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
10512
10513 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
10514
10515         * gtk/gtkdnd.c:
10516         - Code cleanups
10517         - Instantaneously update on modifier key presses
10518         - Allow cancellation of the drag with Escape.
10519
10520 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtk/testgtk.c (create_handle_box): Set the policy
10523         to auto_shrink - otherwise the appearance is rather
10524         strange when flipping between horizontal and vertical.
10525
10526 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
10527
10528         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
10529         (gtk_window_set_default_size): don't change a value if it's < 0.
10530         queue a resize.
10531
10532 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
10533
10534         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
10535
10536 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
10537
10538         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
10539         add an extra "/" when concating "/" + filename.
10540         (From Matt Grossman <mattg@oz.net>)
10541
10542 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
10543
10544         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
10545         for fg_gc if we set it for drawing pixmap.
10546
10547 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
10548
10549         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
10550         
10551         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
10552         already set, call old engine's destroy function and
10553         unref the old engine.
10554
10555 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
10556
10557         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
10558
10559 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
10560
10561         * gtk/gtkaccelgroup.h: mark certain functions as internal.
10562
10563 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
10564
10565         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
10566         expand behaviour changed.
10567
10568         * gtk/gtklabel.c (gtk_label_set_pattern):
10569         (gtk_label_set_justify):
10570         (gtk_label_set_line_wrap):
10571         don't bother invoking queue_clear, the reallocation does
10572         that for us, always free_words so the upcoming resize will
10573         relayout the label's contents.
10574
10575 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
10576
10577         * applied argument implementation patches from Elena Devdariani
10578         <elena@cogent.ca>.
10579
10580         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
10581         ::space_style, ::relief
10582         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
10583         * gtk/gtkpreview.c: ::expand
10584         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
10585         * gtk/gtknotebook.c: ::homogeneous
10586         * gtk/gtklabel.c: ::wrap
10587         * gtk/gtklist.c: ::selection_mode
10588         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
10589         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
10590         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
10591         * gtk/gtkclist.c: ::sort_type
10592         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
10593         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
10594
10595 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
10596
10597         * gtk/gtkstyle.c: Removed ill-thought-out part of last
10598         comment.
10599
10600 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
10601
10602         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
10603         counting right when we have to attach a new style
10604         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
10605
10606         * gtk/gtkstyle.c: Documented the refcounting
10607         peculularities of gtk_style_attach.
10608
10609 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
10610
10611         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
10612         window types.
10613
10614         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
10615         of GTK_TOPLEVEL for creating the window.
10616
10617 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
10618
10619         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
10620         the last argument (reported by Per Winkvist).
10621         
10622 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
10623
10624         Fixes for invisible XOR lines (Frank Loemker
10625         <floemker@TechFak.Uni-Bielefeld.DE>)
10626         
10627         * gtk/gtkclist.c (gtk_clist_realize): Always use
10628         a non-zero pixel for GDK_XOR.
10629
10630         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
10631         Use GDK_INVERT instead of GDK_XOR.
10632
10633 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
10634
10635         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
10636         signals if h/voffsets differ from adjustment values.
10637         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
10638
10639 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
10640
10641         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
10642         ::selection-done emissions up to the topmost menu shell.
10643
10644 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
10645
10646         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
10647         the user data on the window before destroying it.
10648
10649         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
10650         unrealize handler to take care of destroying 
10651         notebook->panel properly. 
10652         (Bug #1198 - Morten Welinder <terra@diku.dk>)
10653
10654         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
10655         of g_new and g_realloc to stop memory leak. (Actually,
10656         we could just use g_realloc(), but I'm not 100% sure
10657         that is portable).
10658         (Bug #1196 - Morten Welinder <terra@diku.dk>)
10659
10660 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
10661
10662         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
10663
10664         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
10665         for fontsets.
10666
10667         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
10668         with bin/button confusion.
10669
10670 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
10671
10672         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
10673         and show how preselection of radio items is done.
10674
10675 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
10676
10677         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
10678         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
10679         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
10680         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
10681         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
10682         * gtk/gtktable.c (gtk_table_attach): 
10683         * gtk/gtklist.c (gtk_list_insert_items): 
10684         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
10685         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
10686         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
10687         * gtk/gtkbin.c (gtk_bin_add): 
10688         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
10689         * gtk/gtkfixed.c (gtk_fixed_put): 
10690         * gtk/gtklayout.c (gtk_layout_put):
10691         general fixups to container_add logic. always realize child if
10692         child->parent is realized, only map the child and queue a resize
10693         if child and child->parent are both visible.
10694
10695 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
10696
10697         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
10698         instead of gtk_container_foreach to walk and unrealize children, so
10699         composite children get also unrealized.
10700         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
10701         (gtk_widget_map): assert that the widget is visible (basic constrain).
10702         (gtk_widget_real_map): assert that the widget is realized (basic
10703         constrain).
10704
10705 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
10706
10707         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
10708
10709 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
10710
10711         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
10712         file for iso-8859-2 locales.
10713
10714         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
10715
10716 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
10717
10718         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
10719          (Pointed out by andy@rz.uni-karlsruhe.de and others).
10720          Remove some suspicious and useless lines. 
10721
10722 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
10723
10724         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
10725         width,height = 0, 0 to mean - here to edge of window,
10726         instead of -1, -1, since the former is all we support.
10727
10728 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
10729
10730         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
10731         when removing from quit_functions list.
10732
10733 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
10734
10735         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
10736
10737 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
10738
10739         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
10740          When redrawing characters on non-visible entry, use appropriate
10741          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
10742
10743 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
10744
10745         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
10746         from drag coordinates.
10747         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
10748         use drag_dest_cell.
10749
10750         * gtk/gtktree (drag_dest_cell)
10751         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
10752         (Bug #1129)
10753
10754 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
10755
10756         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
10757         translate_* fields.
10758         (gtk_item_factory_finalize): invoke translate_notify independant from
10759         translate_data.
10760         (gtk_item_factory_set_translate_func): likewise.
10761         (gtk_item_factory_destroy): only remove ifactory pointer from those
10762         widgets that belong to us (stupid me).
10763
10764 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
10765
10766         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
10767         rc_style list when lookup succeeeds.
10768
10769 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
10770
10771         * gtk/gtkctree.c (resync_selection): 
10772         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
10773         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
10774         bug.
10775
10776 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
10777
10778         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
10779         Add some missing GDK_THREADS_ENTER()/LEAVE around
10780         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
10781
10782 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
10783
10784         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
10785         rather than emit_by_name.
10786
10787         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
10788         on the widget across multiple signal emissions.
10789         (gtk_editable_delete_text): same here.
10790         (gtk_editable_class_init): set widget_class->activate_signal after
10791         editable_signals[ACTIVATE] has been created.
10792
10793 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
10794
10795         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
10796         position here prematurely -- we might not have the
10797         right ->min_position and ->max_position yet.
10798
10799 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
10800
10801         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
10802         Add error traps so if the other end of the connection
10803         dies, we survive.
10804
10805         * gtk/gtkselection.c (gtk_selection_notify): Clean
10806         up properly when selection property retrieval fails.
10807         
10808         * gtk/gtkselection.c (gtk_selection_request): Correctly
10809         reject SelectionRequest notifies where the handler
10810         returns no data.
10811
10812 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
10813
10814         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
10815         when we've previously highlighted.
10816
10817         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
10818         emit two "drag_leave" signals for Motif drops.
10819
10820         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
10821         back the correct status messages when dropping from
10822         Motif onto a proxy window that is rejecting the
10823         drop.
10824
10825 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
10826
10827         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
10828         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
10829         to compare two argument values. added gtk_arg_to_valueloc() to set a
10830         variable from an arg through its location (pointer).
10831
10832         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
10833         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
10834         as gfloat*, uchars are collected as guchar*, ints are collected as
10835         gint*, etc...
10836
10837 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
10838
10839         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
10840         Include <string.h> instead of <strings.h>.
10841
10842         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
10843         (actually, a lot more duplicate includes occur if
10844          you trace through the sequence of #include's)
10845         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
10846         
10847 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
10848
10849         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
10850         gtk-a-higuti-990322-[0-3]
10851
10852         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
10853         that was causing -DX_LOCALE not to work.
10854
10855         * gtk/gtkrc.c (gtk_rc_init):
10856         X_LOCALE will never have LC_MESSAGES defined
10857
10858 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
10859
10860         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
10861         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
10862
10863         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
10864         left/right as well (gtk-michael-980726-0.patch.gz).
10865
10866         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
10867         for pointer values, use gchar instead of char. fixed uline allocation
10868         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
10869         chunks instead of G_ALLOC_ONLY.
10870         (gtk_label_size_request): always alter requisition as passed and leave
10871         widget->requisition alone.
10872         (gtk_label_set_text): allow NULL strings.
10873         (gtk_label_new): likewise.
10874
10875 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
10876
10877         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
10878
10879 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
10880
10881         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
10882         *and* mapped (i.e. drawable).
10883         (gtk_bin_expose): only send exposes to drawable children.
10884
10885         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
10886         (gtk_box_expose): only send exposes to drawable children.
10887
10888         * gtk/gtkhscale.c (gtk_hscale_draw): 
10889         * gtk/gtkvscale.c (gtk_vscale_draw):
10890         hm, this is an ugly one. we first compute the size of our trough area
10891         here (window relative) and then check intersection with the draw_area
10892         which is parent relative because we're a NO_WINDOW widget, so we need
10893         to offset the trough area by allocation.x and allocation.y before the
10894         check. (this must not be done for the background area though, since
10895         that's already computed parent relative).
10896
10897 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
10898
10899         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
10900         unrealize title buttons.
10901
10902 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
10903
10904         * gtk/gtkclist.c (gtk_clist_column_title_passive)
10905         (gtk_clist_column_title_active): 
10906         only connect/disconnect to GtkWidgetClass::event to block mouse events.
10907
10908         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
10909         zero initialize event, removed superfluous gdk_window_get_pointer call
10910
10911         * gtk/gtklist.c (gtk_list_vertical_timeout)
10912         (gtk_list_horizontal_timeout): removed superfluous
10913         gdk_window_get_pointer call
10914
10915 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
10916
10917         * plugging problems reported by "Bruce Mitchener, Jr."
10918         <bruce@puremagic.com> due to a purify session.
10919
10920         * gtk/gtkstyle.c:
10921         (gtk_style_ref): 
10922         (gtk_style_unref): assert ref_count to be > 0.
10923
10924         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
10925         the requisition.
10926         (gtk_clist_set_shift): likewise.
10927
10928         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
10929         adjustments.
10930
10931         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
10932         event before sending it and set send_event to TRUE (which needs to
10933         be done for *all* synthesized events).
10934         (gtk_list_vertical_timeout): likewise.
10935
10936         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
10937         leaks.
10938
10939         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
10940         to TRUE when synthesizing events.
10941
10942 [ *** end of merges from 1.2 *** ]      
10943         
10944 1999-11-21  Tor Lillqvist  <tml@iki.fi>
10945
10946         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
10947         (or copied from gdkconfig.h.win32 on Win32, sigh).
10948
10949         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
10950
10951         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
10952
10953         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
10954
10955         * gdk/gdkconfig.h.win32: New file.
10956
10957         * gdk/win32/makefile.cygwin: Build just a static archive here.
10958
10959         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
10960         for the DLL from the static archive built above.
10961
10962         * gdk/gdk.def: Moved here from the win32 subdirectory.
10963
10964         * gdk/win32/*: Adapt for the changed private struct organisation.
10965
10966         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
10967
10968 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
10969
10970         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
10971         for wheel mice (buttons 4 and 5).
10972
10973 1999-11-18  Tor Lillqvist  <tml@iki.fi>
10974
10975         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
10976         drawables use just the pixel field in the foreground and
10977         background GdkColor of the GdkGC.
10978
10979         gdk_gc_set_{fore,back}ground() are called in the GIMP with
10980         GdkColors containing uninitialized (red,green,blue) fields, and
10981         just the pixel field filled in, and furthermore in the
10982         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
10983         It thus turns out that we really don't need to have the full
10984         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
10985         it later to have just the pixel values.
10986
10987 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10988
10989         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
10990
10991 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
10992
10993         * docs/gtkfaq.sgml: threads example from Erik Mouw.
10994         New question on GtkLabel background colors.
10995
10996         * docs/gtk_tut.sgml:
10997           - Correct the example code callback
10998             function definitions.
10999           - Update the gtkdial example code, from Frans van Schaik.
11000           - Update setselection.c to current API.
11001
11002         * examples/Makefile examples/*/*.c: Update to code
11003         listed in tutorial.
11004
11005 1999-11-10  Tor Lillqvist  <tml@iki.fi>
11006
11007         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
11008         subrange table (from the "Developing International Software for
11009         WIndows 95 and Windows NT" book) was missing the Hangul syllable
11010         block... Get the loaded font's charset correctly.
11011
11012         (Note that this, and the other *-win32.c files, still really are
11013         the old ones, the win32 subdirectory is not ready for compilation
11014         yet after the reorg.)
11015
11016 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
11017
11018         * gtk/gtkclist.c: Fix off-by-one bug in parameter
11019         check.
11020
11021 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
11022
11023         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
11024         on results of XQueryDeviceState().
11025
11026 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
11029         we need to accesss only ->children. We need an accessor
11030         for the children.
11031
11032         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
11033         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
11034         to get rid of gdkx.h include.
11035         
11036         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
11037         and random references to 'None'.
11038
11039         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
11040         Get rid of unused #include <gdk/gdkx.h>
11041
11042         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
11043         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
11044         gdkconfig.h.
11045
11046 1999-11-08  Tor Lillqvist  <tml@iki.fi>
11047
11048         * gdk/win32/gdkdraw.c
11049         * gdk/win32/gdkfont.c
11050         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
11051         following yesterday's changes. (Unrelated to Owen's reorg.)
11052
11053 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
11054
11055         * gdk/x11/gdkinput-gxi.c: Add missing include,
11056           fix GdkWindowPrivate => GdkDrawablePrivate.
11057
11058         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
11059
11060         * gdk/x11/Makefile.am (xinput_sources): Add missing
11061         backslash to fix building with --with-xinput=none
11062
11063 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
11064
11065         Move all X specific code into the x11/ directory.
11066         Aside from shuffling things around, did the following:
11067
11068        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
11069          gdk_arg_context_* - a simple argument parsing system
11070          in the style of popt.
11071
11072        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
11073          gdk/x11/gdkprivate-x11.h:
11074          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
11075          add ->klass and ->klass_data fields. The klass_data
11076          field points to an auxilliary structure that is
11077          windowing system dependent.
11078
11079        * gdk/gdkfont.c: Make most of the measurement functions
11080          simply wrappers around gdk_text_extents().
11081
11082        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
11083          _gdk_font_strlen() function that hides the weird
11084          behavior in gtk+-1.[02] where a string is interpreted
11085          differently for 8-bit and 16-bit fonts.
11086
11087        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
11088          to store common code for synthesizing double/triple
11089          press events.
11090         
11091        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
11092          Make all the function that modify an existing GC
11093          simply wrappers around gdk_gc_set_values().
11094          
11095        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
11096          for throwing out later.
11097
11098        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
11099          GdkImagePrivate and GdkColormapPrivate to have a
11100          windowing system dependent part (GdkFontPrivateX etc.)
11101          that "derives" from the system-independent part.
11102
11103        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
11104          Got rid of the included-source-files for XInput in
11105          favor of automake conditionals. (Which didn't exist
11106          when XInput support was originally added.)
11107
11108        * gdk/gdkrgb.c: Remove the visual id from the debugging
11109          statements since that is X11 specific; print out
11110          type/depth info instead.
11111          
11112
11113 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
11114
11115         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
11116         loading duplicates of hashed fonts.
11117
11118         * gdk/gdk.c (gdk_keysym_convert_case): rename
11119         gdk_XConvertCase to gdk_keysym_convert_case, allow
11120         results to be NULL in the GTK+ style.
11121
11122         * gdk/gdkcompat.h: Started compatibility header
11123         for renames.
11124
11125 1999-11-07  Tor Lillqvist  <tml@iki.fi>
11126
11127         * gdk/win32/gdkprivate.h: New font private structures, related to
11128         fontsets.
11129
11130         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
11131         gdk_font_list_free(). On X11, will just be wrappers to
11132         XListFonts() and XFreeFontNames(). On Win32, the code previously
11133         in gtkfontsel.c is now here.
11134
11135         New function gdk_font_xlfd_create(). On X11 will get the FONT
11136         property of the font (for GDK_FONT_FONTs), or call
11137         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
11138         builds a XLFD style name from the font information in the LOGFONT
11139         struct(s).
11140
11141         New function gdk_font_xlfd_free(), which correspondingly frees the
11142         string returned by gdk_font_xlfd_create().
11143
11144         Implement fontsets on Win32. Add a function that iterates over a
11145         wide char string and calls a callback function for each substring
11146         of wide chars from the same Unicode subrange (and thus probably
11147         available in the same real font).
11148
11149         Improve the XLFD emulation a bit.
11150
11151         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
11152
11153         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
11154         Beta3, WM_IME_CHAR messages don't seem to contain the composed
11155         multi-byte char as with the Active IMM on Win9x. Oh well, handle
11156         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
11157         ImmGetCompositionStringW() to get the composed Unicode chars.
11158
11159         * gdk/win32/gdkgc.c
11160         * gdk/win32/gdkdraw.c: Changes needed because of the font private
11161         struct changes.
11162
11163         * gdk/win32/gdk.def: Add the new functions.
11164
11165 1999-11-04  Tor Lillqvist  <tml@iki.fi>
11166
11167         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
11168         get the Platform SDK to get <dimm.h>.
11169
11170         * gdk/win32/gdkevents.c: More event handling fixes and
11171         simplification. Never generate motion events with is_hint true. We
11172         used to do that on bogus grounds earlier. Windows sends
11173         WM_MOUSEMOVE messages on button events even if the mouse hasn't
11174         moved, ignore these.
11175
11176         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
11177
11178         * gdk/win32/gdkglobals.c
11179         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
11180         the TrackMouseEvent function, and use it.
11181
11182         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
11183         char before calling WideCharToMultiByte in order to get a string
11184         for the window title.
11185
11186         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
11187
11188         * gdk/win32/gdk.def: Remove obsolete functions.
11189
11190         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
11191         /nodefaultlib and /defaultlib switches.
11192
11193         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
11194
11195 1999-10-31  Tor Lillqvist  <tml@iki.fi>
11196
11197         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
11198         EuroSign).
11199
11200         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
11201         same type as GdkWChar, especially on Win32.
11202
11203         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
11204
11205         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
11206         before passing to Windows GDI for drawing etc. Convert to the
11207         system default codepage before passing to Windows as window
11208         titles.
11209
11210         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
11211         support changing input locale on the fly.
11212
11213         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
11214         on-the-fly changes. Convert incoming characters from the current
11215         codepage to Unicode (and then to a UTF-8 multi-byte string) based
11216         on the current input language. Use keysym<->Unicode mapping tables
11217         and functions borrowed from xterm sources.
11218
11219         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
11220         editions of Win9x, use the ActiveX-based Active IMM (Input Method
11221         Manager) if available. IMEs and the Active IMM are available under
11222         the disguise of Chinese, Korean and Japanese support for IE and
11223         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
11224         support is present in all editions (as long as you install it).
11225
11226         Call DispatchMessage from gdk_events_queue() (and thus
11227         gdk_WindowProc()), instead of duplicating the code in
11228         gdk_WindowProc().
11229
11230         Reworked the grab handling and propagation code, factored out
11231         duplicated code snippets into separate functions. Other cleanups,
11232         too.
11233
11234         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
11235         the <dimm.h> header describing the Active IMM.
11236
11237         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
11238         just do the same as for "single" fonts.
11239
11240         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
11241         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
11242         the new keysyms from gdkkeysyms.h.
11243
11244         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
11245         fontset, so that gtkentry uses wide characters.
11246
11247         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
11248         GTk+'s system directory "gtk+", not "gtk".
11249
11250 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
11251
11252         * docs/gtkfaq.sgml: FAQ update
11253
11254 1999-10-21  Tor Lillqvist  <tml@iki.fi>
11255
11256         * gdk/win32/gdkprivate.h: Add more font private data.
11257
11258         * gdk/win32/gdkfont.c
11259         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
11260         fonts and strings. Now works much better. You still have to
11261         have a correct font selected, though. No fontset emulation yet.
11262
11263 1999-10-19  Tor Lillqvist  <tml@iki.fi>
11264
11265         * gtk/maketypes.awk: Use G_OS_WIN32.
11266
11267         * gtk/gtk.def: Add some missing entry points. Also some non-public
11268         ones, but PyGTK porter claims to need them.
11269
11270         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
11271         built-in type generation.
11272
11273 1999-10-14  Tor Lillqvist  <tml@iki.fi>
11274
11275         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
11276         GDK_FONT_FONT fonts (which is all we have for now, we don't
11277         emulate fontsets). The X11 version uses plain XDrawString in that
11278         case, too. The string passed to gdk_draw_text_wc seems to be in
11279         fact (at least, when used by gtkentry and gtktext) either in a
11280         single-byte charset, or a DBCS. Not Unicode.
11281
11282         This fixes the problem in gtkfontsel, where even if you had
11283         selected a font with a non-Latin1 charset (windows-greek, for
11284         instance), the preview still used Latin-1 glyphs.
11285
11286         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
11287         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
11288         (gdk_font_load): Recognize the demibold etc weights, even if we
11289         don't have the corresponding constants in the headers.
11290         (gdk_font_hash_insert): Use same hash mechanism as in the X11
11291         version. Should save font resources a bit, when we don't have
11292         multiple HFONTs for the same font.
11293
11294         * gdk/win32/gdkprivate.h: Add the names field as in the X11
11295         version.
11296
11297 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
11298
11299         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
11300         X values
11301
11302 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
11303
11304         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
11305         layout support (as mentioned on
11306         http://www.jcinteractive.com/gnome-ui/software/widgets/)
11307
11308 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
11309
11310         * gtk/fnmatch.c
11311         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
11312
11313 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
11314
11315         * configure.in (ALL_LINGUAS): Added Galician (gl)
11316
11317 1999-10-05  Tor Lillqvist  <tml@iki.fi>
11318
11319         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
11320
11321         * gdk/win32/gdkcompat.c: New file, actually provide an
11322         implementation for the deprecated functions. (Just temporarily.)
11323
11324         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
11325
11326         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
11327
11328         * gdk/win32/gdk.def gtk/gtk.def: Updates.
11329
11330 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
11331
11332         * configure.in: Added "uk" to ALL_LINGUAS.
11333         
11334 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
11335
11336         * configure.in: correct checking for BeOS check
11337
11338         * gdk/gdktypes.h
11339         * gtk/fnmatch.c
11340         * gtk/gtkfilesel.c
11341         * gtk/gtkitemfactory.c
11342         * gtk/gtkmain.[ch]
11343         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
11344
11345 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
11346
11347         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
11348         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
11349         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
11350         by Bulgarian). 
11351
11352 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
11353
11354         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
11355         Fix a reference to window_private->destroyed.   
11356
11357         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
11358         (ugly) setting of an internal GdkWindow member to use
11359         a _slightly_ cleaner macro.
11360
11361         * gdk/gdkprivate.h: Split GdkWindowPrivate into
11362         GdkDrawablePrivate and GdkWindowPrivate.
11363         Add extra macros for accessing GDK_DRAWABLE_ components.
11364
11365         * *.[ch]: Massive adjustments for the above, use the
11366         new macros in a lot of places.
11367
11368 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
11369
11370         * gdk/gdktypes.h: Make GdkDrawable the base type,
11371         not GdkWindow.
11372
11373 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
11374
11375         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
11376
11377 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
11378
11379         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
11380
11381 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
11382
11383         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
11384         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
11385
11386         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
11387
11388         * docs/gtk-config.1: Now autogenerated.
11389         * docs/Changes-1.4.txt: started
11390         
11391 1999-10-03  Tor Lillqvist  <tml@iki.fi>
11392
11393         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
11394         to #ifdef also here.
11395
11396         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
11397         Owen did to the X11 backend.
11398
11399         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
11400         ScrollWindowEx when blitting inside a window, it can't be correct
11401         in the general case.
11402
11403         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
11404         WM_GETMINMAXINFO is easier.
11405
11406         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
11407         depth equal to the bitspixel value, not the visual's depth.
11408
11409         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
11410         to 24 even if the bitspixel value is 32.
11411
11412         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
11413         need to check for depth==32 when bpp==32, depth will always be 24.
11414
11415 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
11416
11417         * docs/Changes-1.4.txt: Started
11418         
11419         * gtk/Makefile.am (gdk_headers): Include all the new headers.
11420
11421         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
11422         
11423         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
11424         into C file.
11425         
11426         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
11427         header to gdkinputprivate.h.
11428
11429         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
11430         unused since before 1.2.
11431
11432 1999-09-30  Tor Lillqvist  <tml@iki.fi>
11433
11434         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
11435         expand possible hex escapes in the font family (put there by
11436         logfont_to_xlfd if the font name isn't a legal XLFD font family,
11437         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
11438         On Win32, add hex escapes here, too.
11439
11440 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
11441
11442         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
11443         to #ifdef GDK_WINDOWING_X11.
11444
11445 [ Merges from gtk-1-2 ]
11446
11447 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
11448
11449         * configure.in: fixed "GNU Make" check to pass with new make version
11450         3.77.95.
11451
11452 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
11453
11454         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
11455         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
11456         AM_PATH_GTK() macros don't get confused by the -pre1.
11457
11458 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11459
11460         * configure.in (REBUILD): Change check for perl5
11461           to check explicitely for v >= 5.002. (5.001
11462           does not work with our scripts.)
11463
11464 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
11465
11466         * configure.in: evaluate $PERL for the perl version check. added
11467         --disable-rebuilds to give the user an option to completely disable
11468         any source autogeneration rules.
11469
11470 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
11471
11472         * configure.in: evaluate $ac_make when checking for GNU Make.
11473
11474 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11475
11476         * docs/Makefile.am: added generation.txt.
11477
11478         * Makefile.am: require automake 1.4, build README from README.in and
11479         INSTALL from INSTALL.in in dist-hook.
11480         
11481         * README.in:
11482         * INSTALL.in: new files to autogenerate README and INSTALL from.
11483
11484         * configure.in: figure whether we have GNU Make
11485
11486         * docs/generation.txt: minor additions/corrections.
11487
11488 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
11489
11490         * docs/gtkfaq.sgml: FAQ Update
11491
11492 July 30, 1999 Elliot Lee <sopwith@redhat.com>
11493         
11494         * configure.in: Fix autoconf warnings about cross compilation by
11495         trying to provide sane defaults for AC_TRY_RUN.
11496
11497 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
11498
11499         * ltconfig
11500         * ltmain.sh: upgrade to libtool 1.3.3
11501
11502 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
11503
11504         * INSTALL: Indicate that the --with-glib= configure
11505         time flag is unsupported.
11506
11507 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
11508
11509         * docs/generation.txt: Added a file that gives
11510         documenation about the autogeneration process for
11511         various autogenerated files.
11512         
11513 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11514
11515         * configure.in (LIBS): Look for libgmodule in the
11516         right location.
11517
11518 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
11519
11520         * docs/gtk_tut.sgml: Removed references to
11521         code examples in my directory on gtk.org as
11522         they should all be in the tutorial now.
11523
11524         * docs/gtk_tut.sgml: Added sources for dial-test
11525         and scribble-xinput programs that were previously
11526         missing.
11527
11528 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
11529
11530         * TODO: Added entry about menu keyboard navigation, removed
11531         some finished items.
11532
11533 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
11534
11535         * acinclude.m4: Standardize on func_dgettext
11536         not func_gettext, so that the checks for dgettext
11537         actually are paid attention to.
11538
11539 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
11540
11541         * configure.in (LIBS): Add $INTLLIBS into $LIBS
11542         directly, rather than repeating the checks for
11543         gettext.
11544
11545         * INSTALL: Added information about gettext and
11546         NLS support.
11547
11548         * acinclude.m4 (LIBM): Check for dgettext, not
11549         just gettext. This should hopefully fix things wrt
11550         systems with old versions of GNU gettext installed.
11551
11552 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
11553
11554         * configure.in (LIBS): Look for libgmodule in the
11555         right location.
11556
11557 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11558
11559         * autogen.sh: add --enable-maintainer-mode
11560
11561         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
11562
11563 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
11564
11565         * docs/gtk-config.1.in:
11566           docs/Makefile.am:
11567           configure.in: gtk-config is now generated.
11568
11569         * docs/gtk-config.1: Removed, now generated.
11570
11571 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
11572
11573         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
11574         handle CreateNotify itself, still put out a debuging message for
11575         --gdk-debug=events. made the ReparentNotify debugging message more
11576         verbose.
11577         wrap xcoords translation for ConfigureEvents into an error trap,
11578         a destroy event may already be pending, and in that case, the
11579         actuall coordinate values are not at all critical.
11580
11581 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
11582
11583         * gdk/gdkcc.c: Stop leaking the color_hash all over
11584         the place. Simplify and improve the logic.
11585
11586 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
11587
11588         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
11589         for prototypes and function implementations consistent (reported
11590         by Tomas Ogren).
11591
11592 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
11593
11594         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
11595         send_event set in debugging output.
11596         (gdk_compress_exposures): default initialize the event so we don't
11597         operate on bogus values (namely send_event).
11598
11599 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
11600
11601         * gdk/gdkwindow.c: When we receive an unexpected
11602         destroy notify on one of our windows, don't just
11603         warn about it, also mark our windows as destroyed.
11604
11605 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
11606
11607         * gdk/gdkfont.c (gdk_font_hash_insert): Add
11608           name => font and name => fontset hashes. The 
11609           name => fontset hash is a _big_ win since we
11610           weren't previously caching fontsets at all and loading
11611           fontsets is expensive. The name => font hash
11612           is less of a win, but it does save us from doing
11613           repeated XQueryFont calls on the same font.
11614
11615         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
11616           list so we can remove font/fontset from hash.
11617
11618 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
11619
11620         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
11621           and slightly confusing test. [ XInternAtom (,,TRUE)
11622           will never return None ].
11623
11624 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
11625
11626         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
11627           gdk/gdkwindow.c (gdk_window_set_hints):
11628
11629         Don't omit setting the properties if flags == 0 -
11630         there may be an existing set of properties there
11631         already. (Very old bug. Would it be better to
11632         delete the property instead?)
11633
11634         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
11635           spelling error in comment.
11636
11637 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
11638
11639         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
11640           to avoid stomping over gdk_error_warnings.
11641
11642         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
11643           as (bits_per_pixel + 7) / 8. This gives the same
11644           result as before for multiples of 8, but actually
11645           a "reasonable" value for 1bit or 4bit displays.
11646
11647 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
11648
11649         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
11650         GNU Make.
11651
11652 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
11653
11654         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
11655         discarding configure events.
11656
11657 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
11658
11659         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
11660         refcount is greater than zero.
11661
11662         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
11663
11664         * gdk/gdkfont.c (gdk_font_unref): Likewise.
11665
11666         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
11667
11668         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
11669
11670 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
11671
11672         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
11673         that format 32 => sizeof(item) == 4. It really is
11674         sizeof(long).
11675
11676 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
11677
11678         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
11679         core dump at all on X IO errors, only core dump
11680         if --enable-debug for X errors.
11681
11682 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
11683
11684         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
11685         unknown window:" message. disabled ConfigureNotify discarding code,
11686         because it led to events being processed out of order.
11687
11688 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
11689
11690         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
11691
11692         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
11693         we export this function, supress error warnings and don't reset the
11694         error code in the first half of this function.
11695
11696         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
11697         code (instead of just -1) so gdk_error_trap_pop() reveals something
11698         actually informative about the error that happened.
11699
11700         * gdk/*.c:
11701         don't rely on gdk_error_code being -1 if an error occoured, but just
11702         gdk_error_code != 0.
11703
11704 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
11705
11706         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
11707         pointer *before* invoking the filter function, so we at least don't
11708         crash if a filter is removed that is currently executed. window filters
11709         *really* need to be made truely reentrant at some point.
11710
11711 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
11712
11713         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
11714         PropertyNotify debug messages.
11715
11716 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
11717         
11718         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
11719         
11720         * gdk/gdkim.c: Fix cut-and-paste errors for 
11721         x/y and PreeditAttributes/StatusAttributes.
11722
11723 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11724
11725         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
11726         G_MAXINT to 2^16 to alleviate overflow problems in
11727         various window managers.
11728
11729 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
11730
11731         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
11732         for fontsets.
11733
11734 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
11735
11736         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
11737         Initialize size_hints.x and size_hints.y because kwm
11738         brokenly pays attention to them.
11739         (Bug #1181 -  Lars Heete <hel@admin.de>)
11740
11741 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
11742
11743         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
11744         return value of gdk_list_visuals(). 
11745         (Bug #1193 - Morten Welinder <terra@diku.dk>)
11746
11747 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
11748
11749         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
11750         XSetIMValues to (void *) when comparing to NULL, to workaround
11751         the problem of some compilers barfing since older X headers don't
11752         have the prototype for it.
11753
11754 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
11755
11756         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
11757         for pseudocolor where colormap->colors was double
11758         allocated.
11759
11760         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
11761         color value in the hash table with the pixel filled
11762         in so when we do later hash table lookups, the color
11763         value is correct.
11764         
11765 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
11766
11767         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
11768         making the call
11769
11770 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
11771
11772         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
11773         pointed out by Morten Welinder <terra@diku.dk>.
11774
11775 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
11776
11777         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11778           default filter from the list
11779
11780 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
11781
11782         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
11783           default filter from the list
11784
11785 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
11786
11787         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
11788
11789         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
11790         g_strdup_printf instead of calcing the length separately
11791
11792 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
11793
11794         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
11795         that we don't do in many other places. (Fixing duplicate 
11796         #include of config.h)
11797
11798         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
11799         Otherwise, #ifndef XINPUT_NONE check in the latter
11800         doesn't work. (Bug #546)
11801
11802 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
11803
11804         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
11805         "None" case insensitive.
11806
11807 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
11808
11809         * gdk/gdkselection.c: 
11810         Add error traps so if the other end of the connection
11811         dies, we survive.
11812
11813 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
11814
11815         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
11816         dest_xid field into two fields - one for the window
11817         to send in messages, one to indicate the last looked
11818         up window for caching purposes. This is needed, so
11819         that Leave messages get the correct window.
11820
11821 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
11822
11823         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
11824         Fix warning created by people mucking around
11825         with the gsource API.
11826
11827         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
11828         Change mapping between GIOCondition and GdkInputCondition
11829         to match the way the Linux kernel does it. This should
11830         fix problems where closed pipes were no longer signalling
11831         GDK_INPUT_READ on systems with a native poll().
11832
11833 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
11834
11835         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
11836         explicitly for the string "None" - it is in the XPM
11837         spec and some servers treat unknown colors in odd ways
11838         (like asking the user!)
11839
11840 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
11841
11842         * gdk/gdkevents.c: made "->" into a "." of previous change so
11843         it compiles
11844
11845 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
11846
11847         * gdk/gdkevents.c (gdk_compress_exposures): Set the
11848         window field of the event structure before calling
11849         user filters.
11850
11851 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
11852
11853         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
11854         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
11855
11856 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
11857
11858         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
11859         intermediate text property - prevents major memory
11860         leak when gdk_use_mb.
11861         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
11862
11863 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
11864
11865         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
11866         gtk-a-higuti-990322-[0-3]
11867
11868         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
11869         sizeof(wchar_t) != sizeof (GdkWChar)
11870
11871         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
11872         that was causing -DX_LOCALE not to work.
11873
11874         * gtk/gtkrc.c (gtk_rc_init):
11875         X_LOCALE will never have LC_MESSAGES defined
11876
11877         * gdk/gdk.c (gdk_init_check):
11878         Remove --xim-preedit and --xim-status from argv properly.
11879
11880         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
11881         that the client window is present on the X server
11882         before we pass it to the input method.
11883
11884 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
11885
11886         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
11887         if --display is specified on the command line, than
11888         the drag window will not be created on that display.
11889         
11890 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
11891
11892         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
11893         lookups with only_if_exists == TRUE were inserting
11894         bogus values into the atom cache.
11895
11896 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
11897
11898         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
11899         then reset it to NULL.
11900
11901         * gdk/gdkcolor.c:
11902         (gdk_colors_free): 
11903         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
11904         key for g_hash_table_remove() in both functions, this prevents us
11905         from accessing possibly uninitialized portions of a GdkColor structure
11906         where we are only interested in its pixel value.
11907
11908 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
11909
11910         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
11911         font hash table, if we have a GdkFontPrivate entry for this font
11912         already, simply increment its reference count, provided by Olaf Dietsche
11913         <olaf.dietsche+list.gtk@netcologne.de>.
11914
11915 1999-09-21  Tor Lillqvist  <tml@iki.fi>
11916
11917         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
11918         just to be sure.
11919
11920         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
11921         unused variables, leftovers from the X11 version.
11922
11923         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
11924
11925         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
11926         downcase fields on X11.
11927
11928 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
11929         
11930         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
11931         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
11932
11933 1999-09-17  Tor Lillqvist  <tml@iki.fi>
11934
11935         * gdk/win32/gdk.def: Add gdk_threads_mutex.
11936
11937         * gtk/makefile.msc: Correct path to libintl.
11938
11939         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
11940         use of gint vs. int, and gint vs. gboolean in headers and
11941         definitions. Use GtkType for the *_get_type functions. Note that
11942         these changes preserve binary compatibility.
11943
11944         * gdk/gdk.c
11945         * gdk/win32/gdk.c
11946         * gdk/gdk.h: Fix inconsistencies: gint vs int.
11947
11948         * gtk/gtkmain.c
11949         * gtk/gtkclist.c
11950         * gtk/gtkmenufactory.c
11951         * gtk/gtknotebook.c
11952         * gtk/gtkwidget.c: Fix inconsistencies, also gint
11953         vs. gboolean.
11954
11955         * gtk/gtkcolorsel.[ch]
11956         * gtk/gtkcombo.[ch]
11957         * gtk/gtkdrawingarea.[ch]
11958         * gtk/gtkgamma.[ch]
11959         * gtk/gtkhandlebox.[ch]
11960         * gtk/gtkhpaned.[ch]
11961         * gtk/gtkhruler.[ch]
11962         * gtk/gtkplug.[ch]
11963         * gtk/gtkpreview.[ch]
11964         * gtk/gtkruler.[ch]
11965         * gtk/gtksocket.[ch]
11966         * gtk/gtkstatusbar.[ch]
11967         * gtk/gtktoolbar.[ch]
11968         * gtk/gtkvbbox.[ch]
11969         * gtk/gtkvpaned.[ch]
11970         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
11971         functions.
11972
11973         * gtk/gtkgamma.h: Fix bug, missing () in call of
11974         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
11975
11976 1999-09-14  Tor Lillqvist  <tml@iki.fi>
11977
11978         * gdk/gdkcolor.c (gdk_colormap_new)
11979         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
11980         colormap->colors was allocated twice.
11981
11982         * gdk/win32/gdk.c: Remove some unused stuff.
11983
11984         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
11985         colormap.
11986
11987         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
11988         * gtk/gtklabel.h (gtk_label_get_type)
11989         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
11990         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
11991         in a couple of places, not guint.
11992
11993 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11994
11995         * configure.in,po/et.po: added Estonian language file
11996
11997 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
11998
11999         * configure.in,po/da.po: added Danish file
12000
12001 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
12002
12003         * docs/gtkfaq.sgml: Minor FAQ Update
12004
12005 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
12006
12007         * docs/gtkfaq.sgml: FAQ update
12008
12009 1999-08-27  Tor Lillqvist  <tml@iki.fi>
12010
12011         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
12012         way to get window contents continually refreshed while resizing. I
12013         didn't like the effects myself, so it's not on by default.
12014
12015         * gdk/win32/gdkprivate.h: New flag variable
12016         gdk_event_func_from_window_proc, FALSE by default.
12017
12018         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
12019         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
12020         are passed --gdk-event-func-from-window-proc.
12021
12022         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
12023         and we have am event_func, call it instead of enqueing the event.
12024
12025 1999-08-23  Tor Lillqvist  <tml@iki.fi>
12026
12027         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
12028         Kelley: Set expose_count in GdkEventExposes correctly.
12029
12030         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
12031         MULTIPLE_WINDOW_CLASSES).
12032
12033         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
12034         for bug in NT, apparently NT *does* draw the end pixel, too, in
12035         LineTo with a one-pixel pen, so we don't have to do it ourselves.
12036
12037 1999-08-21  Tor Lillqvist  <tml@iki.fi>
12038
12039         Improvements by Hans Breuer: 
12040
12041         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
12042
12043         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
12044         CS_?REDRAW flags as they cause lots of (late) redraws when "show
12045         window contents while dragging" is turned on. Allocate at least
12046         one unique class for every GdkWindowType. If support for single
12047         window-specific icons is ever needed (eg. Dialog specific), every
12048         such window should get its own class.
12049
12050 1999-08-19  Tor Lillqvist  <tml@iki.fi>
12051
12052         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
12053         error that caused crashes.
12054
12055 1999-08-17  Tor Lillqvist  <tml@iki.fi>
12056
12057         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
12058         window, use ScrollWindowEx, and call UpdateWindow. This prevents
12059         bugs when for instance part of the window was outside the
12060         display. Thanks to Philippe Colantoni for finding and fixing this.
12061
12062 1999-08-16  Tor Lillqvist  <tml@iki.fi>
12063
12064         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
12065         endpoint calculations which were totally wrong. (A little RTFMing
12066         helps a lot ;-)
12067
12068         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
12069         from a separate directory, not from gettext, because of licensing
12070         issues (we want to use the LGPL version).
12071
12072         * README.win32: Mention the intl from glibc vs from gettext issue.
12073
12074 1999-08-13  Tor Lillqvist  <tml@iki.fi>
12075
12076         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
12077         in the key event handling: Now AltGr chars work again. Also,
12078         now Alt-digits are passed up as well as Control-digits.
12079         Pass keypad plus and minus as normal plus and minus.
12080
12081 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
12082
12083         * docs/gtkfaq.sgml: FAQ Update
12084
12085 1999-07-25  Tor Lillqvist  <tml@iki.fi>
12086
12087         * README.win32
12088         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
12089         the Wintab SDK.
12090
12091         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
12092         OK, but getting closer. Guard against bogus tilt data from Wacom
12093         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
12094         enable easier building without Wintab.
12095
12096         * gdk/win32/gdkinput.h
12097         * gdk/win32/gdkevents.c 
12098         * gdk/win32/gdkwindow.c: Minor changes related related to above.
12099         
12100         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
12101         code. As we have just one visual on Win32, no sense to have it in a
12102         table, and no need for the hash table.
12103
12104         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
12105         better on white background.
12106
12107 1999-07-21  Tor Lillqvist  <tml@iki.fi>
12108
12109         * README.win32: Update gcc build instructions. Mention gettext is
12110         GPL.
12111
12112         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
12113         supported cursor size with GetSystemMetrics.
12114
12115         * gdk/win32/gdkfont.c
12116         * gtk/gtkfontsel.c: Guard against some font weight and charset
12117         symbols being undefined (in mingw32 headers).
12118
12119         * gdk/win32/makefile.cygwin
12120         * gtk/makefile.cygwin
12121         * gtk/gtkthemes.c: No longer need to have differently named
12122         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
12123
12124 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
12125
12126         * docs/gtkfaq.sgml: Long awaited FAQ update.
12127
12128 1999-07-15  Tor Lillqvist  <tml@iki.fi>
12129
12130         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
12131         it. Obscure bit manipulation needed.
12132
12133         * gdk/win32/gdkevents.c: Logging.
12134         
12135         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
12136         style (file name include compiler name) for theme engines.
12137
12138 1999-07-13  Tor Lillqvist  <tml@iki.fi>
12139
12140         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
12141
12142         * gdk/win32/gdkevents.c: Fix long-standing bug in key
12143         events. The key.string wasn't zero-terminated, still we strdup'ed
12144         it in gdk_event_copy(). Synthesize crossing events for button
12145         events before possible propagation.
12146
12147         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
12148
12149         * gdk/win32/makefile.cygwin
12150         * gtk/makefile.cygwin: Use new DLL naming style for the
12151         GCC-compiled ones.
12152
12153         * gdk/win32/makefile.msc
12154         * gtk/makefile.msc: Cosmetics mostly.
12155
12156         * gtk/gtk.def: Add missing entry points.
12157
12158         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
12159
12160 1999-07-09  Tor Lillqvist  <tml@iki.fi>
12161
12162         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
12163         or height is zero. Don't print a warning if Pie or Arc fails, they
12164         always fail (?) for very narrow ellipses.
12165
12166         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
12167         the part or the destination window corresponding to source area
12168         outside of the source drawable's boundary.
12169
12170         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
12171         anything if less than two points.
12172
12173         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
12174         return NULL. Gtk cut-and-paste inside a single program works
12175         better this way. (It always gets the clipboard contents from
12176         Windows, not from its own copy, which is cleared anyway. I can't
12177         say I fully understand what happens... Emulating the X selection
12178         and property stuff is a bit of a mess.)
12179
12180         * gdk/win32/gdkevents.c
12181         * gdk/win32/gdkproperty.c: A bit more verbose logging.
12182
12183         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
12184         that never got deleted). Revamp gdk_region_shrink.
12185
12186         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
12187         after use.
12188
12189         * gtk/gtk.def: Add some missing entry points.
12190
12191         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
12192         component.
12193
12194 1999-07-04  Tor Lillqvist  <tml@iki.fi>
12195
12196         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
12197         Control-digits specially.
12198
12199 1999-07-03  Tor Lillqvist  <tml@iki.fi>
12200
12201         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
12202
12203 1999-06-28  Tor Lillqvist  <tml@iki.fi>
12204
12205         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
12206         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
12207         finding this.)
12208
12209 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
12210
12211         * gtk+.spec.in: Corrected some typos in files section.
12212         
12213 1999-06-15  Tor Lillqvist  <tml@iki.fi>
12214
12215         * README.win32: Mention using GNU gettext.
12216         * config.h.win32: Enable NLS stuff.
12217         * gtk/makefile.msc: Use GNU gettext.
12218         * gdk/win32/gdkdnd.c: Minor header reorg.
12219         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
12220         cosmetics.
12221         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
12222         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
12223
12224 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
12225
12226         * acinclude.m4
12227         * config.guess
12228         * config.status
12229         * ltconfig
12230         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
12231
12232 1999-05-30  Tor Lillqvist  <tml@iki.fi>
12233
12234         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
12235         SafeAdjustWindowRectEx. Don't override all calls to
12236         AdjustWindowRectEx by it, but use it only in two places: When
12237         creating a new top-level window and when moving a top-level
12238         window.
12239
12240         Use screen coordinate rectangle, not client rectangle, in
12241         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
12242         when we try to place a window so that the decoration (mainly,
12243         title bar) isn't visible.
12244
12245         These changes fix the bug that showed up for instance as the
12246         GIMP's saved top-level windows moving right and down (by an amount
12247         equal to the window decoration) for each session. This bug showed
12248         up also in testgtk's "Saved Position".
12249
12250         gdk_window_resize also redone a bit.
12251
12252 1999-05-25  Tor Lillqvist  <tml@iki.fi>
12253
12254         * gtk/testgtkrc: Add (commented out) Windows-style theme
12255         include line.
12256
12257         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
12258
12259 1999-05-18  Tor Lillqvist  <tml@iki.fi>
12260
12261         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
12262         gdkx.h to a gdk subdirectory, so that applications can include
12263         these with <gdk/*.h> without trouble.
12264
12265         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
12266         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
12267         have their bitmap destroyed.
12268
12269         * gdk/win32/gdk.def: Add gdk_root_parent.
12270
12271 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
12272
12273         * configure.in
12274           gtk-config.in
12275           ltconfig
12276           ltmain.sh     
12277           gtk/Makefile.am: changes to compile nicely (with xlib) 
12278           on BeOS
12279
12280 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
12281
12282         * acinclude.m4
12283         * config.guess
12284         * config.sub
12285         * ltconfig
12286         * ltmain.sh: upgrade to libtool 1.3
12287
12288 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
12289
12290         * gtk/gtkclist.c:
12291         * gtk/gtkctree.c: merges from gtk-1-2
12292
12293 1999-04-25  Tor Lillqvist  <tml@iki.fi>
12294
12295         Support added for building using a GNU toolchain on Win32,
12296         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
12297
12298         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
12299         * config.h.win32: Changes for gcc.
12300         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
12301         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
12302         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
12303         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
12304         Protect shl stuff unavaiilable with mingw32 headers.
12305         * gdk/win32/gdkevents.c: Fix typo.
12306         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
12307         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
12308         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
12309         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
12310         the mingw32 headers.
12311         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
12312         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
12313         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
12314         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
12315         Test for NATIVE_WIN32, not _MSC_VER.
12316         * gtk/gtkmain.c: No use warning about developer version on Win32,
12317         there aren't any non-developer versions anyhow.
12318         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
12319         * gtk/makefile.msc: Use pthread from another directory. Minor other
12320         changes. 
12321
12322 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
12323
12324         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
12325           default filter from the list
12326
12327 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
12328
12329         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
12330          when gtk_widget_grab_default() is called for a widget that
12331          is not within a GtkWindow.
12332
12333 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
12334
12335         * docs/gtk_tut.sgml, examples/clist.c: use a
12336           scrolled window in the clist example. Minor
12337           tutorial fixes.
12338
12339 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
12340
12341         * docs/gtk_tut.sgml: Style check from David King
12342           <dking@youvegotmail.net>
12343
12344 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
12345
12346         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
12347         compile with unknown value of GDK_WINDOWING
12348
12349 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
12350
12351         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
12352         after the rule is fired.
12353         (install-exec-local): Install gdkconfig.h only if the contents are
12354         different from the currently installed gdkconfig.h.
12355
12356 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
12357
12358         * gdk/Makefile.am (configexecincludedir): Rename from 
12359         configincludedir so that gdkconfig.h will be installed 
12360         as part of `make install-exec'. 
12361
12362 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
12363
12364         * acinclude.m4
12365         * config.guess
12366         * config.sub
12367         * ltconfig
12368         * ltmain.sh: upgrade to libtool 1.2f
12369
12370         * autogen.sh: libtool is not required to autogen gtk+
12371
12372         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
12373         needed)
12374
12375 1999-03-18  Tor Lillqvist  <tml@iki.fi>
12376
12377         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
12378         declaring gdk variables exported/imported from the DLL. New image
12379         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
12380         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
12381         GDK_DRAG_PROTO_OLE2.
12382
12383         * gdk/gdk.h: Merge in Win32 version: Two new functions,
12384         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
12385         declared only for the Win32 version, but could be in the X11
12386         version as well. (Needed for a Xlib-less gdk_imlib.)
12387         gdk_color_hash should have only one parameter. Declare
12388         gdk_threads_mutex with GDKVAR.
12389         
12390         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
12391         just one parameter.
12392
12393         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
12394         per pixel, not bits.
12395
12396         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
12397         Fetch bpp (which means bits-per-pixel here) from another place on
12398         Win32. Accept also depth==32 (which we might get on Win32) with
12399         bpp==32.
12400
12401         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
12402         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
12403         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
12404         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
12405         in the backend-dependent directory, not in the common gdk
12406         directory.
12407
12408         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
12409         headers.
12410
12411 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
12412
12413         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
12414         want to use the Gtk+ devel version (which is true, and yes - even i am
12415         currently working with the 1.2.x branch). so everyone reading this, you
12416         probably want to issue
12417         cvs checkout -r glib-1-2 glib
12418         and
12419         cvs checkout -r gtk-1-2 gtk+
12420         as your next two comands.
12421
12422 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
12423
12424         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
12425         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
12426
12427         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
12428         file. strongly deprecated the GTK_HAVE_* macros, we provide
12429         GTK_CHECK_VERSION() for people that need to check for certain
12430         Gtk+ versions.
12431
12432         * gtk/gtkcompat.h: removed this from CVS.
12433         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
12434         idea right from the start, it just didn't seem like that back then.
12435
12436 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
12437
12438         * merges from gtk-1-2:
12439
12440 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
12441
12442         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
12443         item factory class has been created.
12444         (gtk_item_factory_parse_rc): likewise.
12445
12446         * gtk/gtkmenu.c:
12447         keep proper references for old_active_menu_item.
12448         (gtk_menu_reparent): unset the usize of the new parent,
12449         so the menu can sanely be size requested and we don't get nasty screen
12450         artefacts upon next reparentation.
12451         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
12452         enter notify. only synthesize enter notifies if the pointer really is
12453         inside the event window.
12454         (gtk_menu_popdown): use gtk_menu_shell_deselect().
12455         (gtk_menu_popup): move the background setting stuff into
12456         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
12457
12458         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
12459         gtk_menu_shell_select_item() to select the new item.
12460         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
12461         do the right thing for deselection as well.
12462
12463 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
12464
12465         * gtk/gtkwidget.[hc]:
12466         (gtk_widget_accelerators_locked): return whether a widget's accelerators
12467         are locked.
12468
12469         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
12470         existing accelerators if the widget's accelerators are locked.
12471
12472 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
12473
12474         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
12475
12476         * gtk/gtkmenu.c: truely forward key press and key release events to
12477         the menu widget from the toplevel or tearoff window. we can't simply
12478         connect to that, we need to stop further processing of the events as
12479         well.
12480
12481 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
12482
12483         * gtk/gtkmenu.c:
12484         (gtk_menu_key_press): pass event->keyval, event->state to
12485         gtk_accelerator_valid, instead of event->keyval twice.
12486         refuse to install single letter accelerators for menus that use
12487         single letter shortcuts.
12488
12489         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
12490         gtk_menu_ensure_uline_accel_group().
12491
12492         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
12493         which will always return an uline accel group, made
12494         gtk_menu_get_uline_accel_group() return NULL if the group isn't
12495         yet created.
12496
12497 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
12498
12499         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
12500
12501         * gtk/gtkclist.c (gtk_clist_column_title_passive):
12502         Leave button sensitive, trap  button_press, button_release,
12503         motion_notify, enter_notify and leave_notify events instead.
12504         (gtk_clist_column_title_active): disconnect event handler.
12505         (gtk_clist_drag_data_get): fixed memory leak. Reported by
12506         Guillaume Laurent <glaurent@worldnet.fr>
12507
12508 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
12509
12510         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
12511         width/height mixups.
12512
12513         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
12514         if needed.
12515
12516 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
12517
12518         * gtk/testgtk.c (create_item_factory): unref the item factory after
12519         window's destruction.
12520
12521         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
12522         count on the menu shell around the menu item's activation, since the
12523         signal emission may cause menu shell destruction.
12524
12525         * gtk/gtkitemfactory.c:
12526         the previous code leaked one accel group per menu. we use
12527         gtk_menu_get_uline_accel_group() now to fix that, and with that
12528         also create the underline accelerator group of the menus only if
12529         required (i.e. an underline accelerator has been specified).
12530         (gtk_item_factory_construct):
12531         (gtk_item_factory_create_item): removed code that would create an
12532         extra accel group for the menu (and leak references).
12533         (gtk_item_factory_create_item): adapted the underline accelerator
12534         installation code to properly feature gtk_menu_get_uline_accel_group().
12535
12536         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
12537         menu->accel_group, this may return NULL if the accelerator group
12538         hasn't been set yet.
12539         added gtk_menu_get_uline_accel_group() to retrive the underline
12540         accelerator group of the menu, this will be created on demand
12541         and proper care is taken about its reference count.
12542
12543         * gtk/gtkitemfactory.h:
12544         * gtk/gtkitemfactory.c:
12545         dumped the approach of keeping a widgets by action list on the
12546         factory since the factory<->widget destroy negotiation didn't work
12547         and would be hard to get going at all. instead we keep a list of
12548         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
12549         persistant throughout a program's life time).
12550         also, i removed the static const gchar *key_* variables, and made
12551         them inline strings (they weren't actually used anyways).
12552         (gtk_item_factory_add_item): update ifactory->items.
12553         (gtk_item_factory_destroy): destroy ifactory->items (and remove
12554         the item factory pointer from the remaining ifactory widgets).
12555         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
12556         list to find the widget.
12557         (gtk_item_factory_get_item): new function that works around
12558         gtk_item_factory_get_widget() limitations, this function will only
12559         return menu items, even for <Branch> entries.
12560
12561 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12562
12563         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12564         font hash table, if we have a GdkFontPrivate entry for this font
12565         already, simply increment its reference count, provided by Olaf Dietsche
12566         <olaf.dietsche+list.gtk@netcologne.de>.
12567
12568         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12569         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12570
12571 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
12572
12573         * gtk/gtkcontainer.c:
12574         (gtk_container_add_with_args):
12575         (gtk_container_addv):
12576         (gtk_container_add): before adding a child to a conatiner, make sure
12577         it is (default) constructed, this is neccessary because under certain
12578         circumstances the child will get relized and mapped immediatedly, in
12579         which case it has to be constructed already.
12580
12581 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
12582
12583         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
12584         values > 1 as TRUE also.
12585
12586 1999-03-16  Tor Lillqvist  <tml@iki.fi>
12587
12588         * README.win32: New file.
12589                 
12590         * configure.in: Check for lstat.
12591
12592         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
12593         completeness.
12594
12595         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
12596
12597         * gtk/gtk.def: Removed CRs.
12598
12599         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
12600         ..\gdk\win32).
12601
12602         * gdk/win32/makefile.msc: Correct upwards relative paths.
12603         
12604 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
12605
12606         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
12607           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
12608           it was connecting a void function to expose_event and the int
12609           returning function to the draw signal
12610
12611 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
12612
12613         * configure.in:
12614         Use correct path to libgmodule.la when ref'ing uninstalled copy
12615         of glib.  (Already in stable branch, Bug #417)
12616
12617 1999-03-15  Tor Lillqvist  <tml@iki.fi>
12618
12619         Win32 merge and general portability stuff:
12620                 
12621         * acconfig.h,configure.in: Check for <sys/time.h>.
12622
12623         * gdk/win32: New directory (actually, been there for a while).
12624         
12625         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
12626         NATIVE_WIN32, and use these. Always case fold on Win32. No
12627         backslashed escapes on native Win32.
12628
12629         * gtk/{gtk.def,makefile.msc}: New files.
12630
12631         * gtk/Makefile.am: Add above new files.
12632         
12633         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
12634         instead of <strings.h>.
12635
12636         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
12637         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
12638         <unistd.h> appropriately.
12639
12640         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
12641         Use ABS() (from <glib.h>) instead of abs().
12642         
12643         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
12644         of gtk (and thus glib) headers, so that WIN32 will be
12645         defined. With MS C, include <direct.h> for mkdir prototype.
12646
12647         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
12648         some casts, needed by MS C.
12649
12650         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
12651         implemented).
12652
12653         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
12654         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
12655         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
12656
12657         * gtk/gtkmain.h: Mark variables for export/import on Win32.
12658                 
12659         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
12660         the event is not a hint, or its window is not the slider. Needed
12661         on Win32, at least.
12662
12663         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
12664         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
12665         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
12666         a subdirectory of the Windows directory as gtk system
12667         configuration directory.
12668
12669         * gtk/gtkselection.c: No chunks on Win32.
12670
12671         * gtk/gtksocket.c: Not implemented on Win32.
12672
12673         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
12674
12675         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
12676
12677         * gtk/maketypes.awk: Declare variables with a macro that expands to
12678         necessary export/import magic in the case of Win32.
12679                 
12680         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
12681
12682 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
12683
12684         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
12685         since those were meant only for gdki18n.h.  
12686         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
12687         for widechar tests.
12688         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
12689
12690 1999-03-13  Tor Lillqvist  <tml@iki.fi>
12691
12692         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
12693         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
12694
12695         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
12696         installed) to CFLAGS.
12697
12698         * gdk/Makefile.am: Add rules for gdkconfig.h.
12699
12700         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
12701         APIs.
12702
12703         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
12704         gdkx.h anyway when compiling for X11.
12705         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
12706         general): Merge in Win32 version.
12707         
12708         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
12709         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
12710         expansion (if we don't have HAVE_PWD_H), allow for drive
12711         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
12712         included code from Craig Setera's port to Win32 (the one that uses
12713         X11, and the cygwin dll), even if it probably will be abandoned.
12714
12715         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
12716         the user entered one herself.  This way one can complete *.h and
12717         don't get matches on any .help files, for instance.
12718         
12719 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
12720
12721         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
12722         font hash table, if we have a GdkFontPrivate entry for this font
12723         already, simply increment its reference count, provided by Olaf Dietsche
12724         <olaf.dietsche+list.gtk@netcologne.de>.
12725
12726         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
12727         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
12728
12729 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
12730
12731         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
12732         the number of calls to gdk_draw_point() (and thus to X) by
12733         clipping the points by hand.
12734
12735         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
12736         the clip parameter.
12737         (gtk_handle_box_paint): Only paint the handle if the expose area
12738         intersects it.
12739
12740 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
12741
12742         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
12743
12744 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
12745
12746         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
12747         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
12748
12749 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
12750
12751         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
12752          textmode (O_TEXT) for OS/2 version.
12753
12754 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
12755
12756         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
12757         GtkSpinButton, "input" and "output", to make the output more flexible.
12758         The user has to provide a mapping between adjustment->value and the
12759         output string (and vice versa, if the spin button is editable). 
12760         See testgtk for examples.
12761
12762 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
12763
12764         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
12765         new one.
12766         
12767         * configure.in: set gtk+ version to 1.3.0.