]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
c344a4091f47566c375c81bdc1288503badc9c9b
[~andy/gtk] / ChangeLog.pre-2-8
1 2001-06-26  Havoc Pennington  <hp@redhat.com>
2
3         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
4
5 2001-06-26  Havoc Pennington  <hp@redhat.com>
6
7         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
8         property
9
10 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
11
12         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
13         stupid missing statement
14
15         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
16         private function for ATK.  It notifies you of how many _visible_
17         children are deleted when a node is deleted.  Should be used by
18         atk only.
19
20 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
21
22         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
23         Use new pango_context_get_metrics() to fix problems
24         with font lists in descriptions. (#56184, reported by
25         Jonas Borgström)
26
27 2001-06-25  Havoc Pennington  <hp@redhat.com>
28
29         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
30         s/RESIZEABLE/RESIZABLE/
31
32         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
33
34 2001-06-25  Alexander Larsson  <alexl@redhat.com>
35
36         * configure.in:
37         Added --enable-fbmanager. This is some experimental code
38         that lets several GtkFB apps coordinate their access to the
39         framebuffer.
40         
41         * acconfig.h:
42         Added ENABLE_FB_MANAGER.
43
44         * gdk/linux-fb/Makefile.am:
45         Added gdkfbmanager and gdkfbswitch.
46
47         * gdk/linux-fb/gdkkeyboard-fb.c:
48         * gdk/linux-fb/gdkmouse-fb.c:
49         * gdk/linux-fb/gdkprivate-fb.h:
50         Split device init and open so that
51         they can be opened and closed while switched
52         away.
53
54         * gdk/linux-fb/gdkmain-fb.c:
55         Add the basic manager communication.
56
57         * gdk/linux-fb/gdkrender-fb.c:
58         Don't update to the shadow fb if we're
59         blocked by the fb manager.
60
61 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
62
63         * docs/Changes-2.0.txt: Add note about child property
64         changes.
65
66 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
67
68         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
69         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
70
71         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
72         with un'reffing wrong list reported by Jeff Franks.
73
74         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
75
76         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
77         for the default icon. Remove inline XPM.
78
79         * gtk/gtkstock.h gtk/gtkiconfactory.c:
80         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
81         is used for GTK_STOCK_DND, but it is a bit too small.)
82
83         * gtk/stock-icons/stock_dnd_multiple.png
84         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
85
86         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
87         TRUE when starting a drag. In other cases, we are
88         just observing. (#52995)
89
90         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
91         function to set the icon for a drag from a GdkPixbuf
92         or stock ID.
93
94         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
95         Likewise, for drag sources.
96
97         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
98         (Now should be done using the stock system.)
99
100 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
101
102         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
103         Removed - didn't work and not particularly useful anyways
104         if it did. 
105
106 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
107
108         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
109         introduced last night that was making things decidedly not work.
110
111         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
112         so that we have getter/setter pairing everywhere it makes
113         sense. (#55767)
114
115         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
116         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
117         deprecated compat macro. (#55516)
118
119         * gtk/gtklabel.[ch]: Add functions
120         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
121         gtk_label_set_label(), which mirror the property API for GtkLabel.
122         Make gtk_label_get_attributes() only reflect the attributes
123         set by gtk_label_set_attributes.
124
125         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
126         from gtk_notebook_set_page().
127
128 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
129
130         * configure.in: Fix tests for XShm.h.
131
132         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
133         gdk_image_new() by use of goto, properly use g_object_unref().
134
135 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
136
137         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
138         calls, as GdkImage is an object. these should be g_obejct_unref()
139         instead but that won't work because of the g_error() statement
140         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
141         to spot these places.
142
143 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
144
145         * modules/input/gtkimcontextxim.c: Fixup some problems with 
146         text length handling in error cases.
147
148         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
149         a bit to make test actually warn on attempt to allocation
150         a negative size. (#56101, Matthias Clasen)
151
152 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
153
154         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
155         noticed by Brian Cameron.
156         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
157         Cameron.
158
159 2001-06-22  Hans Breuer  <hans@breuer.org>
160
161         * gdk/gdk.def : updated externals
162
163         * gdk/win32/gdkdrawable-win32.c : corrected some casts
164         in GDK_NOTEs
165
166         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
167         to translate coordinates to the internal > 16 bit system
168         Try to handle WM_WINDOWPOSCHANGED to get better performance for
169         when moving/resizing
170
171         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
172         and gdk_keymap_get_direction (). The latter is untested for
173         the RTL case
174
175         * gtk/gtk.def : updated externals
176
177         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
178         from pango_language_from_string (), not an already freed pointer
179
180         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
181         binary (-kb) to be useable on windoze
182  
183 2001-06-21  Alexander Larsson  <alexl@redhat.com>
184
185         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
186         Update to new PangoLanguage changes.
187         
188         * gtk/gtkwindow-decorate.c:
189         * gtk/gtkwindow.[ch]:
190         Added setting argument to gtk_window_set_has_frame ()
191         
192 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
193
194         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
195         the case without XKB properly.
196
197         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
198         unused gtk_rc_auto_parse variable.
199
200         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
201         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
202         longer needed with GdkPixbuf.
203
204         * gtk/gtkrc.c (_gtk_rc_init): Make private.
205
206 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
207
208         * gtk/gtkentry.h: Mark deprecated functions with
209         GTK_DISABLE_DEPRECATED.
210
211 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
212
213         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
214
215         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
216
217         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
218           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
219           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
220           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
221           to recent changes in Pango.
222
223         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
224           to test whether the basic engine honors them.
225
226 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
227
228         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
229         gtk_container_child_get_property().
230
231 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
232
233         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
234         (gtk_tree_view_move_cursor_page_up_down): implement.
235
236 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
237
238         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
239         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
240         don't use automatic fixed size buffer for printf-ing floats, doubles
241         can expand to really _huge_ strings, use g_strdup_printf() instead.
242
243 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
244
245         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
246         construct property in 1.2 and still needs to be.
247
248         * gtk/gtkwidget.c: "composite_child" is not a settable property.
249
250 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
251
252         * gtk/gtkliststore.c (gtk_list_store_clear): 
253         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
254         clear a model.
255
256 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
257
258         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
259
260         * gtk/Makefile.am:
261         * gtk/gtk.h: disabled GtkPacker compilation.
262
263         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
264
265         * gtk/gtknotebook.c:
266         * gtk/gtktable.c:
267         * gtk/gtkbox.c: ported this over to child properties.
268
269         * gtk/gtksettings.c: fetch class properties via
270         g_object_class_list_properties().
271
272         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
273         child arg interface. use gobjectnotifyqueue.c for child property
274         notification.
275
276         * gtk/gtkwidget.[hc]: provide necessary means for container child
277         properties, i.e. ::child_notify signal,
278         gtk_widget_freeze_child_notify(),
279         gtk_widget_child_notify(),
280         gtk_widget_thaw_child_notify().
281
282         * tests/testgtk.c: removed inferior property handling code, for
283         property editing, a generic module should be used, and GLE
284         coincidentally fullfills that purpose.
285
286         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
287         needs to be adapted to g_object_class_list_properties() before this
288         builds again.
289
290 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
291
292         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
293         test if a node is expanded.
294
295 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
296
297         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
298         where collapsing a selected row would result in the cursor/anchor
299         getting screwed up.
300
301 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
302
303         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
304         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
305         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
306         Now I can really reorder/sort all Store widgets.  treesorttest
307         seems to just work now.
308         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
309         testtreesort worked through a big coincidence all this time.
310         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
311         code.
312         * tests/testtreecolumns.c: Big 'ol warning at the top letting
313         people know that this code should never ever ever be copied.
314
315 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
316
317         * gtk/gtkwindow.h: Fixed a small typo, it should be
318         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
319         on line 134.
320
321 2001-06-14  Havoc Pennington  <hp@redhat.com>
322
323         Docs fixups, and:
324         
325         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
326         GTK_DISABLE_DEPRECATED
327
328 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
329
330         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
331         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
332         finish it off tonight, though it basically works now when it's a
333         list.  Also, I have a sinking feeling neither GtkTreeStore or
334         GtkListStore actually resort when adding a new item.  I'll look
335         into it.
336
337 2001-06-14  Havoc Pennington  <hp@redhat.com>
338
339         * demos/gtk-demo/main.c (load_file): fix bug identified by
340         warnings I just added to gtktextbuffer
341
342 2001-06-14  Havoc Pennington  <hp@redhat.com>
343
344         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
345
346         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
347
348         * gtk/gtktextbtree.c: don't leak node data all over the place.
349
350         * demos/gtk-demo/main.c (main): create fontify tags for the right
351         buffer
352
353         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
354         to mention tags in the same table can't have the same name,
355         suggested by Skip Montanaro
356
357 2001-06-11  Havoc Pennington  <hp@redhat.com>
358
359         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
360         for trying to add two tags with same name to the tag table
361
362         * demos/gtk-demo/main.c (main): fix colors ;-)
363
364 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
365
366         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
367         that allows grouping together multiple windows so that grabs
368         within that set of windows only affect those windows.
369
370         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
371         signal for notification when a widget becomes shadowed
372         by a grab or is no longer shadowed by a grab.
373
374         * gtk/gtkwidget.c (gtk_widget_propagate_state)
375           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
376         insenstive widgets to maintain a grab.
377
378 2001-06-14  Alexander Larsson  <alexl@redhat.com>
379
380         * docs/README.linux-fb:
381         Add some example config files that can be used with the URW fonts.
382         
383         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
384         Set up the color ramps for DirectColor mode.
385
386 2001-06-11  Havoc Pennington  <hp@redhat.com>
387
388         * Release 1.3.6
389          
390 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
391
392         * gdk/linux-fb/gdkwindow-fb.c:
393         Unify shaped window code and make it repaint the area that used
394         to be part of the shape, but isn't anymore.
395
396 2001-06-11  Havoc Pennington  <hp@redhat.com>
397
398         * NEWS: Updates
399
400         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
401
402         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
403         
404 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
405
406         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
407         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
408         passes zero instead, so do we.
409         
410 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
411
412         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
413         Deep copy dash_list too.
414         (_gdk_fb_gc_new): Set default cap_style before
415         setting values.
416
417 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
418
419         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
420         gdk_keymap_get_direction): New functions.
421
422 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
423
424         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
425         gtk_tree_model_get_flags by adding a second flag for atk.
426
427         * gtk/gtktreemodel.c: make cursor behavior interact better with
428         mouse presses.
429
430 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
431
432         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
433         expand_row/collapse_row to be 2 signals each -- test_expand_row
434         and row_expanded as well as test_collapse_row and row_collapsed.
435
436 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
437
438         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
439         signal name to be changed instead of selection_changed.
440
441 2001-06-08  Havoc Pennington  <hp@redhat.com>
442
443         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
444         "scroll_offset" property for notification when the layout offsets
445         may have changed
446         (gtk_entry_adjust_scroll): add notify for scroll_offset
447         (gtk_entry_layout_index_to_text_index): function to compensate for
448         preedit string when doing coordinate stuff on the entry's layout
449         (gtk_entry_text_index_to_layout_index): inverse function
450         (gtk_entry_get_layout_offsets): hook to get current position of
451         the layout      
452         (gtk_entry_get_layout): hook to get the layout itself.
453
454         * gtk/gtklabel.c (gtk_label_get_layout): new function
455
456 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
457
458         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
459         keybinding.
460         (gtk_tree_view_focus): Fix merge conflict.
461
462 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
463
464         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
465         clean up cursor handling.
466
467 2001-06-08  Havoc Pennington  <hp@redhat.com>
468
469         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
470         function
471
472         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
473         this function
474
475 2001-06-08  Alex Larsson  <alexl@redhat.com>
476
477         * gtk/gtkcompat.h.in:
478         Added compat macros for all old GTK_TYPE_GDK_xxx types.
479         Fixes bug #52892
480
481 2001-06-08  Havoc Pennington  <hp@redhat.com>
482         
483         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
484         parent still
485
486 2001-06-08  Havoc Pennington  <hp@redhat.com>
487
488         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
489         don't call g_list funcs on GSList
490
491         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
492         gtk_container_focus(), since some widgets have focusable locations
493         which are not other widgets. These widgets should not have to be 
494         containers just to manage the focus. For example, GtkHSV is
495         currently a container for no good reason. Also, this cleans
496         up the "if (is_container && is_sensitive && is_drawable)
497         container_focus ()" mess in widget implementations.
498
499         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
500         function, and have it just call gtk_widget_child_focus().
501
502         * gtk/gtkhsv.c: derive from widget not container
503         
504         Throughout: fix to reflect GtkContainer::focus change
505         
506 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
507
508         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
509         range.  Fix bug #55921
510
511         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
512         (#55920).
513
514 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
515
516         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
517         and gdk_keymap_get_current_direction().
518
519         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
520           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
521         the current locked group, use it to set the keymap
522         direction.
523
524         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
525         to determine whether we draw a split cursor or use
526         a jumping cursor based on the current direction.
527
528         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
529         Obey the split cursor setting. 
530
531 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
532
533         * gtk/gtkimmulticontext.c (activate_cb): Only activate
534         when toggling on, not when toggling off... (#55906)
535
536 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
537
538         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
539         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
540         in docs. (#55812, Vitaly Tishkov)
541
542 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
543
544         * demos/gtk-demo/main.c (create_tree): Changed signal name from
545         selection_changed to changed in signal connection to GtkTreeSelection,
546         also used g_signal_connectc since GtkTreeSelection is now a GObject.
547
548 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
549
550         * gtk/gtktreeselection.c: Now it's a GObject instead of a
551         GtkObject.  The GtkTreeSelection::selection_changed signal is now
552         the GtkTreeSelection::changed signal.
553
554         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
555         object.
556
557         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
558         object.
559
560 2001-06-07  Havoc Pennington  <hp@redhat.com>
561
562         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
563
564 2001-06-07  Havoc Pennington  <hp@redhat.com>
565         
566         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
567         (not tested yet because with absolute path to srcdir I can't build
568         atk, but it was broken anyway so this may help) 
569
570 2001-06-07  Havoc Pennington  <hp@redhat.com>
571
572         * configure.in: output m4macros/Makefile
573         
574 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
575
576         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
577         buttons.  Fixes #55460 reported by matthiasc@poet.de.
578
579 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
580
581         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
582         expansion/collapsing so it only happens in one place.
583         (gtk_tree_view_real_expand_row): ditto.
584
585 2001-06-07  Havoc Pennington  <hp@redhat.com>
586
587         * tests/Makefile.am: add missing -I flag
588
589         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
590
591         * configure.in: use pkg-config to see if GModule is
592         supported; fix to properly turn on included loaders 
593         when GModule isn't supported; don't use AC_CHECK_LIB 
594         when libs are not installed yet
595
596         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
597
598         * Makefile.am (SUBDIRS): add m4macros subdir
599
600         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
601         dependencies also.
602
603 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
604
605         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
606         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
607
608 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
609
610         * gtk/gtktreeview.c
611         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
612         bindings to expand and collapse rows.
613         (gtk_tree_view_real_select_cursor_parent): New key binding.
614         (gtk_tree_view_real_toggle_cursor_row): New key binding.
615
616         * gtk/gtkmarshal.list: new
617         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
618
619 2001-06-06  Havoc Pennington  <hp@redhat.com>
620
621         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
622
623         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
624         Down to move visually rather than logically, since it confuses 
625         people. Add -/+ and Ctrl--/+ bindings for logical movement.
626
627 2001-06-06  Alex Larsson  <alexl@redhat.com>
628
629         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
630         Fix up error messages.
631
632 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
633
634         * gtk/gtktooltips.h: Include gtkwidget.h 
635         (#55798, Karl Nelson)
636
637         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
638         a valid latin-1 character. (Marc Lehmann, #35467)
639
640         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
641         (Marc Lehmann, #35467)
642         
643 2001-06-05  Alex Larsson  <alexl@redhat.com>
644
645         * demos/gtk-demo/appwindow.c (do_appwindow):
646         Don't swap the order of the args to gtk_widget_destroyed.
647
648         * tests/testgtk.c (destroy_properties):
649         Don't crash when the properties window is destroyed.
650
651         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
652         Use with_mnemonics to handle the case of stock items with
653         underscores in them.
654
655 2001-06-05  Havoc Pennington  <hp@redhat.com>
656
657         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
658         gtk_text_iter_reorder
659
660 2001-06-05  Havoc Pennington  <hp@redhat.com>
661
662         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
663
664 2001-06-05  Havoc Pennington  <hp@redhat.com>
665
666         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
667         to the range that was set
668
669         * gtk/gtkrange.c: add value_changed signal, primarily 
670         intended for use with GtkScale
671         (gtk_range_set_increments): new function
672         (gtk_range_set_range): new function with weird name
673         (gtk_range_set_value): new function
674         (gtk_range_get_value): new function
675
676         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
677         from gtk_spin_button_get_value_as_float(). Compat #define
678         added for get_value_as_float.
679
680         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
681
682         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
683
684 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
685
686         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
687
688 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
689
690         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
691
692         * tests/testgtk.c (create_tooltips): Remove usage of
693         gtk_widget_set().
694
695 2001-06-05  Havoc Pennington  <hp@redhat.com>
696
697         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
698
699         Applying patch from Jeff Franks, with function docs added.
700         
701         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
702         remove call to set_mnemonic_widget, change docs a bit.  
703
704         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
705         new function
706
707         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
708         new function
709
710         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
711
712         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
713         function
714         (gtk_radio_button_new_with_mnemonic_from_widget): new function
715
716         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
717         new function
718
719         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
720         function        
721
722         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
723         auto-selection of mnemonic widget.
724
725 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
726
727         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
728         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
729         (gtk_tree_view_column_set_min_width): ditto.
730
731 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
732
733         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
734         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
735
736 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
737
738         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
739         gtk_clist_thaw().
740
741 2001-06-04  Havoc Pennington  <hp@pobox.com>
742
743         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
744         releases for buttons 6, 7
745
746 2001-06-04  Havoc Pennington  <hp@redhat.com>
747
748         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
749         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
750         #55562
751
752 2001-06-04  Havoc Pennington  <hp@redhat.com>
753
754         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
755         where text_view->layout == NULL by assuming its size is 0, 
756         i.e. same as if we haven't done any reflow. Reported by 
757         Hidetoshi Tajima #55448 
758
759 2001-06-04  Havoc Pennington  <hp@redhat.com>
760
761         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
762         and 7 for scroll left/right, from Thomas Broyer
763
764 2001-05-10  Havoc Pennington  <hp@redhat.com>
765
766         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
767         we need to parse the xsetting as if it were an RC file string.
768
769         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
770         value of palette from settings, not from static variable
771
772         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
773         xsettings translation table
774
775         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
776         hardcoding the toolbar style conflicts with new customizable 
777         toolbar style philosophy
778         (gtk_toolbar_class_init): add settings for default toolbar style;
779         these are used unless the app specifically forces a toolbar style
780
781         * gtk/gtksettings.c (settings_install_property_parser): only
782         return at the start if we warn and parser == NULL
783
784         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
785         palette changed handler so we don't notify dead color selections
786
787         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
788         xthickness/ythickness of 0 or 1 properly 
789         (gtk_default_draw_resize_grip): clear the background behind the
790         resize grips, and align to bottom right if we square the 
791         area to be drawn.
792
793         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
794         statusbar label to 1, so it doesn't make toplevels resize oddly
795         (gtk_statusbar_size_request): add grip size to request
796         (gtk_statusbar_size_allocate): hack so the hbox still works with 
797         the grip size in the request
798
799         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
800         bug where showing all on a toplevel makes the toolbar 
801         button text appear despite the toolbar mode
802
803         * gtk/gtkmenubar.c: add internal padding style property
804
805         * gtk/gtktoolbar.c: Add internal padding style property; add
806         shadow type style property
807
808         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
809         state; and put Container::border_width outside the frame
810
811         * gtk/gtktextview.c: don't draw focus rectangle if we're in
812         interior focus mode, we just use blinking cursor
813
814 2001-06-04  Havoc Pennington  <hp@redhat.com>
815
816         * configure.in: Make gdk-pixbuf have same version number as GTK
817
818 2001-06-04  Havoc Pennington  <hp@redhat.com>
819
820         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
821         digits greater than 6. If there actually are limits (which there
822         likely aren't), should clamp to them not warn.
823         (gtk_spin_button_new_with_range): don't take log of 0
824         (gtk_spin_button_size_request): use digits to compute size
825         request, rather than step increment.
826
827         * tests/testgtk.c (create_spins): test larger values of digits
828         
829         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
830         font on map not expose, so we don't get weirdness during scrolling
831
832 2001-06-04  Havoc Pennington  <hp@redhat.com>
833
834         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
835         Sam Solon, bug #54577, update value even if not drawable.
836
837 2001-06-04  Havoc Pennington  <hp@redhat.com>
838
839         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
840         SCROLL_LEFT, reported by Thomas Broyer.
841
842 2001-06-04  Havoc Pennington  <hp@redhat.com>
843
844         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
845         Process updates immediately, to prevent funny lag effect
846         when scrolling, at some mild potential efficiency cost.
847
848 2001-06-04  Havoc Pennington  <hp@redhat.com>
849
850         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
851         slider on the click.
852
853 2001-06-03  Havoc Pennington  <hp@pobox.com>
854
855         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
856         hscale/vscale details, so we can use it for scrollbar as well.
857
858         * tests/testgtk.c (reformat_value): honor digits from GtkScale
859
860         * gtk/gtkenums.h (GtkTroughType): Remove this enum
861         (GtkScrollType): add START and END from GtkTroughType
862
863         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
864         its x/y arguments
865
866         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
867         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
868         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
869         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
870         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
871
872         Notable changes in the process:
873          
874         - stepper_size style property is the height for vertical 
875           ranges, width for horizontal; the other dimension matches
876           the trough size
877         - add ability to do NeXT-style steppers (and several other styles
878           that don't make any sense)
879         - added min_slider_length, fixed_slider_length properties to
880           GtkScrollbar
881         - cleaned some private (or at least useless) functions out of
882           gtkscale.h    
883         - moved bindings to GtkScale from subclasses, even arrow keys,
884           since blind users don't know scale orientation.
885         - change move_slider action signal to use new GtkScrollType,
886           remove GtkTroughType argument
887         - digits rounds the values a range will input to the given 
888           number of decimals, but will not try to force adjustment 
889           values set by other controllers. That is, we no longer
890           modify adjustment->value inside a value_changed handler.
891         - added getters for GtkScale setters
892         - middle-click begins a slider drag
893         
894 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
895
896         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
897         getting the focus code to work.
898         (gtk_tree_view_class_init): Add a bunch of keybindings.
899
900         * gtk/gtktreeviewcolumn.c
901         (gtk_tree_view_column_set_cell_data_func):
902         s/GtkCellDataFunc/GtkTreeCellDataFunc.
903         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
904         of "properties_changed" to help justify the death of the latter
905         signal. (-:
906
907         * tests/testtreefocus.c (main): Let some columns be focussable to
908         test focus better.
909
910 2001-06-01  Havoc Pennington  <hp@redhat.com>
911
912         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
913         
914         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
915         overwrite in overwrite mode if we already deleted the selection
916         and replaced it with new text.  
917
918         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
919         selection to an empty range, clear the clipboard if we owned it.
920         (gtk_label_set_selectable): give up selection if we become
921         unselectable.
922         (gtk_label_state_changed): override state changed to unselect text
923         when insensitive
924         (get_text_callback): add paranoia check that indexes aren't
925         outside of label->text
926         (gtk_label_select_region): make -1 for start_offset mean "end of
927         label," for consistency with GtkEditable
928
929         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
930         GTK_DIALOG_NO_SEPARATOR flag
931
932 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
933
934         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
935         notifications on non-existant "enable_arrow_keys".
936         (#53753, Skip Montanaro)
937
938 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
939
940         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
941         GDK_TYPE_RECTANGLE.
942
943         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
944         of allocation argument be GDK_TYPE_RECTANGLE.
945
946 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
947
948         * gtk/gtkoptionmenu.c: Account for the fact that the border
949         width is _outside_ the window. (Fixes #54585, bug found
950         by Bastien Nocera.)
951
952 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
953
954         * gtk/gtksettings.c (gtk_settings_get_property): Validate
955         value from GDK settings against parameter spec.
956
957         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
958         to temporary values and use g_value_transform(), since
959         thinking that GValue was going to be easy or efficient
960         to use was, of course, a mistake.
961
962         * gtk/gtksettings.c: Add cursor blink setting.
963         
964         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
965
966         * gtk/gtkentry.c: Add cursor blinking.
967
968         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
969         cursor blink global settings.
970
971         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
972         for :text_position in places where it is missing.
973
974 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
975
976         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
977
978 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
979
980         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
981         not pkg-config. (#51032)
982
983         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
984         (fixes #51952, James Henstridge)
985         
986 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
987
988         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
989         Rename to the more correct gtk-go-up.
990
991         * gtk/stock-icons/stock_menu_sort_ascending.png:
992         Added new file.
993         
994         * gtk/stock-icons/stock_menu_sort_descending.png:
995         Changed to show descending instead of ascending.
996
997         * gtk/gtkiconfactory.c:
998         Added menu size icon to sort ascending.
999
1000         * gtk/stock-icons/Makefile.am:
1001         Added stock_menu_sort_ascending.png.
1002         
1003         * gtk/gtkseparatormenuitem.c:
1004         Use correct typenames.
1005
1006 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1007
1008         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1009         gulong as in GSignal.
1010
1011 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1012
1013         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1014         instances of GtkCellRenderer in code (all but dnd icon code).
1015         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1016         there, and I can do multiple Cells per column.
1017
1018         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1019
1020         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1021         when model was unreffed prior to removing the row reference.
1022
1023 2001-05-25  Havoc Pennington  <hp@redhat.com>
1024
1025         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1026         you call gtk_stock_list_ids()
1027
1028         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1029         in list
1030
1031 2001-05-25  Havoc Pennington  <hp@redhat.com>
1032
1033         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1034         set can render without falling back to missing image icon
1035
1036         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1037         size of text, instead of random values
1038
1039         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1040         size of tree view, instead of random values
1041
1042         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1043         image in an appropriate size
1044
1045         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1046         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1047
1048         Throughout: fix GTK_STOCK_BUTTON_ instances
1049         
1050         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1051         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1052         Add a bunch of new stock items/icons
1053
1054         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1055         new function, convenience for inserting columns with a data func
1056
1057         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1058         (_gtk_icon_factory_list_ids): use list of all factories to
1059         generate a list of all known IDs
1060
1061         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1062         gtk_stock_list_items() with a function that returns all IDs known
1063         including those for GtkIconFactory.
1064
1065 2001-05-25  Hans Breuer  <hans@breuer.org>
1066
1067         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1068         work -> check boxes and radio buttons are drawn now, even on win9x.
1069         Improved line settings a bit, still no clue how to get really dotted
1070         lines on win9x, on NT it's PS_ALTERNATE.
1071
1072         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1073         GDK_HINT_MIN_SIZE as well
1074
1075         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1076
1077         * gtk/gtk.def : updated
1078
1079         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1080         pointer not a function pointer pointer
1081
1082         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1083
1084         * tests/testsocket.c : made it compile on win32 again
1085
1086         * tests/makefile.msc : one more test-app uses prop-editor.obj
1087
1088 2001-05-22  Havoc Pennington  <hp@pobox.com>
1089
1090         * gtk/gtkbin.c (gtk_bin_get_child): New function
1091
1092 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1093
1094         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1095         to ignore when doing compose processing.
1096
1097 2001-05-22  Joe Shaw  <joe@ximian.com>
1098
1099         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1100         Simplify as suggested by Havoc. Just get the last iter and work
1101         backward to the tag instead of getting a line and working back from
1102         there. Fixes passing in an invalid offset to
1103         iter_init_from_byte_offset().
1104
1105 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1106
1107         * gtk/gtktreeview*.h: 
1108         * gtk/gtkcell*.h:
1109         * gtk/gtk*store.h:
1110         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1111         macros to all objects.
1112
1113 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1114
1115         * gtk/gtkcellrenderertext.c
1116         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1117         with very large (TM) amounts of text.  May be moved to
1118         GtkCellRenderer in the future, though I'm not sure it wants to be
1119         this accessible.
1120
1121         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1122         More sanity brought to this class.  I like it.
1123
1124         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1125         case.  Kids, don't try this at home.
1126
1127         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1128         convenience function.
1129
1130         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1131
1132 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1133
1134         * gtk/gtkfontsel.c:
1135         Added properties. Based on patch by Lee Mallabone.
1136
1137         * gtk/gtkruler.c:
1138         * gtk/gtkhruler.c:
1139         * gtk/gtkvruler.c:
1140         * gtk/gtktext.c:
1141         * gtk/gtktextview.c:
1142         Converted GtkArg to GParam. Based on patches by John Margaglione.
1143
1144         * tests/Makefile.am:
1145         * tests/testtext.c:
1146         Add a property editor to testtext.
1147         
1148 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1149
1150         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1151
1152         * configure.in: Fixed reversed conditional causing all image
1153         libraries to be linked in.
1154
1155 2001-05-21  Joe Shaw  <joe@ximian.com>
1156
1157         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1158         that top_y needs to be >= 0.
1159
1160 2001-05-11  Havoc Pennington  <hp@pobox.com>
1161         
1162         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1163         losing connection to the X server.
1164
1165 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1166
1167         * configure.in: Start checks for X from pangox/pangoxft
1168         CFLAGS to avoid duplicate libraries.
1169
1170         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1171
1172         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1173         to include gobject.
1174         
1175 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1176
1177         * gtk/gtkspinbutton.c:
1178         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1179         Also do size request reasonable for MAXDOUBLE. Previously it printed
1180         the limits to a buffer and overran it. Instead do it using log10() and
1181         limit the width to 10 digits.
1182         
1183         * gtk/gtkwidget.c (gtk_widget_get_property):
1184         Correctly handle setting the parent property to NULL.
1185
1186 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1187
1188         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1189         style attributes even if the widget isn't realized.
1190
1191         * demos/gtk-demo/main.c: Use a slightly smaller font.
1192
1193 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1194
1195         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1196         This is something that only a widget writer would ever want
1197         to change.
1198
1199         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1200         gtk_signal_emit_by_name().
1201
1202         * gtk/gtkviewport.c: Fix some warnings.
1203
1204         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1205         allowing the requisitions of multiple widgets to be grouped
1206         together.
1207
1208         * tests/testgtk.c: Add GtkSizeGroup test
1209
1210         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1211
1212         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1213         warnings.
1214
1215         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1216
1217 2001-04-28  Martin Baulig  <baulig@suse.de>
1218
1219         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1220         to gtk_image_menu_item_set_icon() and made it work if there's already
1221         an image.
1222         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1223         (gtk_image_menu_item_new_with_label): New function.
1224
1225 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1226
1227         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1228         highlighting code!!!!  The result is okay so long as you don't try
1229         to stress it.  It also highlights a bug in the TextView so it's in
1230         an unproportional font right now until it's fixed.
1231
1232         *demos/gtk-demo/*.c: Clean up code a bit to make it
1233         ugly-parser(TM) friendly. (-:
1234
1235 2001-05-17  Joe Shaw  <joe@ximian.com>
1236
1237         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1238         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1239         if it is only partially onscreen.
1240
1241 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1242
1243         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1244         not by characters.
1245
1246         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1247         are not zero or one; that is, when graphemes of multiple characters
1248         are involved.
1249
1250         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1251         FIXME.
1252
1253 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1254         
1255         * gtk/gtkbbox.c:
1256         Add properties, based on patch by Lee Mallabone.
1257
1258         * gtk/gtknotebook.c:
1259         * gtk/gtktoolbar.c:
1260         Convert from GtkArg to GParam, based on patch by John Margaglione.
1261         
1262         * gtk/gtkhscale.c:
1263         * gtk/gtkvscale.c:
1264         * gtk/gtkhscrollbar.c:
1265         * gtk/gtkvscrollbar.c:
1266         * gtk/gtkrange.c:
1267         Move adjustment property to GtkRange.
1268
1269         * gtk/gtklabel.c:
1270         Setup mnemonics on property changes
1271
1272         * gtk/gtkwidget.c (gtk_widget_get_property):
1273         GdkExtensionMode is an enum, not a flag. Set it with
1274         g_value_set_enum ().
1275
1276         * tests/prop-editor.c:
1277         Better propery editor.
1278
1279         * tests/testgtk.c:
1280         Add new property test. Pass zero to the property editor to
1281         get properties from all derived types.
1282         
1283 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1284
1285         * autogen.sh (have_automake): Require libtool-1.4,
1286         automake-1.4p1.
1287
1288         * acinclude.m4: Remove libtool macros.
1289
1290         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1291         modules.
1292
1293         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1294         for libgdk.
1295
1296         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1297         libgdk.la for libgtk.
1298
1299         * modules/input/Makefile.am: Make modules have full
1300         dependencies.
1301
1302 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1303
1304         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1305         #54699 where paths weren't being checked for correctness.
1306
1307 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1308
1309         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1310         in any order you wan, whether or not the column is added to the
1311         tree, or the tree is realized.  Yay!
1312
1313         * gtk/gtktreeviewcolumn.c
1314         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1315         sorting columns a lot saner
1316
1317         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1318         new function to actually set wether or not a column is
1319         reorderable.
1320
1321         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1322         if we have 'em.
1323
1324         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1325         Fix nasty bug where we were showing the button just before
1326         realizing it.  As a result, the parent window was
1327         tree_view->window instead of tree_view->priv->header_window.
1328
1329         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1330         to let you easily reorder a list or tree.
1331
1332 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1333
1334         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1335         from args to properties.
1336
1337 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1338
1339         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1340         from args to properties. (#51957)
1341
1342         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1343         calls to after ->set_property call.
1344
1345 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1346
1347         * tests/prop-editor.c: Block against redundant changes.
1348
1349         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1350         properties.
1351
1352 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1353
1354         * gdk/gdkpixmap.h: Remove creative formatting.
1355
1356 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1357
1358         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1359         property API. (#51669)
1360
1361         * gtk/gtkscale.c: Patch from John Margaglione converting to
1362         property API. (#51891)
1363
1364         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1365         to property API. (#50985)
1366
1367 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1368
1369         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1370         buffering state across expose event, so we still call end_paint().
1371
1372 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1373
1374         * gtk/gtkhsv.c (paint_triangle):
1375         Expose the ring in the triangle at the correct place when
1376         exposing just a part of the triangle.
1377
1378         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1379         Return FALSE, or window focusing will not work.
1380
1381 2001-05-11  Havoc Pennington  <hp@pobox.com>
1382
1383         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1384         #54144
1385
1386         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1387         bug #54330
1388
1389 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1390
1391         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1392         propagate exposes to NULL child.
1393
1394         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1395         against not having one of the scrollbars.
1396
1397         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1398         we don't keep a mnemonic window if we have no mnemonic installed.
1399
1400 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1401
1402         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1403         it has the _important_ side effect of initializing a class.
1404
1405 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1406
1407         * gdk/linux-fb/gdkprivate-fb.h:
1408         Make sure you can compile out the implementation/wrapper assert
1409         macros.
1410
1411         * gdk/linux-fb/gdkdrawable-fb2.c:
1412         Check implementation/wrappers, initialize type for pixmap dummys.
1413
1414         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1415         Hide the cursor if reading from the screen.
1416
1417         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1418         Fix sign bug in tiling code.
1419
1420         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1421         Handle background pixmaps.
1422
1423 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1424
1425         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1426         function to let user control where columns are dragged.
1427
1428         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1429         Escape is pressed.
1430
1431 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1432
1433         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1434         "columns_changed" signal.
1435         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1436         motion code to draw arrows to the side if indicator is outside the
1437         widget.
1438         (gtk_tree_view_map_expanded_rows): Implement.
1439
1440 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1441
1442         * demos/testpixbuf-save.c: 
1443         * demos/testpixbuf-drawable.c:
1444         Include gdkfb.h on linux-fb.
1445
1446 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1447
1448         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1449         New function for getting toplevel window at position.
1450         (gdk_drag_find_window): Use get_toplevel_window () instead
1451         of gdk_window_get_pointer(). (gdk_drag_status): Use
1452         correct context for getting window.
1453
1454         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1455         g_strdup the atom name.
1456
1457         * gdk/linux-fb/gdkwindow-fb.c:
1458         Costmetic fix.
1459
1460         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1461         Add code for changing cursor on linux-fb backend (same as
1462         win32).
1463
1464 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1465
1466         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1467         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1468         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1469         report was not for the development branch of GTK+, but it applies
1470         anyways).
1471
1472 2001-05-04  Havoc Pennington  <hp@redhat.com>
1473
1474         * configure.in: fix some shell typos
1475
1476         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1477
1478         * gtk/gtkimage.c: handle animations
1479
1480         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1481         border_width * 2, not just border_width
1482
1483         * gtk/gtkscale.c: add "format_value" signal to allow people
1484         to override the way values are drawn.
1485         (gtk_scale_get_value_size): fix width/height mistake,
1486         and compute size from actual displayed text, not 
1487         from made-up text.
1488
1489         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1490         signal registration
1491
1492         * tests/testtext.c: Add "Remove all tags" menu item for testing
1493
1494         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1495
1496         * demos/gtk-demo/main.c (main): add hack so we can find modules
1497         without installing gtk
1498
1499         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1500
1501         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1502         factor)
1503         (gtk_cell_renderer_text_set_property): remove some bogus
1504         g_object_notify
1505
1506         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1507         factor
1508
1509         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1510         to layout
1511
1512         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1513         gtk_text_iter_is_first
1514
1515 2001-01-06  Hans Breuer  <hans@breuer.org>
1516
1517         * gdk/gdk.def : updated exports
1518
1519         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1520         gdk won't compile anymore
1521  
1522         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1523         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1524         Improved gdk_flush () to not only do pending drawing operations
1525         but also process all currently pending events. This should make
1526         the behaviour more similar to the X11 version.  
1527
1528         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1529         option needs to be set even if there is no GDK_GC_BACKGROUND.
1530         (gdk_win32_hdc_get) : use predraw_set_background () independent
1531         of value_mask. This allows to draw dashed lines leaving the original
1532         background intact.
1533
1534         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1535         after processing, because we can't reuse it as the X11 version does.
1536
1537         * gtk/gtk.def : updated exports
1538
1539         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1540         would like to get rid of this file again, and use straight
1541         makefile.msc again, as the other Gtk+ subdirs do)
1542
1543         * test/makefile.msc (new file) : build the test apps here
1544
1545 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1546
1547         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1548         strike-through setting
1549         (gdk_draw_layout_line_with_colors): Render strike-through
1550
1551 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1552
1553         * Release 1.3.5
1554
1555         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1556
1557         * NEWS: Updated
1558
1559         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1560         Makefile breakage.
1561
1562 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1563
1564         * demos/gtk-demo/images.c (progressive_timeout): Fix
1565         typo in filename.
1566
1567         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1568         out FIXME warning; just too annoying.
1569
1570 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1571
1572         * gdk/linux-fb/gdkcolor-fb.c:
1573         Better error messages.
1574
1575         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1576         Initialize abs_x and abs_y.
1577         
1578         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1579         Correct handling of stipple offset.
1580
1581         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1582         Treat directcolor framebuffers as truecolor.
1583         
1584 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1585
1586         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1587         dependency on Atk for accessibility support.
1588
1589         * configure.in **/Makefile.am: Major reworking of substituted
1590         variables for CFLAGS/LIBS to make a lot more sane and 
1591         keep the the compile/link lines a bit shorter.
1592
1593         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1594
1595 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1596
1597         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1598         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1599         use _gtk_boolean_handled_accumulator.
1600
1601 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1602
1603         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1604         to fix things so clicking inside selection leaves cursor
1605         at point where clicked. (#50324)
1606
1607         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1608         sane value for default double click time.
1609
1610         * tests/testtext.c (test_init): Really path to input modules.
1611
1612 2001-05-03  Sven Neumann  <sven@convergence.de>
1613
1614         * demos/testpixbuf-save.c: include target-specific headers as
1615         done in testpixbuf-drawable.c
1616
1617 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1618
1619         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1620         new_text_length appropriately when we run into the 
1621         size limit for the entry. (#53445, reported by Jeff Franks)
1622
1623         * tests/testgtk.c (create_entry): Remove most of the
1624         property toggle buttons. Replace with a "Props" button
1625         that brings up a property editor.
1626
1627         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1628         Split the property editor code out for reuse, improve.
1629
1630 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1631
1632         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1633         trap errors around calls to XSetInputFocus since we have
1634         no way of knowing reliably whether we are viewable or
1635         not. (#53947)
1636
1637 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1638
1639         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1640         fix bug in dropping columns.  Moving columns now basically works
1641         modula some fine tuning.
1642
1643 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1644
1645         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1646         autoscroll support.  It mostly works, but could use some fine
1647         tuning.
1648         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1649         Actually move the column.
1650
1651 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1652
1653         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1654           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1655           New default theme! A slighly improved version of the 2.0 Raleigh
1656           theme, with Windows-esque focus/drawing default. 
1657           (GtkWidget::interior_focus defaults to TRUE.)
1658
1659         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1660
1661 2001-04-30  Havoc Pennington  <hp@pobox.com>
1662
1663         * tests/testtext.c (line_numbers_expose): fix to work with
1664         gtk_paint_layout change
1665
1666 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1667
1668         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1669           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1670           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1671           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1672
1673         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1674           with GtkWidget::interior_focus = TRUE better.
1675
1676         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1677         ::default_outside_border for more flexibility.
1678
1679         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1680         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1681         change that had to be made with g_object_get.
1682
1683 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1684
1685         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1686         (gtk_tree_view_move_column_after): Clean up interface. 
1687
1688 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1689
1690         * gtk/gtkpacker.h:
1691         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1692          to gtkenum.h.
1693
1694         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1695         handled in switch).
1696
1697         * gtk/Makefile.am:
1698         (gtk.defs): generate enum portions with  glib-mkenums.
1699         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1700         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1701         
1702         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1703         addition.
1704
1705         * docs/Changes-2.0.txt: keep a note on signal handlers now
1706         not getting emitted during the emission they were connected within.
1707
1708 2001-04-28  Havoc Pennington  <hp@pobox.com>
1709
1710         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1711
1712 2001-04-24  Havoc Pennington  <hp@redhat.com>
1713
1714         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1715         (gtk_text_layout_move_iter_to_next_line): fix these two for
1716         invisible text, lots of other stuff still hosed.
1717
1718         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1719         new function, replaces the get/set palette stuff. This function 
1720         is intended for use by libgnomeui which should set the hook to a
1721         thing which sets the palette in GConf, and we need the
1722         GConf-to-xsettings proxy which will result in the change being
1723         propagated back to the GTK app.
1724
1725         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1726         about unusable signals that it may be because the signal has 
1727         parameters.
1728
1729         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1730         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1731         it.
1732         (gtk_widget_modify_color_component): call
1733         gtk_widget_modify_style() so the rc style will get copied.
1734         (gtk_widget_modify_font): ditto
1735
1736         * gtk/gtkrc.c: make a couple variables static
1737
1738         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1739         help button by default, since it does nothing
1740
1741         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1742         around with UI
1743
1744         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1745         so we can have tooltips
1746
1747         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1748         can have tooltips
1749
1750         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1751         GDK_ENABLE_BROKEN, because its memory behavior is completely
1752         hosed.
1753
1754         * gtk/gtknotebook.c: remove key press handler, replace with
1755         binding set, add numeric keypad support
1756
1757         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1758
1759         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1760
1761         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1762         addition to plain Delete
1763
1764         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1765         GDK_KP_Enter in addition to GDK_Return
1766
1767         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1768         activate on entry instead of key press
1769         (gtk_font_selection_on_clist_key_press): get
1770         rid of this signal handler, not needed with new font sel.
1771
1772         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1773         no-longer-needed emit_stop_by_name(), just return TRUE
1774
1775         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1776         cruft, this widget is no longer focusable.
1777
1778         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1779         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1780         move_slider action signal, add binding set for vscale/hscale, in
1781         the process support numeric keypad
1782
1783         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1784         make GDK_Return and GDK_KP_Enter activate the entry via 
1785         binding set, instead of hardcoded.
1786
1787 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1788
1789         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1790         code.  Some documentation added.
1791
1792 2001-04-27  Havoc Pennington  <hp@redhat.com>
1793
1794         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1795
1796         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1797
1798         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1799         line/para separators
1800         (gtk_entry_create_layout): set single paragraph mode on the layout
1801
1802         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1803         spacing between the image and label; instead, inside a button box 
1804         the button will get extra space that will go there, but if people 
1805         configure button box for 0 chubbiness, then there's no spacing.
1806
1807         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1808         and min/max size style properties, so people can tune their
1809         chubbiness.
1810
1811         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1812         functions
1813
1814         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1815         space_style, and button_relief into style properties, remove
1816         functions for setting them
1817         
1818         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1819         it back down
1820
1821         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1822         types from gtk_widget_style_get
1823
1824         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1825         with a style property.
1826
1827         * gdk/x11/gdkevents-x11.c: namespace the settings
1828
1829         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1830
1831         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1832         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1833         be used. Also, translate doc strings for settings. Also, namespace
1834         the double-click-time property. Also, remove bell properties crap.
1835
1836 2001-04-27  Sven Neumann  <sven@gimp.org>
1837
1838         * Makefile.am: before creating links, check if pkg-config files
1839         exist for the default target. Otherwise link to the pkg-config files
1840         that got installed with this build.
1841
1842 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1843
1844         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1845         dragging code.  Revealed some (potential) GdkWindow bugs.
1846
1847         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1848         _gdk_window_init_position to the end of reparent to fix the case
1849         of reparenting when new_x != old_x and new_y != old_y.
1850
1851 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1852
1853         * gtk/gtkentry.c (strstr_len): Fix optimization that
1854         was correct for the use here, but completely incorrect
1855         in general.
1856
1857 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1858
1859         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
1860         until patch adding gtk_window_set_size() is recommitted. 
1861
1862         * **Makefile.am configure.in gdk/x11/gdkim-11.c
1863           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
1864           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
1865           (#10784)
1866
1867 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
1868
1869         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
1870         window == NULL in a number of cases.
1871
1872         * tests/testdnd.c: Set module path for gdk-pixbuf.
1873
1874 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
1875
1876         * gtk/Makefile.am xembed.h: File containing #defines
1877         for XEMBED protocol.
1878
1879         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
1880
1881         - Change protocol from old plug/socket specific protocol
1882           to XEMBED draft
1883         - Various fixes to work with GTK+-2.0
1884
1885         Still quite a bit of work to do here to handle initiation
1886         from the socket side (as specified by XEMBED), to handle
1887         the more advanced features of XEMBED, and to figure out
1888         a good way to handle same-app embedding with less overhead
1889         than using full XEMBED.
1890
1891 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
1892
1893         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
1894         track of whether the toplevel has the focus; only send
1895         focus-in events to the focus widget when the window
1896         actually has the focus.
1897
1898 2001-04-25  Havoc Pennington  <hp@pobox.com>
1899
1900         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
1901         were still in the header
1902
1903 2001-04-24  Alexander Larsson  <alexl@redhat.com>
1904
1905         * gtk/gtkclist.[ch]:
1906         * gtk/gtkctree.c:
1907         When there is a row highlighted for D'n'D it must alse
1908         be painted hightlighted on exposes. Otherwise exposes from
1909         the icon being dragged will mess up the hightlight.
1910
1911         * gtk/gtkfontsel.c:
1912         Don't recenter selected font when exposing the font family
1913         clist. This means you can now actually scroll the font family
1914         list.
1915
1916         * gtk/gtknotebook.c:
1917         Fix focus movement on scrolling tabs that are placed on the left
1918         and right.
1919
1920 2001-04-21  Havoc Pennington  <hp@pobox.com>
1921
1922         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
1923         empty/invisible lines.
1924
1925         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
1926         (gtk_text_iter_set_visible_line_index): new functions to set
1927         indexes excluding invisible text
1928
1929         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
1930         index
1931
1932         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
1933         (gtk_text_iter_get_visible_line_offset): new functions to 
1934         get indexes excluding invisible text
1935
1936         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
1937         bunch of extra padding that served no purpose
1938
1939         * gtk/gtkdialog.c: Make all the spacings configurable via style
1940         properties, for chubbiness configuration in themes
1941
1942         * tests/testtext.c: fix path to the immodules.
1943         
1944 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
1945
1946         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
1947         got munched by #endif.
1948
1949         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
1950
1951         * gtk/gtktreeview.c: Refactored code to clean up a number of
1952         events.
1953
1954         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
1955         values to make consistent with other functions.  Spotted by Jeff
1956         Franks <jcf@tpg.com.au>.
1957
1958         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
1959         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
1960
1961 2001-04-23  Sven Neumann  <sven@gimp.org>
1962
1963         * gtk/Makefile.am
1964         * gtk/gtkplug.c
1965         * gtk/gtksocket.c: on request of Owen, reverted my last change 
1966         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
1967
1968 2001-04-23  Sven Neumann  <sven@gimp.org>
1969
1970         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
1971         compile for non-X11 targets again
1972
1973 2001-04-20  Alexander Larsson  <alexl@redhat.com>
1974
1975         * gtk/gtkcolorsel.[ch]:
1976         API Change. Take GdkColor arguments instead of gdouble *.
1977         Leave the old gtk_color_selection_set_color for compatibility,
1978         but marked deprecated.
1979         Do correct rounding when converting RGB <-> HSV.
1980         
1981         * gtk/gtkcolorseldialog.c:
1982         * tests/testgtk.c:
1983         Use new GtkColorSelection API.
1984
1985         * gtk/gtkhsv.c:
1986         Fix problem selecting colors in triangle when Hue is 330.
1987         Fix some black dots around the HSB triangle.
1988         
1989         * gtk/gtkfilesel.c:
1990         return FALSE from the focus_in_event handler to fix focus problems.
1991
1992 2001-04-18  Havoc Pennington  <hp@redhat.com>
1993
1994         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
1995         set, so keybindings are configurable    
1996         (gtk_window_activate_default): Change to activate the focus widget
1997         instead if there's a focus widget, to be consistent with the
1998         behavior that previously existed in key_press_event
1999
2000 2001-04-18  Havoc Pennington  <hp@redhat.com>
2001
2002         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2003
2004 2001-04-18  Havoc Pennington  <hp@redhat.com>
2005
2006         Close bug #50615:
2007         
2008         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2009         the layout
2010
2011         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2012
2013         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2014
2015         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2016         
2017         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2018         to blue for base, in addition to bg
2019         
2020 2001-04-18  Havoc Pennington  <hp@redhat.com>
2021
2022         * tests/testgtk.c (create_image): allow shrinking the image window
2023         to test that we clip to allocation.
2024
2025         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2026         #9845
2027
2028         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2029
2030 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2031
2032         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2033         mode on shm segments to 0600. We'll see who complains.
2034
2035         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2036         _gdk_windowing_window_destroy() AFTER recursing through
2037         children.
2038
2039         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2040         testsocket_child on X.
2041
2042         * tests/testsocket[_child].c: Fix uses of
2043         gtk_window_get_default_accel_group().
2044
2045         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2046
2047         * gdk/gdkimage.c: (gdk_image_get):
2048         Deal with the possibility that XGetImage() might return NULL.
2049         Allocate the GdkImagePrivate structure only after XGetImage()
2050         succeeds in order not to dereference a NULL ximage pointer.  This
2051         prevents a core dump when XGetImage() fails - which is unlikely,
2052         but can happen due to race conditions accessing the geometries of
2053         drawables.  An x error will still be triggered, but the gdk image
2054         wrapper at least wont seg fault.
2055         
2056 2001-04-18  Havoc Pennington  <hp@redhat.com>
2057
2058         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2059         set
2060
2061         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2062         if the insertion point isn't editable
2063
2064         * demos/gtk-demo/images.c: Added a GtkImage demo
2065
2066         * demos/gtk-demo/drawingarea.c: drawing area demo
2067         
2068         * demos/gtk-demo/menus.c (create_menu): cleanups
2069
2070 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2071
2072         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2073           gdk/x11/gdkevents-x11.c: Introduce an extra child
2074         of toplevel windows that serves to hold the focus to
2075         avoid events being delivered to embedded windows.
2076
2077         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2078         some extra variables to clean up code and reduce the
2079         number of casts.
2080
2081         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2082         guint for 1 bit bit fields, not gboolean.
2083
2084 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2085
2086         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2087         not TRUE. (Fixes #52925)
2088
2089 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2090
2091         * Released 1.3.4
2092
2093         * NEWS: Updated
2094
2095         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2096         use GTK_TYPE_ENUM.
2097
2098 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2099
2100         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2101
2102         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2103         names to compatibility #defines so docs work.
2104
2105         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2106
2107         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2108
2109         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2110
2111         * tests/testgtkrc: No magenta cursors, please.
2112
2113         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2114
2115         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2116         
2117 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2118
2119         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2120         grabs, since they are no longer necessary.
2121
2122         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2123         by signal_connect() and call gtk_button_pressed() rather
2124         than signal_connect_after().
2125
2126         * tests/testgtk.c: Restore radio menu items to combos 
2127         since they'll look OK with Raleigh, and it is easier
2128         than finishing the process of removing them that was
2129         started earlier.
2130
2131 2001-04-16  Hans Breuer  <hans@breuer.org>
2132
2133         * gdk/gdk.def :
2134         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2135
2136         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2137         we are interested in the functions return value not the function address
2138         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2139
2140         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2141
2142 2001-04-14  Hans Breuer  <hans@breuer.org>
2143
2144         * gdk/gdk.def :
2145         * gdk/makefile.msc : updated
2146
2147         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2148         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2149         (the testgtk::text backgound pixmap is drawn again)
2150         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2151         Win32 Pango change
2152         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2153
2154         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2155         Not sure if the returned settings have the right unit, because I couldn't
2156         find any docs for the X version ...
2157
2158         * gtk/gtk.def :
2159         * gtk/makefile.msc.in : updated
2160
2161 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2162
2163         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2164         wording problems. (Compared to version from Johannes Stezenbach to
2165         check correctness.)
2166
2167 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2168
2169         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2170         this to compile.
2171
2172 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2173
2174         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2175         not pixbufpos.
2176
2177         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2178
2179         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2180         are unsigned insts, therefore use g_value_set_uint.
2181         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2182
2183 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2184
2185         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2186
2187         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2188         GTK_TYPE_STRING.
2189
2190         * gtk/gtktreeview.c: New functions to allow initial column
2191         dragging work.
2192
2193         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2194
2195         * tests/testtreefocus.c: give dave some love.
2196
2197         * tests/testtreesort.c: Modify test to check really long samples.
2198
2199 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2200
2201         * gtk-2.0.m4: Pass pkg-config options
2202         before the other args so it works even if
2203         POSIXLY_CORRECT is set.
2204
2205 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2206
2207         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2208         0, interface 0).
2209
2210 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2211
2212         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2213         check for action_func != NULL
2214
2215 2001-04-04  Sven Neumann  <sven@gimp.org>
2216
2217         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2218
2219 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2220
2221         * Released Gtk+-1.3.3.
2222
2223 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2224
2225         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2226
2227 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2228
2229         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2230         files to/from source dir. (if we don't stay in builddir, we
2231         can't reach make-inline-pixbuf.
2232
2233         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2234         deps.
2235
2236         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2237         ages 0).
2238
2239 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2240
2241         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2242         moved to the GtkTreeSortable interface.
2243
2244         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2245         Make more efficient (fixes #50262).
2246
2247 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2248
2249         * NEWS: Updated.
2250
2251         * configure.in: Remove support for uninstalled glib.
2252
2253         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2254         so as not to stop emission.
2255
2256         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2257         is no longer supported.
2258
2259         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2260         into tests, change build order to build modules before
2261         gtk/.
2262
2263         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2264         to here.
2265
2266 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2267
2268         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2269         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2270         GPatternSpec. this is actually unlikely to cause breakage in
2271         third-party apps since except for gle, pretty much ever caller
2272         passes NULL here.
2273
2274         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2275
2276         * *.c: use g_pattern_*() API.
2277
2278         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2279
2280         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2281         directions aren't passed in.
2282
2283         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2284         functionality to be usable from gtkstyle.c as well, give precedence
2285         for conversion to user-supplied parsers.
2286         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2287
2288         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2289         _gtk_settings_parse_convert() for rcporperty value conversion.
2290
2291 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2292
2293         * gdk/linux-fb/gdkevents-fb.c:
2294         Add empty gdk_setting_get().
2295
2296 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2297
2298         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2299         variable names.
2300         
2301         * gtk/makeenums.pl: touch this so enum files get remade.
2302
2303 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2304
2305         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2306         work again when not sorted.
2307
2308         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2309         and "expand_row" signal, closing bug 52578.
2310
2311         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2312         support.
2313
2314         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2315         support.
2316
2317 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2318
2319         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2320         of changes to system settings, gdk_setting_get() to retrieve
2321         a single system setting.
2322
2323         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2324         to the draft XSETTINGS mechanism.
2325
2326         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2327         XSETTINGS.
2328
2329         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2330         of GDK settings changes to the GtkSettings object.
2331
2332         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2333         double-click-timeout property to GDK.
2334
2335         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2336         Define GDK boxed types here.
2337
2338         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2339         gdk/gdkenumtypes.[ch] for enum definitions.
2340
2341         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2342         * gtk/gtk-boxed.defs: Comment out GDK types
2343         * gtk/gtktypeutils.h: Remove GDK types
2344         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2345
2346 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2347
2348         * Applied patch from Ron Steinke to add signal accumulators
2349         so that signals with the convention 'TRUE return means
2350         handled' stop emission on a TRUE return.
2351
2352         * gtk/gtkmain.[ch]: Add private accumulator 
2353         _gtk_boolean_handled_accumulator, used throughout GTK+.
2354         
2355         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2356
2357         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2358         
2359         * gtk/gtkwidget.c: Add accumulators for event signals,
2360         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2361         for ::mnemonic-activate.
2362
2363         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2364
2365 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2366
2367         * gtk/gtkwidget.c: Add missing include.
2368
2369 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2370
2371         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2372         marshaller.
2373
2374         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2375         "changed" signal to "range_changed".
2376
2377         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2378         removing a tree from one model would remove all trees from that
2379         model.
2380         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2381         changed signal instead.
2382
2383 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2384
2385         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2386         chaining up to parent impl, since we have a INPUT_ONLY
2387         window.
2388
2389         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2390         foreground color for the cursor.
2391
2392 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2393
2394         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2395         param spec when caching property values, since we unref it
2396         later when we free the style.
2397
2398         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2399         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2400
2401 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2402
2403         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2404         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2405         stupidity.
2406
2407 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2408
2409         [ First pass at adding style properties. Still needs some definite
2410         fine-tuning. ]
2411
2412         * gtk/gtkbutton.c: Add ::default_spacing style property.
2413          
2414         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2415         ::indicator_spacing style properties.
2416
2417         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2418         style properties.
2419
2420         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2421         rather than a normal property.
2422
2423         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2424         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2425
2426         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2427         Honor ::interior_focus.
2428         
2429         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2430         TRUE.
2431
2432         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2433         Add ::slider_width, ::trough_border, ::stepper_size,
2434         ::stepper_spacing style properties.
2435
2436         * gtk/gtkscale.[ch] Add ::slider-length style property.
2437
2438 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2439
2440         * gdk/linux-fb/gdkwindow-fb.c:
2441         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2442         warnings that were spewed on startup.
2443
2444         * gtk/gtkwindow-decorate.c:
2445         gtk_window_reposition -> _gtk_window_reposition
2446
2447 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2448
2449         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2450         Add boxed type for GtkRequistion. Use it for ::size-request.
2451
2452         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2453         Add a new GtkBorder structure useful for geometry properties
2454         for widgets. Add corresponding GTK_TYPE_BORDER.
2455         
2456         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2457         Support automatic parser selection like
2458         gtk_settings_install_property_parser().
2459
2460         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2461         functionality for use by gtk_widget_class_install_style_property.
2462         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2463
2464 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2465
2466         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2467         g_param_spec_unichar(). 
2468
2469 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2470
2471         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2472         _NET window managers.
2473
2474         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2475
2476 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2477
2478         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2479         bad needs to be nuked, not just deprecated.
2480
2481         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2482         gtk_widget_popup().
2483
2484         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2485         
2486         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2487         widget.
2488         
2489         * docs/Changes-2.0.txt: updates.
2490         
2491 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2492
2493         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2494         for (i = 0; i < 100; i ++)
2495           g_print ("I will confirm it compile before committing\n");
2496
2497 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2498
2499         * gtk/gtktreestore.c: Initial work on implementing the
2500         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2501
2502 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2503
2504         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2505         reference counts around emissions where the widget is used afterwards.
2506         added freeze/thaws around multiple properties being notified.
2507         (_gtk_widget_get_aux_info): cleanups.
2508         
2509         * gtk/gtksettings.c (gtk_settings_install_property): provide
2510         default parsing functions for gdkcolor, enums and flags.
2511
2512         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2513         applied by owen.
2514         backed out gtk_window_get_location(), gtk_window_set_location(),
2515         gtk_window_get_size() and gtk_window_set_size(), these
2516         have to be sorted out wrg x/y/width/height/default_with/default_height
2517         properties.
2518         kept a flag in GtkWindowGeometryInfo to handle user
2519         resetting default sizes.
2520         cleaned up ZVT comments.
2521         bunch of assorted bug fixes, notification fixes.
2522         (_gtk_window_reposition): make this a really internal function.
2523         
2524         * gtk/testgtk.c: fixups.
2525         
2526 2001-03-31  Hans Breuer  <hans@breuer.org>
2527
2528         * config.h.win32.in : disable USE_MMX for msvc build cause
2529         the assembler doesn't fit and is out of my scope. Disable
2530         USE_GMODULE for msvc build as wel. The right way to share
2531         binaries on win32 would be to use libtiff.dll etc. To reduce
2532         installation hassles IMO it's better to include all fileformats
2533         builtin to gdk-pixbuf
2534
2535         * gdk-pixbuf/makefile.msc : new file
2536
2537         * gdk/gdk.def : updated
2538
2539         * gdk/win32/gdkevents-win32.c : don't erase the background if
2540         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2541         buttons
2542         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2543
2544         * gdk/win32/gdkwindow-win32.c : added three new functions like
2545         the X version. Only one is implemented, because the other two
2546         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2547         be default behaviour on win32 anyway ...
2548
2549         * gtk/gtk.def : updated
2550
2551         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2552         from where it was built and add an additional rule to automagically
2553         build gtkmarshal.[hc]
2554
2555         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2556         before array access for the current entry isn't finished
2557
2558         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2559         use g_return_val_if_fail
2560
2561         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2562         for the static array, but let the compiler calculate it. It
2563         makes me wonder if gcc isn't capable to catch bugs like this ...
2564
2565 2001-03-31  James Henstridge  <james@daa.com.au>
2566
2567         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2568         constant "-1" in the aux info structure.
2569
2570 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2571
2572         * gtk/gtkbutton.c (gtk_button_get_property):
2573         * gtk/gtklabel.c:
2574         Remove leaks.
2575         
2576         * gtk/gtkcontainer.c:
2577         * gtk/gtkhscale.c:
2578         * gtk/gtkhscrollbar.c:
2579         * gtk/gtklayout.c:
2580         * gtk/gtkmisc.c:
2581         * gtk/gtkprogress.c:
2582         * gtk/gtkprogressbar.c:
2583         * gtk/gtkrange.c:
2584         * gtk/gtktable.c:
2585         * gtk/gtkviewport.c:
2586         * gtk/gtkvscale.c:
2587         * gtk/gtkvscrollbar.c:
2588         * gtk/gtkwidget.c:
2589         Property patches, based on patches from John Margaglione and Lee Mallabone.
2590
2591 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2592
2593         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2594         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2595         inline API function docs.
2596         (gtk_spin_button_new_with_range): New convenience constructor.
2597         (gtk_spin_button_set_increments): New adjustment helper.
2598         (gtk_spin_button_set_range): New adjustment helper.
2599
2600         * gtk/testgtk.c : added test of the new convenince constructor and
2601         value_changed signals.
2602
2603 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2604
2605         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2606         listen to the reorder signal.
2607
2608 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2609
2610         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2611         to get the aux info structure fo the widget.
2612
2613         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2614         above function.
2615
2616         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2617
2618         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2619         to get the size of the window manager frame, basically the same
2620         code that gdk_window_get_root_origin() had
2621         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2622
2623         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2624         gdk_window_resize() if the window is realized and resizeable
2625
2626         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2627         typo so that setting gravity works
2628
2629         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2630         allocation if auto_shrink is on, even if the default size
2631         has not changed.
2632
2633         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2634         g_return_if_fail
2635
2636 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2637
2638         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2639         reordering/sorting work.  Now pretty much works.
2640
2641         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2642         reorder mostly work.  Still need to get the parity correct.
2643
2644         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2645         signal, so I can listen for the sort_column_changed signal so I
2646         can change my "sort_indicator" property.  Cool.
2647
2648 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2649
2650         [ Patch from Havoc Pennington, hp@redhat.com ]
2651
2652         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2653         Add functions gdk_window_begin_resize_drag/begin_move_drag
2654         to start resizing or moving a toplevel window. This
2655         is done either using the _NET_WM_MOVERESIZE protocol,
2656         or, if that isn't present, by emulation.
2657
2658         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2659         to export the above to GTK+-land.
2660
2661         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2662         
2663         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2664         Move this function into gdkwindow, since we need it
2665         when implementing fallback resizing.
2666
2667         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2668         Fix typo when setting gravity.
2669
2670         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2671         Add an optional (but on by default) resize grip for resizing 
2672         the parent window.
2673
2674 01-03-29  Alexander Larsson  <alexl@redhat.com>
2675
2676         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2677         Don't return TRUE from the event handler, that blocks all
2678         event signals on the tooltip widget. Now you can press buttons
2679         in toolbars again.
2680
2681 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2682
2683         * gtk/testtext.c (create_buffer): Add missing NULL on
2684         valist.
2685
2686         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2687         c-n-p problem with INCONSISTENT property.
2688
2689         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2690
2691         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2692         hook.
2693
2694         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2695         signal as a hook for extending the default popup menu
2696
2697         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2698         use radio menu items for the input method menuitems
2699
2700         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2701         inserted unicode from Ctrl-Shift-hex input method
2702
2703         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2704         validatation here, already done at GtkTextBuffer level.
2705
2706         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2707         popup_menu run action signal and Shift+F10 and Menu keybindings.
2708
2709         * gtk/gtkentry.c: implement a default handler for popup_menu
2710
2711         * gtk/gtktextview.c: implement a default handler for popup_menu
2712
2713         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2714         from a key event
2715         
2716         * gtk/gtklabel.c: remove "trailer" cruft
2717
2718 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2719
2720         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2721         handle reordering of trees.  Seems to mostly work w/ the exception
2722         of the parity flag.
2723
2724         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2725         signal.
2726
2727 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2728
2729         * gtk/gtkwidget.h: c++ fixes.
2730
2731 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2732
2733         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2734         memory.
2735
2736 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2737
2738         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2739         Nils Barth fixing event return values. (#51041)
2740
2741         * gtk/gtkwidget.c: Fix some return values for default
2742         functions.
2743
2744         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2745         return values for trough_keys functions.
2746
2747         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2748         value for add_accelerator (shoudl have been a void
2749         return.)
2750
2751         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2752         Fix return type of EVENT.
2753
2754         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2755         signal return a boolean.
2756
2757 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2758
2759         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2760         reordered signal.
2761
2762         * tests/testtreesort.c (main): fix spelling.
2763
2764 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2765
2766         * gtk/gtkliststore.c: More work on implementing sortable
2767         interface.
2768
2769 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2770
2771         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2772         reference the widgets in the resulting list. (#11821)
2773         This makes this consistent with gtk_container_children.
2774
2775         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2776         uses of gtk_window_list_toplevels.
2777
2778 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2779
2780         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2781         a virtual function to set whether the IM context should use 
2782         the preedit string. (#51922)
2783         
2784 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2785
2786         * gdk/gdkpango.h: Remove stale FIXME comment.
2787
2788 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2789
2790         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2791         Fixed bug that returned NULL if a filename was selected.
2792
2793 2001-03-24  Havoc Pennington  <hp@pobox.com>
2794
2795         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2796         to contain the word "theme"
2797
2798 2001-03-24  Havoc Pennington  <hp@pobox.com>
2799
2800         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2801         slower but finer-grained
2802         (gtk_hsv_focus): get initial focus on the ring or triangle 
2803         according to tab direction
2804
2805         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2806
2807 2001-03-23  Havoc Pennington  <hp@pobox.com>
2808
2809         * gtk/gtkhsv.c: make this somewhat key-navigable
2810
2811         * gtk/gtkfontsel.c: mnemonics
2812
2813         * gtk/gtkgamma.c: mnemonics
2814
2815         * gtk/gtkcolorsel.c: add mnemonics to labels
2816
2817 2001-03-22  Havoc Pennington  <hp@pobox.com>
2818
2819         Applied big patch from Seth Lytle to fix event handler return
2820         values, slightly modified.
2821
2822         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2823         handled.
2824         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2825         select_day
2826
2827         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2828         (gtk_clist_button_release): return TRUE if handled
2829
2830         * gtk/gtkcolorsel.c (mouse_release):
2831         (palette_activate): 
2832         (palette_press): 
2833         (palette_new): 
2834         (mouse_press): 
2835         (get_screen_color): 
2836         fixed return type (void to gboolean), return TRUE,
2837         added GTK_SIGNAL_FUNC cast
2838
2839         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2840         (void to gboolean), and return TRUE
2841         (gtk_combo_button_release): changed return value to TRUE after
2842         gtk_grab_add on combo->popwin
2843
2844         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2845         collapse or expand
2846
2847         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2848         button/motion
2849
2850         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2851         press/release and motion that trigger act
2852
2853         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2854
2855         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2856         for GDK_Return
2857         
2858         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2859         (gtk_list_button_release): return TRUE if selection
2860
2861         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
2862         press
2863
2864         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
2865         (gtk_menu_shell_button_release): chain parent_menu_shell retval
2866
2867         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
2868         nothing triggered
2869         (gtk_notebook_button_release): return TRUE if we do anything
2870
2871         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
2872         (gtk_spin_button_button_release): return TRUE or chained retval
2873
2874         * gtk/gtktext.c (gtk_text_button_press): 
2875         (gtk_text_button_release): return TRUE
2876         (gtk_text_key_press): remove redundant retval code
2877         
2878         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
2879         and sensitive
2880         (gtk_tree_item_subtree_button_click): changed type to gint, and return
2881         TRUE if sensitive
2882
2883         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
2884         return TRUE
2885
2886 2001-03-23  Havoc Pennington  <hp@redhat.com>
2887
2888         * gtk/testgtk.c: fix warnings
2889
2890         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
2891
2892         * gtk/gtktextview.c: fix warnings
2893
2894         * gtk/gtktext.c (find_cursor_at_line): fix warning
2895
2896         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
2897
2898         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
2899         of this function
2900
2901         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2902         fix warning
2903
2904         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
2905
2906         * gtk/gtkfontsel.c: fix warning
2907
2908         * gtk/gtkcolorsel.c: fix warnings
2909
2910 2001-03-23  Havoc Pennington  <hp@redhat.com>
2911
2912         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
2913
2914         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
2915
2916         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
2917         and deprecated gtk_check_menu_item_set_show_toggle().
2918         
2919         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
2920
2921         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
2922
2923         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
2924
2925 2001-03-23  Havoc Pennington  <hp@redhat.com>
2926
2927         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
2928         some docs
2929
2930 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2931
2932         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
2933         this.
2934
2935         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
2936         set_cell to set_value
2937
2938         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
2939         set_cell to set_value
2940
2941 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
2942
2943         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2944         fix braino.
2945         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
2946         support.
2947
2948         * gtk/gtktreeview.c: Addition of initial sortable support.
2949
2950         * gtk/gtktreestore.c: Addition of initial sortable support.
2951
2952         * gtk/gtkliststore.c: Addition of initial sortable support.
2953
2954         * gtk/gtkmarshal.list: yet another marshaller.
2955
2956         * gtk/gtktreedatallist.[ch]: shared code between the store models
2957         for handling sorting headers.
2958
2959 2001-03-22  Havoc Pennington  <hp@redhat.com>
2960
2961         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
2962         (gtk_container_unset_focus_chain): Add ability to override the 
2963         focus chain for a container explicitly
2964
2965 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
2966
2967         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
2968         added PROP_MNEMONIC_WIDGET.
2969
2970         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
2971         (gtk_window_remove_mnemonic): 
2972         (gtk_window_add_mnemonic): fixed assertions.
2973         (gtk_window_activate_mnemonic): constrain modifier checks to those
2974         permitted by gtk_accelerator_get_default_mod_mask().
2975         got rid of gtk_window_get_default_accel_group().
2976
2977         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
2978         activatable widgets either by focussing or a warning.
2979         added a signal accumulator to ::activate_mnemonic which stops the
2980         emission once a handler returned TRUE.
2981
2982 2001-03-22  Havoc Pennington  <hp@pobox.com>
2983
2984         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
2985         the stock item label
2986
2987         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
2988
2989         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
2990
2991         * demos/gtk-demo/*.c: Add mnemonics all over the place
2992
2993         * gtk/gtklabel.h: mark parse_uline deprecated
2994
2995 2001-03-21  Alexander Larsson  <alexl@redhat.com>
2996
2997         * gtk/gtkitemfactory.[ch]:
2998         Add support for stock and normal imagemenuitems.
2999         
3000         * gtk/testgtk.c:
3001         Add some tests for mnemonics, stock toolbars, stock
3002         and image menuitems in itemfactory and gdk_window_scroll.
3003
3004 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3005
3006         * gtk/gtkbutton.[ch]:
3007         * gtk/gtkdialog.c:
3008         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3009         removed accel_group argument. Renamed gtk_button_new_accel() to
3010         gtk_button_new_with_mnemonic() and removed accel_group argument.
3011
3012         * gtk/gtkcheckbutton.[ch]:
3013         New function gtk_check_button_new_with_mnemonic().
3014
3015         * gtk/gtkentry.c:
3016         Override activate_mnemonic and just grab focus.
3017
3018         * gtk/gtkitemfactory.c:
3019         Don't add menu uline accel group, instead use mnemonics support.
3020
3021         * gtk/gtklabel.[ch]:
3022         New support for mnemonics.
3023
3024         * gtk/gtkmarshal.list:
3025         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3026
3027         * gtk/gtkmenu.[c]:
3028         * gtkmenushell.c:
3029         Use mnemonics instead of accel groups for uline
3030         support in menu items.
3031         Removed gtk_menu_get_uline_accel_group() and
3032         gtk_menu_ensure_uline_accel_group().
3033
3034         * gtk/gtkmenuitem.c:
3035         Override activate_mnemonic to handle switching between
3036         menu items if there are collisions.
3037         
3038         * gtk/gtknotebook.c:
3039         Connect to activate_mnemonic on the tab_label, so that
3040         activating it switches to that notebook page.
3041
3042         * gtk/gtkwidget.[ch]:
3043         Add activate_mnemonic signal. New function
3044         gtk_widget_activate_mnemonic() to emit it.
3045         Default implementation does activate/grab_focus.
3046
3047         * gtk/gtkwindow.[ch]:
3048         Add support for mnemonics in windows.
3049         New functions:
3050         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3051         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3052
3053         * gtk/testgtk.c:
3054         Update to function name changes.
3055         
3056 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3057
3058         * gtk/gtkimagemenuitem.[c]:
3059         Add gtk_image_menu_item_new_from_stock()
3060
3061 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3062
3063         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3064         Fix buglet in meeting.
3065
3066 2001-03-19  Havoc Pennington  <hp@redhat.com>
3067
3068         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3069         add a bunch of accessor functions. This is because we have
3070         reasonable expectations of extending what fields it contains in
3071         the future.
3072
3073         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3074         changes
3075
3076         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3077         GtkIconSource   
3078
3079 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3080
3081         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3082         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3083
3084         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3085           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3086           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3087           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3088         Change float to double everywhere with the exception of 0<->1.0 alignment
3089         and GtkCurve.
3090
3091 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3092
3093         * gdk/win32/gdkdrawable-win32.c
3094         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3095         output.
3096
3097         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3098         gdkwin32.h.
3099
3100 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3101
3102         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3103         print_event_state, print_event): Use preprocessor macro to make
3104         code more compact. Print also GDK_WINDOW_STATE events.
3105         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3106         
3107         * gtk/gtk.def
3108         * gtk/makefile.mingw.in: Update.
3109
3110         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3111         to catch also Cygwin.
3112
3113 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3114
3115         * gtk/gtkspinbutton.[hc]: added rc-style argument
3116         GtkSpinButton::shadow_type.
3117         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3118         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3119         rc-style settings.
3120
3121         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3122
3123         * gtk/gtkwidget.c: quark cleanups.
3124
3125         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3126         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3127         to create_rc_style() (we don't do cloning in standard OO sense).
3128         added per rc style properties.
3129         
3130         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3131         property values and for caching those. some cleanups.
3132         
3133         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3134         
3135         * gtk/gtksettings.[hc]: new file for global rc-file properties
3136         (at least currently, should get extended to support X properties
3137         and other communication mechanisms).
3138         
3139         * gtk/gtkwidget.[hc]: added style property support:
3140         (gtk_widget_class_install_style_property_parser): install style
3141         property pspec with parser function for rc-file values other
3142         than LONG, DOUBLE or STRING.
3143         (gtk_widget_class_install_style_property): same as above without
3144         parser (parsers are going to be needed quite infrequently).
3145         (gtk_widget_style_get_property): retrive style property value.
3146         (gtk_widget_style_get_valist): same as above with varargs support,
3147         has NOCOPY semantics.
3148         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3149
3150 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3151
3152         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3153         "row_activated" signal.
3154
3155         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3156         stupidity.  Lets actually pass in the row with this signal...
3157
3158 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3159
3160         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3161
3162         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3163
3164         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3165         everything into the ::destroy function, and freed a lot more.
3166
3167 2001-03-16  Havoc Pennington  <hp@redhat.com>
3168
3169         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3170         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3171         are now allowed.
3172
3173 2001-03-16  Havoc Pennington  <hp@redhat.com>
3174
3175         * Applied patch from Nils Barth (bug # 51041) to 
3176         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3177         in various places.
3178
3179 2001-03-15  Havoc Pennington  <hp@redhat.com>
3180         
3181         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3182         for properties to set on the tag.
3183
3184         * gtk/testtext.c: fixups to reflect create_tag change
3185         
3186         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3187         background/foreground stipple are objects, not boxed.
3188
3189         * demos/gtk-demo/textview.c: intellihancing
3190
3191 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3192
3193         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3194         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3195
3196 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3197
3198         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3199         Fix sign error with queued region translations.
3200
3201 2001-03-15  HideToshi Tajima  <tajima@happy>
3202
3203         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3204         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3205         * gtk/gtkentry.c (update_im_cursor_location): 
3206         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3207         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3208         set_cursor_pos to set_cursor_location in GtkInputContext class
3209
3210 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3211
3212         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3213         the location of the cell relative to its area.
3214         * gtk/gtkcell*: modified for above change
3215         * gtk/gtktreeview.c: modified for above change.
3216
3217 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3218
3219         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3220          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3221         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3222
3223 2001-03-14  Havoc Pennington  <hp@redhat.com>
3224
3225         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3226         
3227         * gtk/gtk.h: remove gtkdata.h
3228
3229         * gtk/Makefile.am: remove gtkdata
3230         
3231         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3232         not "disconnect" on the adjustments.
3233         
3234         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3235         GtkData
3236
3237         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3238         not GtkData
3239
3240         * configure.in: handle case where X render exists, but Pango lacks
3241         Xft support.
3242
3243 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3244
3245         * gtk/gtktoolbar.[ch]:
3246         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3247         to add stock items to toolbars.
3248
3249         * gtk/Makefile.am:
3250         Remove ../gdk/gdkim.h from gdk_headers.
3251
3252 2001-03-15  Sven Neumann  <sven@gimp.org>
3253
3254         * gdk/gdkim.h: removed
3255         
3256         * gdk/gdkprivate.h
3257         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3258
3259 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3260
3261         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3262         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3263         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3264         set_cursor_pos() virtual method
3265
3266         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3267         (gtk_im_context_xim_set_cursor_pos): add implementation for
3268         set_cursor_pos() method
3269
3270         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3271         position to input methods
3272
3273 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3274
3275         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3276         code a lot.
3277
3278         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3279         g_mem_chunk.
3280         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3281         (_gtk_tree_data_list_node_to_value): Fix to switch on
3282         G_TYPE_FUNDAMENTAL.
3283         (_gtk_tree_data_list_value_to_node): Fix to switch on
3284         G_TYPE_FUNDAMENTAL.
3285         (_gtk_tree_data_list_node_copy): Fix to switch on
3286         G_TYPE_FUNDAMENTAL.
3287
3288 2001-03-12  Havoc Pennington  <hp@redhat.com>
3289
3290         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3291         to convert to new property API. Also, change default_width and
3292         default_height get_property to return 0 as the flag value for
3293         "unset"; -1 is not a valid value for these fields.
3294
3295 2001-03-12  Havoc Pennington  <hp@redhat.com>
3296
3297         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3298         enum with registration for icon sizes, instead of strings.
3299
3300         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3301         gtkwidget.c: Fix to reflect GtkIconSize
3302         
3303 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3304
3305         Make GtkFB compile and link.
3306         
3307         * gdk/linux-fb/gdkdrawable-fb2.c:
3308         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3309         
3310         * gdk/linux-fb/gdkwindow-fb.c:
3311         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3312         Added gdk_window_shape_combine_region.
3313         Added assorted placeholders for unimplemented new GdkWindow API calls.
3314
3315 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3316
3317         * gtk/gtkfilesel.c:
3318         Add more test when converting filenames from/to utf-8.
3319         Don't allow entering text in the filename entry which isn't allowed in
3320         a filename. Just beep instead.
3321
3322 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3323
3324         * gtk/gtkclist.c:
3325         Scroll using gdk_window_scroll(). Don't wait for exposes.
3326         Move the column headers in an order that makes them flash less.
3327
3328 2001-03-10  Hans Breuer  <hans@breuer.org>
3329
3330         * gdk/gdk.def : updated
3331
3332         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3333         to offseting the clip_mask at the right place
3334
3335         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3336         for all the gdkClasses, especially not for the input_only case.
3337         Otherwise flickering wont be avoidable, because we don't get
3338         WM_ERASEBKGND message for these windows.
3339
3340         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3341         and fixed massive redraw problems apparently triggered by Alexanders 
3342         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3343         but it seems to work quite well :-)
3344
3345         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3346         prototype
3347
3348 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3349
3350         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3351         (gtk_list_store_set_cell): Fix a stupid typo.
3352
3353 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3354
3355         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3356         select_all not work if you're in SINGLE mode (it doesn't make that
3357         much sense, anyway.)
3358
3359         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3360         handle types more sanely.
3361         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3362         (_gtk_tree_data_list_node_copy): handle types more sanely.
3363
3364         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3365         GValue better. Converts the type as well.
3366
3367         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3368         GValue better. Converts the type as well.
3369
3370 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3371
3372         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3373         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3374         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3375         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3376
3377         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3378         gdk_im/gdk_ic.
3379
3380 2001-03-09  Hans Breuer  <hans@breuer.org>
3381
3382         * gdk/gdk.def : updated
3383
3384         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3385         for their palette
3386
3387         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3388         removing
3389
3390         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3391         removing and implemented Havoc's GdkWindow state functions; 
3392         stick/unstick only as no-op, cause I don't know how to emulate 
3393         on win32 ...
3394
3395         * gtk/gtk.def : updated
3396
3397         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3398
3399         * gtk/gtktypeutils.c : #include <string.h>
3400
3401         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3402
3403 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3404
3405         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3406         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3407         not a boxed.
3408
3409 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3410
3411         * docs/Changes-2.0.txt:
3412         Document expose event->region change and that gtk_widget_event
3413         doesn't allow passing expose events.
3414
3415         * gdk/gdkevents.h:
3416         Add region to expose event.
3417         
3418         * gdk/gdkevents.c:
3419         Handle event->region in gdk_event_copy() and gdk_event_free().
3420
3421         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3422         Generate expose_event->region when creating expose events.
3423
3424         * gdk/x11/gdkevents-x11.c:
3425         Generate expose events with regions when translating X events.
3426
3427         * gtk/gtkcontainer.[ch]:
3428         Default expose handler that propagates expose events to NO_WINDOW
3429         children. New function gtk_container_propagate_expose()
3430
3431         * gtk/gtkwidget.[ch]:
3432         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3433         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3434         expose events. New function gtk_widget_send_expose() to send expose
3435         events. New function gtk_widget_region_intersect() to calculate
3436         window/region intersections.
3437         
3438         * gtk/gtkmain.c (gtk_main_do_event):
3439         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3440         Use gtk_widget_send_expose() to send expose events.
3441         
3442         * gtk/gtkbin.c:
3443         * gtk/gtkbox.c:
3444         * gtk/gtkfixed.c:
3445         * gtk/gtkimagemenuitem.c:
3446         * gtk/gtklist.c:
3447         * gtk/gtkpacker.c:
3448         * gtk/gtktable.c:
3449         * gtk/gtktree.c:
3450         Remove expose handler, using the default container implementation
3451         instead.
3452         
3453         * gtk/gtkbutton.c:
3454         * gtk/gtkcheckbutton.c:
3455         * gtk/gtkeventbox.c:
3456         * gtk/gtkfixed.c:
3457         * gtk/gtkhandlebox.c:
3458         * gtk/gtklayout.c:
3459         * gtk/gtklistitem.c:
3460         * gtk/gtkmenu.c:
3461         * gtk/gtkmenubar.c:
3462         * gtk/gtkmenuitem.c:
3463         * gtk/gtknotebook.c:
3464         * gtk/gtkoptionmenu.c:
3465         * gtk/gtkpaned.c:
3466         * gtk/gtkscrolledwindow.c:
3467         * gtk/gtktogglebutton.c:
3468         * gtk/gtktoolbar.c:
3469         * gtk/gtktreeitem.c:
3470         * gtk/gtkviewport.c:
3471         Chain expose handler to parent class handler. Use
3472         gtk_container_propagate_expose() to propagate exposes.
3473
3474         * gtk/gtkclist.c (check_exposures):
3475         * gtk/gtktext.c (process_exposes):
3476         Use gtk_widget_send_expose instead of gtk_widget_event.
3477
3478 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3479
3480         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3481
3482 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3483
3484         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3485         unref the nodes.   Fixes bug #50058.
3486
3487         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3488         "::ref_iter" to "::ref_node".
3489         (gtk_tree_model_unref_node): change "::unref_iter" to
3490         "::unref_node". Fixes bug #50064.
3491
3492 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3493
3494         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3495         support for invisible cells.
3496          (gtk_tree_view_bin_expose): ditto
3497
3498 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3499
3500         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3501         on gobjects.
3502
3503         * tests/testtreefocus.c (main): New test file.
3504
3505         * tests/testtreeview.c: update to latest glib changes.
3506
3507         * tests/testtreecolumns.c: update to latest glib changes.
3508
3509 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3510
3511         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3512
3513 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3514
3515         * *.c: added accumulator data argument to g_signal_newc()
3516         functions.
3517
3518         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3519         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3520         * gtk/treestoretest.c (make_window):
3521         s/g_signal_connect/g_signal_connectc/.
3522
3523         * gtk/gtktextbuffer.c: completed signal arg fixups,
3524         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3525
3526 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3527
3528         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3529         G_CONST_RETURN.
3530
3531         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3532         ::hierarchy-changed signal when a widget changes
3533         from anchored to unanchored or vice versa.
3534         (anchored means 
3535          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3536         Use a private flag to keep track of this efficiently.
3537
3538 2001-03-07  Havoc Pennington  <hp@redhat.com>
3539
3540         * gtk/testgtk.c (create_spins): uglify so that size request gets
3541         tested.
3542
3543         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3544         request on values for upper/lower, completes #6152
3545
3546 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3547
3548         * Makefile.am: Remove gtk-config-2.0 again.
3549         (Grrrr, pkg-config. And stops make loops.)
3550
3551 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3552
3553         * gtk/gtksignal.[hc]: removed old emission hook API.
3554         
3555         * docs/Changes-2.0.txt: fixed sections.
3556         
3557         * gtk/gtktextbuffer.c: signal arg fixups.
3558
3559 2001-03-07  Havoc Pennington  <hp@redhat.com>
3560
3561         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3562
3563         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3564         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3565         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3566         validation and the redraw which is higher priority than the
3567         validation.
3568
3569 2001-03-07  Havoc Pennington  <hp@redhat.com>
3570
3571         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3572         (gtk_entry_set_property): remove trailer
3573
3574         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3575         (gtk_entry_get_width_chars): new functions, to set size request to 
3576         a given number of characters
3577
3578         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3579
3580         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3581         (gtk_dialog_get_has_separator): new function
3582         (run_delete_handler): fix to not emit "response" signal
3583         because we already did in the delete event handler installed
3584         at dialog creation time.
3585         
3586         * gtk/gtkdialog.h: add a has_separator property,
3587         add GTK_DIALOG_NO_SEPARATOR flag
3588
3589 2001-03-07  Havoc Pennington  <hp@redhat.com>
3590
3591         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3592         off decorations for a window.
3593
3594         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3595         changes
3596
3597         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3598         to get location of PangoLayout inside the label, closes #51198
3599
3600         * gtk/testgtk.c (create_bbox): fix up button box usage
3601
3602         * gtk/testcalendar.c (create_calendar): fix up button box usage
3603
3604         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3605
3606         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3607
3608         * gtk/gtkhbbox.h: deprecations
3609
3610         * gtk/gtkvbbox.h: deprecations
3611
3612         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3613         emulate deprecated gtk_button_box_get_spacing
3614
3615         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3616         the "set global default" functions
3617         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3618         GtkBox base class
3619
3620         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3621
3622         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3623         render the icon, return the missing image icon.
3624
3625         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3626         image icon if the load fails.   
3627
3628         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3629         when no image is found; should be the Netscape "missing image"
3630         icon eventually but for now is a random image
3631
3632         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3633         role for the session manager
3634
3635         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3636
3637         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3638         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3639
3640         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3641
3642 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3643
3644         * gtk/*.c: marshaller fixes.
3645         
3646         * gtk/gtkmarshal.list: extreme cleanup.
3647
3648         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3649         param spec for now.
3650
3651         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3652         where appliable.
3653
3654         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3655         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3656         which are not reference counted:
3657         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3658         PangoFontDescription, GtkTreeIter and GtkTreePath.
3659
3660 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3661
3662         * gtk/gtktreeselection.h: 
3663         * gtk/gtktreemodel.c:
3664         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3665         file should be included directly, and gobject/gmarshal.h
3666         as well as gtk/gtkmarshal.h even can't be included directly.
3667
3668         * Makefile.am: grr, install gtk-config-2.0.
3669
3670         * gtk/testgtk.c:
3671         * gtk/simple.c:
3672         * gtk/gtkmenu.c:
3673         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3674         passing "*signal*::*" args to gtk_widget_set().
3675         
3676         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3677         
3678         * gtk/*.c: removed trailer arg from property setters and getters.
3679         macro fixups.
3680
3681 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3682
3683         * gtk/gtklabel.c (set_markup): Removed warning
3684
3685 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3686
3687         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3688         field to allow you to hide cell renderers.
3689
3690         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3691
3692         * gtk/gtktreeview.c: Add support for invisible cells.
3693
3694 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3695
3696         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3697         Add "clicked" signal back to columns.
3698
3699         * ChangeLog: remove conflict markers.
3700
3701 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3702
3703         * gtk/gtkbutton.c: Add animation of activation by, on 
3704         activate, pressing the button, and adding a timeout that 
3705         releases the button after 250ms or on key release and
3706         emits ::clicked. (#51501)
3707
3708         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3709         action area, we connect to ::clicked instead of ::activate
3710         so the dialog stays up through the animation.
3711
3712 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3713
3714         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3715         check the ignore_enter flag for the menu shell that
3716         the item is actually a child of, not for attached
3717         submenus. (#51536)
3718
3719 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3720
3721         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3722         special key-press grab handling for widgets within
3723         GtkWindows. Otherwise, fall through to normal case.
3724
3725         This prevents key events being sent twice to GtkInvisible
3726         widgets, which can cause all sorts of mischief.
3727
3728 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3729
3730         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3731         widget is in effect, give the grab widget a first
3732         crack at KEY_PRESS/RELEASE events. (#424)
3733
3734 2001-03-06  James Henstridge  <james@daa.com.au>
3735
3736         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3737         offset for the window_state_event to point at window_state_event
3738         rather than no_expose_event.
3739
3740 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3741
3742         * gtk/gtkimmodule.h: fix busted /* comment */
3743
3744 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3745
3746         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3747         object properties.
3748
3749 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3750
3751         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3752         add object properties.
3753
3754         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3755         to add object properties.
3756
3757         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3758         object properties.
3759
3760         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3761         add object properties.
3762
3763         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3764         object properties.
3765
3766 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3767
3768         * gtk/gtktreemodel.c: renamed "child_toggled" to
3769         "has_child_toggled".
3770
3771         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3772         handle new signal name.
3773
3774         * gtk/gtktreestore.c: Updated to handle new signal name.
3775         * gtk/gtklisttore.c: Updated to handle new signal name.
3776         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3777
3778 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3779
3780         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3781         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3782
3783 2001-03-05  Michael Natterer  <mitch@gimp.org>
3784
3785         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3786         pixbuf-engine coincidentially also failed to make one of it's
3787         parent_class pointers static, causing overwriting of GtkLabel's
3788         parent_class pointer in pixbuf_style_class_init().
3789         (Will commit the fix to the pixbuf-engine too).
3790
3791 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3792
3793         * gdk/gdkwindow.h:
3794         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3795         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3796         gdk_window_set_icon_list for net wmspec functionality.
3797
3798         * gdk/x11/gdkwindow-x11.c:
3799         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3800         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3801         gdk_window_set_icon_list.
3802         Added gdk_wmspec_change_state helper function and used it in the code.
3803         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3804
3805         * gtk/gtkdialog.c (gtk_dialog_init):
3806         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3807
3808         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3809         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3810
3811         * gtk/gtkwindow.c:
3812         new function gtk_window_set_type_hint.
3813         On realize, set type hint and modal hint.
3814
3815         * gtk/gtkwindow.h:
3816         Added type_hint field and gtk_window_set_type_hint.
3817
3818 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3819
3820         * gtk/gtklabel.[ch]:
3821         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3822         New function gtk_label_get_accel_keyval () to get the underline accelerator
3823         of the label. Setting the label pattern overrides other attributes.
3824
3825 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3826
3827         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3828         Added missing initializers to gtk_rc_style_init().
3829
3830 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3831
3832         * gtk/gtktextview.c: fixed bug #51097 about setting 
3833         gtk_text_view_set_border_window_size() if the widget is 
3834         already realized.
3835
3836 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3837
3838         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3839
3840         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3841         comment. Won't do to have duplicated doc comments between
3842         the platform subdirs.
3843
3844 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3845
3846         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3847           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3848
3849         Detectable auto-repeat - make a repeating key generate
3850         press/press/press/release instead of press/release pairs.
3851
3852         If we have Xkb and XkbSetDectableAutoRepeat supports
3853         that, we do it that way. Otherwise, when we get
3854         a release event, we check ahead with XPending to see
3855         if the next key is a KeyPress with the same keycode
3856         and timestamp. (Not 100% reliable, but pretty close.)
3857           
3858 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3859         
3860         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3861         special key-press grab handling for widgets within
3862         GtkWindows. Otherwise, fall through to normal case.
3863  
3864         This prevents key events being sent twice to GtkInvisible
3865         widgets, which can cause all sorts of mischief.
3866  
3867 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3868  
3869         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3870         widget is in effect, give the grab widget a first
3871         crack at KEY_PRESS/RELEASE events. (#424)
3872  
3873 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
3874
3875         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
3876         to extend the selection. (Roughly based on patch
3877         from Jay Cox, #50939)
3878
3879         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
3880         to properly handle previous GDK_BUTTON_PRESS. 
3881         (Patch from Jay Cox, #50938)
3882
3883         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
3884         '\0' back along with the deleted text. (#51148)
3885
3886 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
3887
3888         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
3889         the group when extracting it from the X keyboard event.
3890
3891         * modules/input/Makefile.am modules/input/imipa.c: 
3892         Simple module for entering IPA. (Do we need a 
3893         gtk-stupid-input-tricks CVS module?)
3894
3895 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
3896
3897         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
3898         const.
3899
3900         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
3901
3902         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
3903         is no focus widget for the dialog currently, grab the focus as well
3904         as the default.
3905
3906         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
3907         the action area's children to iterate through, not the
3908         dialog's children.
3909
3910 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
3911
3912         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
3913         Add plug-socket tests. (Won't work worth a darn until I commit
3914         the rest of the plug-socket changes, but no reason these
3915         can't go into CVS now.)
3916
3917 2001-03-02  Havoc Pennington  <hp@redhat.com>
3918
3919         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
3920         _gdk_region_get_xrectangles()
3921
3922         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
3923
3924         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
3925
3926         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
3927         function, contributed by Ron Steinke    
3928
3929         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
3930         gdk_net_wm_supports
3931
3932         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
3933         New function, contributed by Ron Steinke
3934
3935         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
3936         used to line up the text in the entry when using the entry for
3937         editable sheet cell hacks
3938
3939         * gtk/testgtk.c (create_entry): test the activate_default setting
3940         on GtkEntry
3941
3942         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
3943         cause the entry to activate the default button for a dialog when 
3944         activated
3945         (gtk_entry_get_activates_default): new function
3946
3947 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
3948
3949         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
3950         Hwang to move call to sync_selection() up a few lines
3951         to before the row list is modified, to fix crash when
3952         removing rows in the undo_selection list.
3953
3954         (Test case provided by Daniel Elstner:
3955
3956         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
3957
3958 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
3959
3960         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
3961         of tree->root_tree in parent_set rather than _map(), 
3962         fixing #50892 in a bit better manner.
3963
3964 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
3965
3966         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
3967
3968 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
3969
3970         * gtk/gtkstyle.c : Remove duplicate fwd decl for
3971         gtk_default_draw_shadow.
3972
3973 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
3974
3975         * gdk/gdkimage.c (gdk_image_new): Remove excess 
3976         warning, make warnings more verbose, treat a error
3977         in shmat as permanent, and don't try again.
3978         (#51163, Ed Randall.)
3979
3980 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
3981
3982         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
3983         delay for the first click before starting to scroll.
3984         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
3985
3986         * gtk/gtktext.c: GtkText should have I-beam cursor. 
3987         (based on gtk-enf-990513-1.patch, Eric Fisher.)
3988
3989 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
3990
3991         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
3992         cleanup to remove some references to unused
3993         ->xoffset, ->yoffset.
3994
3995 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
3996
3997         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
3998         mask. (#51039, fix from Martin Maierhofer)
3999
4000 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4001
4002         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4003         for unshifted + and shifted = for non-us keyboards.
4004         Make <Control>+ and <Control>- work as well as 
4005         <Control>KP_Plus, <Control>KP_Minus for recursive
4006         open/close.  (#2682, René Seindal)
4007
4008 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4009
4010         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4011         the active menu item before deactivating the menu,
4012         so gtk_menu_popdown doesn't change the history. (#50964)
4013         
4014 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4015
4016         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4017         draw lines with text_gc rather than black_gc.
4018         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4019
4020 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4021
4022         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4023         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4024         less interrelated then it was, but it still requires the
4025         GtkTreeView to map it.
4026
4027         * test/testtreecolumn.c: Now I can add a column to one view,
4028         remove it, add it to the another view, remove it, then re-add it
4029         to the first.  Nifty.
4030
4031 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4032
4033         * docs/tutorial/gtk-tut.sgml: Minor corrections
4034
4035 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4036
4037         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4038         GtkRowReference.
4039
4040 2001-02-28  Havoc Pennington  <hp@redhat.com>
4041
4042         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4043         draw_default
4044         (gtk_widget_draw_focus): remove this function; we could instead
4045         make it just gtk_widget_draw(), but in most cases I think the
4046         result would be broken user code, so think it's better to have
4047         that code not compile and get fixed
4048         (gtk_widget_draw_default): ditto
4049
4050         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4051         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4052         
4053         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4054         widgets lose/get the default, instead of calling draw_default
4055         
4056         * docs/Changes-2.0.txt: note about all this
4057
4058         Then fixed every widget in GTK, I won't list all the filenames.
4059
4060 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4061
4062         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4063         _gtk_tree_row_reference_deleted.
4064         (inserted_callback): Proxy out to
4065         _gtk_tree_row_reference_inserted.
4066         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4067         get around signal emission ordering problem.
4068
4069         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4070         fix to work with SINGLE 
4071         (_gtk_tree_selection_internal_select_node): Major sanitization on
4072         selections.  SINGLE now seems to work.
4073
4074         * tests/Makefile.am: add testtreecolumn.c:
4075
4076         * tests/testtreecolumn.c: New test.  Mostly points out selection
4077         bugs currently, but will test columns later.
4078
4079         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4080         selection bug.  I hate touching this code -- it's scary.
4081
4082 2001-02-26  Havoc Pennington  <hp@redhat.com>
4083
4084         * gtk/testgtk.c: test the window state stuff
4085
4086         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4087         window come to the user's attention as if it were just created
4088         (gtk_window_iconify): new function
4089         (gtk_window_deiconify): new function
4090         (gtk_window_stick): new function
4091         (gtk_window_unstick): new function
4092         (gtk_window_maximize): new function
4093         (gtk_window_unmaximize): new function
4094
4095         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4096
4097         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4098
4099         * gdk/x11/gdkevents-x11.c: create window state events when
4100         appropriate
4101         (gdk_wmspec_supported): new function
4102
4103         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4104         iconification before showing the window
4105         (gdk_window_deiconify): new function
4106         (gdk_window_stick): new function
4107         (gdk_window_unstick): new function
4108         (gdk_window_maximize): new function
4109         (gdk_window_unmaximize): new function
4110
4111         * gdk/gdkwindow.c: store the window state in the window; 
4112         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4113         window->mapped.
4114         (gdk_window_get_state): return the current window state
4115
4116         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4117         (gdk_event_get_state): handle GDK_WINDOW_STATE
4118         (gdk_synthesize_window_state): function to create the window state
4119         events
4120
4121         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4122         event, for changes to "window state" such as maximized, sticky, 
4123         etc.
4124         
4125         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4126         focuses a window
4127
4128         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4129         finds out if we support a given WM spec hint
4130
4131 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4132
4133         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4134
4135 2001-02-25  Hans Breuer  <hans@breuer.org>
4136
4137         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4138         cause we want to loose those prototypes only in the latter case
4139
4140         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4141         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4142         impl member variable instead
4143
4144         * gtk/gtk.def : updated
4145
4146         * gtk/gtklist.c : 
4147         * gtk/gtkmenus.c : include <string.h> for memset ()
4148
4149         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4150         for everthing built here, but for gtk-x.x.dll only. This solves
4151         problem of indifferent gtk type definitions
4152
4153 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4154
4155         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4156
4157 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4158
4159         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4160         column that is exposed.
4161
4162         (_gtk_tree_view_update_size): Changed name from set_size, and
4163         changed function to do more work, and not force people calling it
4164         to figure out the size.  Simplifies a lot of code elsewhere.
4165
4166 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4167
4168         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4169         return solid masks for xpms that have no transparent color.
4170         This makes the ..._create_from_xpm... API backwards
4171         compatible.
4172
4173 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4174
4175         * README.win32: Update. Mention the gtk-1-3-win32-production
4176         branch.
4177
4178         * gdk/win32/bdfcursor.c: New file. A program that generates
4179         xcursors.h. Thanks to Stefan Ondrejicka.
4180
4181         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4182         compact format.
4183
4184         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4185
4186         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4187         function, uses xcursors.h.
4188         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4189         cursor from inline data instead of using LoadCursor() to generate
4190         it from a resource.
4191
4192         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4193         event, must check the Windows message for mouse button state, as
4194         the GDK event state might not have been built if it is
4195         undelivered. Remove one goto.
4196
4197         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4198         SetCursor() if the current cursor as returned by GetCursor() is
4199         the window's previous cursor. The ChildWindowFromPoint() test
4200         apparently didn't work correctly.
4201
4202         * gdk/win32/rc/*.cur: Remove.
4203
4204         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4205
4206         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4207
4208         * gtk/makefile.{mingw,msc}.in: Updates.
4209
4210 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4211
4212         * gtk/gtktreemodel.h: add functions for signal emission.
4213
4214         * gtk/gtktreestore.c: move to use above functions instead of
4215         g_signal_emit.
4216
4217         * gtk/gtkliststore.c: ditto
4218
4219 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4220
4221         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4222         GObject instead of GtkObject.
4223
4224         * gtk/gtkliststore.c: ditto.
4225
4226         * gtk/gtktreemodelsort.c: ditto.
4227
4228         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4229         GtkTreeModelIface, instead of in each model.
4230
4231 2001-02-21  Havoc Pennington  <hp@redhat.com>
4232
4233         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4234         unbreak this function
4235
4236         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4237         properties
4238
4239         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4240         properties
4241
4242         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4243         properties
4244
4245         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4246         mean unset the max length
4247
4248 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4249
4250         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4251         Changed name to be set_cell_data_func to make it clear what
4252         the functino does.  Close bug #51069.
4253
4254 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4255
4256         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4257         have memory actually freed.  Keeps box running longer.
4258
4259 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4260         
4261         * gtk/gtkseparatormenuitem.[ch]:
4262         Added new menu separator item. The drawing and size handling
4263         is still done in GtkMenuItem, but the API is a bit more sane.
4264         
4265         * gtk/Makefile.am:
4266         Add gtkseparatormenuitem.[ch].
4267
4268         * gtk/gtk.h:
4269         Add gtkseparatormenuitem.h.
4270         
4271         * gtk/gtkentry.c:
4272         * gtk/gtkmenufactory.c:
4273         * gtk/gtktextview.c:
4274         Use the new API for menu separators.
4275         
4276         * demos/gtk-demo/menus.c (create_menu):
4277         Add some GtkSeparatorMenuItem demo code.
4278
4279 2001-02-20  Havoc Pennington  <hp@redhat.com>
4280
4281         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4282         Lee Mallabone
4283
4284         * gtk/gtkarrow.c: Convert to new property API, patch from 
4285         Lee Mallabone
4286
4287 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4288
4289         * tests/testtreeview.c (toggled_callback): fix to reflect change
4290         in GtkTreeModelStore.
4291
4292 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4293
4294         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4295         function to create an icon set from a pixbuf.
4296
4297 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4298
4299         * gtk/gtkcellrenderertext.[ch]:
4300         Add a "markup" property.
4301
4302         * gtk/treestoretest.c:
4303         Use the markup property, remove some leftover stuff from
4304         GtkTreeModelMapping.
4305
4306 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4307
4308         * gtk/gtklabel.c (gtk_label_set_selectable):
4309         Queue a redraw if the selectable setting was changed.
4310
4311 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4312
4313         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4314         Actually copy the whole gc, not just the public parts.
4315         
4316         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4317         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4318         labels.
4319
4320 2001-02-19  Havoc Pennington  <hp@pobox.com>
4321
4322         * gdk/gdkwindow.c: docs
4323
4324         * gdk/gdkrgb.c: docs
4325
4326         * gdk/gdkregion-generic.c: docs
4327
4328         * gdk/gdkgc.c (gdk_gc_set_values): docs
4329
4330         * gdk/gdkdraw.c: docs
4331
4332         * gdk/gdkdrawable.h: deprecate drawable get/set data
4333
4334 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4335
4336         * demos/gtk-demo/dialog.c: Add simple new demo.
4337
4338 2001-02-19  Havoc Pennington  <hp@redhat.com>
4339
4340         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4341         insert_child_anchor signal, bug #50245
4342
4343         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4344         from create_child_anchor, so the anchor is passed in
4345
4346         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4347         (_gtk_widget_segment_new): have the child anchor object passed in, 
4348         instead of creating it.
4349
4350         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4351         to gtk_text_buffer_get_modified
4352
4353 2001-02-19  Havoc Pennington  <hp@redhat.com>
4354
4355         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4356         changed GLib without fixing GTK
4357
4358         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4359         functions to have an underscore in front. Most of them should 
4360         probably just go away, but for starters don't export them.
4361         Bug #50482
4362
4363 2001-02-19  Havoc Pennington  <hp@redhat.com>
4364
4365         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4366         excluded by default
4367
4368         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4369         clean up the old code a bit
4370
4371         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4372         inconsistent state
4373
4374         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4375         draw inconsistent state
4376
4377         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4378         (create_menu): add inconsistent test
4379
4380         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4381         new function
4382         (gtk_check_menu_item_get_inconsistent): new function
4383         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4384         state (using etched in for now)
4385
4386         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4387         draw inconsistent state
4388
4389         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4390         function, used when the user has selected a range of stuff in
4391         different states
4392         (gtk_toggle_button_get_inconsistent): accessor for that
4393         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4394         don't know what else to do)
4395
4396 2001-02-19  Hans Breuer <hans@breuer.org>
4397
4398         * gtk/gtk.def : updated exported symbols
4399
4400         * gtk/makefile.msc.in : updated
4401
4402         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4403         a colormap, when invoked from testgtk::entry. I'm not sure where
4404         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4405         avoids immediate crashing ...
4406
4407         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4408         any objections ?
4409
4410         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4411         0 parameter. At least msvc doesn't like macros with var args. 
4412         I simply removed the extra 0, was it a feature or a typo ?
4413
4414         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4415         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4416         because the value assignment to the internal struct wasn't working.
4417         I'm not absolutely sure. The problem could have been resolved by
4418         changing the "func" declartion in the struct, but was the pointer
4419         to the function pointer intended ?
4420
4421         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4422
4423         * gdk/gdk.def : updated exported symbols
4424
4425         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4426         only use SetDIBitsToDevice if there is a palette at the drawable
4427         and the image is GDK_VISUAL_PSEUDO_COLOR
4428
4429         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4430
4431         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4432
4433         * gdk/*/makefile.msc : updated
4434
4435 2001-02-19  Havoc Pennington  <hp@redhat.com>
4436
4437         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4438         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4439
4440         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4441         (gdk_key_repeat_restore): nuke
4442
4443         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4444         (gdk_init_check): no atexit func
4445
4446         * gdk/gdkrgb.h: mark some stuff deprecated
4447
4448         * gdk/gdkcolor.h: mark some stuff deprecated
4449         
4450         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4451
4452         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4453
4454 2001-02-16  Havoc Pennington  <hp@redhat.com>
4455
4456         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4457         scroll steps.
4458
4459         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4460         steps, and add Ctrl-arrow shortcuts for paging visually as with
4461         HScale, since Page Up and Page Down move logically.
4462
4463         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4464         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4465         
4466         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4467         steps
4468         (gtk_range_scroll): handle the visual steps
4469
4470         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4471         scroll steps
4472
4473         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4474         steps, not the logical ones.
4475
4476         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4477         (scroll_vertical): handle up/down steps
4478
4479 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4480
4481         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4482         Copy data and free data with free().
4483
4484         * gdk-pixbuf/gdk-pixbuf.c:
4485         * gdk-pixbuf/io-jpeg.c:
4486         * gdk-pixbuf/io-png.c:
4487         Use g_try_malloc/g_free instead malloc/free.
4488         
4489         * gdk-pixbuf/test-gdk-pixbuf.c:
4490         Must... initialize... gobject...
4491         
4492         * gdk-pixbuf/pixops/timescale.c:
4493         * gtk/gtkcalendar.c:
4494         Use g_malloc instead of malloc.
4495         
4496 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4497
4498         * gtk/testgtkrc:
4499         Comment out property assignments, these don't work yet.
4500
4501 2001-02-17  Havoc Pennington  <hp@pobox.com>
4502
4503         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4504         bit.
4505
4506 2001-02-17  Havoc Pennington  <hp@pobox.com>
4507
4508         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4509         shadowed variables that had broken size request in some cases,
4510         leading to bogus tooltips (#50996)
4511
4512 2001-02-06  Jon K Hellan  <hellan@acm.org>
4513
4514         Implement fast browsing of tooltips, bug #50619
4515         
4516         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4517         and last_popdown
4518         
4519         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4520         use_sticky_delay and last_popdown.
4521         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4522         time of popdown.
4523         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4524         is NULL.
4525         (gtk_tooltips_recently_shown): New static function.  Return true
4526         if < sticky_delay has elapsed since last popdown.
4527         (gtk_tooltips_event_handler): Display window after sticky_delay
4528         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4529         since last popdown.
4530         
4531 2001-02-17  Havoc Pennington  <hp@pobox.com>
4532
4533         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4534         instead of (). #6394
4535
4536         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4537         G_CONST_RETURN, make it return by reference, #50473
4538         
4539 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4540
4541         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4542         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4543         setup fields contain garbage (e.g. subwindow, breaking
4544         gdk_drawable_ref() upon event copy).
4545         (gtk_menu_stop_navigating_submenu_cb): same here.
4546
4547         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4548         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4549         * gtk/gtkclist.c (vertical_timeout): 
4550         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4551         default-zero-intialization for unions to memset(,0,), as unions are
4552         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4553         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4554
4555         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4556         g_closure_sink() warning.
4557
4558         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4559         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4560         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4561         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4562         
4563 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4564
4565         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4566         gtk_*_store_get, and moved to GtkTreeModel.
4567
4568         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4569
4570         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4571
4572         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4573
4574         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4575         set the func.
4576
4577         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4578         freeze/thaw notify between setting all the properties for a cell.
4579
4580         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4581
4582 2001-02-15  Havoc Pennington  <hp@redhat.com>
4583
4584         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4585         the X coordinates so they're with respect to the line, rather than 
4586         with respect to the layout.
4587
4588         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4589         Mallabone
4590
4591         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4592         and inverted test
4593
4594         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4595         #50806
4596
4597         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4598
4599         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4600         gtk_text_iter_is_end
4601
4602         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4603         rename gtk_text_buffer_get_end_iter
4604
4605         * gtk/testgtk.c (create_labels): Add test for selectable
4606
4607         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4608         the selection stuff. This code is kind of broken since it doesn't 
4609         use the theme engine.
4610
4611         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4612         fix infinite loop and y offset problem
4613         (gdk_draw_layout_line_with_colors): fix foreground color handling
4614
4615         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4616         that makes the label selectable.
4617         
4618         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4619         layout when the style is set, since fonts etc. could have changed.      
4620
4621 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4622
4623         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4624
4625         * gtk/gtktreemodelsimple.[ch]: removed.
4626
4627 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4628
4629         * gtk/gtktreemodelmapping.[ch]:
4630         New files. Implement GtkTreeModelMapping.
4631         
4632         * gtk/Makefile.am:
4633         Add gtktreemodelmapping.[ch].
4634         
4635         * gtk/gtk.h:
4636         Add gtktreemodelmapping.h
4637
4638         * gtk/treestoretest.c:
4639         Test the GtkTreeModelMapping
4640
4641 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4642
4643         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4644         have a demo, we might as well pass in real values.  Thanks to
4645         clahey for pointing this out.
4646
4647 2001-02-14  Havoc Pennington  <hp@pobox.com>
4648
4649         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4650         "static" to a private function
4651         (gtk_image_menu_item_class_init): remove destroy handler,
4652         add "image" object property
4653
4654 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4655
4656         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4657         Add a shortcut if the window and the current clip_region doesn't
4658         overlap. This is needed when there are a lot of windows in a
4659         window. The layout test in testgtk is a good test.
4660
4661         * gdk/linux-fb/gdkwindow-fb.c:
4662         Whitespace fix.
4663
4664 2001-02-13  Sven Neumann  <sven@convergence.de>
4665
4666         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4667
4668 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4669
4670         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4671         Don't reference last_cursor if it is null. Fixes crash when rotating
4672         the screen before having moved the mouse.
4673
4674         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4675
4676         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4677
4678         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4679         when using 90 or 270 degrees rotation.
4680
4681 2001-02-12  Havoc Pennington  <hp@pobox.com>
4682
4683         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4684         it always set the foreground, even if we were only using
4685         a stipple.
4686         (gdk_draw_layout_line_with_colors): new function, allow
4687         override colors
4688         (gdk_draw_layout_with_colors): new function, allow override
4689         colors
4690         (gdk_pango_layout_line_get_clip_region): function to get the clip
4691         region for a logical text range
4692         (gdk_pango_layout_get_clip_region): get the clip region for a
4693         logical text range
4694
4695         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4696         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4697         the right number of arguments.
4698
4699         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4700         enhance the function to check that node data corresponds to a 
4701         view still belonging to the tree.
4702
4703         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4704         GtkTreePath
4705         (gtk_tree_view_inserted): ditto
4706         (gtk_tree_view_child_toggled): ditto
4707
4708         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4709         simplify this code.
4710
4711         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4712         a PangoAttrList
4713
4714         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4715
4716         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4717
4718         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4719         size in the size request 
4720         (gtk_menu_bar_size_allocate): consider toggle size here
4721
4722         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4723         that displays a widget in the toggle slot
4724
4725         * gtk/testgtk.c: test GtkImageMenuItem
4726
4727         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4728         
4729         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4730         request and allocation
4731
4732         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4733
4734         * gtk/gtkcheckmenuitem.c
4735         (gtk_check_menu_item_toggle_size_request): ditto
4736         
4737 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4738
4739         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4740         reference.
4741
4742         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4743         and refuse to initialize GTK+ if they fail.
4744
4745 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4746
4747         * configure.in: Add check for gtk-doc version.
4748
4749 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4750
4751         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4752         where the xpad/ypad was only being used on one side!
4753
4754 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4755
4756         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4757         function, copied from X11 version.
4758
4759         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4760         DestroyCursor failures. The reason for the problem (despite the
4761         inconsistent messages from GetLastError()) was that
4762         DestroyCursor() cannot be called while a cursor is set in a
4763         window. Set the new cursor first and then destroy the old one.
4764         Thanks to jpe@archaeopteryx.com.
4765
4766         * gdk/win32/gdkcc-win32.c: Remove.
4767
4768         * gdk/win32/Makefile.am: Remove from here, too.
4769         
4770         * gdk/gdk.def
4771         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4772
4773         * gtk/gtk.def
4774         * gtk/makefile.mingw.in: Updates.
4775
4776 2001-02-08  Havoc Pennington  <hp@redhat.com>
4777
4778         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4779         add a widget to a bin that already has a child.
4780
4781         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4782
4783         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4784         
4785         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4786
4787         * gdk/gdk.h: remove gdkcc.h
4788
4789         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4790
4791         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4792         GdkPixbuf, since the previous implementation was GdkColorContext
4793         dependent.
4794
4795         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4796         
4797 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4798
4799         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4800         a sane value!
4801
4802 2001-02-08  Havoc Pennington  <hp@redhat.com>
4803
4804         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4805         lighten them.
4806
4807 2001-02-08  Havoc Pennington  <hp@redhat.com>
4808
4809         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4810         validation idle
4811
4812         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4813         cell renderer
4814
4815         * demos/pixbuf-demo.c (timeout): remove deprecated
4816         gtk_widget_draw
4817
4818         * demos/testpixbuf-save.c (main): remove deprecated
4819         gtk_drawing_area_size
4820
4821         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4822         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4823         at the start of the allocation.
4824         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4825         unsetup or NULL model.
4826
4827         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4828         even/odd/sorted cells in the tree view.
4829
4830         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4831         bugfixes
4832
4833         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4834         backgrounds with draw_flat_box using different detail for even/odd
4835         rows.
4836
4837         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4838         row, so we can draw the alternating colors thing
4839
4840         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4841         property from a synonym property, notify for the synonym.
4842         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4843         (gtk_text_tag_get_property): Always return the font, even if
4844         all its fields aren't set
4845
4846         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4847         store the attr list; it leaves us with no way to change attributes
4848         in _render according to the render flags, and no way to implement
4849         get_property. Instead store all the specific text attributes. 
4850         Separate whether an attribute is enabled from its value. Sync all
4851         properties with GtkTextTag, make them all consistent, etc.
4852
4853         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4854         renderers can highlight the sort row/column     
4855
4856         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4857         accessor functions to get values; this has the side effect of
4858         showing up which accessor functions were missing. Added those.
4859
4860         * gtk/gtktreeviewcolumn.h: Replace set_justification with
4861         set_alignment, to be consistent with GtkLabel, GtkMisc
4862
4863         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
4864         arrow.
4865
4866         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
4867
4868         * gtk/gtktreesortable.h: updates in here
4869
4870 2001-02-07  Sven Neumann  <sven@convergence.de>
4871
4872         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
4873         pango dimensions after painting the background. We used to draw
4874         gigantic flat boxes here.
4875
4876 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
4877
4878         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
4879         error introduced with earlier commit) (pointed out by
4880         Ollie Lho)
4881
4882 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
4883
4884         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
4885         which are no longer necessary.
4886
4887 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
4888
4889         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
4890
4891 2001-02-04  Tor Lillqvist  <tml@iki.fi>
4892
4893         * gdk/gdk.def
4894         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
4895         Provide dummy implementations.
4896
4897 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
4898
4899         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
4900
4901         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
4902         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
4903         deprecated this function.
4904
4905         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
4906         argument.
4907
4908 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
4909
4910         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
4911
4912 2001-02-03  Havoc Pennington  <hp@pobox.com>
4913
4914         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
4915         Mikael Hermansson with patch from Mikael (if there was a toggle
4916         start one after the first character in the range, this function
4917         was broken). Bug #50380
4918
4919 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
4920
4921         * configure.in: Remove confusing comment about X11.
4922
4923 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
4924
4925         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
4926         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
4927         
4928 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
4929
4930         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
4931         it breaks things on BSD. If you want to compile GTK+ with
4932         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
4933         when configuring, since GTK+ simply can't be "pure ANSI" 
4934         in the header files it uses. (#8170, Greg Hudson)
4935
4936 2001-02-02  Havoc Pennington  <hp@redhat.com>
4937
4938         * gtk/gtkwindow.c: docs
4939
4940         * gtk/gtkwidget.c: docs
4941         (gtk_widget_set_colormap): add a reference to the colormap
4942         (gtk_widget_get_default_colormap): add a reference to the colormap
4943
4944         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
4945
4946         * gtk/gtktextiter.c: docs
4947
4948         * gtk/gtkmain.c (gtk_propagate_event): docs
4949
4950         * gtk/gtkpaned.c (gtk_paned_get_position): docs
4951         (gtk_paned_set_position): docs
4952
4953         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
4954         sort interface, no implementation yet.
4955
4956         * demos/testpixbuf.c (new_testrgb_window): replace
4957         gtk_drawing_area_size() with gtk_widget_set_usize()
4958
4959         * demos/testpixbuf-drawable.c (main): ditto
4960         
4961         * gtk/testgtk.c: remove use of GtkStatusbarMsg
4962
4963         * gtk/gtktextbuffer.c: docs
4964
4965         * gtk/gtkstock.c: docs
4966
4967         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
4968
4969         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
4970
4971         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
4972         
4973         * gtk/gtkimage.c: add some docs in here
4974         (gtk_image_size_request): change name of
4975         gtk_widget_render_stock_icon
4976         (gtk_image_get_icon_set): don't dup returned string
4977         (gtk_image_get_icon_set): don't dup returned string
4978
4979         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
4980         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
4981         and gtkiconfactory.h functions
4982
4983         * gtk/gtkiconfactory.c: add some docs in here
4984
4985         * gtk/gtkmain.c (gtk_get_default_language): document
4986         (gtk_get_current_event): document
4987         (gtk_get_current_event_state): document
4988         (gtk_get_event_widget): document
4989
4990         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
4991
4992         * gtk/gtkcontainer.c: Add some documentation
4993         (gtk_container_add): give a more explanatory warning on adding an
4994         already-parented widget, this is kind of a FAQ and also a common
4995         typo that's easier to debug with a nice warning 
4996
4997         * gtk/gtkcellrenderertoggle.c
4998         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
4999         adding this, it's useless
5000         (gtk_cell_renderer_toggle_set_active): remove
5001         (gtk_cell_renderer_toggle_get_radio): add
5002
5003         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5004         the NULL cell renderer, that doesn't make any sense to me. 
5005
5006         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5007         demo code should never use deprecated features.
5008
5009         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5010         code should never use deprecated features.
5011
5012         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5013         gtk_widget_queue_clear_area deprecated
5014
5015         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5016         deprecated
5017
5018         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5019
5020         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5021         a GdkImage deprecated, replaced by new consistently-named
5022         functions       
5023
5024         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5025
5026         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5027
5028         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5029         deprecated
5030
5031         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5032         so it won't appear in docs and confuse people.
5033
5034         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5035
5036         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5037         macros deprecated. (can't mark the type itself deprecated, since
5038         GtkProgressBar is not deprecated and we need the type decl to use
5039         GtkProgressBar)
5040
5041         * gtk/gtkpixmap.h: Mark deprecated
5042
5043         * gtk/gtkoldeditable.h: Mark deprecated
5044
5045         * gtk/gtklist.h: Mark deprecated
5046
5047         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5048         for anything anymore.
5049
5050         * gtk/gtkctree.h: Mark deprecated
5051
5052         * gtk/gtkclist.h: Mark deprecated
5053
5054         * gtk/gtkpreview.h: Mark deprecated
5055
5056         * gtk/gtkpacker.h: Mark deprecated
5057
5058         * gtk/gtktipsquery.h: Mark deprecated
5059
5060         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5061
5062         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5063
5064         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5065
5066         * gtk/gtkruler.h: Add comment that it will move out of GTK
5067
5068         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5069
5070         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5071
5072 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5073
5074         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5075         gdk_colormap_sync private since it was never exported
5076         in a header file.
5077
5078         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5079         colormap->colors[] for StaticGray, StaticColor colormaps.
5080
5081         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5082         was being used as if it was image->bits_per_pixel.
5083
5084         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5085         for the image in the GdkImage structure since it isn't
5086         reconstructable, and we need it to handle packed types
5087
5088         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5089         the assumption that on Win32 image->bits_per_pixel == image->depth,
5090         always.
5091
5092         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5093
5094         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5095         warning message if no converter can be found. 
5096
5097 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5098
5099         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5100         chars to isupper() / tolower(). (#567)
5101
5102         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5103         to clear up 64-bit warnings. (#567)
5104
5105 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5106
5107         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5108         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5109
5110         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5111         since some people set $(libdir) separately. (#1290, David Kaelbling)
5112
5113 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5114
5115         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5116         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5117         MAXPATHLEN, but the code here depends on a fixed value.)
5118         (#4524)
5119
5120 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5121
5122         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5123         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5124
5125 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5126
5127         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5128         viewable there is no way that moving the node will cause the 
5129         focus row to become not viewable, so omit check on the visibility
5130         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5131
5132 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5133
5134         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5135         selection before inserting new text.
5136
5137 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5138
5139         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5140         Make the sensitivity of the reparented child track that of
5141         the original parent menu item. (#34218, David Hodson)
5142
5143         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5144         the case where the current item is destroyed properly.
5145
5146         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5147         some edge cases with child-less menuitems.
5148         
5149 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5150
5151         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5152         key pop down window. (#12074, Jon K Hellan)
5153
5154 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5155
5156         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5157         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5158         The solution here isn't perfect - you get an extraneous
5159         emission of "toggle", which could conceivably confuse an app,
5160         but better than the current situation. LXR search seems to
5161         indicate that no apps in GNOME CVS connect to "toggle".
5162
5163 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5164
5165         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5166         gtk_public_h_sources to directly here to avoid warning when
5167         building srcdir != builddir. (#9656)
5168
5169 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5170
5171         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5172         handlers in gtkrange.c return the proper values (TRUE == handled)
5173         (#10316).
5174
5175         This is just the tip of the iceberg, but gtkrange.c is the
5176         most common place where the propagation is problematical,
5177         and also a place where it is almost certainly safe to change
5178         this in the stable branch.
5179
5180         (You don't want right click popups on a range control or anything...)
5181
5182 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5183
5184         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5185         area on focus out, even if a background pixmap isn't set.
5186         (#13941)
5187         
5188 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5189
5190         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5191         to deal with setting the shape properly when scrolling arrows are
5192         turned on, but not visible because there is sufficient space.
5193         (#13432)
5194
5195 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5196
5197         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5198         items with submenus, destroy the item along with the submenu.
5199         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5200         properly.
5201
5202         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5203         later.
5204
5205 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5206
5207         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5208         the focus widget sometimes wasn't drawn with the default if there
5209         was no default widget.
5210
5211         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5212         unreference pixmaps. 
5213
5214         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5215         for some extra safety.
5216
5217 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5218
5219         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5220         the text of a cell to the old pointer value better, by
5221         copying the new text before freeing the old text. Some code
5222         cleanup. (#8079, Karl Nelson)
5223
5224 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5225
5226         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5227         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5228
5229 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5230
5231         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5232         item from a menu, check to see if it matches 
5233         menu->old_active_menu_item, and if so, unref and clear
5234         old_active_menu_item (Patch from Pavel Cisler)
5235
5236         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5237         menu_shell->active_menu_item, if it is the child being
5238         removed. (Patch based on that of Gene Ragan, #50337)
5239
5240 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5241
5242         * gdk/linux-fb/gdkselection-fb.c: 
5243         * gdk/linux-fb/gdkcolor-fb.c: 
5244         * gdk/linux-fb/gdkdrawable-fb2.c: 
5245         * gdk/linux-fb/gdkfont-fb.c: 
5246         * gdk/linux-fb/gdkim-fb.c: 
5247         * gdk/linux-fb/gdkinput.c: 
5248         * gdk/linux-fb/gdkkeyboard-fb.c: 
5249         * gdk/linux-fb/gdkmain-fb.c: 
5250         * gdk/linux-fb/gdkrender-fb.c: 
5251         A bunch of whitespace cleanup.
5252         
5253 2001-01-30  Havoc Pennington  <hp@pobox.com>
5254
5255         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5256         #ifdef GTK_ENABLE_BROKEN.
5257
5258         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5259         GTK_ENABLE_BROKEN just before including the broken headers.
5260         
5261         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5262         deprecated types registered.
5263
5264         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5265         we have to test the broken stuff.
5266
5267         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5268         
5269 2001-01-30  Havoc Pennington  <hp@redhat.com>
5270
5271         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5272         here where prev pointer was set to the wrong thing
5273
5274         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5275         (gtk_tree_path_is_descendant): new function
5276
5277         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5278         cached length
5279         (gtk_list_store_get_iter): don't modify iter if we can't get the
5280         path.
5281
5282         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5283         
5284         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5285         GtkTreeDragDest
5286
5287         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5288         was causing segfault
5289
5290         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5291         pointer to NULL
5292
5293         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5294
5295         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5296         on returning FALSE
5297         (gtk_list_store_iter_children): ditto
5298         (gtk_list_store_iter_nth_child): ditto
5299         (gtk_list_store_iter_nth_child): ditto
5300         (gtk_list_store_iter_parent): ditto
5301
5302         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5303         on iter->user_data != NULL instead of silently accepting it.
5304         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5305         we are returning TRUE.
5306         (gtk_tree_store_iter_children): ditto
5307         (gtk_tree_store_iter_nth_child): ditto
5308         (gtk_tree_store_iter_parent): ditto
5309         (gtk_tree_store_insert): remove handling of parent->user_data ==
5310         NULL, replace with parent == NULL       
5311
5312         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5313         and a comment explaining things
5314
5315         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5316         interface support to GtkTreeStore.
5317
5318         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5319         FALSE if no prev, fix
5320
5321         * gtk/gtktreeview.c (set_source_row): use a row reference
5322         (set_dest_row): use a row reference
5323
5324 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5325
5326         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5327         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5328         (gtk_tree_selection_select_iter): The same as above.
5329
5330 2001-01-26  Havoc Pennington  <hp@redhat.com>
5331
5332         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5333         which holds a handle to a specific row (particular set of values
5334         in the model, i.e. pointer-identity row).
5335
5336         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5337         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5338         Still need to use it for the src/dest row saved on the drag context.
5339
5340 2001-01-26  Havoc Pennington  <hp@redhat.com>
5341
5342         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5343
5344         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5345         not offset by TREE_VIEW_HEADER_HEIGHT
5346         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5347         TREE_VIEW_HEADER_HEIGHT
5348
5349         * configure.in (included_loaders): for me, --with-included-loaders
5350         generates the error "the specified loader yes does not exist",
5351         i.e. the arg defaults to "yes", so change test for value ""
5352         to test for value "yes", and include all loaders in that case.
5353
5354         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5355
5356         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5357         handle TREE_VIEW_VERTICAL_SEPARATOR
5358         (gtk_tree_view_bin_expose): fix to consider the row offset as
5359         pointing halfway into vertical separator.       
5360         (gtk_tree_view_draw_node_focus_rect): ditto
5361
5362         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5363         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5364         (TRUE) to be called.
5365
5366         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5367         debug mode where the invalid region is colored in on invalidate,
5368         so you can see the flicker and know whether your redraw code is 
5369         doing a good job.
5370
5371         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5372         tree window coordinates (clip rect is in tree window coords)
5373
5374         * gtk/Makefile.am: add gtktreednd.[hc]
5375
5376         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5377
5378         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5379         drag-and-drop data operations on a model (so we can set up tree
5380         drag-and-drop automatically)
5381
5382         * gtk/testgtk.c: Add a window to change sensitivity in the
5383         GtkLabel test; add a way to change the entry frame in GtkEntry
5384         test
5385
5386         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5387         (gtk_entry_get_has_frame): new functions to remove the frame
5388         around an entry
5389         (gtk_entry_size_request): shrink requisition if no frame
5390         (gtk_entry_draw_focus): don't draw frame if no frame
5391
5392         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5393         checks inside a cell renderer
5394         (gtk_default_draw_option): ditto for options
5395
5396         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5397         children from the alignment, not the button
5398         (gtk_tree_view_column_init): ref/sink the column, to emulate
5399         GObject refcounting.
5400
5401         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5402         
5403         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5404         Use theme functions to draw the toggles 
5405
5406         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5407
5408         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5409         GdkPangoAttrEmbossed to use in rendering insensitive text
5410
5411         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5412
5413         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5414         using new GDK features
5415         
5416 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5417
5418         * gtk/gtkimage.c:
5419         Splitted gtk_image_clear into gtk_image_clear() and
5420         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5421         to avoid leaks.
5422
5423         * gtk/gtklabel.c (set_markup):
5424         Don't leak text.
5425
5426         * gtk/gtktextlayout.c:
5427         Always free display->shaped_objects.
5428
5429         * gtk/testgtk.c (create_clist):
5430         Don't leak custom style.
5431
5432 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5433
5434         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5435         Don't leak image. Simplify using gdk_colormap_query_color().
5436         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5437
5438         * linux-fb/gdkcolor-fb.c:
5439         Implemented gdk_colormap_query_color.
5440
5441 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5442
5443         * linux-fb/gdkcursor-fb.c:
5444         Don't leak built-in cursors.
5445
5446         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5447         Don't leak tmp_points.
5448
5449         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5450         Don't modify desc. Don't leak font if the PangoFont
5451         isn't found.
5452         
5453         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5454         Free dash_list.
5455
5456         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5457         Don't leak string.
5458         
5459 2001-01-20  Havoc Pennington  <hp@pobox.com>
5460
5461         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5462         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5463         me, matches Pango
5464
5465 2001-01-22  Havoc Pennington  <hp@redhat.com>
5466
5467         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5468
5469         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5470
5471         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5472         Remove, move back to gdk-pixbuf
5473
5474         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5475         to all the word functions
5476
5477         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5478         before doing anything on NULL layout or if we don't have the focus
5479
5480         * gtk/testtext.c (fill_example_buffer): "justification"
5481
5482         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5483         to be called "justification" not "justify"
5484
5485         * demos/gtk-demo/textview.c (create_tags): "justification"
5486         
5487         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5488
5489 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5490
5491         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5492         Don't leak visible_region. Use visible_region instead of region.
5493         
5494         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5495         Don't do extra gdk_drawable_ref(). This is not X.
5496         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5497         gdk_fb_focused_window is ref:ed.
5498         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5499         windows.
5500
5501 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5502
5503         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5504         Don't leak the PangoFontDescriptor.
5505
5506 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5507
5508         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5509         when not realized.
5510         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5511         (gtk_tree_view_realize): add scroll_to support
5512         (gtk_tree_view_finalize): add a finalize method.  Populate.
5513         (gtk_tree_view_insert_column): ref and sink the column.
5514         (gtk_tree_view_append_column): ref and sink the column.
5515         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5516         individual nodes.  Should make the code much more efficient, if
5517         actually used.
5518
5519 2001-01-19  Havoc Pennington  <hp@redhat.com>
5520
5521         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5522         byte_offset variable was being used to mean both "offset into
5523         layout" and "offset into buffer line" which was no longer true
5524         with addition of preedit string; fix
5525
5526 2001-01-19  Havoc Pennington  <hp@redhat.com>
5527
5528         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5529
5530         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5531         function
5532
5533         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5534         implement
5535
5536         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5537         scroll_to_cell, matches TextView scroll functions better
5538         (gtk_tree_view_tree_to_widget_coords): new function
5539         (gtk_tree_view_widget_to_tree_coords): new function
5540         (gtk_tree_view_get_visible_rect): new function
5541         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5542         (gtk_tree_view_draw_node_focus_rect): new function moved from
5543         draw_focus, also, use width of bin_window as width of the focus
5544         rect
5545         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5546         already-expanded rows
5547         (gtk_tree_view_get_cell_rect): new function
5548         (gtk_tree_view_get_path_at_pos): return the click position
5549         relative to the passed-in cell
5550         (gtk_tree_view_set_expander_column): new function
5551
5552         * configure.in: remove gtk-config-2.0 chmod
5553
5554         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5555         and properly handle drags with targets we don't understand
5556         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5557         scrolling anyway
5558         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5559         mark invisible
5560
5561         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5562         function
5563         (gtk_drag_dest_get_target_list): new function
5564         (gtk_drag_dest_set_target_list): new function
5565         
5566         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5567
5568         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5569         related to drag-and-drop
5570
5571 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5572
5573         * gdk/linux-fb/gdkprivate-fb.h:
5574         Define EMULATE_GDKFONT.
5575         Add extra pango_font stuff to GfkFontPrivate.
5576         
5577         * gdk/linux-fb/gdkdrawable-fb2.c:
5578         * gdk/linux-fb/gdkfont-fb.c:
5579         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5580         emulation using PangoFont.
5581
5582 2001-01-17  Havoc Pennington  <hp@pobox.com>
5583
5584         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5585         all the non-deprecated set_foo functions. Added missing object
5586         properties, and added g_object_notify() to setters. 
5587         Wrote docs.
5588         
5589 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5590
5591         * gtk/gtkmain.c
5592         * gtk/gtkrc.c: (Win32) Use the new
5593         g_win32_get_package_installation_(sub)directory() functions.
5594
5595         * config.h.win32.in: New file.
5596         
5597         * config.h.win32: Removed.
5598
5599         * configure.in: Output config.h.win32.
5600
5601         * Makefile.am: Add it to EXTRA_DIST.
5602
5603         * gtk/gtk.def: Update.
5604
5605 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5606
5607         * gtk/gtklabel.c (gtk_label_size_request): Set the
5608         attributes onto the PangoLayout even if they are newly
5609         created from label->pattern.
5610
5611 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5612
5613         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5614
5615         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5616         structures in functions. Fixes bug where gtk_dataset_*
5617         was accidentally still being used in one place, causing
5618         every dest side event to be treated independently.
5619
5620         * gtk/gtkdnd.c: Remove last vestages of handling
5621         ::draw (fixes warning)
5622         
5623         * gtk/gtkentry.[ch]: Add drag and drop support.
5624
5625         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5626         new function gtk_check_drag_threshhold() for checking
5627         to check if (dx,dy) has exceeded the threshhold for starting
5628         a drag and use it everywhere.
5629
5630 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5631
5632         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5633         add -I{includedir}/gtk-2.0.
5634
5635         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5636         gdk/gdk-pixbuf.h: Doc fixups.
5637         
5638         * gtk/gtkobject.h: Remove trailing , from enum
5639
5640 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5641
5642         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5643         Doh! Mixed up x and y.
5644
5645         * gdk/linux-fb/gdkglobals-fb.c:
5646         Removed gdk_fb_pointer_grab_window_events,
5647         added _gdk_fb_pointer_grab_owner_events and
5648         _gdk_fb_keyboard_grab_owner_events.
5649
5650         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5651         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5652         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5653         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5654         Send crossing events after ungrab finished.
5655         (gdk_keyboard_grab): Set ..._owner_events
5656         (type_masks): Move out of function.
5657         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5658         gdk_fb_keyboard_event_window): New functions, return the
5659         window an event should be targeted at. Handles grabs and
5660         event propagation. Can return NULL.
5661         (gdk_event_make): Remove event_mask checking. Now always
5662         returns an event.
5663                 
5664         * gdk/linux-fb/gdkkeyboard-fb.c:
5665         * gdk/linux-fb/gdkproperty-fb.c:
5666         * gdk/linux-fb/gdkselection-fb.c:
5667         Use new event_window/gdk_event_make() behaviour.
5668         
5669         * gdk/linux-fb/gdkmouse-fb.c:
5670         Use new event_window/gdk_event_make() behaviour.
5671         Only send motion events if in the same window.
5672         If grabbed, use cursor from window if sibling of grabbed
5673         window, and cursor from grabbed window otherwise.
5674
5675         * gdk/linux-fb/gdkprivate-fb.h:
5676         Update gdk_fb_window_send_crossing_events, gdk_event_make
5677         and grab varaible declarations. Add gdk_fb_*_event_window().
5678
5679         * gdk/linux-fb/gdkwindow-fb.c:
5680         Use new event_window/gdk_event_make() behaviour.
5681         Keep correct track of focus window.
5682         (gdk_window_set_events): Set all specific button motion masks
5683         if GDK_BUTTON_MOTION_MASK set.
5684
5685         * gtk/gtkdnd.c (gtk_drag_update):
5686         Free info->last_event if gdk_drag_motion returned FALSE.
5687
5688 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5689
5690         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5691         Eliminate redraws when input-only windows are shown or
5692         hidden. Thanks to jpe@archaeopteryx.com.
5693
5694 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5695
5696         * docs/faq/gtk-faq.sgml: FAQ update:
5697           - Update to bugzilla
5698           - Add GTK+ and security/SUID/SGID
5699           - Add DnD question
5700
5701 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5702
5703         * gdk/linux-fb/gdkdnd-fb.c:
5704         Some cleanups.
5705         
5706 2001-01-15  Havoc Pennington  <hp@pobox.com>
5707
5708         * tests/testtreeview.c: add test stuff for CellRendererToggle
5709
5710         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5711         accessor
5712
5713         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5714         only toggle on button press (would do release like GtkButton, but
5715         we'd need implicit grab code for treeview cells)
5716
5717 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5718
5719         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5720
5721         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5722         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5723
5724         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5725         to g_{locale,filename}_{to,from}_utf8 to match current API.
5726
5727         * gtk/makefile.msc.in (gtk_OBJECTS)
5728         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5729
5730         * gtk/gtk.def: Update.
5731
5732 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5733
5734         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5735         implementaion that more closely mimics the events that an X server
5736         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5737         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5738         with nested preview widgets, for instance, more responsive when
5739         you move the mouse quickly into them.
5740         (find_window_for_pointer_event): Make it actually compile.
5741         (gdk_event_translate): Set send_event to the value of
5742         InSendMessage (). This doesn't really mean the same as X11's
5743         send_event flag, but is close enough, says jpe@archaeopteryx.com
5744
5745 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5746
5747         * gdk/linux-fb/gdkdnd-fb.c:
5748         Implemented drag and drop.
5749         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5750         when it tries to free and then copy the same event (info->last_event).
5751         I am not sure about why this happens, but will continue looking.
5752
5753 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5754
5755         * gdk/linux-fb/gdkwindow-fb.c:
5756         Use gdk_window_invalidate_rect instead of
5757         gdk_window_invalidate_rect_clear to minimise flashing.
5758         When hiding windows you need to clear the root window though.
5759
5760 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5761
5762         * gdk/linux-fb/gdkdrawable-fb2.c:
5763         For optization, add an full_shapes argument to gdk_fb_clip_region.
5764         If this is false, only the cliprects of the shapes are used.
5765
5766         * gdk/linux-fb/gdkprivate-fb.h:
5767         Export gdk_fb_window_peek_shape.
5768         Add full_shapes to gdk_fb_clip_region.
5769
5770         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5771         When moving a window, don't clear everything under the it, just the
5772         root window. Makes stuff faster and flash less.
5773         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5774         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5775         offset of the shape.
5776         
5777
5778 2001-01-12  Havoc Pennington  <hp@redhat.com>
5779
5780         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5781         current invalid region, fixes redraw bug while scrolling the 
5782         text widget
5783
5784         * gtk/gtktextview.c, gtk/gtktextview.h:
5785         Rearrange the scrolling/validation/etc. code in a major way, 
5786         so it seems to make sense to me. Probably isn't genuinely that
5787         much better, but...
5788
5789         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5790         notifies
5791
5792         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5793
5794 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5795
5796         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5797         Hide mouse pointer while rotation. Show it afterwards.
5798
5799 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5800
5801         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5802         windows in consideration when generating clip region.
5803
5804         * gdk/linux-fb/gdkfb.h:
5805         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5806
5807         * gdk/linux-fb/gdkprivate-fb.h:
5808         Add shape to GdkWindowFBDatat.
5809         exported gdk_fb_window_get_abs_shape().
5810         removed gdk_fb_draw_lines declaration.
5811
5812         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5813         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5814         send focus changes when there is a grabbed window.
5815         (gdk_window_get_pointer): Handle shaped windows.
5816         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5817         (gdk_fb_window_peek_shape): Returns the shape for a window,
5818         handles GDK_FB_USE_CHILD_SHAPE.
5819         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5820         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5821         (gdk_window_shape_combine_mask): Implement.
5822
5823         * gtk/gtkwindow-decorate.c:
5824         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5825         setting the shape of a window makes the window transparent.
5826
5827 2001-01-11  Havoc Pennington  <hp@redhat.com>
5828
5829         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5830
5831 2001-01-10  Havoc Pennington  <hp@redhat.com>
5832
5833         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5834         add this function, bug 40251
5835
5836         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5837         of type macro   
5838
5839 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5840
5841         * acconfig.h:
5842         Added ENABLE_SHADOW_FB
5843
5844         * configure.in:
5845         Added --disable-shadowfb
5846
5847         * gdk/linux-fb/gdkcursor-fb.c:
5848         Update shadowfb when updating cursor
5849
5850         * gdk/linux-fb/gdkdrawable-fb2.c:
5851         Added wrappers for shadowfb that calls  the normal drawable
5852         methods, but calls gdk_shadow_fb_update(bounding box) when
5853         GdkWindows are drawed to.
5854         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5855         which also returns the bounding box.
5856
5857         * gdk/linux-fb/gdkfb.h:
5858         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5859
5860         * gdk/linux-fb/gdkgeometry-fb.c:
5861         Update shadowfb when scrolling window.
5862
5863         * gdk/linux-fb/gdkglobals-fb.c:
5864         Add _gdk_fb_screen_angle.
5865         
5866         * gdk/linux-fb/gdkkeyboard-fb.c:
5867         Test code for screen rotation. Shift-F2 in the xlate driver
5868         rotates the screen.
5869
5870         * gdk/linux-fb/gdkmain-fb.c:
5871         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
5872
5873         * gdk/linux-fb/gdkmouse-fb.c:
5874         Use fb_width/height instead of modeinfo.xres/yres.
5875
5876         * gdk/linux-fb/gdkprivate-fb.h:
5877         Added fb_men, fb_width, fb_height & fb_stride. When using
5878         shadow fb these can differ from the framebuffer stuff.
5879         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
5880         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
5881         _gdk_fb_screen_angle. Removed CM, RP.
5882
5883         * gdk/linux-fb/gdkrender-fb.c:
5884         Added code for shadowfb handling and screen rotation using
5885         shadowfb.
5886
5887         * gdk/linux-fb/gdkwindow-fb.c:
5888         Use fb_mem, fb_stride, fb_width, fb_height.
5889         Added recompute_rowstride to reset the rowstride of all windows.
5890         Added gdk_fb_recompute_all() which recomputes rootwindow size,
5891         window abs positions and window rowstrides. Usefull when the
5892         rotation has changed.
5893
5894 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
5895
5896         * docs/faq/gtk-faq.sgml: update to make web site updating easier
5897
5898 2001-01-10  Havoc Pennington  <hp@redhat.com>
5899
5900         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
5901         where sibling == iter
5902         (gtk_tree_store_insert_after): handle sibling == iter
5903         (gtk_tree_store_prepend): remove stamp checks
5904         (gtk_tree_store_insert_before): ditto
5905         (gtk_tree_store_append): ditto
5906         (gtk_tree_store_get_path): ditto
5907         (gtk_tree_store_get_value): ditto
5908         (gtk_tree_store_iter_has_child): ditto
5909         (gtk_tree_store_iter_n_children): ditto
5910         (gtk_tree_store_iter_nth_child): ditto
5911         (gtk_tree_store_insert_after): ditto
5912         (gtk_tree_store_is_ancestor): ditto
5913         (gtk_tree_store_iter_depth): ditto
5914         (gtk_tree_store_insert_before): assert that sibling's parent is
5915         the same as the passed-in parent
5916         (gtk_tree_store_insert_after): assert that sibling's parent is
5917         the same as the passed-in parent
5918
5919         
5920         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
5921         function to get the first iterator in a model
5922         
5923         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
5924         conventionally the "root" in this sense is just NULL afaict.
5925
5926         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
5927         where sibling == iter
5928         (gtk_list_store_insert_after): handle case where sibling == iter
5929
5930         * tests/testtreeview.c (run_automated_tests): fairly lame basic
5931         automated tests for ListStore, TreeStore
5932
5933         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
5934         (gtk_list_store_insert): update tail pointer, and fix it to work
5935         (gtk_list_store_insert_before): update tail pointer, and fix it to work
5936         (gtk_list_store_append): use tail to be faster
5937         (gtk_list_store_prepend): fix it, update tail pointer
5938         (gtk_list_store_insert_after): fix it, update tail pointer
5939
5940         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
5941         the list
5942
5943 2001-01-09  Havoc Pennington  <hp@redhat.com>
5944
5945         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
5946         is NULL due to a pending resize
5947
5948         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
5949         column width to values less than 1
5950
5951         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
5952         width to be between min/max width, and still set the width 
5953         even if autosize is turned on, so the tree view can use this 
5954         function in order to autosize.
5955         (gtk_tree_view_column_init): set initial width to 1 not 0
5956
5957         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
5958         setter function to modify column width, so we get notification
5959         (gtk_tree_view_insert_iter_height): ditto
5960         (gtk_tree_view_calc_size): ditto
5961         (gtk_tree_view_check_dirty): ditto
5962
5963         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
5964         properties to change all the interesting attributes of the tree
5965         view column.
5966         (gtk_tree_view_column_set_header_clickable): rename set_clickable
5967         (gtk_tree_view_column_get_clickable): add
5968         (gtk_tree_view_column_set_cell_renderer): don't unset the current
5969         attributes; assume a cell renderer with equivalent object
5970         properties has been swapped in. Do g_object_notify().
5971         (gtk_tree_view_column_set_visible): g_object_notify
5972         (gtk_tree_view_column_get_sizing): rename from get_col_type
5973         (gtk_tree_view_column_set_sizing): g_object_notify
5974         (gtk_tree_view_column_set_width): add g_object_notify
5975         (gtk_tree_view_column_set_min_width): ditto
5976         (gtk_tree_view_column_set_max_width): ditto
5977         (gtk_tree_view_column_set_title): ditto
5978         (gtk_tree_view_column_set_clickable): ditto
5979         (gtk_tree_view_column_set_widget): ditto
5980         (gtk_tree_view_column_set_justification): ditto
5981
5982 2001-01-09  Havoc Pennington  <hp@redhat.com>
5983
5984         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
5985         there are no rows in the model
5986
5987         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
5988         NULL, then return the start of the list
5989
5990         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
5991         if we can't get any rows from an empty model 
5992
5993         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
5994         extraneous * after function pointer typedef usage
5995
5996         * Makefile.am: don't specify full path to cp and rm
5997
5998         * gtk/gtkcellrenderertextpixbuf.c
5999         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6000         NULL before dereferencing, fixes a segfault that happened from
6001         time to time
6002
6003         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6004         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6005         and reindent the function
6006         (gtk_cell_renderer_pixbuf_get_size): indentation
6007
6008         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6009         we quit it
6010         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6011         (gtk_dialog_set_default_response): New function, to set default
6012         button
6013         (gtk_dialog_set_response_sensitive): New function, to set 
6014         sensitivity of buttons
6015
6016         * gtk/gtkcellrendererpixbuf.c
6017         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6018         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6019
6020         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6021         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6022         also boxed types.
6023         (_gtk_tree_data_list_value_to_node): ditto
6024
6025         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6026         --gtk-debug=tree
6027
6028         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6029
6030         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6031
6032 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6033
6034         * gdk/win32/gdkevents-win32.c: Implement better mouse
6035         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6036         (find_window_for_pointer_event): New function.
6037         (gdk_event_translate): Use it when handling mouse events.
6038
6039 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6040
6041         * configure.in:
6042         Added --with-included-loaders option
6043
6044         * gdk-pixbuf/Makefile.am:
6045         * gdk-pixbuf/gdk-pixbuf-io.c:
6046         Add support for including selected gdk-pixbuf loaders only.
6047
6048         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6049         gtk_window_set_has_frame):
6050         Added inline documentation.
6051
6052         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6053         * docs/reference/gdk/tmpl/windows.sgml:
6054         Added inline documentation.
6055
6056 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6057
6058         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6059         realizing buttons that have already been realized.
6060
6061 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6062
6063         * tests/testtreeview.c (main): Show menu items before adding to
6064         option menu.
6065
6066         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6067         around if we kill them.
6068
6069         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6070         Return if we pass in a NULL model.
6071
6072 2001-01-08  Havoc Pennington  <hp@redhat.com>
6073
6074         * tests/testtreeview.c: hack on this some
6075
6076         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6077         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6078         list
6079         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6080
6081         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6082         functions
6083
6084 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6085
6086         * gtk/gtkwindow-decorate.[hc]:
6087         * gtk/Makefile.am:
6088         New files. Contains an implementation of a minimal WM for
6089         linux-fb.
6090
6091         * gtk/gtkwindow.h:
6092         Add the possibility for GtkWindows to specify a frame. This
6093         is used for the window decoration code, but could concievably
6094         be used for X programs too (xmms style windows).
6095         GtkWindow->frame is the toplevel window if the window is framed.
6096         The signal frame_event gets all events that are targeted to
6097         GtkWindow->frame.
6098         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6099         
6100         * gtk/gtkwindow.c:
6101         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6102         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6103
6104 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6105
6106         * docs/README.linux-fb:
6107         Correct filename ~/.pangoft2_aliases
6108
6109         * gdk/gdkwindow.h:
6110         Added new function gdk_window_get_decorations.
6111
6112         * gdk/linux-fb/gdkfb.h:
6113         Removed _gdk_window_get_decorations declaration.
6114         Renamed _gdk_window_set_child_handler to
6115         gdk_fb_window_set_child_handler.
6116
6117         * gdk/linux-fb/gdkwindow-fb.c:
6118         Renamed _gdk_window_set_child_handler to
6119         gdk_fb_window_set_child_handler.
6120
6121         * gdk/x11/gdkwindow-x11.c:
6122         New function gdk_window_get_mwm_hints().
6123         Implemented gdk_window_get_decorations.
6124
6125         * docs/reference/gdk/tmpl/windows.sgml:
6126         * docs/reference/gdk/gdk-sections.txt:
6127         Added gdk_window_get_decorations docs.
6128         
6129 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6130
6131         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6132         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6133         gdk_fb_window_send_crossing_events):
6134         Possibly send focus events when the mouse moves from one
6135         window to another.
6136
6137 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6138
6139         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6140         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6141         to match current API.
6142
6143         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6144         environment variable is set, don't call g_error when on a
6145         palettized (PseudoColor) display. Some people want to use GTK+ 
6146         in 256-colour mode even though works only partially.
6147
6148         * gdk/gdk.def
6149         * gtk/gtk.def
6150         * gtk/makefile.mingw.in: Update.
6151
6152 2001-01-05  Havoc Pennington  <hp@redhat.com>
6153
6154         * tests/testtreeview.c: hack on this a bit
6155
6156         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6157         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6158
6159         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6160         was spelled incorrectly
6161         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6162
6163         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6164         from gtk_tree_view_set_headers_active   
6165
6166         * gtk/gtktexttag.c:
6167         (gtk_text_tag_get_property): handle PROP_DIRECTION
6168         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6169         properties, bug 40235
6170
6171         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6172         forward_to_line_end
6173
6174 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6175
6176         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6177         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6178         for unicode,locale,filename conversion functions.
6179
6180 2001-01-05  Havoc Pennington  <hp@redhat.com>
6181
6182         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6183         broken if called on the first position in the buffer.
6184
6185         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6186         forward_to_delimiters to be called only if we aren't already at
6187         the delimiters.
6188
6189 2001-01-05  Havoc Pennington  <hp@redhat.com>
6190
6191         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6192
6193 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6194
6195         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6196         colormap in here. Sync from X port.
6197         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6198         Sync from X port.
6199         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6200         This happens now and then, and i don't think it is a bug.
6201         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6202         != endpoint.
6203         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6204         GDK_LINE_SOLID.
6205
6206         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6207         some of the fields filled in at least.
6208
6209         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6210         miLineArcD is no more, remove it from the function definition.
6211
6212 2001-01-04  Havoc Pennington  <hp@redhat.com>
6213
6214         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6215         this
6216
6217         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6218         user_data instead of tree_node
6219
6220         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6221         TREE_VIEW_COLUMN_SIZE
6222
6223         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6224         "size" field to "width" finishes bug 40061
6225
6226         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6227         for bitfields, bug 40268
6228
6229 2001-01-04  Havoc Pennington  <hp@redhat.com>
6230
6231         Rename some stuff:
6232         
6233         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6234
6235         s/GtkModelSimple/GtkTreeModelSimple/g;
6236         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6237         s/gtk_model_simple/gtk_tree_model_simple/g;
6238         s/gtkmodelsimple/gtktreemodelsimple/g;
6239
6240         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6241
6242         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6243         s/column_set_col_type/column_set_sizing/g;
6244
6245         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6246         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6247
6248         s/GtkCellRendererType/GtkCellRendererState/g;
6249         
6250         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6251         (gtk_cell_renderer_toggle_class_init): change "state" property to
6252         "active", to match GtkToggleButton
6253         (gtk_cell_renderer_toggle_get_active): new function, bug
6254         40269
6255         (gtk_cell_renderer_toggle_set_active): new function
6256         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6257         state through gtk_cell_renderer_set_active
6258
6259 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6260
6261         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6262         temporarily until they work again.  Brought up to date with
6263         changes in the model.
6264         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6265         model.
6266
6267 2001-01-04  Havoc Pennington  <hp@redhat.com>
6268
6269         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6270         equal to the line length, then position iterator before paragraph 
6271         separators. Fixes crash reported by Mikael Hermansson when
6272         pressing left arrow from the start of a line.   
6273
6274         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6275         about byte indexes off the end
6276         (iter_set_from_char_offset): add g_error about char offsets
6277         off the end
6278
6279 2001-01-03  Havoc Pennington  <hp@redhat.com>
6280
6281         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6282
6283         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6284         of private functions; remove inclusion of private headers.
6285
6286         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6287         function, so we don't need private functions in gtktextdisplay.c
6288
6289         * gtk/gtktextiterprivate.h: underscore-ification
6290
6291         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6292         to instead say "only useful to implement widgets"
6293
6294         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6295         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6296         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6297
6298         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6299         This function was completely broken
6300
6301         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6302
6303         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6304
6305         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6306
6307         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6308
6309         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6310
6311         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6312
6313         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6314         gtk_paint_layout
6315
6316         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6317         gtk_paint_layout
6318
6319         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6320         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6321         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6322         which were not implemented.     
6323
6324         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6325         insert_pixbuf signal. Rename delete_text to delete_range since it
6326         also deletes pixbufs and child anchors. This almost closes bug
6327         40245 (still need to deal with child anchors)
6328
6329         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6330         insert_pixbuf, change signal names as appropriate, change types of
6331         signals taking marks/tags to have the specific type, not just
6332         G_TYPE_OBJECT
6333         
6334         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6335         closes bug 40051
6336
6337         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6338         unnecessary remove_contents() call
6339         (gtk_option_menu_class_init): add a "changed" signal, closes
6340         bug 40039
6341         (gtk_option_menu_update_contents): emit "changed" if the 
6342         active menu item changes
6343
6344         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6345         cast to GtkObject, reported by Jonas Borgstrom
6346         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6347         we can't do stuff with side effects in finalize. Instead, spew a
6348         warning if the loader isn't closed.
6349
6350         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6351         colormap in here, non-X ports probably need to sync to this change
6352
6353         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6354         assertion that colormap != NULL, you can set the colormap to NULL
6355         if you like.
6356         
6357         * Makefile.am: remove gtk-config-2.0
6358
6359         * configure.in: Use pkg-config to locate GLib. Remove
6360         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6361         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6362         Use pkg-config to locate Pango. Output correct Pango libs to
6363         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6364
6365         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6366         files
6367         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6368         X11 pc files
6369
6370         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6371         unref from here
6372
6373 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6374
6375         * configure.in:
6376         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6377
6378 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6379
6380         * gtk/gtktextlayout.c
6381         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6382         variable when moving back onto a single line.
6383
6384 2001-01-01  Havoc Pennington  <hp@redhat.com>
6385
6386         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6387
6388         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6389
6390         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6391         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6392
6393 2001-01-01  Havoc Pennington  <hp@redhat.com>
6394
6395         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6396
6397         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6398         GtkTextAttributes
6399
6400         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6401         #40246
6402         (gtk_text_attributes_copy_values): rename from 
6403         gtk_text_attributes_copy
6404         (gtk_text_attributes_copy): a more standard GTK copy function, 
6405         which returns a new object
6406
6407 2001-01-01  Havoc Pennington  <hp@redhat.com>
6408
6409         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6410         
6411         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6412         don't fill in tree_view->priv->selection, kind of an unexpected
6413         side effect
6414
6415         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6416         gtkintl.h
6417         
6418         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6419         gtkintl.h
6420         (gtk_cell_renderer_get_property): remove calls to g_value_init
6421
6422         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6423         gtkintl.h
6424
6425         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6426         and include gtkintl.h
6427         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6428         property names
6429
6430         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6431         GtkTreeSelection
6432         (_gtk_tree_selection_new_from_with_view): rename, return
6433         GtkTreeSelection
6434         (_gtk_tree_selection_set_tree_view): rename with uscore
6435         (gtk_tree_selection_get_selected): fill in the "model" out param
6436         first, so it gets filled in even if we return at the top of the 
6437         function
6438         (gtk_tree_selection_real_select_all): add a comment and an else{}
6439         to clarify this a bit
6440         (gtk_tree_selection_real_unselect_all): add the same else{}
6441
6442         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6443         set_tree_view to have underscore prefixes, move them to the
6444         private header, fix return type of new_with_tree_view
6445         (struct _GtkTreeSelection): mark struct
6446         fields private  
6447
6448         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6449         GtkTreeModelFlags, not a guint
6450         (gtk_tree_path_prev): return gboolean not gint
6451         (gtk_tree_path_up): return gboolean not gint
6452
6453         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6454         return GtkTreeModelFlags, not a guint
6455
6456         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6457         that child model is non-null before unrefing it
6458         (g_value_int_compare_func): make this a qsort compare func, not 
6459         a boolean predicate
6460
6461         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6462         (add -umn to the end), and mark it unimplemented
6463         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6464         I don't see what it's for - doesn't the model always sort itself?
6465         (gtk_tree_model_sort_set_compare): this had the wrong signature
6466
6467         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6468         Fix the docs to say that it destructively replaces existing
6469         attributes (previously said that it added attributes).
6470         (gtk_tree_view_column_set_visible): canonicalize bool before
6471         equality testing. Also, check for realization before
6472         hiding/showing the tree_column->window; if this window could exist
6473         before realization, then it's busted and needs fixing, we can't 
6474         create GDK resources pre-realization. Also, remove
6475         superfluous queue_resize(), since set_size() does that for us.
6476         (gtk_tree_view_column_set_col_type): check realization before 
6477         using tree_column->window
6478
6479         * gtk/gtktreedatalist.c: fix filename in copyright notice
6480
6481 2000-12-31  Havoc Pennington  <hp@pobox.com>
6482
6483         * gtk/gtktextview.c: Rearrange all the
6484         scroll-while-dragging-or-selecting code to be different, not
6485         necessarily better. ;-)
6486         (gtk_text_view_scroll_to_mark): Change this
6487         function to take within_margin as a fraction instead of a pixel
6488         value, and to take alignment arguments (indicating where to align 
6489         the mark inside the visible area)
6490         
6491         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6492         to GtkObject
6493
6494         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6495         behavior so that offsets past the end of the line are not 
6496         allowed, and an offset equal to the line length moves the iterator
6497         to the next line
6498         (gtk_text_iter_set_line_index): make parallel change
6499         (gtk_text_iter_get_bytes_in_line): add this function
6500         
6501         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6502         of byte indexes off the end of the line; byte index at the end of
6503         the line now returns FALSE and doesn't fill in the requested
6504         values, byte index past the end of the line is an error.  Also,
6505         don't allow -1 offset anymore, since its meaning is unclear.
6506
6507         This change exposes some bug in visual cursor motion, where we
6508         end up with a huge invalid byte index; needs fixing. Symptom of 
6509         bug is a crash when you hit up arrow.
6510         
6511         (_gtk_text_line_char_locate): match the change to byte_locate
6512
6513         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6514         from start of line properly. fixes bug reported by Mikael
6515         Hermansson where backspace would delete all text before the
6516         cursor.
6517
6518 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6519
6520         * gdk/win32/gdkwindow-win32.c
6521         (gdk_window_impl_win32_get_visible_region): New function, as in
6522         the X11 backend.
6523         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6524         instead of duplicating the same code here.
6525
6526         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6527         GDK_COLORMAP macro.
6528
6529         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6530         destroy function.
6531         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6532         access that.
6533
6534         * gtk/gtk.def: Update.
6535
6536         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6537
6538 2000-12-30  Havoc Pennington  <hp@pobox.com>
6539
6540         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6541         colormap on input only windows, to avoid special cases all over
6542         the code for these windows.
6543
6544 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6545
6546         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6547         we are on a palettized display ("PseudoColor" in X11), as the code
6548         for that doesn't work anyway, and never has.
6549
6550 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6551
6552         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6553         Don't use isprint() for chars > 255.
6554
6555 2000-12-21  Havoc Pennington  <hp@redhat.com>
6556
6557         * tests/testtreeview.c: more work
6558
6559 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6560
6561         * docs/README.linux-fb:
6562         Update the docs to the new pangoft2 way.
6563
6564 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6565
6566         * configure.in:
6567         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6568         pango version.
6569         Remove modules/linux-fb/Makefile.
6570
6571         * gdk/linux-fb/gdkdrawable-fb2.c:
6572         Render glyphs using freetype.
6573
6574         * gdk/linux-fb/gdkfb.h:
6575         Add new fb-specific functions needed for managing windows.
6576
6577         * gdk/linux-fb/gdkmain-fb.c:
6578         Remove gdk_font_init/fini() calls.
6579
6580         * gdk/linux-fb/gdkpango-fb.c:
6581         Remove old implementation. Use pangoft2 instead.
6582
6583         * gdk/linux-fb/gdkprivate-fb.h:
6584         Remove PangoFBFont and related stuff.
6585
6586         * gdk/linux-fb/gdkwindow-fb.c:
6587         Implement drawable->get_visible_region.
6588         Implement support for _gdk_window_set_child_handler () and
6589         _gdk_window_get_decorations().
6590
6591         * modules/Makefile.am:
6592         Remove linux-fb subdir.
6593
6594         * modules/linux-fb/*:
6595         Removed all.
6596         
6597 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6598
6599         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6600         calls, as they are no longer needed.
6601
6602         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6603         
6604         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6605         figure out how to emit a signal on an interface.
6606
6607 2000-12-20  Havoc Pennington  <hp@redhat.com>
6608
6609         * tests: new directory to contain tests, gtk/test* should move
6610         here sometime (with appropriate on-cvs-server hackery)
6611
6612         * tests/testtreeview.c, tests/Makefile.am: a test
6613         
6614         * configure.in (AC_OUTPUT): add tests/Makefile
6615
6616         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6617         and "invisible_set" which were missing
6618
6619         * gtk/gtkrbtree.h: some cheesy indentation fix
6620         
6621 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6622
6623         * gtk/gtkinvisible.c (gtk_invisible_realize):
6624         Attach the style to the window so that the style it is not
6625         leaked when unrealizing the window.
6626
6627 2000-12-18  Havoc Pennington  <hp@redhat.com>
6628
6629         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6630         begin/end user action where appropriate
6631         (gtk_text_view_commit_handler): add begin/end user action
6632
6633         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6634         bracket interactive operations with begin/end user action pair.
6635         
6636         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6637         "interactive" arg from insert_text and delete_text signals.
6638         Add begin_user_action, end_user_action signals
6639         (gtk_text_buffer_begin_user_action): 
6640         (gtk_text_buffer_end_user_action): New functions to delimit 
6641         a user-visible action
6642
6643         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6644         signals.
6645         
6646 2000-12-18  Havoc Pennington  <hp@redhat.com>
6647
6648         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6649         was pretty non-working.
6650
6651         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6652         by passing the length to g_utf8_validate().
6653
6654 2000-12-16  Havoc Pennington  <hp@pobox.com>
6655
6656         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6657         Port to GObject, can go back in gdk-pixbuf after setting up 
6658         a gdk-pixbuf-marshal.h header over there.
6659
6660         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6661         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6662         args
6663         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6664         set
6665         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6666         here, do it when we create the buttons later
6667         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6668         (gtk_tree_view_map): paranoia checks that column->button is shown 
6669         and unmapped
6670         (gtk_tree_view_size_request): only request visible children.
6671         Move header size calculation in here, for cleanliness, and 
6672         to maintain invariants for child widgets if we eventually 
6673         let users set different children inside the buttons
6674         (gtk_tree_view_map_buttons): factor out code to map buttons,
6675         since it was being called several times
6676         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6677         windows instead of just moving them; their height may change 
6678         if we allow random widgets in there, or the theme changes.
6679         (gtk_tree_view_size_allocate): move button size allocation 
6680         above emitting the scroll signals, to ensure a sane state when we
6681         hit user code
6682         (gtk_tree_view_button_release): remove queue_resize after
6683         tree_view_set_size(), set_size() will handle any resize queuing
6684         that's needed
6685         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6686         draw_focus goo
6687         (gtk_tree_view_focus): use gtk_get_current_event() and
6688         gdk_event_get_state()
6689         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6690         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6691         semicolon
6692         (gtk_tree_view_create_button): show the button here
6693         (gtk_tree_view_button_clicked): actually emit the clicked signal
6694         on the column
6695         (_gtk_tree_view_set_size): return right away if the size is
6696         unchanged, as a cheesy optimization
6697         (gtk_tree_view_setup_model): rename set_model_realized to 
6698         setup_model to match the flag that indicates whether we've 
6699         called it
6700         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6701         exist, because set_scroll_adjustment does that and it shouldn't
6702         matter what order you call these in
6703         (gtk_tree_view_get_vadjustment): ditto
6704         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6705         for paranoia
6706         (gtk_tree_view_set_headers_visible): call
6707         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6708         (gtk_tree_view_append_column): clarify whether the return value
6709         is the count of columns before or after, and do the increment 
6710         separately from the return statement so you can tell from the code.
6711         (gtk_tree_view_remove_column): ditto
6712         (gtk_tree_view_insert_column): ditto
6713         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6714         outside the existing range, the docs say that outside-range
6715         columns are allowed, so we handle them as documented. (Presumably
6716         this allows a nice loop with column != NULL as test.)
6717         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6718         mean (left/right/center etc.).
6719         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6720         (gtk_tree_view_expand_row): add docs
6721         (gtk_tree_view_collapse_row): add docs
6722
6723         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6724         function to emit the clicked signal on a column
6725         
6726         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6727         state of an event
6728         (gdk_event_get_time): don't treat GDK_SCROLL 
6729         as a button event, remove default case from switch so gcc 
6730         will whine if we don't explicitly handle all event types
6731
6732         * gtk/gtktreeselection.h: added some FIXME 
6733         
6734         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6735         "columns" to "n_columns" and "column" to "columns" for clarity
6736
6737 2000-12-16  Havoc Pennington  <hp@pobox.com>
6738         
6739         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6740         stuff. This should make e.g. the delete key work again in the
6741         text widget...
6742         (gtk_text_iter_forward_cursor_positions): handle negative count
6743         (gtk_text_iter_backward_cursor_positions): handle negative count
6744         (gtk_text_iter_forward_word_ends): handle negative count
6745         (gtk_text_iter_backward_word_starts): handle negative count
6746
6747         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6748         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6749         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6750         GObject. No doubt will cause breakage.
6751
6752         * demos/gtk-demo/textview.c: remove hacks around
6753         non-GObject-ification of the text objects
6754
6755         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6756         the text tag
6757         
6758 2000-12-14  Havoc Pennington  <hp@pobox.com>
6759
6760         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6761         that we have Xrender
6762
6763 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6764
6765         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6766         Add two virtualized functions gdk_drawable_get_clip_region - to
6767         get the clip region when drawing.
6768         
6769         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6770         use invalidate_region.
6771
6772         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6773         region.
6774
6775         * acconfig.h configure.in: Check for Xft. For now, assume
6776         that if Xft is found, Pango was compiled with Xft support
6777         as well.
6778
6779         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6780         gdk_colormap_query_color().
6781         
6782         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6783         with Xft if appropriate.
6784
6785         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6786         a pangoxft context if we have XFT and the environment
6787         variable GD_USE_XFT is set.
6788         
6789         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6790         and also possibly an XftDraw structure.
6791
6792         * gtk/gtkfontsel.c: Handle the case where the font from the
6793         style doesn't match any of the fonts a bit better.
6794         
6795         * gtk/testgtk.c: Add tabs between directional segments for
6796         hebrew/arabic test. (Not really necessary, just a little
6797         prettier.)
6798
6799 2000-12-14  Havoc Pennington  <hp@redhat.com>
6800
6801         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6802         reading a file
6803
6804 2000-12-14  Havoc Pennington  <hp@redhat.com>
6805
6806         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6807         unused call to get_last_line()
6808
6809         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6810         here until boxed is working (and maybe after that - we should
6811         really not gratuitously break old code)
6812
6813         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6814         specific types for font_desc and tabs args, move them to
6815         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6816         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6817
6818         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6819         use GTK_TYPE_POINTER for signal signatures as a hack-around
6820
6821         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6822         PangoTabArray
6823
6824         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6825         make static
6826         (line_display_index_to_iter): make static
6827
6828         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6829         to marshal a string not a boxed
6830
6831         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6832
6833         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6834         since the UTF-8 isn't validated yet
6835
6836         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6837         lines to end in '\n'
6838         
6839         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6840         forward_to_delimiters, and grapheme boundaries
6841         (gtk_text_view_delete_from_cursor): properly handle non-newline
6842         delimiters, and grapheme boundaries
6843
6844         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6845         to gtk_text_iter_forward_to_delimiters, and make it work properly
6846         if empty lines end with a character other than '\n'
6847
6848         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6849         position
6850
6851 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6852
6853         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6854
6855         * gtk/gtk.def
6856         * gdk/gdk.def: Update.
6857
6858         * gdk/win32/gdkmain-win32.c
6859         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
6860         gdkmain-win32.c here.
6861
6862         * gdk/win32/makefile.mingw.in (all): No need to make
6863         gdk-win32res.o here, the makefile one step up will call us to make
6864         it.
6865
6866         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
6867         gdkkeys-win32.
6868
6869         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
6870
6871         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
6872         call to g_source_add().
6873
6874         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
6875         leak. Thanks to Andreas Kemnade.
6876
6877 2000-12-13  Havoc Pennington  <hp@pobox.com>
6878
6879         * gtk/gtktextbtree.h: Remove double _ in front of some functions
6880
6881         * gtk/gtktext*.[hc]: update accordingly
6882         
6883 2000-12-13  Havoc Pennington  <hp@pobox.com>
6884
6885         * gtk/gtktextbtree.h: Put _ in front of every function in this 
6886         header file
6887
6888         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
6889
6890 2000-12-13  Alex Larsson  <alexl@redhat.com>
6891
6892         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
6893         Add support for ps2 intellimouse.
6894
6895         * gdkkeyboard-fb.c:
6896         Move shift-F1 repaint handling to xlate handler only.
6897         
6898         * docs/README.linux-fb:
6899         Add imps2 to docs.
6900         Document the new refresh keys.
6901         
6902 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
6903
6904         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
6905
6906         * gtk/gtkbox.c: change property types from (u)long to (u)int for
6907         ::position and ::padding.
6908
6909         * gtk/gtkcontainer.c: make ::border_width an INT property.
6910
6911         * gtk/gtkpacker.c: make ::position an INT property.
6912
6913         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
6914         guard against NULL h/v scrollbars, since this is used at construction
6915         time.
6916
6917         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
6918         internal gtk_clist_constructor().
6919
6920         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
6921         gtk_ctree_constructor().
6922
6923         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
6924         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
6925
6926         * docs/reference/Makefile.am: fun stuff, disabled docs generation
6927         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
6928
6929         * gtk/gtkwidget.[hc]:
6930         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
6931         and gtk_widget_get().
6932         (gtk_widget_new): use g_object_new_valist().
6933         (gtk_widget_set): use g_object_set_valist().
6934
6935         * gtk/gtkobject.[hc]:
6936         removed gtk_object_arg_get_info(), gtk_object_getv(),
6937         gtk_object_query_args(), gtk_object_newv(),
6938         gtk_object_class_add_signals(),
6939         gtk_object_class_user_signal_new(),
6940         gtk_object_class_user_signal_newv(),
6941         gtk_object_arg_set(), gtk_object_arg_get(),
6942         gtk_object_args_collect(),
6943         gtk_object_default_construct(),
6944         gtk_object_constructed(),
6945         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
6946         removed nsignals, signals and n_args members from GtkObjectClass.
6947         (gtk_object_new): use g_object_new_valist().
6948         (gtk_object_set): use g_object_set_valist().
6949         (gtk_object_get): use g_object_get_valist().
6950         
6951         * gtk/gtkcompat.h: define gtk_object_default_construct().
6952         
6953         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
6954         g_object_new().
6955
6956         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
6957         fucntions, cleaned up method assignments (make sure your structures
6958         are setup properly before calling out). removed all GTK_CONSTRUCTED
6959         hacks ;)
6960
6961 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
6962
6963         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
6964         off-by-one error in checks. (Dave Lambert)
6965
6966 2000-12-12  Alexander Larsson  <alexl@redhat.com>
6967
6968         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
6969         Don't free gdk_fb_keyboard twice.
6970
6971 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
6972
6973         * gtk/testgtk.c:
6974         (create_tooltips): 
6975         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
6976         use GObject swapped_signal:: properties instead.
6977
6978         * gtk/gtkcellrenderertoggle.c: 
6979         * gtk/gtkcellrenderertextpixbuf.c: 
6980         * gtk/gtkcellrenderertext.c: 
6981         * gtk/gtkcellrendererpixbuf.c: 
6982         * gtk/gtkcellrenderer.c:
6983         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
6984         missing warnings for invalid property ids, install properties
6985         with g_object_class_install_property() now.
6986         
6987         * gtk/gtksignal.c:
6988         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
6989         
6990 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
6991         
6992         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
6993         to determine if a window is the focus widget within
6994         its toplevel.
6995
6996         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
6997         to be boolean.
6998
6999         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7000         of the case where the container CAN_FOCUS to here instead
7001         of having it in each individual move-the-focus place.
7002
7003         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7004         focusing to be geometric in a much more obvious sense. Arrowing
7005         around is still non-intuitive because it isn't perfect and
7006         because entries, etc, grab the arrow keys, but it at least
7007         usually will do what you expect now.
7008         
7009         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7010         file.
7011
7012         * gtk/gtknotebook.c: Change tabs to be a single item in
7013         the focus chain. Make movement of focus on tabs with arrow
7014         keys wrap around.
7015         
7016         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7017         CHECK_FIND_CHILD macro to give informative error messages
7018         instead of silent returns.
7019
7020         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7021         flag since we handle GdkReturn on the tabs.
7022
7023         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7024         windows rather than sending expose events directly.
7025
7026         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7027         definition for GtkNotebookPage into .c file, since it is private.
7028
7029         * gtk/testgtk.c (create_notebook): Add option for 
7030         testing borderless notebook.
7031
7032         * gtk/testgtk.c (page_switch): Removed egregious poking
7033         around in GTK+ internals.
7034
7035         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7036
7037         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7038         properly through gtk_clist_focus. Make the title headers a
7039         single item in the tab-focus chain, and make left-right wrap
7040         around.
7041
7042         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7043         focus method so that wrapping around works properly.
7044
7045         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7046         that is handled for the widget now. 
7047
7048 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7049
7050         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7051         widgets as TOPLEVEL.
7052
7053         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7054         TOPLEVEL widgets are containers.
7055
7056         * gtk/gtkinvisible.h: Remove useless include.
7057
7058 2000-12-11  Havoc Pennington  <hp@redhat.com>
7059
7060         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7061         Handle chopping off \r\n and 0x2029 in addition to \n before
7062         passing to PangoLayout
7063
7064         * gtk/gtkimcontextsimple.c
7065         (gtk_im_context_simple_get_preedit_string): 
7066         return an empty string if no match is pending
7067
7068         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7069         assertion that the returned preedit string was sane
7070
7071         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7072         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7073         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7074
7075 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7076
7077         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7078         Fix up finalizer to chain to its parent.
7079
7080 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7081
7082         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7083         Clearified the difference between the keyboard types. Wrote a note
7084         about the magic sysrq key to get out of raw mode.
7085
7086 2000-12-09  James Henstridge  <james@daa.com.au>
7087
7088         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7089         member to hold masks for detecting the start of a protocol packet.
7090         (mouse_devs): add packet start masks for ps2 and ms device types.
7091         Left the mask for fidmour blank, as I have no idea what it should
7092         be.
7093         (handle_mouse_io): skip bytes until we get to the start of a
7094         packet.  My Logitech mouse seems to be passing an extra NULL pad
7095         byte, and GPM does a similar thing here.
7096         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7097         this is the ms mouse driver.
7098         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7099         completely broken except for button1.  It was checking the wrong
7100         bit in the packet for the status of the right mouse button, and
7101         wrongly assuming right == button2 rather than 3.  I fixed that and
7102         also added support for middle button (button2).
7103
7104 2000-12-08  Havoc Pennington  <hp@redhat.com>
7105
7106         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7107         that cause a segfault on text insertion
7108
7109         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7110         warning
7111
7112         * gtk/gtktextiter.c (test_log_attrs): use
7113         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7114
7115         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7116         Get log attrs for a line, using a cache stored on the buffer
7117         
7118         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7119         reported by Jeff Franks
7120
7121 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7122
7123         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7124         /dev/ttyS0 -> /dev/mouse
7125
7126 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7127
7128         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7129         Added dummy gdk_fontset_load.
7130
7131 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7132
7133         * docs/README.linux-fb:
7134         * docs/Makefile.am:
7135         Initial GtkFB docs.
7136         
7137         * gdk/linux-fb/Makefile.am:
7138         Define GDK_DATA_PREFIX.
7139
7140         * gdk/linux-fb/gdkmain-fb.c:
7141         Fix typo.
7142         Change default display to /dev/fb0.
7143
7144         * gdk/linux-fb/gdkpango-fb.c:
7145         Add $(prefix)/share/fonts/ to font path.
7146         
7147 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7148
7149         * gdk/linux-fb/gdkkeyboard-fb.c:
7150         New file containing the abstracted keyboard driver. Most code
7151         taken from gdkinput-ps2.c
7152
7153         * gdk/linux-fb/gdkinput-ps2.c:
7154         Removed file.
7155         
7156         * gdk/linux-fb/Makefile.am:
7157         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7158
7159         * gdk/linux-fb/gdkcolor-fb.c:
7160         display->fb was renamed to display->fb_fd.
7161
7162         * gdk/linux-fb/gdkcursor-fb.c:
7163         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7164
7165         * gdk/linux-fb/gdkinput.c:
7166         Moved gdk_input_init here from gdkinput-ps2.c
7167
7168         * gdk/linux-fb/gdkmain-fb.c:
7169         display->fb was renamed to display->fb_fd.
7170         Now the tty and the console is opened here instead
7171         of in the keyboard driver. Also check GDK_VT to see what
7172         tty to open.
7173         Move gdk_beep () here from gdkinput-ps2.c
7174         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7175
7176         * gdk/linux-fb/gdkmouse-fb.c:
7177         Add header.
7178         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7179         Return correct keyboard modifiers.
7180         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7181
7182         * gdk/linux-fb/gdkprivate-fb.h:
7183         Add tty and vt info to display.
7184         Add orignal modeinfo storage to display
7185         Update global functions
7186
7187         * gdk/linux-fb/gdkwindow-fb.c:
7188         Added gdk_fb_window_find_focus().
7189         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7190
7191 2000-12-07  Havoc Pennington  <hp@pobox.com>
7192
7193         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7194         function, noticed by Alex
7195
7196 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7197
7198         * configure.in: Detect freetype properly
7199
7200         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7201         above.
7202
7203 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7204
7205         * gdk/linux-fb/Makefile.am:
7206         Add gdkmouse-fb.c
7207         
7208         * gdk/linux-fb/gdkmouse-fb.c:
7209         New file. Abstracted the mouse drivers a bit.
7210
7211         * gdk/linux-fb/gdkcursor-fb.c:
7212         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7213
7214         * gdk/linux-fb/gdkinput-ps2.c:
7215         Removed old mouse handling code. Moved cursor handling code
7216         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7217         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7218         gdk_mouse_get_info.
7219
7220         * gdk/linux-fb/gdkmain-fb.c:
7221         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7222
7223         * gdk/linux-fb/gdkprivate-fb.h:
7224         Removed public gdk_fb_find_common_ancestor, added and renamed
7225         functions for the new mouse handling code.
7226
7227         * gdk/linux-fb/gdkwindow-fb.c:
7228         Moved gdk_fb_window_send_crossing_events here. added global
7229         variable gdk_fb_window_containing_pointer. made
7230         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7231         renamed to gdk_mouse_get_info.
7232
7233 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7234
7235         * gdk/linux-fb/gdkevents-fb.c:
7236         Update to match latest gmain/gsource changes.
7237
7238         * gdk/linux-fb/gdkinput-ps2.c:
7239         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7240         it links. Will be implemented later.
7241
7242 2000-12-03  Havoc Pennington  <hp@pobox.com>
7243
7244         * gdk/Makefile.am: add gdkkeys.[hc]
7245
7246         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7247         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7248
7249         * acconfig.h, configure.in: add checks and command line options
7250         for XKB
7251
7252         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7253         
7254         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7255         and group in the key event
7256
7257         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7258         field with the low-level hardware key code, and a group
7259         field with the keyboard group
7260
7261         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7262         and declare a couple globals used for keymap handling
7263         
7264         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7265         hold down Shift-Control and type a hex number to get a Unicode 
7266         character corresponding to the hex number
7267         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7268         (return bytes not chars)
7269
7270 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7271
7272         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7273         to avoid waste on 64-bit platforms.
7274
7275 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7276
7277         * INSTALL: Fix link to PNG home, remove reference
7278         to fribidi.
7279
7280         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7281         
7282         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7283         tested.)
7284
7285         * gtk/gtkcheckmenuitem.c: Permanently turn on
7286         always_show_toggle.
7287
7288         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7289         be NULL. (Vladimir Klebanov, #26545)
7290
7291         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7292         some signed/unsigned comparison problems. (#6510,
7293         David Kaelbling)
7294
7295         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7296         return type to boolean (Oskar Liljeblad, #18648)
7297
7298 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7299
7300         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7301         Remove bogus colormap setting.
7302
7303 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7304
7305         * gdk/linux-fb/gdkcolor-fb.c:
7306         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7307
7308         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7309         Must set colormap.
7310         
7311 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7312
7313         * docs/tutorial/gtk-tut.sgml: DND updates
7314
7315 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7316
7317         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7318         Remove old debug g_warning().
7319         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7320         or an implementation, just pass the implementation to draw_drawable_2.
7321         
7322         * gdk/linux-fb/gdkprivate-fb.h:
7323         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7324
7325         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7326         clear and invalidate area when window is destroyed.
7327         (send_map_events): Remove old commented out code.
7328
7329 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7330
7331         * gdk/linux-fb/gdkpango-fb.c:
7332         Use italic instead of oblique in font aliases.
7333         
7334         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7335         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7336         other unsupported functions.
7337
7338 2000-12-04  Havoc Pennington  <hp@redhat.com>
7339
7340         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7341
7342         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7343
7344         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7345
7346         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7347         hack to avoid infinite loops (synthetic expose event) - 
7348         Owen has more appropriate fixes in a branch he'll check in later.
7349
7350         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7351         separator, CR, and CRLF as line ends
7352
7353         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7354         into lines using pango_find_paragraph_boundary(); other bits of
7355         the widget are still going to be broken if the boundary isn't '\n'
7356         though
7357
7358 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7359
7360         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7361         multiply.
7362
7363         * gdk/linux-fb/gdkpango-fb.c:
7364         Copied some 26.6 scaling macros from pango to clean up the rounding.
7365         (pango_fb_font_get_glyph_info): Correct sign on x value.
7366
7367         * gdk/linux-fb/gdkprivate-fb.h:
7368         Removed unreferenced external functions.
7369
7370         * modules/linux-fb/Makefile.am: Use ` instead of '.
7371
7372         * modules/linux-fb/basic.c:
7373         Remove dead code. In particular the dummy lang engine which broke all
7374         pango layouts in GtkFB. Don't include tables-big.i anymore.
7375
7376         * modules/linux-fb/tables-big.i:
7377         Upgrade to latest version from pango. Left for reference, basic_ranges
7378         moved to basic.c.
7379         
7380 2000-12-04  Havoc Pennington  <hp@redhat.com>
7381
7382         Fix bugs Alex found:
7383         
7384         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7385         to "draw"
7386
7387         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7388
7389         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7390
7391         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7392         implementation in here, apparently the expose() implementation was
7393         dead code.
7394
7395 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7396
7397         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7398         Return positive descent.
7399
7400 2000-12-02  Havoc Pennington  <hp@pobox.com>
7401
7402         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7403         method and signal
7404         
7405         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7406         calls gdk_window_process_updates() to push the exposes through
7407         (gtk_widget_class_init): No more draw signal, no
7408         gtk_widget_real_draw()  
7409         
7410         * gtk/gtkbin.c (gtk_bin_draw): remove
7411
7412         * gtk/gtkbox.c (gtk_box_draw): remove
7413
7414         * gtk/gtkbutton.c (gtk_button_draw): remove
7415
7416         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7417
7418         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7419
7420         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7421
7422         * gtk/gtkclist.c (gtk_clist_draw): remove
7423
7424         * gtk/gtkentry.c (gtk_entry_draw): remove
7425
7426         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7427
7428         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7429
7430         * gtk/gtkframe.c (gtk_frame_draw): remove
7431
7432         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7433
7434         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7435
7436         * gtk/gtklayout.c (gtk_layout_draw): remove
7437
7438         * gtk/gtklist.c (gtk_list_draw): remove
7439
7440         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7441
7442         * gtk/gtkmenu.c (gtk_menu_draw): remove
7443
7444         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7445
7446         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7447
7448         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7449
7450         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7451
7452         * gtk/gtkpacker.c (gtk_packer_draw): remove
7453
7454         * gtk/gtkrange.c (gtk_range_draw): remove
7455
7456         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7457
7458         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7459
7460         * gtk/gtktable.c (gtk_table_draw): remove
7461
7462         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7463
7464         * gtk/gtktext.c (gtk_text_draw): remove
7465
7466         * gtk/gtktextview.c (gtk_text_view_draw): remove
7467
7468         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7469
7470         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7471
7472         * gtk/gtktree.c (gtk_tree_draw): remove
7473
7474         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7475
7476         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7477
7478         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7479
7480         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7481
7482         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7483
7484         * gtk/gtkwindow.c (gtk_window_draw): remove
7485
7486 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7487
7488         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7489         a GtkToggleButton is both insensitive and active, it was being
7490         drawn by the GtkButton draw handler which doesn't check the
7491         state. Now it's calling gtk_toggle_button_paint instead.
7492         
7493 2000-12-01  Havoc Pennington  <hp@redhat.com>
7494
7495         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7496         dangling pointers to the appearance attributes from the 
7497         line display
7498
7499         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7500         width/height to mean "full width/height of drawable"
7501
7502         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7503         click to select word/line
7504         
7505         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7506         when getting log attrs. Get a slice, so that pixmaps and stuff
7507         are properly handled.
7508
7509         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7510         paste into the selection (replaces selection now, previously
7511         crashed or added to selection). Reveals longstanding btree bug -
7512         select multiple lines, middle-click on the selection, boom. This
7513         isn't related to my changes though.
7514
7515         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7516         PangoLogAttrs changes
7517         (gtk_entry_move_backward_word): ditto
7518
7519         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7520         functions return bool whether the iter moved onto a
7521         dereferenceable position.
7522  
7523         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7524         functions for motion in terms of display lines.
7525
7526         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7527         get the buffer a mark is inside
7528         
7529 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7530
7531         * gdk/linux-fb/Makefile.am:
7532         * modules/linux-fb/Makefile.am:
7533         Freetype 2 final uses freetype-config
7534
7535         * gdk/linux-fb/gdkpango-fb.c:
7536         Upgrade to use Freetype 2 final.
7537         More flexible support for font aliases, this also fixes a bug with
7538         GtkFontSelector, as the aliases must be visible in the font/family list,
7539         or GtkFontSelector reads uninitialized memory.
7540
7541 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7542
7543         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7544         XGetIMValues to properly terminate variable argument list, and do
7545         NULL return check for ic_values and xim_styles.
7546
7547         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7548         Restore preedit state after XmbResetIC().
7549         
7550         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7551         XvaCreateNestedList() should take XvaNestedList, but not
7552         XvaNestedList*.
7553
7554         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7555         preedit_draw_callback, preedit_caret_callback): Match
7556         "preedit-changed" signal name to "preedit_changed" to be
7557         consistent to the spec.
7558
7559         * gtk/gtkimcontextsimple.c (check_table):
7560         Match "preedit-changed" to "preedit_changed" to be consistent
7561         to the spec.
7562
7563 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7564
7565         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7566         gc->clip_region == NULL>
7567
7568 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7569
7570         Changes by Hans Breuer:
7571         
7572         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7573         Dont't use negative width and height as max_hints. This fixes
7574         Owen's recent testgtk changes for win32.
7575
7576         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7577         gdk_win32_hdc_release): These are exported and may be called with
7578         other drawable types than our GdkDrawableImplWin32 (?).
7579
7580         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7581         so always #define USE_BACKING_STORE.
7582
7583         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7584         of printf for debugging output.
7585
7586         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7587         
7588         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7589
7590         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7591         declaration.
7592
7593         * gtk/gtktexttypes.h: Ditto.
7594
7595         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7596         (GDK_VoidSymbol) also if in case of arg check failure.
7597
7598         * gtk/gtkimcontextsimple.c
7599         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7600         position to the pointer, but to the variable it points to.
7601
7602         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7603
7604         * gtk/gtk.def: Updates.
7605
7606 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7607
7608         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7609         GTK_TYPE_TREE_MODEL.
7610
7611 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7612
7613         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7614         Set the size of the font from the description.
7615         (gdk_text_width): Gross hack that calculates the width
7616         of text by text_length * size/2. This is necessary because
7617         GtkLabel does some ugly gtk_string_width call to calculate
7618         an good size.
7619         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7620
7621 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7622
7623         * docs/tutorial/gtk-tut.sgml: DND updates
7624
7625 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7626
7627         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7628         If you pass width or height == 0 to gdk_window_clear_area they
7629         should be calculated from the window size.
7630
7631 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7632
7633         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7634         a grab, but no grab-cursor, use the cursor from the grabbed
7635         window. (gdk_fb_window_send_crossing_events): Send normal
7636         enter/leave notifications if grab and owner_events == TRUE.
7637
7638 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7639
7640         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7641         Do implicit button grabs, even if the window doesn't
7642         want the event.
7643         (gdk_fb_window_send_crossing_events): If there is a
7644         grab, only the grabbed window gets normal enter/leave
7645         notifications. On ungrab go from grabbed window to current.
7646         Don't send any notification to b when propagating from c -> b.
7647         If setting a grab on window, don't set prev_window.
7648         (handle_mouse_input): Send enter/leave events to the window the
7649         mouse is over, not the grabbed one.
7650         
7651 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7652
7653         * gdk/gdkregion-generic.c: Zap warning.
7654         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7655         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7656
7657 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7658
7659         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7660         The cursor should be hidden if it is part of either the
7661         source or destination region. Not only if it is in both.
7662         (gdk_window_set_transient_for): Silence warnings.
7663
7664 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7665
7666         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7667         The default mode in X is Pie Arcs, therefore that is
7668         what Gtk+ uses.
7669
7670 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7671
7672         * gdk/linux-fb/gdkinput-ps2.c:
7673         Implement correct EnterNotify/LeaveNotify:
7674         (gdk_fb_window_send_crossing_events): New function that sends
7675         all GdkCrossingEvents from the last mouse-window to the specified
7676         destination.
7677         (gdk_fb_window_visibility_crossing): Removed function.
7678         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7679         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7680         instead of gdk_window_get_pointer() for better readability.
7681
7682         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7683         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7684
7685         * gdk/linux-fb/gdkprivate-fb.h:
7686         removed gdk_fb_window_visibility_crossing, added
7687         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7688
7689         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7690         New function that finds the least common ancestor of two windows.
7691         (gdk_window_show, gdk_window_hide):
7692         Use gdk_fb_window_send_crossing_events.
7693         (gdk_fb_window_move_resize): Send configure events to toplevel
7694         windows. Use gdk_fb_window_send_crossing_events.
7695
7696 2000-11-27  Havoc Pennington  <hp@redhat.com>
7697
7698         * gtk/gtkprivate.h (enum): Remove a trailing comma
7699
7700 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7701
7702         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7703         the "changed" callback of the adjustment.  We need to redraw the
7704         spin button's arrows when the adjustment's range changes.
7705         (adjustment_changed_cb): Draw the arrows.
7706         (gtk_spin_button_value_changed): Draw the arrows.
7707
7708 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7709
7710         * gdk/linux-fb/gdkselection-fb.c:
7711         Initial selection implementation.
7712
7713         * gtk/gtkselection.c:
7714         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7715         requestor in gtk_selection_request.
7716         
7717         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7718         Added gdk_selection_property atom.
7719
7720         * gdk/linux-fb/gdkprivate-fb.h:
7721         Export _gdk_selection_window_destroyed.
7722         Removed mask_off_x/y from GdkCursorPrivateFB.
7723         Removed hbearing, added top, left to PangoFBGlyphInfo.
7724
7725         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7726         Call _gdk_selection_window_destroyed
7727         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7728         the root window has been created.
7729         (static_dx_hack, static_dy_hack, compare_draw_rects,
7730         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7731         in region. They are already sorted. Instead just traverse them in
7732         reverse if draw_direction < 0.
7733         
7734         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7735         Double-clicks must be sent after the normal button_press.
7736         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7737         
7738         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7739         Pass _gdk_fb_screen_gc instead of NULL.
7740
7741         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7742         Initialize gdk_selection_property.
7743         (gdk_event_make): Remove unused code.
7744
7745         * gdk/linux-fb/gdkcursor-fb.c:
7746         Make the pixmap for the cursor the same size as the mask. Also remove
7747         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7748         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7749         Now the whole cursor is visible.
7750
7751         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7752         Fix bug where xdest+height instead of ydest+height was used
7753         to calculate if the source and dest overlapped. This fixes the
7754         redraw bug when the main window in testgtk was scrolled when
7755         partially covered by a tall window.
7756         Copy rectangles in region in order depending on draw_direction.
7757         Also moved the draw_direction flipping of start_y and end_y into
7758         the gc functions, as this might not be what all of them want.
7759         (gdk_fb_draw_lines): Support dashed lines.
7760         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7761         so that the text is positioned correctly (was 1 pixel high).
7762
7763         gdk/linux-fb/gdkgc-fb.c:
7764         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7765         all lines were drawn a pixel to short. Also checked the default of
7766         the rest of the values, and they're the same as X now.
7767
7768         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7769         Clean up pixel positioning of the glyphs. Just use bgy->top and
7770         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7771         to all divisions to get correct rounding behaviour.
7772
7773         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7774         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7775         Moved start_y/end_y flip into draw_drawable implementations.
7776         Flip also x rendering when draw_direction < 0.
7777         Remove unneccesary multiply with draw_direction.
7778
7779 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7780
7781         * docs/tutorial/gtk-tut.sgml:
7782           - get rid of gtk_toggle_button_toggled FUD
7783           - start DND section - needs work - based on:
7784                 http://wolfpack.twu.net/docs/gtkdnd/
7785
7786 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7787
7788         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7789         Correct calculation of font metrics. Now GtkEntrys have sane
7790         size.
7791
7792 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7793
7794         * gdk/gdktypes.h:
7795         Add new type GdkSpan
7796         
7797         * docs/reference/gdk/gdk-sections.txt,
7798         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7799         gdk/gdkregion.h:
7800         Implement and document gdk_region_spans_intersect_foreach.
7801
7802         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7803         Add new file gdkrender-fb.c which contains all core
7804         rendering code.
7805         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7806         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7807         (optimized rectangle fillers).
7808
7809         * gdk/linux-fb/gdkdrawable-fb2.c:
7810         Move all rendering code to gdkrender-fb.c.
7811         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7812         Use the new span intersection functions in gdk_fb_fill_spans.
7813         gdk_fb_draw_rectangle() clips filled rectangles and calls
7814         gc->fill_rectangle with the result.
7815         gdk_fb_fill_spans() gets extra argument "sorted".
7816
7817         * gdk/linux-fb/gdkevents-fb.c:
7818         Remove unused includes and defines.
7819         New function gdk_fb_get_time() to get correct time for events.
7820
7821         * gdk/linux-fb/gdkinput-ps2.c:
7822         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7823         Make sure to set the time of all events.
7824
7825         * gdk/linux-fb/gdkmain-fb.c:
7826         Use gdk_fb_get_time ().
7827
7828         * gdk/linux-fb/gdkprivate-fb.h:
7829         New virtual GC calls: fill_span & fill_rectangle.
7830         Export gdk_fb_get_time().
7831         gdk_fb_fill_spans() gets extra argument "sorted".
7832
7833         * gdk/linux-fb/mi*.c:
7834         Use GdkSpan instead of GdkRectangle.
7835         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7836         from XFree 4 source)
7837         
7838 2000-11-22    <jrb@redhat.com>
7839
7840         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7841         reversing the order in an if statement will do.  Doing so managed
7842         to make the treemodelsort half work.  Other half will follow after
7843         I get the insert function fully fixed.
7844
7845 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7846         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7847         more than 2 bits. Besides, I need to implement an evil hack. :)
7848
7849 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7850
7851         * docs/tutorial/gtk-tut.sgml: minor corrections
7852
7853 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7854         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7855           convert to and from relative path's and iters.
7856
7857         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7858           testing sorting functions a bit better.  Currently broken -- will
7859           fix in morning.
7860
7861 2000-11-20  Havoc Pennington  <hp@redhat.com>
7862
7863         * gtk/gtkwidget.c: Documented a bunch of functions in here
7864         (gtk_widget_realize): Warn if you try to realize
7865         a widget with no parent that isn't a toplevel
7866         (gtk_widget_intersect): return a gboolean
7867
7868 2000-11-20  Havoc Pennington  <hp@redhat.com>
7869
7870         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
7871         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
7872         scrolling to be implemented in GDK to finish. Also, right now
7873         we just size_allocate all children on every layout change,
7874         which is pretty lame. Test commented out of testtext.c, 
7875         until it works better.
7876
7877 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
7878
7879         * gdk/linux-fb/gdkdrawable-fb2.c:
7880         Removed unused arguments from gdk_fb_drawable_get_pixel().
7881
7882         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
7883         Renamed fidur specific mouse packet data in MouseDevice to
7884         generic. Used it in ps2 mouse handling code to avoid blocking
7885         reads.
7886
7887 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
7888
7889         * demos/gtk-demo/main.c: Changed to have the list become
7890         non-italic when the demo window is destroyed through an external
7891         event (like a close button).  Doing so found three bugs in the
7892         widget.
7893
7894         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
7895
7896         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
7897         we actually set the cell.
7898
7899         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
7900
7901         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
7902         free a leaked path.  Thanks memprof.
7903
7904 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
7905
7906         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
7907         off-by-one error when destroying allocated segments
7908         on failure. (Elliot)
7909
7910 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
7911
7912         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
7913         memleaks found by Evan Martin.
7914
7915 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
7916
7917         * Released 1.3.2
7918         
7919         * NEWS: Updates for 1.3.2
7920
7921 2000-11-17  Tor Lillqvist  <tml@iki.fi>
7922
7923         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
7924         but in general for window system specific events.
7925
7926         * gtk/gtk.def
7927         * gtk/makefile.mingw.in
7928         * gtk/makefile.msc.in: Update.
7929         
7930         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
7931
7932 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
7933
7934         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
7935         distribute gtk.immodules.
7936
7937         * gtk/Makefile.am (install-data-local): Don't install the
7938         gtk.immodules file created for the uninstalled modules;
7939         instead run gtk-query-immodules after install
7940
7941 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
7942
7943         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
7944         -rpath to the right install location.
7945
7946         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
7947         -export-dynamic.
7948
7949         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
7950         properly.
7951
7952 2000-11-15  Havoc Pennington  <hp@pobox.com>
7953
7954         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
7955         patch from Mikael Hermansson to temporarily stop blinking while
7956         the user is using the keyboard to type or navigate. 
7957
7958         Also, when blinking, stay on for longer than we stay off. Also,
7959         return from start_cursor_blink if !cursor_visible, to save
7960         checking that flag all over the place before we call
7961         start_cursor_blink.
7962
7963 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
7964
7965         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
7966         only contain a "fontset" line, which is now ignored.
7967
7968         * gtk/gtkentry.c (gtk_entry_button_release): Make 
7969         double-click-to-select-word work.
7970         
7971 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
7972
7973         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
7974         Don't move back one char when we are actually at the end of the 
7975         paragraph.
7976
7977 2000-11-15  Robert Brady  <robert@suse.co.uk>
7978
7979         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
7980         'o' < 'p'.
7981         
7982         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
7983         bind_textdomain_codeset.
7984
7985         (gtk_init_check): Make the warning about translating default:LTR
7986         sterner.
7987         
7988 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
7989
7990         * **/Makefile.am : remove unecessary rules for win32-specific
7991         config-substituted targets. If you want these rules, use
7992         --enable-maintainer-mode (called automatically by autogen.sh).
7993         Stops a lot of unneccessary make-time warnings.
7994
7995         * gtk/gtktext{layout,display}.c: Factor in total width as
7996         well as screen when figuring alignment for word-wrap as well as
7997         no wrap; this is necessary to handle lines that cannot be wrapped
7998         at all.
7999
8000 2000-11-15  Havoc Pennington  <hp@redhat.com>
8001
8002         * gtk/testtext.c: Implement essential color cycling feature
8003
8004 2000-11-15  Havoc Pennington  <hp@redhat.com>
8005
8006         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8007         when we invalidate the main window.
8008
8009         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8010         GtkTextView will now invalidate the side windows for us when text
8011         changes.
8012
8013 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8014
8015         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8016         unconditionally, since we may need to update the horizontal
8017         scrollbars even if the height didn't change.
8018
8019         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8020         the extra attrs, since some of them affect size.
8021
8022         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8023         x_offset correctly.
8024
8025 2000-11-15  Havoc Pennington  <hp@redhat.com>
8026
8027         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8028         don't move the first line out into the margin, instead move the
8029         whole paragraph in order to make space for the first line within 
8030         the margin
8031
8032 2000-11-15  Havoc Pennington  <hp@redhat.com>
8033
8034         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8035         xoffset in addition to yoffset, so horizontal scrolling doesn't
8036         break redraws
8037
8038 2000-11-15  Havoc Pennington  <hp@redhat.com>
8039
8040         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8041         from the cursor
8042         (render_layout_line): fix reversed test that caused weird
8043         underlines to get drawn
8044
8045 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8046
8047         * gdk/linux-fb/gdkprivate-fb.h:
8048         Fix debug macros.
8049         
8050 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8051
8052         * gdk/linux-fb/gdkprivate-fb.h:
8053         Added virtual functions set_pixel, get_color,
8054         fill_span and draw_drawable to the GC.
8055         Added global _gdk_fb_screen_gc to use instead of
8056         NULL when drawing to the screen.
8057         Added _gdk_fb_gc_calc_state() prototype.
8058
8059         * gdk/linux-fb/gdkgc-fb.c:
8060         Call _gdk_fb_gc_calc_state() on any gc state change.
8061
8062         * gdk/linux-fb/gdkglobals-fb.c:
8063         Add _gdk_fb_screen_gc
8064                 
8065         * gdk/linux-fb/gdkdrawable-fb2.c:
8066         _gdk_fb_gc_calc_state() calculates best functions
8067         for the GC state and depth.
8068         Moved bpp specialized code to separate functions.
8069         Added optimized 24 bpp AA draw_drawable.
8070
8071         * gdk/linux-fb/gdkevents-fb.c:
8072         Silence gcc warning.
8073
8074         * gdk/linux-fb/gdkimage-fb.c:
8075         Use _gdk_fb_screen_gc
8076
8077         * gdk/linux-fb/gdkwindow-fb.c:
8078         Init and use _gdk_fb_screen_gc
8079
8080         * gdk/linux-fb/mitypes.h:
8081         Remove unused types.
8082
8083 2000-11-14  Havoc Pennington  <hp@pobox.com>
8084
8085         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8086         to pixels
8087
8088 2000-11-14  Havoc Pennington  <hp@pobox.com>
8089
8090         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8091
8092         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8093         unknown char, no real reason we were using a variable. 
8094         Remove gtk_text_unknown_char variable. Fix all the text widget
8095         files accordingly.
8096
8097         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8098         since the Unicode spec seems to prefer that character for our
8099         purposes.
8100
8101 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8102
8103         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8104         value of g_getenv() isn't freeable, so g_strdup it.
8105
8106         * modules/input/inuktitut.c: Inuktitut input method.
8107
8108         * modules/input/Makefile.am: Build this.
8109         
8110 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8111
8112         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8113         of gtk programs.
8114
8115 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8116
8117         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8118         reversed > that was causing Home to go to end of previous line.
8119
8120         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8121         modified-keypresses (leave for bindings.)
8122
8123         * modules/input/Makefile.am: Remove useless -export-dynamic
8124         from module LDFLAGS.
8125
8126 2000-11-14  Havoc Pennington  <hp@redhat.com>
8127
8128         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8129         higher.
8130
8131         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8132         account. Also, render rise, underline, background, etc. for
8133         pixbufs as well as text. Also, draw underlines one pixel higher.
8134
8135         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8136         PangoAttribute for the rise, so it gets drawn properly. Also,
8137         add the GtkTextAppearance attribute for pixbuf/widget segments
8138         as well; we should go ahead and have rise, underline, background,
8139         stipple work for those
8140
8141         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8142         Pango
8143
8144 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8145
8146         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8147
8148         * gtk/gtk.def: Update.
8149
8150         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8151         included.
8152         (gtk_rc_get_im_module_file): Use run-time installation directory
8153         on Win32.
8154
8155         * gdk/win32/rc/gdk.rc: Remove.
8156         * gdk/win32/rc/gdk.rc.in: New file.
8157         * gdk/win32/rc/Makefile.am: New file
8158         * gdk/win32/Makefile.am: Corresponding changes.
8159
8160         * gtk/gtk.rc: Remove.
8161         * gtk/gtk-win32.rc.in: New file.
8162         * gtk/Makefile.am: Corresponding changes.
8163
8164         * configure.in: Corresponding changes.
8165
8166         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8167         has a built gtkcompat.h. Developers using CVS code on Win32 can
8168         hand-edit it from gtkcompat.h.in.
8169
8170         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8171         gtkcompat.h from gtkcompat.h.win32.
8172
8173 2000-11-14  Havoc Pennington  <hp@redhat.com>
8174
8175         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8176         to default to GDK_ACTION_MOVE if the drag is within a single
8177         widget. Defaults to GDK_ACTION_COPY between widgets.
8178
8179 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8180
8181         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8182
8183         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8184
8185         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8186         srcdir != builddir
8187
8188         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8189
8190         * configure.in (GTK_VERSION): Up to 1.3.2
8191
8192         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8193         gtkimcontextxim.h
8194
8195         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8196         missing doc comment.
8197
8198 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8199
8200         * modules/linux-fb/basic.c:
8201         Use the glib iconv wrappers.
8202
8203 2000-11-13  Havoc Pennington  <hp@pobox.com>
8204
8205         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8206         still more bugs.
8207
8208         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8209         scroll the GdkWindows before realization.
8210
8211 2000-11-13  Havoc Pennington  <hp@redhat.com>
8212
8213         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8214         where GC didn't always get updated properly
8215
8216         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8217         of fonts instead of setting the entire font
8218
8219         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8220         setting entire font
8221
8222         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8223
8224         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8225         a bunch of individually-settable font attributes. You can still 
8226         use the "font" and "font_desc" args, they just set all the font
8227         attributes at once.
8228
8229 2000-11-13 Elliot Lee <sopwith@redhat.com>
8230
8231         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8232
8233 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8234
8235         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8236         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8237
8238         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8239         work better.
8240
8241 2000-11-13  Havoc Pennington  <hp@redhat.com>
8242
8243         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8244         the module file.
8245
8246         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8247         dest->language
8248
8249         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8250         settings
8251
8252         * gtk/gtktextview.c: Implement object args and setters/getters for
8253         all the aspects of the GtkTextAttributes that are not set from
8254         GtkWidget attributes. This is spacing, justification, margins,
8255         etc.
8256
8257         (gtk_text_view_set_arg)
8258         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8259         args
8260         (gtk_text_view_class_init): Add args for justify, left_margin,
8261         right_margin, indent, and tabs
8262         
8263
8264         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8265         attribute properly
8266
8267         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8268         replace with indent attribute
8269
8270         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8271         PANGO_SCALE
8272
8273         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8274         rearranging code to do that
8275         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8276         i.e. don't subtract the top_margin first, just to keep
8277         all margin-futzing in one place.
8278
8279         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8280
8281         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8282         special case of last line, Pango now handles this itself.
8283         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8284         Y coordinate
8285         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8286         (find_display_line_above): wasn't moving the byte index as it
8287         iterated over lines, so always returned byte 0. Also, port to use
8288         PangoLayoutIter.
8289         (find_display_line_below): same problem as
8290         find_display_line_above. Also, port to use PangoLayoutIter.
8291
8292 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8293
8294         * gdk/linux-fb/*.[ch]:
8295         Massive reindent to gtk+ standard. My hands hurt.
8296
8297         * gdk/linux-fb/gdkcolor-fb.c:
8298         Move GdkColorPrivateFB from inherited to windowing_data
8299
8300         * gdk/linux-fb/gdkcursor-fb.c:
8301         _gdk_cursor_new_from_pixmap made static
8302
8303         * gdk/linux-fb/gdkdnd-fb.c:
8304         GdkDragContextPrivate moved to windowing_data
8305
8306         * gdk/linux-fb/gdkdrawable-fb2.c:
8307         Removed endian.h, use glib endianness macros instead
8308         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8309         and GDK_DRAWABLE_IMPL_FBDATA
8310
8311         * gdk/linux-fb/gdkfont-fb.c:
8312         Add empty gdk_font_load(). Needed for linking of Gtk+.
8313
8314         * gdk/linux-fb/gdkimage-fb.c:
8315         Removed endian.h, use glib endianness macros instead
8316         Moved GdkImagePrivateFB to windowing_data
8317         gdk_image_new_bitmap didn't always allocate enough
8318         memory.
8319
8320         * gdk/linux-fb/gdkinput-ps2.c:
8321         Added semi-working support for MS serial mice.
8322
8323         * gdk/linux-fb/gdkprivate-fb.h:
8324         s/GdkWindowPrivate/GdkWindowObject/
8325         Removed GdkWindowPrivate typedef
8326         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8327         Removed GDK_DRAWABLE_P
8328         Move GdkColorPrivateFB from inherited to windowing_data
8329         Moved GdkImagePrivateFB to windowing_data
8330
8331         * gdk/linux-fb/gdkvisual-fb.c:
8332         Removed some unused debug code.
8333
8334         * gdk/linux-fb/gdkwindow-fb.c:
8335         Use stock cursors instead of including X headers.
8336         s/GdkWindowPrivate/GdkWindowObject/
8337
8338         * gdk/linux-fb/mitypes.h:
8339         Removed unused types.
8340
8341         * modules/linux-fb/basic.c:
8342         Use the pango fribidi wrappers.
8343
8344 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8345
8346         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8347         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8348         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8349         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8350         GEqualFunc where applicable.
8351         
8352         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8353         pango_font_description_equal as changed in pango.
8354         
8355         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8356
8357         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8358
8359         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8360
8361         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8362
8363         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8364
8365         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8366
8367         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8368         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8369
8370         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8371         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8372
8373 2000-11-12  Havoc Pennington  <hp@pobox.com>
8374
8375         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8376         dir to datadir/gtk+-2.0/demo
8377
8378         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8379         sorts of text widget and Pango font bugs. Urgh.
8380
8381         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8382
8383         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8384         tree that you should double click to see the demo. Fix 
8385         types of variables to reflect changed return values from 
8386         GtkTreeStore and GtkTreeViewColumn constructors.
8387
8388         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8389         newly-created buffer to prepare for GObject semantics
8390
8391         * gtk/testtext.c: don't leak the buffer with GObject semantics
8392
8393         * gtk/testtextbuffer.c: ditto
8394         
8395 2000-11-12  Havoc Pennington  <hp@pobox.com>
8396
8397         Rename this testgtk to gtk-demo to avoid confusion, and 
8398         install it so people can use it as a supplement to 
8399         the documentation.
8400         
8401         * demos/gtk-demo: Moved from demos/testgtk
8402
8403         * demos/testgtk: Removed
8404
8405         * configure.in: make Makefile in gtk-demo
8406         
8407         * demos/gtk-demo/Makefile.am: Install sample source to 
8408         datadir/gtk-demo (maybe there's a better place?), and 
8409         rename the binary to gtk-demo
8410         
8411         * demos/gtk-demo/main.c (load_file): Load installed sample
8412         source if source isn't found in pwd.
8413
8414 2000-11-09  Havoc Pennington  <hp@pobox.com>
8415
8416         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8417         argument to set the char displayed when visibility == FALSE
8418         (gtk_entry_create_layout): If !entry->visible, replace 
8419         all chars with the "invisible char"
8420
8421         * gtk/testgtk.c: Test the invisible_char deal
8422         
8423 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8424
8425         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8426         can't get a native font in the right encoding.
8427
8428 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8429
8430         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8431         respectively.
8432
8433 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8434
8435         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8436         Fix warning when moving between paragraphs.
8437
8438         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8439         delete => delete_from_cursor, insert => insert_at_cursor
8440
8441 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8442
8443         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8444
8445         * modules/input/imthai-broken.c: A Thai input method for use if
8446         Thai keys are really generating Latin1 keysyms.
8447
8448         * modules/input/Makefile.am: Build these.
8449
8450 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8451
8452         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8453         g_filename_{to,from}_utf8 now takes an extra parameter.
8454
8455         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8456         strftime into UTF-8.
8457
8458         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8459         calendars.
8460
8461         (gtk_calendar_paint_day_names): Draw day names in the right 
8462         place.
8463         
8464 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8465
8466         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8467         problem with using result of g_get_charset() backwards -
8468         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8469
8470         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8471         negative min_width/height and max_width/height to
8472         mean "requisition"; this allows setting a window
8473         to be user-resizable in only one direction easily.
8474
8475         * gtk/testgtk.c (create_main_window): Remove hard-coded
8476         usize - set a default size in the vertical direction.
8477
8478 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8479
8480         * gtk/gtkrange.c: Add some missing casts. Support 
8481         2 and 3 button clicks on the arrows to mean 
8482         "move by pages" and "jump to end". (Like gtkspinbutton)
8483
8484 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8485
8486         * gdk/win32/makefile.msc : reflect build module changes
8487
8488         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8489         from GdkPixmap*, cast implementation member instead.
8490
8491         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8492         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8493         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8494         more Gdi functions return value checking. 
8495         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8496         GdkImagePrivateWin32 *.
8497
8498         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8499         menus useable again. Add #pragma message to keep reminded on this issue.
8500         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8501         windows. This allows to enable backing store on Win32!
8502
8503         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8504         in drawable is of impl type. Correct specific type checks appropriate.
8505  
8506         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8507         GDK_WINDOW_DESTROYED before allocating new resources.
8508
8509         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8510
8511         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8512         (gdk_window_foreign_new) initialize parent handle.
8513         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8514
8515         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8516         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8517         problems (e.g. main buttons in testgtk). 
8518
8519 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8520
8521         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8522         gtk_widget_activate for GDK_Return.
8523
8524         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8525         of preedit cursor position.
8526
8527 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8528
8529         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8530         static.
8531
8532 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8533
8534         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8535         out support for multiple locales; that simple doesn't
8536         work reliably with current Xlib
8537
8538         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8539         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8540         Add support for positioning the cursor within the preedit string.
8541
8542 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8543
8544         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8545         at XIM input method module.
8546
8547         * gtk/gtktextview.c: Check for bindings after passing
8548         events to im context filter.
8549
8550 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8551
8552         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8553         empty attribute lists properly.
8554
8555 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8556
8557         * gtk/queryimmodules.c (main): Return non-zero exit
8558         status if errors were encountered querying any
8559         modules.
8560
8561         * modules/input/Makefile.am (moduledir): remove
8562         leftover bin program target.
8563
8564         * docs/make-todo: Fix typo in error message.
8565
8566 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8567
8568         * configure.in: Add modules/input/Makefile
8569
8570 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8571
8572         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8573         don't include gtkthemes.h.
8574
8575         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8576         to point
8577
8578         * gtk/Makefile.am: Add new .c and .h files, build 
8579         gtk-query-immodules and use it to create a gtk.immodules
8580         file for use of test programs.
8581
8582         * gtk/gtkpreview.c: remove extra blank line.
8583
8584 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8585
8586         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8587         Add the ability to add extra tables beyond the default
8588         one, and also the ability to have compose sequences 
8589         that are prefixes of other compose sequences. 
8590
8591         * gtk/gtkimcontextsimple.c: Export a preedit string which
8592         consists of possible candidates for keystrokes that have
8593         been entered but not yet committed.
8594
8595         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8596         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8597
8598         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8599         Add a function to add input-method switching menu items
8600         to a menu.
8601
8602         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8603         when switching input methods.
8604
8605         * gtk/gtkimcontextsimple.[ch]: Change the format of
8606         the compose table to allow compose tables of different
8607         lengths / sequence.
8608
8609 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8610
8611         * gtk/gtkimmodule.[ch]: Support routines for loading
8612         GtkIMContext implementations dynamically at runtime.
8613
8614         * modules/input/imcyrillic-translit.c: A sample input
8615         method (based on GtkIMContextSimple with an extra table),
8616         which demonstrates preedit strings and the module
8617         system for input modules
8618
8619         * gtk/queryimmodules.c: Program to query the available
8620         input modules and write the results into a file.
8621          
8622         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8623         extra config options "im_module_file" (cache file for
8624         input method modules), and "im_module_path" - path
8625         to look for modules when generating cache file.
8626
8627         This doesn't scale.
8628
8629 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8630
8631         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8632         generic code from gtkthemes into a new abstraction
8633         GtkModule which has the logic for implementing
8634         a loadable module which implements a number of 
8635         GObject types.
8636
8637 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8638
8639         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8640         a class into an interface  
8641         
8642         * gtk/gtkoldeditable.[ch]: Move the old editable
8643         implementation into here, so legacy widgets can
8644         still rely on the implemenation. GtkOldEditable
8645         exports GtkEditable. Make selection handling
8646         code use new text conversion functions (and
8647         handle UTF-8 as a side-effect). Use GtkClipboard
8648         for CLIPBOARD.
8649
8650         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8651         Adopt to match above changes.
8652
8653         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8654         avoid GtkOldEditable implementation. Restructure
8655         to reduce number of places that modify state directly.
8656         Move to GtkBindingSet. Display the preedit string.
8657         Queue recomputation of PangoLayout and scroll position
8658         to improve effiency of doing complex changes naively.
8659         Add a menu with cut/copy/paste and input method selection.
8660
8661 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8662
8663         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8664         to set preedit string and attributes; display preedit string by
8665         inserting string and attributes at cursor when creating the
8666         GtkTextLineDisplay.
8667
8668         * gtk/gtktextlayout.c: Move all conversions between byte
8669         positions in PangoLayout and GtkTextIter into new functions
8670         line_display_iter_to_index/index_to_iter that properly
8671         handle the preedit string.
8672
8673         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8674         it to return const char * (eventually will end up
8675         as GCONST char *, most likely.)
8676
8677         * gtk/gtktextview.[ch]: Handle the preedit string, call
8678         gtk_im_context_reset() as necessary, add a menu to switch
8679         input methods.
8680         
8681         * gtk/gtktextlayout.[ch]: Remove useless
8682         gtk_text_layout_get_log_attrs() function.
8683
8684 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8685
8686         * gdk/gdk.def
8687         * gtk/gtk.def: Update.
8688
8689         * gdk/win32/*.c: Add last argument to g_type_register_static()
8690         calls.
8691
8692         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8693
8694         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8695         generated by older wheel mouse drivers. Get the correct y
8696         coordinate from WM_MOUSEWHEEL messages.
8697
8698         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8699         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8700         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8701         Debugging functions.
8702
8703         * gdk/win32/gdkprivate-win32.h: Declare them.
8704
8705         * gdk/win32/gdkinput-win32.h: Add declaration for
8706         gdk_input_window_destroy().
8707
8708         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8709
8710 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8711
8712         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8713         function to help handle keeping things in sync.
8714
8715 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8716
8717         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8718         BOXED marshallers.
8719
8720         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8721         (gtk_list_store_class_init): use the new BOXED marshallers.
8722
8723         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8724         new_with_values to new_with_types.
8725         (gtk_tree_store_get_column_type): add this.
8726         (gtk_tree_store_class_init): use the new BOXED marshallers.
8727
8728         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8729         mirror some POINTER marshallers.
8730
8731 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8732
8733         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8734         allow more interesting iterators.  Also, made the lifecycle of
8735         iterators more explicit.
8736
8737         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8738
8739         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8740         types.
8741
8742 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8743
8744         * demos/testgtk/menus.c:
8745         Changes to make the new testgtk compile after
8746         gtk_menu_append was removed.
8747
8748         * gdk/linux-fb/gdkdrawable-fb2.c
8749         (gdk_fb_get_depth, gdk_fb_get_visual,
8750         gdk_drawable_impl_fb_class_init): Implement
8751         these drawable functions. Now GtkImages work again.
8752
8753         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8754
8755         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8756         
8757         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8758         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8759         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8760         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8761
8762 2000-11-08  Havoc Pennington  <hp@pobox.com>
8763
8764         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8765         visible_set args, don't know where these had gone, I thought they
8766         used to be there
8767
8768         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8769         now we can test the feature and see that it's totally broken.
8770
8771 2000-11-08  Havoc Pennington  <hp@pobox.com>
8772
8773         Make DND copy pixbufs and tags when source and target share a 
8774         tag table.
8775         
8776         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8777         in-process GTK_TEXT_BUFFER_CONTENTS target
8778         (gtk_text_view_drag_data_received): Paste from
8779         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8780
8781 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8782
8783         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8784         API changes.
8785
8786         * gtk/gtkmenu.c: Add support for scrolling menus.
8787         Remove gtk_menu_append/prepend/insert, these have been moved to
8788         gtkcompat.h as #defines.
8789
8790         * gtk/gtkcompat.h.in:
8791         Add compatibility #defines for gtk_menu_append/prepend/insert
8792
8793         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8794         GtkMenuPositionFunc gets an extra argument push_in.
8795         gtk_menu_append/prepend/insert removed.
8796         
8797         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8798         positioning behaviour to fit to scrolling menus.
8799
8800         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8801         into menuitem->submeny. That is wrong, and broke torn
8802         off submenus of torn off menus, since they were unrealized
8803         when the first menu was unrealized.
8804
8805         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8806         gtk_menu_shell_select_item() since these need to be overridden in
8807         GtkMenu.
8808
8809         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8810         positioning behaviour to fit to scrolling menus.
8811         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8812         the current item so that it is prelighted when the menu pops up.
8813         This is a workaround to the fact that the menu doesn't get the
8814         initial enter event (due to grabs).
8815
8816         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8817         s/gtk_menu_append/gtk_menu_shell_append/
8818
8819         * gtk/gtknotebook.c:
8820         s/gtk_menu_insert/gtk_menu_shell_insert/
8821
8822         * gtk/testgtk.c (create_menu, create_menus):
8823         Create the first menu with 50 items so that menu scrolling
8824         can be tested.
8825         
8826         
8827         Patch from Jonathan Blandford  <jrb@redhat.com>
8828
8829         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8830         system to handle size requests.  First, we ask what the size of
8831         the toggle is.  Then, when allocating the size, we allocate the
8832         toggle_size first.  This way we can have multiple menu-item
8833         classes w/o needing a seperate class for each.
8834
8835         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8836         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8837
8838         * gtk/gtkcheckmenuitem.c
8839         (gtk_check_menu_item_toggle_size_request): New function to handle
8840         the toggle size-request.
8841
8842 2000-11-07  Havoc Pennington  <hp@redhat.com>
8843
8844         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8845         Half-ass somewhat fix this function, so that scrolling to the
8846         insertion point works. Pango hacking is in the future to really
8847         fix it.
8848
8849         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8850         length of data, no longer used.
8851
8852         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8853         method contents in here, get rid of destroy method
8854         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8855         that were backward. Remove debug spew.
8856         (cut_or_copy): Make the clipboard work with insert_range to
8857         preserve tags and pixbufs, not just the primary selection.
8858
8859 2000-11-07  Havoc Pennington  <hp@redhat.com>
8860
8861         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
8862         to gtk_text_mark_get_visible
8863
8864         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
8865         bug that was generating an invalid iterator
8866
8867         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
8868         ensure_char_offsets() in front of code placing the iter in an
8869         invalid state.
8870
8871         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
8872         make override_location arg const
8873         (paste): Replace the selection if we paste into the 
8874         current selection
8875
8876         * gtk/gtkselection.h: Remove "GtkSelectioData"
8877         (struct _GtkSelectionData): move the definition here.
8878
8879         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
8880         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
8881
8882         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
8883
8884         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
8885         (gtk_text_buffer_insert_range_interactive): implement
8886         (gtk_text_buffer_get_tags): Remove, replaced by
8887         gtk_text_iter_get_tags()
8888
8889         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
8890         limit parameter, to avoid infinite linear scan.
8891         (gtk_text_iter_backward_search): Add search limit
8892         (gtk_text_iter_forward_find_char): Add search limit
8893         (gtk_text_iter_backward_find_char): Add search limit
8894
8895 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
8896
8897         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
8898         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
8899         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
8900         gdk/linux-fb/gdkwindow-fb.c:
8901         use g_object_new() instead of g_type_create_instance() which
8902         is a private function for fundamental type implementations.
8903
8904         * gdk/linux-fb/gdkinput-ps2.c:
8905         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
8906         instead just store the current modifier state. Add a (somewhat broken)
8907         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
8908         Rename exported function gdk_input_ps2_get_mouseinfo to
8909         gdk_input_get_mouseinfo.
8910
8911         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
8912         gdk/linux-fb/gdkwindow-fb.c:
8913         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
8914         
8915
8916 2000-11-02  Havoc Pennington  <hp@redhat.com>
8917
8918         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
8919         use stock buttons. Should be 100% source compatible, appropriate
8920         filesel fields now point to dialog->vbox and dialog->action_area.
8921         On the bizarre side, dialog->action_area and filesel->action_area
8922         are not the same widget.
8923         (gtk_file_selection_init): Put some padding around the selection
8924         entry, so it isn't touching the GtkDialog separator.    
8925
8926         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
8927         use stock buttons, etc. Should also be source compatible.
8928         Set the dialog default title in _init not _new().
8929         
8930         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
8931         Use stock buttons; don't put a button box inside the existing
8932         dialog button box. Don't bother with push/pop colormap anymore.
8933
8934         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
8935         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
8936         for message dialog, and necessary for the font selection and color
8937         selection with help and apply buttons.
8938         
8939         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
8940         to the created button widget. Set GTK_CAN_DEFAULT on the button.
8941         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
8942         between buttons, put less padding around the action area.
8943         (gtk_dialog_run): Exit on unmap rather than on destroy. 
8944         This will also exit the loop if the widget is hidden.
8945         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
8946         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
8947         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
8948         special-case delete event.
8949
8950         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
8951         formatting
8952         
8953 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
8954
8955         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
8956         button to temporarily disable position recording in the
8957         "saved position" test.
8958
8959 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
8960
8961         * gtk/gtkthemes.c: added compat code that temporarily implements
8962         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
8963         going to be revamped by owen's upcoming GtkModule patches, but
8964         untill then people want gtk to build, right? ;)
8965
8966 2000-11-04  Havoc Pennington  <hp@pobox.com>
8967
8968         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
8969         list
8970
8971         * docs/Changes-2.0.txt: Add note about
8972         gtk_container_get_toplevels()
8973
8974         * gtk/gtktextview.h: formatting
8975         
8976         * gtk/gtktextview.c: don't start descriptions with "Returns",
8977         confuses gtk-doc
8978
8979 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
8980
8981         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
8982         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
8983
8984 2000-11-03  Havoc Pennington  <hp@redhat.com>
8985
8986         * gtk/gtktexttagtable.c: Docs
8987         (gtk_text_tag_table_size): return a signed int
8988
8989         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
8990         (gtk_text_tag_event): make the event_object a GObject
8991
8992         * gtk/gtktextview.c: Write API docs for all functions.
8993
8994         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
8995         for gtk_text_view_get_window_type() called on one of the private
8996         windows.
8997
8998         * gtk/gtktextview.c: Instead of accessing text_view->buffer
8999         directly, call get_buffer() which demand-creates a default
9000         buffer. So gtk_text_view_new() can be used to create a view with a
9001         default buffer in it, if you just want an empty text box users can
9002         put data in. Useful for GUI builders also.
9003
9004 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9005
9006         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9007         the charset encodign portion MUST be in lowercase.
9008         * gtk/gtkrc.az: added file for Azeri language
9009
9010 2000-11-03  Havoc Pennington  <hp@redhat.com>
9011
9012         Get widgets working on the btree/buffer side. Display of them 
9013         still doesn't work.
9014         
9015         * gtk/gtktextview.c: start implementing child widget stuff
9016
9017         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9018
9019         * gtk/gtktextlayout.c: handle embedded widgets
9020
9021         * gtk/gtktextdisplay.c: handle embedded widgets
9022
9023         * gtk/gtktextchild.c: Implement all the child anchor goo
9024
9025         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9026         function
9027
9028         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9029         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9030         creating a child anchor or a pixbuf segment.
9031         (gtk_text_btree_create_child_anchor): new function
9032         (gtk_text_btree_unregister_child_anchor): new function
9033
9034         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9035         allocate_child signal on GtkTextLayout
9036
9037         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9038         values
9039         (gtk_text_iter_get_child_anchor): new function
9040
9041         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9042         default handler for the changed signal, which calls
9043         gtk_text_buffer_set_modified(), instead of just always emitting
9044         changed then calling set_modified() manually. I guess this is
9045         maybe more flexible. It seems logical.
9046
9047 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9048
9049         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9050         now.
9051
9052         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9053
9054 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9055
9056         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9057         been marked static.
9058
9059 2000-11-02  Havoc Pennington  <hp@redhat.com>
9060
9061         * gtk/testgtk.c (create_labels): had a test backward
9062
9063         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9064         fields, so the dest GC ends up with the correct clip origin, 
9065         etc. Fixes a bug where colored labels didn't redraw 
9066         properly.
9067
9068 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9069
9070         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9071         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9072         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9073         Add last argument to t_type_register_static call.
9074         
9075         * gdk/linux-fb/gdkdrawable-fb2.c:
9076         Add last argument to t_type_register_static call.
9077         export the get_image drawable virtual function.
9078
9079         * gdk/linux-fb/gdkimage-fb.c:
9080         Add last argument to t_type_register_static call.
9081         rename gtk_image_get to _gdk_fb_get_image and
9082         export it for use by gdkdrawable-fb2.
9083
9084         * gdk/linux-fb/gdkprivate-fb.h:
9085         export _gdk_fb_get_image.
9086
9087         * gdk/linux-fb/gdkselection-fb.c:
9088         Add new api call stubs.
9089
9090         * gtk/Makefile.am:
9091         Missing ( in linux-fb part.
9092
9093         * modules/linux-fb/Makefile.am:
9094         Must link with gdk_pixbuf or get unresolved symbol.
9095
9096 2000-11-01  Havoc Pennington  <hp@pobox.com>
9097
9098         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9099         GTK_TYPE_TEXT_ITER and BOXED marshallers
9100
9101         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9102
9103         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9104         
9105         * gtk/gtk-boxed.defs: add GtkTextIter
9106
9107         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9108         properly use OBJECT and BOXED
9109
9110 2000-11-01  Havoc Pennington  <hp@redhat.com>
9111
9112         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9113
9114         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9115         before returning it. 
9116         
9117 2000-11-01  Havoc Pennington  <hp@redhat.com>
9118
9119         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9120         Clip the rectangle to be rendered to the drawable, since
9121         get_from_drawable() requires a region within the drawable
9122
9123 2000-11-01  Havoc Pennington  <hp@redhat.com>
9124
9125         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9126         from coordinates.
9127
9128 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9129
9130         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9131         it isn't NULL.
9132
9133 2000-11-01  Havoc Pennington  <hp@pobox.com>
9134
9135         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9136         on a label
9137         (gtk_label_finalize): unref the attr list if any.
9138
9139         * gtk/testgtk.c (create_get_image): close test on second click
9140         (make_message_dialog): close dialog if it exists
9141
9142         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9143
9144         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9145         gdk-pixbuf
9146
9147         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9148         from Pango markup format
9149         (gtk_label_set_markup_with_accel): ditto but with accelerator
9150         parsing
9151
9152         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9153
9154         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9155         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9156         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9157         call gdk_window_get_origin().
9158
9159         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9160         implement GDK_PIXBUF_ALPHA_FULL
9161         
9162 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9163
9164         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9165         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9166         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9167         multiple handlers respectively, instead of only treating the
9168         first handler found (bug reported by owen).
9169
9170 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9171
9172         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9173
9174         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9175
9176         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9177         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9178         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9179
9180         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9181         widget.  Needs writing someday.
9182
9183         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9184         the docs.
9185
9186 2000-10-30  Havoc Pennington  <hp@redhat.com>
9187
9188         * gtk/gtktextview.h, gtk/gtktextview.c:
9189         Rename delete_at_cursor delete_from_cursor, and 
9190         move to move_cursor.
9191
9192 2000-10-30  Havoc Pennington  <hp@redhat.com>
9193
9194         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9195         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9196         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9197         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9198         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9199         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9200         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9201         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9202         gtktexttypes.h, gtktextview.c, gtktextview.h:
9203
9204         Massive reindentation and reformatting. Arg alignment and comments
9205         still need fixing in various places.
9206
9207 2000-10-30  Havoc Pennington  <hp@redhat.com>
9208
9209         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9210         to be named insert_at_cursor and delete_at_cursor so C++ can
9211         handle them.
9212
9213 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9214
9215         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9216         to get a double directory separator in case the home directory
9217         ends with one. This would cause trouble especially on Windows,
9218         where the path will be confused with the syntax for an an UNC
9219         (network share) path \\server\share\path.
9220         (gtk_rc_add_initial_default_files): Ditto.
9221
9222 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9223
9224         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9225
9226         * gtk/gtktextview.c: Use correct marshallers.
9227
9228 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9229
9230         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9231         use new iter stuff, and added all the appropriate signals et al.
9232
9233         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9234         code is internal to gtk only.
9235
9236 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9237
9238         * gtk/gtk.def
9239         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9240         glib-genmarshal etc.
9241
9242 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9243
9244         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9245         parallel builds.
9246
9247 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9248
9249         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9250
9251 2000-10-27  Robert Brady  <robert@suse.co.uk>
9252
9253         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9254         en_GB (British), ia (Interlingua).
9255
9256 2000-10-26  Havoc Pennington  <hp@redhat.com>
9257
9258         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9259
9260         Fixed output of:
9261         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9262         
9263         * gtk/gtktextsegment.c (char_segment_new): rename
9264         (_char_segment_new_from_two_strings): rename
9265         (_toggle_segment_new): rename
9266         
9267         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9268         (make_clipboard_widget): make it static
9269         (text_get_func): static
9270         (text_clear_func): static
9271
9272         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9273         static
9274         (hex_changed): make it static
9275         (hsv_changed): make it static
9276         (opacity_entry_changed): make it static
9277
9278         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9279         (toggle_segment_check_func): rename with _gtk
9280
9281         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9282         (_widget_segment_new): rename
9283         (_widget_segment_add): rename
9284         (_widget_segment_remove): rename
9285         (_widget_segment_ref): rename
9286         (_widget_segment_unref): rename
9287
9288         * gtk/gtktextmark.c (_mark_segment_new): Rename
9289         _gtk_mark_segment_new   
9290
9291 2000-10-26  Havoc Pennington  <hp@redhat.com>
9292
9293         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9294         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9295         types
9296
9297         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9298         marshaller types
9299
9300         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9301         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9302         license on these files.
9303
9304         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9305         work.
9306
9307         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9308         runtime random number different for each tree, instead of 
9309         a constant I made up.
9310
9311 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9312
9313         * gtk/Makefile.am: buncha cleanups, kludged build sources
9314         dependencies with a Makefile: oldest-source-stamp dependancy
9315         for the moment. automake is really fighting us here, with
9316         intentionally not allowing user-defined rules or dependancies
9317         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9318
9319         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9320         to public headers. tehy have a comment stating that they are
9321         "semi-public" aren't included by gtk.h and if enums popup there,
9322         they can be /*< skip >*/-ed.
9323
9324         * gtk/gtktextlayout.h: 
9325         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9326         added LGPL... <SIGH>
9327
9328 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9329
9330         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9331         GtkTreeIter.  Added iterators everywhere.
9332
9333         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9334
9335         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9336
9337         * gtk/gtktreestore.c: Changed to use the iterators.
9338
9339         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9340         iterators tomorrow.
9341
9342         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9343         iterators tomorrow.
9344
9345         * gtk/treestoretest.c: Changed to use iterators.
9346
9347         * demos/testgtk/main.c: Moved to use the new iterator system.
9348
9349 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9350
9351         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9352         localization misbehaviour.
9353
9354         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9355         a useless type without copy/free.
9356
9357         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9358         of GTK_TYPE_CTREE_NODE.
9359
9360 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9361
9362         * gtk/gtksignal.c:
9363         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9364         applicable.
9365
9366         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9367         gtk_selection_data_copy and gtk_selection_data_free
9368         do GtkSelectionData work as params in signals.
9369
9370 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9371
9372         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9373         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9374         couldn't they at least give it a non-standard name?
9375         
9376         * gtk/gtktextlayout.c: arg! yet another implementation of
9377         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9378
9379         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9380         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9381         home. now i know this _is_ a conspiracy.
9382
9383         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9384         ::state-changed.
9385
9386         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9387         (gtk_accel_group_create_add): marshaller signature fixups.
9388
9389         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9390         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9391
9392         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9393         anymore.
9394
9395 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9396
9397         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9398         due to the signal system changes, it wouldn't build currently. to
9399         be fixed soon.
9400
9401         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9402
9403         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9404         so it needs gtk_marshal_VOID__ENUM() instead of
9405         gtk_marshal_NONE__UINT().
9406
9407         * gdk/gdk*.c: adapted type registration functions.
9408
9409         * gtk/gtkbindings.c:
9410         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9411         gone.
9412
9413         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9414
9415         * gtk/gtkobject.c:
9416         (gtk_object_destroy):
9417         (gtk_object_shutdown): fixed recursion guards. basically we have to
9418         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9419         is called during ::destroy, and avoid recursion there.
9420
9421         * gtk/gtktypeutils.c:
9422         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9423         boxed_copy/boxed_free. this needs a more general solution based on a
9424         publically installed code-generator utility.
9425
9426         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9427         glib's gobject has support for that now.
9428         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9429
9430 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9431
9432         * gtk/gtksignal.[hc]:
9433         * gtk/gtkmarshal.[hc]:
9434         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9435         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9436         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9437         care of that.
9438
9439         * *.c: marshaller name fixups.
9440
9441         * gtk/gtkmarshal.list: added a comment briefing the format.
9442
9443 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9444
9445         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9446         compatibility macros here now. more specifically, most of
9447         the API is preserved (yes, _most_, nonwithstanding the
9448         following exceptions listed, the API is stil lHUGE ;)
9449         things that got removed completely:
9450         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9451         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9452         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9453         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9454         gtk_signal_remove_emission_hook().
9455         non-functional functions variants:
9456         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9457         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9458         not supported anymore.
9459         (gtk_signal_compat_matched): new internal function to aid
9460         implementation of the compatibility macros, it  provides
9461         functionality to block/unblock/disconnect handlers based
9462         on func/data.
9463
9464         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9465
9466         * *.c: adaptions to new type registration API signatures.
9467
9468 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9469
9470         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9471
9472 2000-10-25  Robert Brady  <robert@suse.co.uk>
9473
9474         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9475         gdk_property_delete): If window == NULL, assume the root window.
9476         (restoring the behaviour that was in 1.2).
9477         
9478         * gtk/testtext.c (save_buffer): Allow creation of new files when
9479         saving.
9480
9481         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9482         calls to read().
9483
9484 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9485
9486         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9487
9488         * gdk/win32/gdkdrawable-win32.c
9489         * gdk/win32/gdkimage-win32.c
9490         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9491         X11 backend.
9492
9493         * gdk/win32/gdkcc-win32.c
9494         * gdk/win32/gdkcolor-win32.c
9495         * gdk/win32/gdkfont-win32.c
9496         * gdk/win32/gdkinput-win32.c
9497         * gdk/win32/gdkmain-win32.c
9498         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9499
9500 2000-10-24  Havoc Pennington  <hp@redhat.com>
9501
9502         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9503         it a static function
9504
9505         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9506         redraw text when a tag is applied to it.
9507
9508         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9509         (gtk_text_tag_affects_nonsize_appearance): private functions to
9510         see if a tag requires various kinds of redraw/layout to be queued
9511         up.
9512
9513         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9514
9515         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9516         at the start of the buffer, so search works by default
9517
9518         * gtk/gtktextiter.c (lines_match): init match_start always
9519
9520         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9521         function, get iter at a line + a byte index
9522
9523         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9524         to set byte position within a line
9525         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9526
9527 2000-10-23  Havoc Pennington  <hp@redhat.com>
9528
9529         * gtk/testtext.c: Re-enable the "find" dialog
9530
9531         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9532         
9533         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9534         the arguments to gdk_draw_drawable were in the wrong order
9535         (gdk_window_paint_init_bg): This function was ignoring the
9536         init_region, instead of clipping to it, so the entire backing
9537         pixmap was cleared on every begin_paint()
9538         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9539         was in here again, the loop kept using the same GtkWindowPaint
9540         over and over.
9541         (gdk_window_begin_paint_region): Fix a bug where we had two
9542         x_offset instead of x_offset and y_offset
9543
9544         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9545         before we get the image.
9546         (gdk_draw_drawable): get the composite before we draw the drawable.
9547         (gdk_drawable_real_get_composite_drawable): default
9548         get_composite_drawable implementation that returns the drawable 
9549         itself
9550
9551         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9552         get_composite_drawable virtual function
9553
9554         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9555         list-walking bug
9556
9557         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9558         make this work if the source drawable is a GdkDrawableImplX11
9559         instead of a public drawable type. This is really broken; the
9560         problem is that GdkDrawable needs a virtual method get_xid(), but
9561         of course that doesn't work in practice. Enter RTTI.
9562
9563         Also, improve mismatched depth message.
9564
9565         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9566         GdkPixmap
9567
9568         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9569         install _gdk_x11_get_image as our implementation of get_image
9570         
9571         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9572         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9573
9574         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9575         gdk_drawable_get_image
9576
9577         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9578
9579         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9580         get_image
9581
9582         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9583         trailing semicolon after for loop
9584
9585 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9586
9587         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9588         where font_desc for widget's context lagged widget's font_desc by
9589         one step.
9590
9591 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9592
9593         * gdk/win32/gdkgc-win32.c
9594         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9595
9596         * gtk/makefile.mingw.in
9597         * gtk/gtk.def: Updates.
9598
9599         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9600         library.
9601
9602         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9603
9604         * gtk/makefile.msc: Remove
9605
9606         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9607
9608         * gtk/Makefile.am: Add it.
9609
9610         * configure.in: Generate it.
9611
9612         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9613         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9614         something even if not implemented, to satisfy picky MSVC.
9615
9616         Patches by Hans Breuer:
9617         
9618         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9619         SetBkMode() and SetTextAlign() before calling
9620         pango_win32_render().
9621
9622         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9623         Set hcliprgn to NULL after destroying it.
9624         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9625
9626         * gdk/win32/gdkgeometry-win32.c
9627         (_gdk_windowing_window_queue_antiexpose): More effective
9628         implementation.
9629
9630         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9631         depth as default, not the visual's.
9632
9633         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9634         against empty title.
9635
9636         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9637         IMAGE_PRIVATE_DATA.
9638
9639         * gdk/win32/gdkimage-win32.c: Use it.
9640
9641 2000-10-22  Robert Brady  <robert@suse.co.uk>
9642
9643         * configure.in: Check for bind_textdomain_codeset
9644
9645         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9646         present, make use of it.
9647
9648         Add a translatable string "default:LTR" which, if translated
9649         to "default:RTL", will cause the default direction to be
9650         Right-to-Left.
9651
9652         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9653         direction if marked as flippable.
9654
9655         * gtk/gtkhscale.c: Mark widget as flippable.
9656         
9657 2000-10-04  Havoc Pennington  <hp@redhat.com>
9658
9659         * gtk/testgtk.c (create_buttons): create some stock buttons
9660         with the default accel group
9661         (create_image): test some new GtkImage features
9662         (make_message_dialog): test GtkMessageDialog
9663         (create_modal_window): fix someone's bizzarro indentation
9664
9665         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9666         GTK_WIN_POS_CENTER_ON_PARENT. 
9667         Add "destroy with parent" setting, which means the window goes
9668         away with its transient parent.
9669         (gtk_window_get_default_accel_group): get the default accel group
9670         for the window.
9671         (gtk_window_set_destroy_with_parent): set/unset destroy with
9672         parent flag
9673         (gtk_window_read_rcfiles): invalidate icon set caches
9674         after reloading rcfiles 
9675
9676         * gtk/gtkenums.h (GtkWindowPosition): add
9677         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9678         on its parent window when the dialog is mapped for the first time.
9679
9680         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9681         a simple message dialog class
9682         
9683         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9684         handler to emit response signal, and maybe later it would
9685         honor a hide_on_delete flag - though that isn't there yet.
9686         Set border width on the vbox to 2, so we get some padding.      
9687         Use a button box for the action area.
9688         (gtk_dialog_key_press): synthesize a delete event if Esc
9689         is pressed and the GtkWidget key press handler didn't 
9690         handle the escape key.
9691         (gtk_dialog_new_with_buttons): new function creates a dialog
9692         with some default buttons in it.
9693         (gtk_dialog_add_action_widget): add an activatable widget
9694         as a button in the dialog - you can also add a non-activatable
9695         widget by accessing the action area directly.
9696         (gtk_dialog_add_button): add a simple button - stock ID or 
9697         label - to the action area
9698         (gtk_dialog_response): emit response signal
9699         (gtk_dialog_run): block waiting for the dialog, return 
9700         the response. Override normal delete_event behavior, so that 
9701         delete_event does nothing inside gtk_dialog_run().
9702
9703         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9704         emitted when an action widget is clicked or the dialog gets
9705         delete_event
9706
9707         * gtk/gtk.h: add gtkmessagedialog.h
9708
9709         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9710
9711 2000-10-18  Havoc Pennington  <hp@redhat.com>
9712
9713         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9714         where any number of empty lines would get skipped
9715
9716         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9717         edge.
9718
9719         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9720         warning about invalid iterators (explain more thoroughly)
9721         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9722
9723         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9724         big
9725
9726         * demos/*.c: Add error handling
9727
9728         * gtk/gtktextbuffer.c: don't modify const iterators
9729
9730         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9731
9732         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9733         on file load
9734
9735         * gtk/gtkiconfactory.c: Update to reflect addition of error
9736         handling to gdk-pixbuf loaders
9737
9738 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9739
9740         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9741         move to new modularized testgtk.
9742
9743 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9744
9745         * gtk/gtktreeview.c: Draw the arrows correctly.
9746
9747         * gtk/gtktreemodel.c: Added user docs.
9748
9749         * gtk/gtk.h: remove gtktreedatalist.h.
9750
9751         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9752         parent when generating my type.
9753
9754         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9755         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9756
9757 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9758
9759         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9760         GtkTreeModel from object to interface.
9761
9762 2000-10-16  Havoc Pennington  <hp@redhat.com>
9763
9764         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9765         compilation
9766
9767 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9768
9769         * gtk/gtktreeselection.c: Add API documentation to all public
9770         functions.
9771
9772         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9773         functions.
9774
9775 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9776
9777         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9778         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9779         docs to all public functions.
9780
9781         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9782         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9783         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9784         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9785         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9786         issue.
9787
9788 2000-10-14  Robert Brady  <robert@suse.co.uk>
9789
9790         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9791
9792 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9793
9794         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9795         values other then G_TYPE_STRING.
9796         * gtk/gtktreeselection.c: Minor commenting updates.
9797         * gtk/gtktreeview.c: Format updates.
9798
9799 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9800
9801         * README.win32: Update.
9802
9803         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9804         lines that had been deleted by mistake (?).
9805
9806         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9807         also the case fg==white and bg==black (but still not randomly
9808         coloured cursors). Thanks to Wolfgang Sourdeau.
9809
9810         * gdk/win32/*.c: Silence gcc -Wall.
9811
9812         * gtk/gtk.def: Add missing entry points.
9813
9814         Fixes by Hans Breuer:
9815
9816         * gdk/makefile.msc
9817         * gdk/win32/makefile.msc: Update.
9818
9819         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9820         some MSVC thing, presumably), cause breakpoint on failures. Add
9821         GDK_NOR case. Call g_log_set_always_fatal.
9822
9823         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9824         should be pased by reference.
9825         
9826         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9827         
9828         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9829
9830         * gdk/win32/gdkevents-win32.c
9831         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9832
9833         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9834         implementation object.
9835
9836         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9837         not just windows.
9838         
9839         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9840         Use the wrapper object.
9841         
9842 2000-10-06  Havoc Pennington  <hp@redhat.com>
9843
9844         * Makefile.am (SRC_SUBDIRS): contrib subdir
9845
9846         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9847         so it can be used in Xlib version
9848
9849         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9850         tree
9851
9852         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9853         change from 1.0 tree that returns first frame of animation
9854         if the loaded file is an animation.
9855
9856         * contrib: add new directory to hold stuff that comes with GTK+
9857         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9858         
9859         * configure.in: add contrib/*
9860
9861 2000-10-05  Havoc Pennington  <hp@redhat.com>
9862
9863         * demos/testpixbuf-save.c: add pixbuf save test
9864
9865         * demos/Makefile.am: add testpixbuf-save.c
9866
9867 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
9868
9869         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
9870         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
9871         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
9872         * gtk/gtktreeselection.[ch]: Replaced
9873         "node_selected"/"node_unselected" signal with "selection_changed"
9874         signal.
9875
9876 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9877
9878         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
9879         tree widget.
9880
9881 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
9882
9883         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
9884         drawing.
9885
9886 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
9887
9888         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
9889         Move list pointer forwards before removing item from
9890         list. (Crash reported by Salmaso Raffaele)
9891
9892         * gdk/gdkwindow.h: Remove spurious trailing ,
9893
9894         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
9895         dependencies on uninstalled libraries, sorry folks.
9896
9897 2000-10-04  Havoc Pennington  <hp@redhat.com>
9898
9899         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
9900         gtk/gtkiconfactory.c: Fix copyrights    
9901
9902         * demos/testpixbuf.c: add inline pixbuf test
9903         
9904 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
9905
9906         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
9907         Add gdk_window_iconify.
9908
9909         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
9910         (gdk_window_set_geometry_hints): Add win_gravity
9911         to geometry structure.
9912
9913         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
9914         Implement _NET_WM_PING.
9915
9916         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
9917         Set _NET_WM_PID on the client leader.
9918
9919         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
9920         Handle UTF-8 better.
9921
9922         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
9923         UTF-8 better, set _NET_WM_NAME as well. Only set
9924         icon name if it hasn't previously been explicitely 
9925         set.
9926
9927 2000-10-03  Havoc Pennington  <hp@redhat.com>
9928
9929         * gtk/testtextbuffer.c: clean up trailing whitespace,
9930         add extensive tests for tag toggle iteration.
9931         
9932         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
9933         distance
9934
9935         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9936         optimize case where the tag root is on level 1
9937         (gtk_text_line_previous_could_contain_tag): attempt to implement
9938         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
9939         functionality
9940
9941         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
9942         Implement this, though not very efficiently.
9943
9944         * gtk/gtktextiterprivate.h: reformat
9945
9946         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
9947         iterator
9948
9949         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
9950         this to properly revalidate the iterators.
9951
9952         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
9953         properly at the end of the line (and therefore on empty lines)
9954
9955         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
9956         maybe we should return a value...
9957
9958 2000-10-03  Tor Lillqvist  <tml@iki.fi>
9959
9960         * config.h.win32: Guard definition of alloca(). glib.h now handles
9961         that.
9962
9963         * gdk/gdk.def
9964         * gtk/gtk.def: Add new entry points.
9965
9966         Changes just to make GTK+ build without errors on Win32. No hope
9967         of it working in its current state, though...:
9968         
9969         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
9970         some functions from the X11 backend, just to make GTK+ build.
9971
9972         * gdk/makefile.mingw.in
9973         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
9974         number. Add new object files.
9975
9976         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
9977         GetMessageTime to get timestamp (where on X11 uses
9978         gdk_x11_get_server_time()).
9979
9980 2000-10-02  Havoc Pennington  <hp@pobox.com>
9981
9982         * gtk/gtktextview.c: text_window_* weren't static and should have
9983         been.
9984         Start work on child widgets; not yet complete, syncing to 
9985         office computer.
9986
9987         * gtk/gtktextchild.h: change this to contain a public interface,
9988         starting work on child interfaces.
9989         * gtk/gtktextchildprivate.h: move private interfaces here
9990
9991         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
9992
9993         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
9994         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
9995         gtk/gtktextmark.c: copyright notices
9996
9997         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
9998         internal functions      
9999
10000         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10001         internal function
10002
10003         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10004         Reformatting    
10005
10006 2000-09-30  Havoc Pennington  <hp@pobox.com>
10007
10008         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10009         NULL start/end pointers
10010
10011         * gtk/gtktextbuffer.c: Write some docs
10012         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10013         NULL, so you can just check whether there's a selection.        
10014
10015         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10016         cleanup_line or segments_changed ourselves, it gets done 
10017         in unlink_segment
10018
10019         * gtk/gtktextmark.h:
10020         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10021         
10022         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10023
10024         * gtk/gtktextmark.c: delete some more old Tk cruft
10025
10026         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10027         mark before removing it, so we can emit MARK_DELETED with a valid
10028         pointer.
10029         (gtk_text_buffer_mark_set): hold ref across signal emission
10030
10031         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10032         whining about attempts to delete special marks
10033
10034         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10035         underscore, since it's internal.
10036
10037         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10038         now implemented in terms of iterators in gtktextiter.h
10039
10040         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10041         New function, destructively sets contents of buffer. Also 
10042         a convenient way to clear the buffer by setting text to ""
10043
10044         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10045         multiline string literal
10046
10047         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10048         text changes.
10049
10050         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10051         is not dereferenceable
10052         (gtk_text_iter_forward_lines): fix return value
10053
10054 2000-09-29  Havoc Pennington  <hp@redhat.com>
10055
10056         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10057
10058         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10059         that set border window size to have nicer name
10060         (gtk_text_view_mark_set_handler):  Fix this to have the 
10061         right signature.
10062
10063         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10064
10065         * gtk/testtext.c: Update with API changes, put line numbers on 
10066         both sides.
10067         
10068         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10069         with this
10070
10071         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10072         pixbuf; delete a big block of #if 0 Tk code
10073
10074         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10075         insert_pixmap with insert_pixbuf
10076
10077 2000-09-29  Martin Baulig  <baulig@suse.de>
10078
10079         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10080         confusion with the GdkPixbuf of the GNOME 1.x platform.
10081
10082 2000-09-29  Havoc Pennington  <hp@pobox.com>
10083
10084         * gtk/gtktextview.c: Implement the side windows.
10085
10086         * gtk/testtext.c: Implement simple line numbering in the 
10087         left side window; seems to make scrolling sloooow. Oops.
10088         Also, cursor blink is for some reason causing redraws
10089         of the line numbers. Should investigate...
10090
10091 2000-09-28  Havoc Pennington  <hp@redhat.com>
10092
10093         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10094         scrolling child windows, and draw focus rectangle properly.
10095         
10096         (gtk_text_view_buffer_to_window_coords):
10097         Coordinate transformation to deal with all these freaking windows
10098         and offsets
10099         (gtk_text_view_window_to_buffer_coords): transform the other way
10100
10101         * gtk/testtext.c (create_buffer): Update to match Pango API change
10102
10103         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10104         anonymous tags
10105         (foreach_unref): don't emit remove signal from finalize, just
10106         set tag's parent to NULL
10107
10108 2000-09-26  Havoc Pennington  <hp@redhat.com>
10109
10110         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10111         Fix some warnings       
10112
10113 2000-09-26  Havoc Pennington  <hp@redhat.com>
10114
10115         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10116         headers into the private header list
10117
10118         * Makefile.am (pkgconfig_DATA): install pkg-config files
10119
10120         * configure.in: add pkg-config files
10121
10122         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10123
10124         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10125         outstanding icon caches on theme change.
10126
10127         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10128         important types:
10129
10130         (GtkIconSource): Specification for creating a pixbuf 
10131         appropriate for a direction/state/size triplet from 
10132         a source pixbuf or filename
10133
10134         (GtkIconSet): List of GtkIconSource objects that are used to
10135         create the "same" icon (e.g. an OK button icon), and cache for
10136         rendered icons
10137
10138         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10139         up the icon set for a given stock ID.  GTK maintains a stack of
10140         GtkIconFactory to search, and applications or libraries can add
10141         additional icon factories on top of the stack
10142         
10143         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10144         the set of GtkIconSource specified for a given stock ID into 
10145         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10146         RcStyle, under the specified stock ID.
10147
10148         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10149         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10150         This allows people to theme how prelight, insensitive, etc. are
10151         done.
10152
10153         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10154         icon factories for a style, and return the resulting 
10155         icon set if any.
10156
10157         (gtk_style_render_icon): Render an icon using the render_icon 
10158         method in the GtkStyleClass.
10159
10160         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10161         Use the style for a given widget to look up a stock ID, get the
10162         icon set, and render an icon using the render_icon method 
10163         of the style
10164
10165         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10166         (contains information about a stock item), the built-in stock item
10167         IDs, and functions to add/lookup stock items.
10168
10169         * gtk/stock-icons/*: Stock icons that come with GTK
10170
10171         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10172         a button based on a GtkStockItem
10173         (gtk_button_new_accel): Takes a uline string and accel group, and
10174         installs the accelerator.
10175
10176         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10177         image-display widget.
10178
10179 2000-09-25  Havoc Pennington  <hp@redhat.com>
10180
10181         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10182
10183         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10184         Fix a bug when removing node data, we didn't properly 
10185         re-splice the linked list after removing the data.
10186
10187         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10188         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10189
10190         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10191
10192         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10193         for the layout from the GtkTextTag.
10194
10195         * gtk/gtktexttypes.h: delete tab and search cruft, 
10196         remove g_convert() in favor of GLib version
10197
10198         * gtk/gtktexttypes.c: remove tab implementation from here,
10199         move to Pango
10200
10201         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10202         tab stuff using new PangoTabArray from Pango
10203
10204         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10205         unused border_width stuff
10206
10207 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10208
10209         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10210         glib) and now useless utf_to_latin1() latin1_to_utf()
10211
10212         * gtk/gtktextview.[ch]: Change ::move_insert and
10213         ::delete_text action signals to ::move and ::delete;
10214         create the signals with the right enumeration type,
10215         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10216         C-v bindings, change Home, End to move to beginning/end
10217         of line, Add C-Home C-End to move to beginning/end
10218         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10219         combine ::scroll_text into ::move; use new GtkSelectionData
10220         functions to simplify DND text handling.
10221         
10222         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10223         deletion enumerations here, rename enumeration values to 
10224         be consistently plural.
10225
10226         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10227         for cut/copy/paste and primary selection.
10228
10229         * gtk/gtktextbuffer.[ch]: Remove excess time and
10230         'interactive' arguments from cut/copy/paste;
10231         rename cut to cut_clipboard, etc; remove
10232         gtk_text_buffer_get_clipboard_contents().
10233
10234         * gtk/gtktextlayout.[ch]: Add 
10235         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10236         line ends.
10237
10238         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10239         Functions to set or get a UTF-8 string on the selection
10240         data.
10241
10242         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10243         interfaces.
10244
10245         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10246         created widgets - one of these is useless if we don't.
10247
10248         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10249         a public function clear all targets registered for the
10250         widget.
10251
10252         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10253         Never call gtk_widget_realize() - that was just asking
10254         for bizarre side-effects.
10255
10256         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10257         gdk_selection_owner_set even if the widget is the
10258         same so that we reliably update the timestamp on
10259         the server.
10260
10261         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10262         gdk_x11_get_server_time() function.
10263         
10264         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10265         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10266         Add some tricky filtering on serial numbers for
10267         selection clear events to fix up long-standard
10268         race condition FIXME's in gtkselection.c.
10269
10270         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10271         routines to convert from utf8 to compound text or
10272         STRING and from a text property to UTF-8.
10273
10274         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10275         a convenience function gdk_get_current_event_time().
10276
10277         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10278         and free selection_data->data properly
10279
10280 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10281
10282         * gtk/gtkthemes.c: Remove some unecessary includes.
10283
10284 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10285
10286         * gtk/gtktextdisplay.c
10287         * gtk/gtktextlayout.c
10288         * gtk/gtktexttag.c
10289         * gtk/gtktexttag.h
10290         * gtk/testtext.c: Change the overstrike property to strikethrough,
10291         to closer match pango.
10292
10293 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10294
10295         * gtk/gtktextview.c: Fix up visibility so that focus,
10296         cursor_visible and blink interact properly.  Reenable cursor blink
10297         which had been roughly disabled. Make blink and focus
10298         properly per-view.
10299
10300         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10301         Add a flag for whether to display insertion cursor and
10302         a function to set the flag.
10303
10304         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10305         get_line_y() to get_line_yrange(), to be a bit more generally
10306         useful.
10307
10308 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10309
10310         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10311           do stop_navigating_submenu, to clear last timeout properly.
10312           Also in gtk_menu_motion_notify move ignore_enter above
10313           the conditional to make it always happen as suggested by Owen
10314
10315 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10316
10317         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10318
10319         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10320         w32api headers.
10321
10322         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10323         declarations.
10324
10325         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10326         (gdk_win32_get_colormap): A line had been deleted by mistake.
10327
10328         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10329         (gdk_event_translate): Handle more virtual keycodes to be able to
10330         generate GDK events for Control-comma, Control-period, etc.
10331
10332         * gtk/gtk.def: Add some missing entry points.
10333
10334 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10335
10336         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10337         Doc comment fixing. (Mostly non-matching parameter names.)
10338
10339         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10340         comments a little to avoid looking like a doc comment.
10341
10342         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10343         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10344         conversions be changed to GError?)
10345
10346         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10347         Move private #defines into .c file.
10348
10349         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10350         order of argument addition, remove duplicates.
10351
10352         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10353         parent class is FrameClass, not BinClass.
10354
10355         * gtk/gtk.h: Add gtkinvisible, which was missing.
10356         (It's occasionalyl useful for client apps, if seldom.)
10357
10358         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10359         #define.
10360
10361 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10362
10363         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10364         coordinates when creating window, instead of GDK-space
10365         coordinates. (Avoid BadValue on too large windows.)
10366
10367 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10368
10369         * configure.in (use_mmx_asm): Remove conftest* after use along the
10370         lines of AC_TRY_COMPILE.        
10371         
10372         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10373         of g_dirname, which is deprecated.
10374         (gtk_rc_parse_any): Removed calls to
10375         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10376
10377         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10378         Removed calls to g_hash_table_{freeze,thaw}, as they are
10379         deprecated now.
10380
10381         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10382         instead of g_basename.
10383         
10384 2000-09-04 Elliot Lee <sopwith@redhat.com>
10385         
10386         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10387         ANSI warning.
10388
10389 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10390
10391         * gtk/gtkwidget.h:  Add some documenting comments about 
10392           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10393           just as owen said on irc.
10394
10395         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10396           set HAS_DEFAULT.  Only set it if there isn't another window
10397           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10398           it if the widget is not the focused window with RECEIVES_DEFAULT.
10399           This fixes weird double default bugs in dialogs which has things
10400           call gtk_window_set_default at times.
10401
10402 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10403
10404         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10405         Nils Barth and David Santiago to improve submenu
10406         navigation. The patch does this by creating a triangular
10407         region from the point where the pointer leaves the
10408         menu to the submenu.  While the pointer is in
10409         that region and a timeout has not expired, events 
10410         that would cause the active submenu to change are
10411         ignored.
10412
10413 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10414
10415         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10416         moving a toplevel window immediately after sizing it would
10417         result in it being sized back to the old size since 
10418         impl->width, impl->height aren't updated until we hear
10419         back from the server. There is still a (longstanding) bug
10420         here that gdk_window_get_size() will give the wrong size
10421         until we do hear back.
10422
10423 2000-08-31  Havoc Pennington  <hp@redhat.com>
10424
10425         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10426         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10427         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10428         Rename GtkTextStyleValues to GtkTextAttributes
10429
10430 2000-08-31  Havoc Pennington  <hp@pobox.com>
10431
10432         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10433         for rapid testing whether an iterator is the end iterator
10434         (gtk_text_btree_new): init end line cache
10435         (gtk_text_line_is_last): use fast cached line to 
10436         see if we're the last line.
10437         (get_last_line): use cached line here too, should 
10438         speed up some random unrelated code.
10439         
10440 2000-08-30  Havoc Pennington  <hp@pobox.com>
10441
10442         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10443         signals.
10444
10445         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10446         delete_text signals. This allows the signals to be used for
10447         implementing undo.
10448
10449         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10450         provide "interactive" argument when emitting insert_text or
10451         delete_text signal.
10452         
10453 2000-08-30  Havoc Pennington  <hp@pobox.com>
10454
10455         * gtk/gtktextbuffer.c: Docs
10456
10457 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10458
10459         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10460         from switch statements, since Tor removed the enumeration
10461         value.
10462         
10463         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10464         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10465
10466 2000-08-29 Elliot Lee <sopwith@redhat.com>
10467         * */*.h: Use G_GNUC_CONST.
10468
10469 2000-08-27  Havoc Pennington  <hp@pobox.com>
10470
10471         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10472         minor indentation fixes, inserted some FIXME about stuff I
10473         realized was broken while documenting it.
10474         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10475         GTK convention  
10476
10477 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10478
10479         * gtk/testgtk.c (create_styles): Fix double free of
10480         font desc.
10481
10482 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10483
10484         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10485         
10486         * gtk/testgtk.c (create_styles): Add a test for modifying
10487         the style through gtk_widget_modify_*.
10488
10489         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10490         a function to get the current modifier style.
10491
10492         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10493         of the passed in GtkRcStyle instead of ref'ing it.
10494
10495         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10496
10497 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10498
10499         * gdk/gdkimage.h
10500         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10501         shared memory image+pixmap GdkImage type, or
10502         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10503         I am dropping that.
10504
10505         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10506         actually call gtk_init_abi_check(), passing also
10507         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10508
10509         * gtk/gtk.def
10510         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10511         New functions, used to check that the GTK+-using code has been
10512         compiled using the correct compiler and switches. In particular,
10513         with gcc one has to use the -fnative-struct switch as GTK+ is
10514         compiled with that.
10515
10516 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10517
10518         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10519         ->prev fields when merging lists. (Found simultaneously
10520         by Pawel Salek and Jakub Jelinek)
10521
10522 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10523
10524         * gdk/gdk.def
10525         * gtk/gtk.def: Add missing entries.
10526
10527         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10528         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10529
10530         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10531         function. Dummy implementation at this point.
10532
10533         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10534         rules. Undefine GTK_COMPILATION when compiling the test programs.
10535         
10536         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10537
10538 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10539
10540         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10541         to convert back and forth from UTF-8 and the "system" (or "current
10542         locale") charset when necessary. Indentation/spacing cleanup.
10543
10544 2000-08-10  Havoc Pennington  <hp@redhat.com>
10545
10546         * Makefile.am (snapshot): Change the format of the snapshot
10547         version to match glib
10548
10549         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10550         from EXTRA_DIST since it doesn't seem to exist
10551
10552 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10553
10554         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10555         version of the directory name (not the UTF-8 one) when building
10556         the path name to stat().
10557
10558 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10559
10560         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10561         PANGO_ATTR_SHAPE set.
10562
10563 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10564
10565         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10566         Peter Osterlund to simplify the code while keeping the
10567         functionality the same.
10568
10569 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10570
10571         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10572         is_viewable() test further inside the function, since removing the 
10573         window from the redraw list without clearing ->update_area
10574         was also very broken.
10575
10576 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10577
10578         * configure.in: Check for <unistd.h>.
10579
10580 2000-08-01  Martin Baulig  <baulig@suse.de>
10581
10582         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10583         to display the message that this is a development version of GTK+.
10584
10585 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10586
10587         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10588         was depending on widget->allocation instead of the width of text_area,
10589         which was incorrect for subclasses like GtkSpinButton.
10590
10591         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10592         with width == 1 tests that should be width == -1.
10593
10594 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10595
10596         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10597         (broken, Elliot, every single window blank on X) custom code with call
10598         to gdk_window_is_viewable() which a) prevents code duplicate and
10599         b) works. 
10600
10601 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10602
10603         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10604         to get the GDK_PARENT_ROOT() macro to work.
10605         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10606         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10607         of, windows that aren't shown.
10608         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10609         pointer grab stuff.
10610
10611 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10612
10613         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10614           s/gtk_main_iteration/g_main_iteration/
10615
10616           Did this already in change:
10617                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10618           don't know how it got reverted.
10619
10620 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10621
10622         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10623         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10624
10625         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10626         not gdk_pixbuf.
10627
10628 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10629
10630         * configure.in,po/{sp,sr}.po: Added Serbian files
10631
10632 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10633
10634         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10635
10636         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10637         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10638         GIOChannel implementation.
10639
10640         * gdk/win32/gdkinput.c
10641         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10642
10643         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10644         definition to match prototype.
10645
10646         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10647
10648 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10649
10650         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10651         function, to allow handling image formats that cannot be detected
10652         by looking at content alone.
10653
10654 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10655
10656         * docs/tutorial/*.gif *.jpg *.eps
10657           Update these to the same look-n-feel.
10658           Why does including images in DocBook suck so badly?
10659
10660 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10661
10662         * gtk/gtktable.c: applied patch from Phil Thompson
10663         <phil@river-bank.demon.co.uk> that enables space settings for
10664         the last row/columns as well.
10665
10666 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10667
10668         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10669         updates the license headers to the GNU Lesser General Public License,
10670         as well as updating the copyright year to 2000.
10671
10672 2000-07-26  Robert Brady  <rwb197@zepler.org>
10673
10674         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10675           and po/Makefile, was installing and looking for them under gtk20
10676           and gtk2 respectively.
10677
10678 2000-07-25  Havoc Pennington  <hp@redhat.com>
10679
10680         * gtk/testtext.c: Comment out some stuff that depends on the rest
10681         of my patches.
10682
10683 2000-07-25  Havoc Pennington  <hp@redhat.com>
10684
10685         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10686         buffer
10687
10688 2000-07-25  Havoc Pennington  <hp@redhat.com>
10689
10690         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10691         widget changes.
10692
10693         * gtk/gtktextview.h: To be consistent with usage of "line"
10694         throughout the API to mean "newline-terminated thingy", change
10695         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10696         to MOVEMENT_LINE.
10697
10698         (GtkTextView): Add flags for default editability, and whether to
10699         show the cursor. Add functions to get/set that. Add 
10700
10701         (gtk_text_view_get_iter_location): new function
10702
10703         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10704         gtktextlayout.h
10705         (g_convert): Add g_convert temporarily, will go in glib in a bit
10706         
10707         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10708         GtkTextTagTableForeach instead of brokenly using GHFunc.
10709         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10710
10711         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10712         moved to public header.
10713
10714         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10715         "invisible", since "elide" was a bad name.
10716         (gtk_text_tag_get_priority): Added
10717
10718         (GtkTextStyleValues): put this in public header, along with
10719         functions to use it.
10720
10721         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10722         longer include gtktextbtree.h.
10723
10724         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10725         gtk_text_mark_deleted
10726
10727         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10728         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10729         to make this possible. Now we only need to install
10730         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10731         (However the Makefile.am isn't changed yet because of the
10732         logistics of merging gtk-hp-patches piecemeal)
10733
10734         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10735         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10736         gtk_text_iter_get_line is now used in the public API for a
10737         different purpose.
10738
10739         * gtk/gtktextiter.h: Clean up function names to be more
10740         consistent. Always call char offset "offset" and byte index
10741         "index". A "line" is always a line number. 
10742
10743         (gtk_text_iter_is_last): new function, more efficient than 
10744         the existing way to check
10745         (gtk_text_iter_is_first): new function, also more efficient
10746
10747         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10748
10749         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10750         gtk_text_iter_forward_char, etc.
10751
10752         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10753         forward_find_tag_toggle, since this isn't a linear search
10754
10755         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10756
10757         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10758         New functions, search for a buffer substring.
10759
10760         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10761         interactive and default editable (since we need to store that info
10762         until we receive the selection data).
10763
10764         Remove all the _at_char and at_line etc. versions of functions;
10765         only have iterator versions.
10766
10767         Add _interactive() versions of functions, that consider the
10768         editability of text. (FIXME add interactive flag to the 
10769         insert/delete signals per Darin's suggestion)
10770
10771         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10772         tag table if necessary
10773
10774         Remove declaration of gtk_text_buffer_get_iter_from_string
10775
10776         (_gtk_text_buffer_get_btree): private/internal function, added.
10777         
10778
10779         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10780         (gtk_text_line_is_last): new function
10781
10782 2000-07-25  Havoc Pennington  <hp@redhat.com>
10783
10784         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10785         using GtkProgressBar. See Changes-2.0.txt for details.
10786
10787         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10788         "pulse_step" which are the equivalent of
10789         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10790         Implement new API.
10791         
10792         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10793         (use_text_format) to mark whether text set on the progress bar is
10794         a format string. Deprecate entire GtkProgress interface.
10795
10796         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10797         (gtk_progress_build_string): make this a no-op if use_text_format
10798         is FALSE
10799
10800         * docs/Changes-2.0.txt: Describe progress bar changes.
10801
10802 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10803
10804         * Makefile.am: Include the build directory.
10805
10806         * configure.in: Generate build/Makefile, build/win32/Makefile,
10807         gdk/, gdk/win32/, and gtk/makefile.mingw.
10808
10809         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10810         Add GETTEXT_PACKAGE.
10811         
10812         * gdk/gdk.def
10813         * gtk/gtk.def: Updates.
10814
10815         * gdk/gdkfont.h
10816         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10817         need them any longer.
10818
10819         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10820
10821         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10822         PANGOWIN32_LIBS and gdk_pixbuf.
10823
10824         * gdk/win32: Compiles, but no doubt doesn't work at all.
10825
10826         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10827
10828         * gdk/win32/gdkinput.c: New file, temporarily.
10829         
10830         * gdk/win32/gdkinput-win32.h: New file
10831
10832         * gdk/win32/gdkinputprivate.h: Remove.
10833
10834         * gdk/win32/gdkpango-win32.c: New file.
10835
10836         * gtk/makefile.mingw.in: New file
10837
10838         * gtk/makefile.cygwin: Removed
10839         
10840         * gtk/Makefile.am: Update accordingly.
10841
10842         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10843         made externally visible.
10844
10845         * gtk/gtkmain.c: Use it.
10846         
10847         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10848         is enough.
10849
10850         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10851
10852 2000-07-24 Elliot Lee <sopwith@redhat.com>
10853         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10854         individual backends already.
10855         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10856         again. Yes, there really is a good reason for this, if you are using the gdkregion
10857         internals, and if you're not, why do you care?
10858         * gdk/gdkwindow.c: Fix inverted condition
10859         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
10860         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
10861         * gtk/gtkrange.c: Redraw trough when moving.
10862         * gtk/gtktypeutils.c: Fix warning by adding const cast.
10863         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
10864
10865 2000-07-23  Tor Lillqvist  <tml@iki.fi>
10866
10867         * configure.in: Check for mkstemp and sigsetjmp. Output
10868         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
10869
10870         More work on GDK for Win32. Still in an intermediate state.
10871
10872         * gdk/makefile.cygwin
10873         * gdk/win32/makefile.cygwin: Removed.
10874         
10875         * gdk/makefile.mingw.in
10876         * gdk/win32/makefile.mingw.in: New files.
10877
10878         * gdk/Makefile.am
10879         * gdk/win32/Makefile.am: Generate and distribute them.
10880
10881         * gdk/win32/gdkwindow-win32.h
10882         * gdk/win32/gdkdrawable-win32.h
10883         * gdk/win32/gdkpixmap-win32.h: New files.
10884
10885         * gdk/win32/gdkcolor-win32.c
10886         * gdk/win32/gdkcursor-win32.c
10887         * gdk/win32/gdkdrawable-win32.c
10888         * gdk/win32/gdkgc-win32.c
10889         * gdk/win32/gdkimage-win32.c
10890         * gdk/win32/gdkprivate-win32.h
10891         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
10892         Rename fields and variables called xcursor, xid, etc (these names
10893         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
10894
10895 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
10896
10897         * gtk/gtkentry.[ch]: Fix some problems with vertical
10898         alignment.
10899
10900         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
10901         char/byte confusion.
10902
10903 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
10904
10905         * gtk/gtktextview.c (changed_handler): Fix bug where
10906         redraw wasn't being done properly when height of
10907         dirty region changed.
10908
10909         * demos/Makefile.am: Remove various references to
10910         -lgmodule
10911
10912 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
10913
10914         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
10915         PangoAttrShape to reserve space for pixmaps, add 
10916         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
10917         in the display functions.
10918         
10919         * gtk/testgtk.c (create_layout): Set some more exotic
10920         scrolled window options
10921
10922         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
10923         Add function to set the shadow type of a window, to allow
10924         putting a shadow around widgets such as GtkLayout or GnomeCanvas
10925         which don't draw their own frame.
10926
10927 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
10928
10929         * docs/tutorial/package-db-tutorial.sh: New file for
10930           packaging DocBook format tutorial
10931
10932 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
10933
10934         * docs/tutorial/gtk-tut.sgml: Minor updates
10935
10936         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
10937
10938 2000-07-19  Tor Lillqvist  <tml@iki.fi>
10939
10940         * gtk/gtksignal.c: Fix C++ comment.
10941
10942         * gtk/gtkimmulticontext.c
10943         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
10944         don't return value from void functions.
10945
10946         * gtk/gtk.def: Add gtk_rc_style_unref.
10947
10948 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10949
10950         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
10951         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
10952         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
10953         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
10954         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
10955         gtk/gtktypeutils.h: Include files outside of the extern "C"
10956         block. Makes some C++ compiler happy. Reported by Denis Vakatov
10957         <vakatov@peony.nlm.nih.gov>.
10958
10959 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
10960
10961         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
10962           Completes first pass. Hurrah!
10963
10964 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
10965
10966         * docs/tutorial/gtk-tut.sgml: More clean ups.
10967
10968 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
10969
10970         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
10971         paint the background of the text area which was accidentally
10972         removed at some point.
10973
10974         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
10975           
10976          - Move most of the functionality from the theme vtable
10977            into GtkRcStyleClass and GtkStyleClass. The moved
10978            vtable functions were changed a bit in the move to
10979            work better in their new home.
10980
10981          - Get rid of the engine and engine_data fields from
10982            GtkRcStyle and GtkStyle; instead the theme
10983            engine derives theme-specific subclasses of GtkRcStyle
10984            and GtkStyle
10985
10986          - Add extra dlsym() found entry point to themes,
10987            theme_create_rc_style().
10988
10989         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
10990         in gtk_style_real_copy.
10991
10992         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
10993         to register a type associated with an engine. (The engine
10994         won't be unloaded as there is an instance of the type.)
10995
10996
10997 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
10998
10999         * docs/tutorial/gtk-tut.sgml: Clean ups.
11000
11001 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11002
11003         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11004           of cleaning up to do.
11005
11006 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11007
11008         * gdk/testgdk.c: New file, quick hack to test backends for
11009         pixel-by-pixel correctness of the most simple graphic operations.
11010
11011 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11012
11013         * Really release 1.3.1
11014         
11015         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11016         include structure.
11017
11018 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11019
11020         * Released 1.3.1
11021
11022 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11023
11024         * gtk/gtktextlayout.c: use FALSE for size_only most
11025         of the time when calling gtk_text_layout_get_line_display()
11026         to avoid causing double reshapes when a redraw follows
11027         immediately after.
11028
11029 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11030
11031         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11032         appropriate region and gdk_window_process_updates() so trough
11033         updating doesn't lag behind the window being scrolled.
11034
11035         * gdk/gdkgc.c: Make parent_class pointer static.
11036          
11037 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11038
11039         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11040         include <string.h>.
11041          
11042         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11043         cut-and-paste error in computing memory offset for 4 channels.
11044
11045 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11046
11047         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11048         gtk_rc_append_default_pixmap_path(), since it wasn't
11049         adding an interesting path and we don't have a meaningful
11050         default for this value.
11051
11052 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11053
11054         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11055         gtk-config to gtk-config-2.0 move gtk_.m4 to
11056         gtk-2.0.m4
11057
11058         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11059         gdk/Makefile.am demos/Makefile.am: Change 
11060         library names to libgtk-1.3.la, etc, so that we
11061         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11062
11063         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11064         gdk/Makefile.am gdk/x11/Makfile.am
11065         Move include files into /usr/include/gtk-2.0, 
11066         /usr/lib/gtk-2.0/include/
11067          
11068         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11069         gtk/gtkintl.h: Change package for gettext from 
11070         gtk+ to gtk20. Put hack in autogen.sh to modify
11071         po/Makefile.in.in after gettextize to make this
11072         possible.
11073
11074         * gtk+.spec: Some updates, not tested.
11075
11076         * gdk-pixbuf/Makefile.am: Move loaders into
11077         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11078
11079         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11080         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11081         to THEMENAME/gtk-2.0/. Move engine directory  to
11082         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11083         
11084 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11085
11086         Win32 changes, still doesn't build though.
11087
11088         * gdk/makefile.cygwin
11089         * gdk/win32/makefile.cygwin
11090         * gtk/makefile.cygwin: Updates.
11091
11092         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11093         default values for fg and bg pixel as X11 does (0 and 1), not
11094         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11095         Use 0 for pen width by default (treated as 1 anyway later, but for
11096         apps that might check the value in the GdkGC).
11097         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11098         interface to gdk_gc_predraw and _postdraw.
11099
11100         * gdk/win32/gdkwin32.h
11101         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11102
11103         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11104         extraneous semicolon.
11105
11106         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11107
11108         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11109         not the Win32 bitspixel value.
11110
11111         * gdk/win32/gdkcc-win32.c:
11112         * gdk/win32/gdkcolor-win32.c 
11113         * gdk/win32/gdkprivate-win32.h
11114         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11115         GDK object structure.
11116
11117 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11118
11119         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11120         * docs/tutorial/gtk_tut_it.sgml (name): 
11121         * docs/tutorial/gtk_tut_fr.sgml (name): 
11122         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11123         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11124
11125 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11126
11127         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11128           small changes.
11129
11130 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11131
11132         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11133         a bug here, never been here and never fixed anything ;(
11134         (don't segfault if tree->root_tree is NULL, which happens prior
11135         to widget realization, but puke instead).
11136
11137 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11138
11139         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11140         add the necessary tokens.
11141
11142         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11143         (gtk_rc_style_to_style): copy thicknesses.
11144         (gtk_rc_init_style): apply thicknesses.
11145         (gtk_rc_parse_style): parse xthickness and ythickness.
11146
11147         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11148
11149         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11150         (gdk_window_new): 
11151         (_gdk_windowing_window_init): 
11152         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11153         (gdk_pixmap_create_from_data): 
11154         (gdk_bitmap_create_from_data): 
11155         (gdk_pixmap_new): 
11156         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11157         (gdk_image_new): 
11158         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11159         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11160         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11161         (gdk_colormap_get_system): 
11162         (gdk_colormap_new): 
11163         * gdk/gdkwindow.c (gdk_window_init): 
11164         * gtk/gtkstyle.c (gtk_style_new):
11165         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11166         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11167         * gtk/gtkrc.c (gtk_rc_style_new):
11168         use g_object_new() instead of g_type_create_instance() which
11169         is a private function for fundamental type implementations.
11170
11171 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11172
11173         * configure.in: Add check for db2html
11174
11175 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11176
11177         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11178         hack to set glib_debug_objects based on gtk_debug_flags.
11179
11180 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11181
11182         * INSTALL.in: Update the Prerequisites section.
11183
11184         * Makefile.am demos/Makefile.am docs/Makefile.am
11185         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11186         gdk/linux-fb/Makefile.am: Dist fixes
11187
11188 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11189
11190         * NEWS: 10,000 foot view of 1.3.1 changes.
11191
11192 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11193
11194         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11195         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11196         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11197         gdk/x11/gdkmain-x11.c: 
11198
11199         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11200         as a return value of gdk_*_grab(). Previously, we just
11201         returned the X11 values directly.
11202
11203 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11204
11205         * gdk/x11/Makefile.am: Patch from George Lebl to 
11206         install all the headers in the right place.
11207
11208 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11209
11210         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11211           initial conversion to DocBook.
11212
11213 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11214
11215         * README.win32: Improve a bit.
11216
11217         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11218         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11219         Alt+0nnn on the numpad (used to enter characters by numeric code
11220         from current DOS or ANSI codepage) working correctly, as in other
11221         Windows apps.
11222
11223         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11224         same argument validity tests as in X11 version.
11225         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11226
11227         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11228         definitions in case missing from headers.
11229
11230         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11231         destroy the window-specific cursor.
11232         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11233         calling GetModuleHandle(NULL).
11234         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11235         with CopyCursor before setting it as the window-specific
11236         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11237         also its Windows cursor) after calling this function. Destroy any
11238         previous window-specific cursor.
11239
11240 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11241
11242         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11243         font charset is iso8859-1, not iso-8859-1.
11244
11245 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11246
11247         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11248         Use g_get_charset() instead of g_get_codeset().
11249
11250         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11251         Comment out some strdup'ing functions to keep timj
11252         happy until we finish fighting this out.
11253
11254 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11255
11256         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11257         <= width or height.
11258
11259         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11260         from 1.2 for parent/child states.
11261
11262         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11263         of typos.
11264
11265         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11266         event structures, replace with a generic axes field. Replace 
11267         deviceid/sourec with GdkDevice *device.
11268
11269         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11270         to extract particular axis use value from event. (Also
11271         can be used for normal X/Y.)
11272
11273         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11274         allow for arbitrary number of axes, namespace everything
11275         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11276         everywhere.
11277
11278         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11279         Get rid of the gdk_input_vtable setup if favor of simply
11280         defining the functions in gdkinput-none/gxi/xfree.c in
11281         a similar fashion to the way that the port structure is 
11282         done.
11283
11284         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11285         for new event structures. 
11286
11287         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11288         new device interfaces.
11289
11290 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11291
11292         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11293         set the initial text.
11294
11295         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11296         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11297         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11298         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11299
11300         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11301         pango_layout_set_font_description to simplify.
11302
11303 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11304
11305         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11306         pango_layout_set_font_description to simplify.
11307
11308 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11309
11310         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11311         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11312         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11313
11314         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11315         PANGO_PIXELS() macro.
11316
11317 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11318
11319         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11320         that returns a PangoContext owned by the widget and updated to
11321         match future changes in the widget. Also, make 
11322         gtk_widget_create_pango_layout() use this context. If we ever
11323         add a ::changed signal to PangoContext, this will make things
11324         much more convenient. 
11325
11326         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11327         in the appropriate places instead of destroying the layouts and
11328         creating new ones.
11329
11330         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11331         in a few strategic places.
11332
11333 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11334
11335         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11336         gtk_widget_size_request() on reparented child, if one. Otherwise,
11337         queue_resize() on the child never results in it getting size-requested
11338         at all.
11339
11340         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11341         in option menus, so that (with luck) people won't copy it into
11342         their apps in the future.
11343
11344         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11345         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11346         a lot of problems with changing the size of the menu's menu
11347         items after adding it to the option menu.
11348
11349         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11350
11351         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11352         the text direction for a widget changes.
11353
11354         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11355         ::direction_changed to get rid of various hacks.
11356
11357 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11358
11359         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11360         name.
11361
11362 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11363
11364         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11365         flag to the structure. Do not call XFreePixmap on pixmaps created
11366         by gdk_pixmap_foreign_new().
11367
11368 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11369
11370         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11371         value using GdkRGB functionality given GdkColormap and GdkColor.
11372         (name not final, waiting for inspiration.)
11373         
11374         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11375         set the foreground/background of a GC using the GC's colormap
11376         and GdkRGB. (name not final, waiting for inspiration.)
11377
11378         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11379         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11380
11381         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11382         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11383         purely a function of the corresponding colormap. Make
11384         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11385
11386         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11387         gdk_pixbuf_*create_from_xpm_* in terms of
11388         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11389         code.
11390
11391         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11392         advantage of the new draw_rgb_32_image_dithalign.
11393
11394         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11395
11396         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11397         on each created GC.
11398
11399         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11400
11401         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11402         which we initialize from the drawable when the GC is created,
11403         if the drawable has a colormap.
11404
11405         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11406
11407         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11408
11409         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11410
11411 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11412
11413         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11414         actually returning expose events, make sure to set
11415         the count field properly.
11416
11417         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11418         accidentally reintroced bug which always cleared
11419         the graphics_exposures value. 
11420
11421 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11422
11423         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11424
11425 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11426
11427         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11428
11429 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11430
11431         * docs/faq/gtk-faq.sgml: Start of Section 6.
11432
11433 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11434
11435         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11436         
11437         (Fixes problem with drawing childless frames. Pointed out
11438         by and a first patch from Anders)
11439         
11440         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11441         compute a child_allocation, even if we don't have a child.
11442
11443         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11444         Always chain to the parent's impl, even if we don't have a child.
11445
11446 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11447
11448         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11449         use multiple parts of it instead of creating a bunch of separate
11450         segments, since the maximum number of segments per system is not
11451         large. (This might be worth backporting to GTK+-1.2.x if we make a
11452         new release )
11453
11454         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11455         structure in preparation for per-colormap GdkRGB.
11456
11457         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11458         to False when we get EINVAL from shmget so that the caller of
11459         gdk_image_new can retry with a smaller segment size.
11460
11461 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11462
11463         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11464
11465 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11466
11467         * configure.in: make the current version number 1.3.1 (binary age 0,
11468         interface age 0).
11469         
11470         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11471         gtkcompat.h is all we want.
11472
11473         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11474         GLib primitive types. fixed g_type_register_fundamental() argument
11475         ordering.
11476
11477         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11478         compiles.
11479
11480         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11481         object code cleanup, comment trigraph fixes, etc...
11482
11483 2000-06-23  Havoc Pennington  <hp@redhat.com>
11484
11485         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11486         instead of making up a bogus name for first_para_mark
11487
11488         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11489         0 as a context ID
11490
11491 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11492
11493         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11494
11495 2000-06-21  Havoc Pennington  <hp@pobox.com>
11496
11497         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11498         we didn't check window->bg_pixmap != GDK_NO_BG.
11499
11500         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11501         gdk-pixbuf
11502
11503 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11504
11505         * docs/faq/gtk-faq.sgm: Move file to here.
11506           TODO: Update Makfile.am 
11507
11508 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11509
11510         * docs/gtk-faq.sgm: Add Section 2
11511
11512 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11513
11514         * docs/gtk-faq.sgm: New file. Start of DocBook
11515           version of the FAQ.
11516
11517 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11518
11519         * configure.in (GDK_PIXBUF_MAJOR): Define version
11520         numbers for GDK_PIXBUF_*, as they get substituted
11521         into a header file. Need to consider versioning
11522         for gdk-pixbuf more carefully later.
11523
11524 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11525
11526         Work with srcdir != builddir.   
11527         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11528         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11529         * demos/testpixbuf.c: Likewise.
11530         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11531         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11532         <gdk/x11/gdkx.h>.
11533         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11534         "gdk-pixbuf.h".
11535         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11536
11537 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11538
11539         * TODO.xml: Change 1.4 version numbers to 2.0.
11540
11541 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11542
11543         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11544         fixups to GTK+ standard.
11545
11546 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11547
11548         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11549         gdk-pixbuf.
11550
11551         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11552         fixups for GObject.
11553
11554         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11555         gdk-pixbuf with GDK dependencies moved into GDK.
11556         
11557         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11558         move gdk-pixbuf-loader here until GObject has signals.
11559
11560         * demos/: New directory of demos. Move demos from
11561         gdk-pixbuf here.
11562
11563         * demos/pixbuf-init.c: Small bit of code to check for
11564         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11565         set GDK_PIXBUF_MODULEDIR appropriately.
11566
11567         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11568         define which no longer makes sense.
11569
11570 2000-06-21  Havoc Pennington  <hp@redhat.com>
11571
11572         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11573         gtk_get_default_language
11574
11575         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11576         new function to get the default language
11577
11578         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11579         s/gtk_text_view_style_values/gtk_text_style_values/
11580
11581         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11582         Add a "language" field to tags.
11583
11584         (gtk_text_tag_set_arg): Fix bug in setting
11585         "bg_full_height_set" tag.
11586
11587 2000-06-21  Havoc Pennington  <hp@redhat.com>
11588
11589         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11590         in the interfaces
11591
11592         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11593         stuff instead when possible.
11594
11595         * gtk/gtktexttypes.h: Delete some unused constants
11596
11597         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11598         testtextbuffer.c: use glib instead of custom unicode routines
11599
11600 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11601
11602         * docs/es/: Removed mistakenly added generated sgml
11603
11604         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11605         Remove outdated info files.
11606
11607         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11608         Moved tutorial files into subdir
11609
11610         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11611         subdir.
11612
11613         * docs/man/gtk_button.pod: Remove. (contents will be
11614         integrated into gtk-reference button page.)
11615
11616         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11617         docs/faq/Makefile.am: Adjust for new organization
11618
11619 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11620
11621         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11622         not $(MKINSTALLDIRS)
11623
11624 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11625
11626         * gtk/testgtk.c (create_text): Finish the job Elliot started
11627         of removing font setting test for text widget. (Since text widget
11628         and GdkFont are not deprecated, and cause portability problems.)
11629
11630 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11631
11632         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11633         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11634         Remove use of libunicode in favor of new GLib functions.
11635
11636         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11637         nano-x, framebuffer. The X11 include is just a hack until we get
11638         the necessary functions in gdkcolor.h, so there is no reason to
11639         add other includes of platforms.
11640
11641         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11642         window bigger than the screen change.
11643
11644         * gtk/testgtk.c: Revert some random changes from Elliot
11645         that had no particular point and were causing testgtkrc
11646         not to function correctly.
11647         
11648         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11649         because GdkSegment and GdkRegionBox have the same fields,
11650         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11651         results in clearer code.
11652
11653         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11654         gdk_input_translate_coordinates): Fix missed GdkObjectification
11655
11656 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11657
11658         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11659         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11660
11661 2000-06-20  Havoc Pennington  <hp@redhat.com>
11662
11663         * modules/linux-fb/Makefile.am: Make this compile
11664         without framebuffer enabled
11665
11666         * gdk/linux-fb/Makefile.am: Add conditional to not build
11667         framebuffer unless specified in configure
11668
11669         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11670         the size of the target instead of source if -1 was passed for
11671         width/height
11672
11673         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11674         width/height confusion.
11675
11676 2000-06-19  Havoc Pennington  <hp@redhat.com>
11677
11678         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11679         GDK_DRAWABLE_XID. In the future, we probably want to make it
11680         faster with G_DISABLE_CHECKS turned on.
11681
11682 2000-06-14  Havoc Pennington  <hp@redhat.com>
11683
11684         * gdk/Makefile.am: add gdkpixmap.c
11685
11686         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11687         s/gdk_image_init/_gdk_windowing_image_init
11688
11689         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11690         ref/unref
11691
11692         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11693
11694         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11695         GdkWindowType is now non-deprecated; 
11696         change gdk_window_get_type() compat to be
11697         gdk_window_get_window_type().
11698
11699         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11700
11701         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11702         virtual GObject. Make all functions call into the vtable.
11703         Move gdk_image_put() guts in here. Remove GdkDrawableType
11704         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11705         draw_image, get_depth, get_size, set_colormap, get_colormap,
11706         get_visual added to the vtable.
11707         
11708         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11709         GObject. Virtualize everything. 
11710         (gdk_gc_new_with_values): remove check for destroyed window,
11711         because now GdkWindow::create_gc will check this.
11712         (gdk_gc_set_values): New function to set GC values, this 
11713         was already implemented but wasn't in the header
11714
11715         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11716
11717         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11718         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11719         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11720         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11721         _gdk_windowing_window_init, rename gdk_image_init to
11722         _gdk_windowing_image_init.
11723         
11724         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11725         (gdk_draw_layout): Remove check for destroyed window, 
11726         because all the drawable methods already check it.
11727         
11728         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11729         Add gdkpixmap.c which contains implementation of GdkDrawable
11730         virtual table (by chaining to a platform-specific implementation
11731         object).
11732         
11733         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11734         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11735         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11736         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11737         GdkColormapPrivate. 
11738
11739         * gdk/gdktypes.h: #include <glib-object.h>
11740
11741         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11742         Move most functionality to platform-specific implementation
11743         object. GdkWindow itself now handles the backing store, then
11744         chains to the platform-specific implementation.
11745         (gdk_window_get_window_type): return GdkWindowType of the window.
11746         (gdk_window_peek_children): New routine, returns the children of 
11747         a GdkWindow
11748         (gdk_window_get_children): Was in X11-specific code and did 
11749         XQueryTree. Changed to simply return a copy of window->children; 
11750         so it can go in cross-platform code.
11751         
11752         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11753
11754         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11755         GdkColormap; just changed to use the new private data instead
11756         of casting to GdkColormapPrivate.
11757
11758         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11759         gdk_cursor_new().
11760
11761         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11762         (private data member in the GObject). 
11763         (xdnd_manager_source_filter): Function had broken 
11764         error handling, fix it (use gdk_error_trap_push).
11765
11766         * gdk/x11/gdkdrawable-x11.c: This file now implements
11767         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11768         base class is purely for the convenience of the X port,
11769         and not part of the interface to cross-platform GDK.
11770
11771         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11772         
11773         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11774         specific to X, and returned by the create_gc virtual method
11775         of GdkDrawableImplX11. 
11776         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11777         rather than gchar, this was also changed in the GdkGC vtable.
11778         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11779         mask is 0, return immediately, instead of checking every flag.
11780         This is faster, and keeps us from segfaulting if values is NULL
11781         and the mask contains some nonzero flags.
11782
11783         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11784         GdkWindow.
11785
11786         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11787         GdkWindowPrivate is gone.
11788
11789         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11790
11791         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11792         remove the image_put stuff that got transferred to GdkDrawable.
11793         
11794         * gdk/x11/gdkinput.c: renamings
11795
11796         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11797
11798         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11799
11800         * gdk/x11/gdkprivate-x11.h: indentation fixes
11801
11802         * gdk/x11/gdkproperty-x11.c: renamings
11803
11804         * gdk/x11/gdkselection-x11.c: renamings
11805
11806         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11807         implements the platform-specific "impl" object.
11808         Moved gdk_window_get_children to gdk/gdkwindow.c
11809
11810         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11811         that no longer exist. Add declaration of GdkGCX11 object here.
11812         Fix all the macros to still work. 
11813
11814         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11815         GdkDragContext from the boxed types since they are now GObjects.
11816
11817         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11818         moved xthickness/ythickness into the instance. GtkStyleClass
11819         functions are now in the standard vtable for GtkStyle, so you have
11820         to create a GObject subclass to write a theme engine.
11821         (gtk_style_copy): fixed a leaked PangoFontDescription
11822         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11823         can be the standard GObject function.
11824         
11825         * Throughout GTK:
11826         s/style->klass->[xy]thickness/style->[xy]thickness
11827         s/pango_layout_unref/g_object_unref/
11828
11829         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11830         
11831         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11832         accessing GDK internals.
11833
11834         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11835         accessing GDK internals.
11836
11837 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11838
11839         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11840
11841         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11842         problem by calculating event position relative to the trough
11843         rather than the slider.
11844         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11845
11846         * gdk/gdkgc.h: Add GDK_NOR.
11847
11848         * configure.in, Makefile.am: Add modules top level dir
11849         * configure.in: Only use pangox library if building x11 target.
11850         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11851
11852 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11853
11854         * gtk/gtkcolorsel.c: Change private class member to be named
11855         private_data throughout the file.
11856
11857         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11858         private_data to avoid clashing with keyword.
11859
11860 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11861
11862         * gdk/gdkdnd.h: Add comment to remove warning.
11863
11864 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
11865
11866         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
11867         Byelorussian language; changed the Makefile and file names 
11868         to reflect that.
11869
11870 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
11871
11872         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
11873         rather than gdk_window_hide; this makes things work
11874         correctly if the window is programmatically hidden while
11875         iconified.
11876
11877 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
11878
11879         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
11880         cut and paste typo where wrong pixmap was being
11881         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
11882
11883 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
11884
11885         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
11886         Add helper function to compute format / bytes 
11887         relationship. Use in a couple places to fix up
11888         errors which assume 8 * format.
11889
11890         * gtk/gtkselection.c (gtk_selection_request): Use 32
11891         rather than 8 * sizeof (GdkAtom), to work correctly
11892         on Alpha.
11893
11894 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
11895
11896         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
11897         libgtk.la
11898         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
11899         versions
11900
11901         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
11902         checking macros return NULL since the function has a return value.
11903
11904 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
11905
11906         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
11907         GTK+ from building at all.
11908
11909         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
11910
11911 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
11912
11913         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
11914         gtk/Makefile.am: make it possible to configure gtk for different
11915         targets on the same platform. The library name is now 
11916         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
11917         flag. Only the x11 target compiles right now.
11918         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
11919         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
11920         * gdk/nanox/gdk*generic*: delete generic region code.
11921         * gdk/linux-fb/gdk*generic*: delete generic region code.
11922         * README.nanox: update information.
11923         
11924 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
11925
11926         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
11927         prepend not append. (Pointed out by Brett Hall.)
11928
11929 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
11930
11931         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
11932
11933 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
11934
11935         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
11936         need this later, and this makes sure that the atexit for
11937         glib gets called after that for GDK, so atexits are
11938         properly ordered for object leak checking.
11939
11940         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
11941
11942         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
11943         pango_x_shutdown_display()
11944
11945         * gtk/simple.c (main): Close window on destroy.
11946
11947 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
11948
11949         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
11950         to treat initial creation different from setting with 
11951         regards to the graphics-exposures parameter, so add a parameter
11952         indicating whether this is initial or not.
11953
11954 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
11955
11956         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
11957         to sort of work by adding an extra return_exposes arg
11958         to gdk_event_translate() - it might be better to simply
11959         deprecate the function altogether and force people to rewrite
11960         without it. gdk_window_scroll() handles most of it, and where
11961         gdk_window_scroll() doesn't work, simply redrawing more does.
11962
11963         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
11964         assertion.
11965
11966         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
11967
11968         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
11969         bunch of pretty much useless /* Print debugging info */ comments 
11970         which had drifted away from the code they were commenting.
11971
11972 2000-06-02  Havoc Pennington  <hp@pobox.com>
11973
11974         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
11975         is in working order.
11976         
11977         * gtk/testtext.c: Change to reflect anonymous mark API
11978
11979         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
11980
11981         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
11982         field, which was unused.
11983
11984         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
11985         saves some typing.
11986
11987         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
11988
11989         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
11990         flag on the insertion point and selection bound
11991
11992         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
11993         make mark-manipulation functions take a GtkTextMark* instead of a
11994         mark name.
11995         
11996         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
11997         GtkTextMarkBody; will be used to detect attempts to delete
11998         the permanent marks (insert and selection bound)
11999
12000         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12001
12002 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12003
12004         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12005         flag to on.
12006
12007         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12008         Honor DOUBLE_BUFFRED_FLAG
12009
12010         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12011         function to set the DOUBLE_BUFFERED flag.
12012
12013         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12014         or not exposes done on the widget should be double-buffered.
12015
12016         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12017         to be what would be expected. (Fixes problem with a
12018         g_return_if_fail() validating a TextDirection enumeration)
12019
12020 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12021
12022         * gtk/gtkwidget.c: Remove all references to 
12023         offscreen flag which was no longer used.
12024
12025         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12026
12027         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12028         for non-null label_widget->parent.
12029
12030         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12031         which no longer was used.
12032
12033         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12034
12035         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12036         for null arguments.
12037
12038         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12039         check for destroyed windows.
12040
12041 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12042
12043         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12044         the slave context there.
12045
12046         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12047         identical to GtkWindow.
12048
12049 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12050
12051         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12052         pangox to here, so we can write them independent of rendering
12053         system, using GDK primitives.
12054
12055         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12056         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12057         since we have a rendering-system independent implementation in
12058         terms of draw_glyphs().
12059         
12060         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12061         function to render a single line.
12062
12063         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12064         into ../gdkpango.c, which simplifies things, since we
12065         don't have to deal with raw X gc's.
12066
12067 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12068
12069         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12070         get the logical attributes for a given GtkTextLine.
12071
12072 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12073
12074         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12075         g_locale_get_codeset() to g_get_codeset() change.
12076
12077 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12078
12079         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12080         descriptions.
12081
12082         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12083         the entry.
12084
12085         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12086         redoing (vastly simplifying) for Pango. Still needs quite
12087         a bit of work. (Size selection is currently poor. List of 
12088         predefined sizes is not a good idea, since all of these
12089         sizes won't necessarily be distinct.)
12090
12091 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12092
12093         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12094         CODESET results for LANG=C.
12095
12096 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12097
12098         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12099         which takes a stringized pango font description;
12100         ignore the older 'font' and 'fontset' declarations.
12101
12102         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12103         field with a GdkFont derived via gdk_font_from_description(),
12104         for compatibility. (Should we just remove it entirely?
12105         Probably too much compatibility breakage, but people
12106         should be migrating to the new Pango stuff as quickly
12107         as possible.)
12108
12109 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12110
12111         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12112
12113 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12114
12115         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12116         redoing; there are some bugs in size allocation right
12117         now, the semi-existant distinction between header / day
12118         fonts was removed, but, with Pango, could actually
12119         be made functional in a nice way.
12120         
12121         * gtk/testcalender: Move calender from examples into this
12122         directory as a test program. (We really need to restrcture
12123         testgtk into a whole directory full of tests for every
12124         widget or functionality group, separated into multiple .c
12125         files.)
12126
12127 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12128
12129         * gtk/testgtk.c (file_exists): Fix stupid typo that
12130         was keeping RC file from being loaded.
12131
12132         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12133         RC file font code.
12134
12135 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12136
12137         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12138         Add function to load a GdkFont from a PangoFontDescription.
12139
12140 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12141
12142         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12143         variable should be of type GdkEventPrivate.
12144
12145 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12146
12147         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12148         to have any widget for the label, use a GtkLabel widget
12149         to display the text. (Based partially on a patch from
12150         Anders Carlson.)
12151
12152         (Quite a bit of code reorganization - strip 90% of the
12153         guts out of gtkaspectframe and add a single virtual
12154         func to GtkFrameClass - compute_child_allocation.)
12155
12156 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12157
12158         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12159         (Removed clist->row_center_offset field because caching
12160         it wasn't saving time or code, added private function
12161         _gtk_clist_create_cell_layout()).
12162
12163 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12164
12165         * gtk/gtkaccellabel.c: Pangoized.
12166
12167         * gtk/[hv]ruler.c: Pangoized
12168
12169 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12170
12171         * gtk/gtkfilesel.c (gtk_file_selection_init):
12172         Use gtk_clist_set_column_auto_resize() to remove need
12173         need for manual column width computations.
12174
12175 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12176
12177         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12178         ensuring Pango correctness, and considerably simplifying the
12179         code.
12180         
12181         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12182
12183         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12184         getting of numbers of lines.
12185
12186         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12187         to the actual requested width of the lable, not to the wrap
12188         width we set.
12189
12190         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12191
12192         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12193           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12194
12195         * gtk/gtktextview.c: Fix structure inheritance.
12196
12197         * gtk/gtkprogressbar.c: Pangoize.
12198
12199 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12200
12201         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12202         in a function.
12203
12204         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12205         bug with computing line tops.
12206
12207         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12208
12209 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12210
12211         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12212         and y_offset coordinates to do what we need now. (The offset between
12213         buffer and layout coordinates has been reintroduced, but is a 
12214         bit different than before.)
12215
12216         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12217         handle the adjustments ourselves, and scroll as necessary using
12218         the new gdk_window_scroll().
12219         
12220         The advantage of this is that when we are incrementally revalidating,
12221         we are essentially rearranging things around the visible portion
12222         of the screen. With the old setup, the visible portion of the
12223         screen was moved around in the layout, so scrolling and redrawing
12224         to track that caused jumping of the display. Since we now
12225         control the scrolling ourselves, we can suppress this and
12226         only redraw when things actually change.
12227
12228 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12229
12230         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12231         the region not just redisplay it after-all, since we store the
12232         cursors in the LineDisplay. (Ugly interactions here between
12233         GtkLayout and GtkTextBTree here.)
12234         
12235         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12236
12237 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12238
12239         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12240         Added function to scroll contents of a window while keeping the
12241         window constant. Works by XCopyArea or guffaw-scrolling depending
12242         on the details of how the window is set up. (guffaw-scrolling
12243         still needs to be filled in.)
12244
12245 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12246
12247         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12248         move the debugging that was tied to a global variable
12249         to that.
12250
12251         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12252
12253         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12254         validated flag, in line data instead of setting height/width to
12255         -1. This allows us to perform operations with partially invalid
12256         buffer (using the old size for invalid lines) and thus to do
12257         incremental vaidation. Keep height/width aggregates up to date
12258         when deleting text and rebalancing the tree.
12259
12260         * gtk/gtktextbtree.[ch]: Add functions validate a line
12261         (gtk_text_btree_validate_line), and to validate up
12262         to a number of pixels (gtk_text_btree_validate).
12263
12264         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12265         that indicates that something is changed and a revalidation
12266         pass is needed. Change ::need_repaint to ::changed, and
12267         make it take old and new yranges instead of a rectangle.
12268
12269         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12270         the line_data_destroy() function from 
12271         gtk_text_btree_add_view() to a virtual function in 
12272         GtkTextLayout
12273
12274         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12275         since we are handling partial repaints in a different fashion
12276         now.
12277
12278         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12279         of the selection instead of queueing a repaint on the
12280         entire widget.
12281
12282         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12283         get_selection_bounds() down to btree, make the function
12284         in buffer a wrapper around the btree function.
12285
12286         * gtk/gtktextlayout.[ch]: Add functions to check if the
12287         layout is valid and to recompute either a range of pixels
12288         aroudn a line or a certain total number of pixels.
12289
12290         * gtk/gtktextlayout.[ch]: Cache a single line display;
12291         now that we only redraw the needed portions, the hit rate
12292         for this cache is quite high.
12293         
12294         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12295         on the screen so that when re-laying-out the buffer, we can
12296         keep the same place. This requires connecting to ::value_changed
12297         on the adjustments
12298
12299         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12300         the buffer after we receive an ::invalidated signal.
12301         
12302 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12303
12304         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12305         to max of allocation and layout size, not just to the
12306         layout size.
12307
12308         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12309         Invalidate window so it gets redrawn properly.
12310
12311         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12312         to mean the entire window.
12313
12314         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12315         into public header.
12316
12317 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12318
12319         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12320         to get the name of a mark.
12321
12322         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12323         to find the paragraph from a y position.
12324
12325 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12326
12327         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12328         nodes have width/height >= 0, not > 0.
12329
12330 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12331
12332         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12333         Add a size_only flag, so when we only need the size, we don't create
12334         useless appearance attributes.
12335
12336         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12337         duplicate setting of font description.
12338
12339         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12340
12341 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12342
12343         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12344         EXTRA_DIST. It does not work well when the file that
12345         everything depends on is not in the tarball.
12346
12347 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12348
12349         * gtk/testgtk.c: Some hacks and fixes so that it basically
12350         works when not sitting in the GTK+ build tree.
12351
12352 2000-05-03  Havoc Pennington  <hp@redhat.com>
12353
12354         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12355         Properly determine the ordering of the tag root and the current
12356         line within the tree. Previous algorithm only worked if the tag
12357         root's immediate parent was the common root of both the current
12358         line and the tag root.
12359
12360 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12363         alignment.
12364
12365         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12366         the widget text directional dynamically.
12367
12368         * gtk/gtktextview.[ch]: Added functions to get and set default
12369         wrap mode.
12370
12371 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12372
12373         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12374         in cursor location computation.
12375
12376 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12377
12378         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12379         vadjusment values properly when layout gets smaller.
12380
12381         * gtk/gtktextview.c (need_repaint_handler): Areas being
12382         passed in are far completely inaccurate, and sometimes
12383         too small, so, for now, just queue a redraw on the
12384         whole visible region.
12385
12386 2000-04-25  Havoc Pennington  <hp@redhat.com>
12387
12388         * gtk/gtktextbtree.c (summary_destroy): new function to 
12389         destroy tag summary nodes
12390         (gtk_text_line_next_could_contain_tag): this function was 
12391         totally broken if the line passed in wasn't below the tag
12392         root. Fix it.
12393         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12394         "wildcard" case, we have to do a linear scan. Blah.
12395         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12396         we have to do the linear scan
12397         (tag_removed_cb): When a tag is removed from the tag table, 
12398         remove the GtkTextTagInfo node from the btree.
12399         (gtk_text_btree_spew): Implement the spew function, for 
12400         our debugging pleasure.
12401
12402 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12403
12404         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12405         a problem with referring to the wrong buffer.
12406
12407         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12408
12409         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12410         font description to gtk_style_new() - otherwise things
12411         don't work without a .gtkrc file.
12412
12413         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12414         tags table if we create it ourself, too.
12415
12416         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12417         it was conflicting with XKB modifiers.
12418
12419         * gtk/gtktextview.[ch]: Add simple support for 
12420         GtkIMContext.
12421
12422 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12423
12424         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12425         with deletion from last commit.
12426
12427 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12428
12429         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12430         in the context from the current locale.
12431         
12432         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12433         context, not hardcoded value.
12434
12435         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12436         not logical.
12437
12438 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12439
12440         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12441         attributes - that doesn't handle partial-glyph selection
12442         properly. Instead use new pango_layout_line_get_x_ranges()
12443         functionality to draw the selection.
12444
12445         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12446         now properly handles out-of-range coordinates.
12447
12448         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12449
12450         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12451         public.
12452
12453         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12454         for paragraphs opposite to the base direction of the widget.
12455
12456         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12457
12458         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12459         causes Arabic words to reshape as you cursor through.
12460
12461         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12462         cursor position when moving vertically with the arrow keys and
12463         scrolling with page-up/page-down. (Arrow keys save only the X,
12464         scrolling saves both X and Y.)
12465
12466         This means you can line-up / line-down or page-up / page-down
12467         without losing your place, and also that moving vertically
12468         with the cursor keys keeps the same X position, not the same
12469         character count:
12470
12471         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12472         arrow keys move by display lines, not paragraphs.
12473
12474 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12475
12476         * gtk/gtklayout.c: Make sure that the bin window is at least
12477         as big as the allocation. (Should we also make sure that the
12478         bin window is big enough to completely cover widget->window?)
12479
12480         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12481         function to get the onscreen rectangle.
12482
12483         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12484         for offsets in window coordinates.
12485
12486 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12487
12488         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12489         confusion.
12490
12491         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12492         from the widget direction.
12493
12494         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12495         Add a "direction" attribute.
12496
12497         * gtk/gtktextview.c: global s/tkxt/text_view/.
12498
12499         * gtk/testtext.c: Added long block of text in Arabic, to test out
12500         the direction attributes. (Some problems with the shaping system
12501         for arabic become obvious - like the fact the cursor splits words
12502         into unjoined pieces.)
12503
12504 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12505
12506         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12507
12508         * gtk/gtktextlayout.c: Fix up alignment.
12509
12510         * gtk/testtext.c: Add some tests for centering, wrapping.
12511
12512 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12513
12514         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12515         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12516         If we wrote GTK+-specific layout-render function this could just replace
12517         the draw_layout() operation in the vtable.
12518
12519         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12520         pango_layout_get_cursor_pos() and use that function.
12521
12522         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12523         is a non-static symbol.
12524
12525         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12526         with gtk_text_btree_find_line_by_y()
12527
12528         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12529         renderer that handles GtkTextAppearance attributes.
12530
12531         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12532
12533           - Move the values in the style that don't affect geometry into a
12534             GtkTextAppearance structure.
12535           - Change underline to take a PangoUnderline and "font" a string
12536             representation of a font description
12537           - Add a "font_desc" attribute which takes a FontDescription structure.
12538
12539         * gtk/gtktextlayout.[ch]:
12540
12541           - Get rid of the display-line list per each line. Instead, we
12542             generate, on demand, a GtkTextLineDisplay structure which]
12543             contains a PangoLayout * and other necesary information
12544             (offsets, cursor locations) for displaying a paragraph.
12545           - Get rid of the code to wrap lines, create display chunks,
12546             etc. Instead, we just go through a paragraph and convert
12547             it into the necessary inputs to a PangoLayout.
12548           - Implement a new attribute type, GtkTextAttrAppearance. This
12549             holds a GtkTextAppearance, and is used to pass colors, 
12550             stipple, etc, through from the layout to the display without
12551             having to use lots and lots of individual attributes.
12552           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12553             in terms of PangoLayout functions.
12554         
12555         * gtk/gtktextview.c: 
12556          
12557           - Handle passing the necessary PangoContext to the layout
12558           - Some fixups in painting to deal with the automatic backing store
12559             and offsetting of GTK+-1.4
12560           - Add a style_set handler so that the default style reacts
12561             properly to theme changes.
12562         
12563         * gtk/gtktext?*.[ch]: Random code-style fixes.
12564
12565         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12566
12567 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12568
12569         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12570         in original form preparatory to Pango-ization and gdkimcontext-ization.
12571
12572 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12573
12574         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12575         so that we can derive from gtkimcontext in language bindings properly.
12576
12577 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12578
12579         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12580         Add a compose table including (almost) all the compose combinations
12581         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12582         data in the XIM implementation.
12583
12584         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12585         Moved functions to convert keyvalues from and to unicode here from
12586         the win32 port and made them public.
12587
12588 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12589
12590         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12591
12592 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12593
12594         * gtk/gtkimcontext.[ch]: Base class for new input context system
12595
12596         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12597         the real input context implementation to be loaded from modules
12598         and switched on the fly.
12599
12600         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12601         context that just does direct keysymbol => unicode translation.
12602
12603         * gtk/gtkentry.[ch]: Start switching editing over to using
12604         GtkInputContext. (No handling of preedit yet.)
12605
12606 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12607
12608         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12609         many substitutions. (klass should not be subsituted.)
12610
12611 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12612
12613         * configure.in: Add checks for Pango
12614
12615         * configure.in docs/Makefile.am: Add test for sgml2html
12616         and allow 'make dist' without building html, but print out
12617         warnings in that case. (For making snapshots)
12618
12619         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12620         Add Pango libraries and C flags
12621
12622         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12623         Add function (gdk_draw_layout) to draw a pango layout.
12624
12625         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12626         for getting Pango contexts for GDK.
12627
12628         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12629
12630         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12631         editing.
12632
12633         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12634         keysym => unicode translations. More languages can be added
12635         here, but real input-method support is needed.
12636
12637         * docs/Changes-1.4.txt: Added note about entry behavior.
12638         
12639         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12640         to set the reading direction for a widget and the global direction.
12641         Add test which allows toggling the global direction. Two private
12642         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12643
12644         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12645           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12646
12647         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12648
12649         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12650         underlining now handled by Pango.
12651
12652         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12653         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12654         is temporary.)
12655
12656         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12657         convenience functions for creating contexts and layouts for widgets.
12658
12659         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12660
12661 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12662
12663         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12664         titles to be active, even if they aren't visible.
12665         (gtk_clist_column_titles_passive):  Ditto.
12666
12667 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12668
12669         * gtkmenu.c:
12670         * gtkmenu.h:
12671         * gtktypeutils.h: Spelling/grammar fixes in comments.
12672
12673 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12674
12675         * gdk/nanox/*.h: add missing header files.
12676
12677 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12678
12679         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12680         send_event to TRUE.
12681         (gtk_drawing_area_size): queue a resize.
12682
12683 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12684
12685         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12686         the handlers, also invalidate them. bug nailed down by Karl Nelson
12687         <kenelson@ece.ucdavis.edu>.
12688
12689 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12690
12691         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12692         "(nil)" foundries, patch from Grigorios Magklis.
12693
12694         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12695         on non-available fonts, based on a patch by Grigorios Magklis
12696         <maglis@cs.rochester.edu>.
12697
12698 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12699
12700         * gdk/x11/gdkregion-generic.c: If a region does not have any
12701         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12702         instead of GDK_OVERLAP_RECTANGLE_IN.
12703
12704 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12705
12706         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12707         OFFSCREEN, as it is no longer necessary.
12708
12709 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12710
12711         * gtk/gtkcolorsel.c: Patch from David Santiago
12712         <mrcooger@cyberverse.com> to change things so that the 
12713         indicator of the active palette entry is done independently,
12714         not via the focus, since it should always be visible.
12715
12716 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12717
12718         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12719         refcount leaks as in the X11 backend.
12720
12721         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12722         cosmetics.
12723
12724         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12725         backend. Add _gdk_windowing_window_destroy().
12726
12727         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12728         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12729         either, but these probably do exist on nanox?)
12730         
12731         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12732         which isn't necessarily defined by <math.h>.
12733
12734         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12735         ancestry past GtkObject.
12736
12737         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12738         from DLL on Win32.
12739
12740         * gtk/gtk.def: Update corresponding to recent changes.
12741
12742         * gtk/makefile.{cygwin,msc}: Updates.
12743
12744 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12745
12746         * docs/Changes-1.4.txt: A bit of editing.
12747
12748         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12749         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12750         to clear the update area for the window, and clear it
12751         when hiding a window.
12752
12753         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12754         if window destroyed.
12755
12756         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12757
12758         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12759         gdk_window_destroy() to the generic code, since there was a lot of 
12760         window-system-independent logic it in. Add a function:
12761         
12762          _gdk_window_destroy() 
12763
12764         to the internal API to destroy a window without unreferencing it.
12765         Add a function:
12766
12767          _gdk_windowing_window_destroy()
12768
12769         That does the windowing-system-dependent part of destroying 
12770         the window.
12771
12772 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12773
12774         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12775
12776 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12777
12778         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12779         Make gtk_widget_shape_combine_mask() keep a reference count on
12780         the pixmap since it keeps it around.
12781
12782 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12783
12784         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12785         leak.
12786
12787         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12788         leak with event filters.
12789
12790 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12791
12792         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12793         signal handlers with the right data arguments. (Fixes
12794         some warnings when a widget was repeatedly set as a drag
12795         destination.)
12796
12797         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12798         window so we can avoid avoid setting the DND properties on the
12799         toplevel window repeatedly.
12800
12801 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12802
12803         * gdk/win32/gdkwin32.h: Define more message types missing from
12804         mingw headers.
12805
12806         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12807         call gdk_window_destroy_notify(). It was never called. This
12808         probably meant that the GdkWindow was never freed. Thanks Owen for
12809         noticing (!).
12810
12811         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12812         window as destroyed before calling DestroyWindow(). DestroyWindow()
12813         causes a call to the window procedure (gdk_WindowProc), which
12814         calls gdk_event_translate(), which calls
12815         gdk_window_destroy_notify(), which gets confused unless the window
12816         is set as destroyed.
12817
12818         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12819         this function to indicate it's win32 only. Put inside #ifdef
12820         G_ENABLE_DEBUG.
12821
12822         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12823         debugging function. (gdk_event_translate:) Add a default branch
12824         that uses the above function to print debug messages with all
12825         Windows messages symbolically.
12826
12827         * gdk/win32/gdkprivate-win32.h: Declare it, and
12828         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12829
12830 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12831
12832         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12833         public header file.
12834
12835 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12836
12837         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12838
12839         * gtk/gtktext.c: made the adjustments no-construct args, simply
12840         provide default adjustments.
12841         (gtk_text_destroy): release adjustments.
12842
12843         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12844         adjustment argument non-construct.
12845
12846         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12847         instead of in finalize.
12848         (gtk_progress_get_text_from_value): 
12849         (gtk_progress_get_current_text): 
12850         (gtk_progress_set_value): 
12851         (gtk_progress_get_percentage_from_value): 
12852         (gtk_progress_get_current_percentage): 
12853         (gtk_progress_set_percentage): 
12854         (gtk_progress_configure): ensure an adjustment is present.
12855
12856 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12857
12858         * gtk/gtkcolorsel.[hc]:
12859         * gtk/gtkcolorseldialog.[hc]:
12860         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
12861         their parent implementation, use bit fields for boolean values, don't
12862         create unused widgets, usage of glib types, braces go on their own
12863         lines, function argument alignment, #include directives etc. etc. etc..
12864
12865         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
12866
12867 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
12868
12869         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
12870
12871         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
12872         of NULL.
12873
12874         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
12875         to freed data.
12876         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
12877
12878         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
12879         to NULL when the toplevel is getting destroyed.
12880         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
12881         (gtk_menu_destroy): 
12882         (gtk_menu_init): store the information of whether we have to
12883         readd the initial child ref_count during destruction in a new
12884         GtkMenu field needs_destruction_ref_count.
12885
12886         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
12887         here, those reading: learn from my mistake! ;)
12888         in order for set_?adjustment to support a default adjustemnt if
12889         invoked with an adjustment pointer of NULL, the code read (pseudo):
12890         if (v->adjustment) unref (v->adjustment);
12891         if (!adjustment) adjustment = adjustment_new ();
12892         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
12893         now imagine the first unref to actually free the old adjustment and
12894         adjustment_new() creating a new adjustment from the very same memory
12895         portion. here, the latter comparision will unintendedly fail, and
12896         all hell breaks loose.
12897         (gtk_viewport_set_hadjustment):
12898         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
12899         after unreferencing it.
12900
12901         * gtk/gtkcontainer.[hc]: removed toplevel registration
12902         functions: gtk_container_register_toplevel(),
12903         gtk_container_unregister_toplevel() and
12904         gtk_container_get_toplevels() which had wrong semantics
12905         anyways: it didn't reference and copy the list.
12906
12907         * gtk/gtkwindow.c: we take over the container toplevel registration
12908         bussiness now. windows are registered across multiple destructions,
12909         untill they are finalized. the initial implicit reference count
12910         users are holding on windows is removed with the first destruction
12911         though.
12912         (gtk_window_init): ref & sink and set has_user_ref_count, got
12913         rid of gtk_container_register_toplevel() call. add window to
12914         toplevel_list.
12915         (gtk_window_destroy): unref the window if has_user_ref_count
12916         is still set, got rid of call to
12917         gtk_container_unregister_toplevel().
12918         (gtk_window_finalize): remove window from toplevel list.
12919         (gtk_window_list_toplevels): new function to return a newly
12920         created list with referenced toplevels.
12921         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
12922
12923         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
12924         adjustment a non-construct arg.
12925         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
12926         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
12927         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
12928
12929         * gtk/gtkrange.c: added some realized checks.
12930         (gtk_range_destroy): get rid of the h/v adjustments in the
12931         destroy handler instead of finalize. remove timer.
12932         (gtk_range_get_adjustment): demand create adjustment.
12933
12934         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
12935         we simply create them on demand now and get rid of them in
12936         the destroy handler.
12937         (gtk_viewport_destroy): get rid of the h/v adjustments in the
12938         destroy handler instead of finalize.
12939         (gtk_viewport_get_hadjustment): 
12940         (gtk_viewport_get_vadjustment): 
12941         (gtk_viewport_size_allocate): demand create h/v adjustment
12942         if required.
12943
12944         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
12945         gtk_widget_real_destroy () functionality.
12946         (gtk_widget_real_destroy): reinitialize with a new style, instead
12947         of setting widget->style to NULL.
12948
12949 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
12950
12951         * gtk/gtkcalendar.c:
12952         * gtk/gtkbutton.c: ported _get_type() implementation over to
12953         GType, either to preserve memchunks allocation facilities,
12954         or because Gtk+ 1.0 GtkTypeInfo was still being used.
12955
12956         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
12957         over. prepare for ::destroy to be emitted multiple times.
12958         removed reference tracer magic. chain into GObjectClass.shutdown()
12959         to emit ::destroy signal.
12960
12961         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
12962         fundamental.
12963
12964         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
12965         cludge.
12966
12967         * gtk/gtksocket.c:
12968         * gtk/gtkplug.c:
12969         * gtk/gtklayout.c:
12970         * gtk/gtklabel.c:
12971         * gtk/gtkargcollector.c:
12972         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
12973         not being a fundamental anymore, and to work with the new
12974         type system (nuked fundamental type varargs clutter).
12975
12976         * gtk/*.c: install finalize handlers in the GObjectClass
12977         part of the class structure.
12978         changed direct GTK_OBJECT()->klass accesses to
12979         GTK_*_GET_CLASS().
12980         changed direct object_class->type accesses to GTK_CLASS_TYPE().
12981
12982         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
12983         GType. made most of the GTK_*() type macros and Gtk* typedefs
12984         simple wrappers around macros and types provided by GType.
12985         most notably, a significant portion of the old API vanished:
12986         GTK_TYPE_MAKE(),
12987         GTK_TYPE_SEQNO(),
12988         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
12989         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
12990         GTK_TYPE_ARGS,
12991         GTK_TYPE_CALLBACK,
12992         GTK_TYPE_C_CALLBACK,
12993         GTK_TYPE_FOREIGN,
12994         GtkTypeQuery,
12995         gtk_type_query(),
12996         gtk_type_set_varargs_type(),
12997         gtk_type_get_varargs_type(),
12998         gtk_type_check_object_cast(),
12999         gtk_type_check_class_cast(),
13000         gtk_type_describe_tree(),
13001         gtk_type_describe_heritage(),
13002         gtk_type_free(),
13003         gtk_type_children_types(),
13004         gtk_type_set_chunk_alloc(),
13005         gtk_type_register_enum(),
13006         gtk_type_register_flags(),
13007         gtk_type_parent_class().
13008         replacements, where available are described in ../docs/Changes-1.4.txt.
13009         implemented compatibility functions for the remaining API.
13010
13011         * configure.in: depend on glib 1.3.1, use gobject module.
13012
13013 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13014
13015         * TODO.xml: Various updates to current status.
13016
13017 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13018
13019         * gtk.m4: Print out version when test succeeds.
13020
13021 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13022
13023         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13024         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13025         
13026         (Original triangle color selector from Simon Budig
13027         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13028         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13029         Santiago <mrcooger@cyberverse.com>)
13030
13031         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13032         out into a separate widget.
13033
13034         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13035         and opacity controls.
13036
13037 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13038
13039         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13040         snuck in prematurely.
13041
13042 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13043
13044         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13045         had deleted a ! operator by mistake, which caused
13046         GDK_SELECTION_CLEAR events never to be generated, which caused
13047         only the first copy to the clipboard from an gtkeditable to
13048         actually cause a copy to the Windows clipboard.
13049
13050 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13051
13052         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13053         compilation, too. Current mingw gcc distributions include the
13054         necessary headers. Also the necessary IIDs are now in mingw
13055         headers/libraries, and own definitions unnecessary.
13056
13057         More hacking on OLE2 DND, still doesn't work though, and thus
13058         ifdeffed out.
13059
13060         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13061         here, too.
13062
13063 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13064
13065         * gdk/nanox/*: nano-X port work in progress.
13066         * gdk/simple.c: simple test for Gdk.
13067         * README.nanox: notes about the port: read this first!
13068         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13069         with nano-X.
13070
13071 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13072
13073         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13074         gdk_window_clear() into common code, implement in terms of
13075         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13076         not redirected to the backing rectangle.
13077
13078 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13079
13080         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13081         EXTRA_DIST. It does not work well when the file that
13082         everything depends on is not in the tarball.
13083
13084 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13085
13086         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13087         with recursion where process_updates() is called from
13088         an expose handler. (GtkTextView is highly broken in
13089         doing this, but it should work, so it is a nice test
13090         case.)
13091
13092 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13093
13094         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13095         handle the case where updates are queued during processing of
13096         updates.
13097
13098 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13099
13100         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13101         window is on gdk_display - use that instead of segfaulting.
13102
13103 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13104
13105         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13106         broken and require an empty arg, give it to them.
13107
13108 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13109
13110         * gtk/gtklabel.h: indentation fixes.
13111
13112 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13113
13114         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13115         draw too narrow or too low arcs, they seem to fail, at least with
13116         some display drivers.
13117
13118         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13119
13120         Large changes to the Win32 backend, partially made necessary by
13121         the changes to the backend-independent internal
13122         structures. Attempts to implement similar backing store stuff as
13123         on X11. The current (CVS) version of the Win32 backend is *not* as
13124         stable as it was before the no-flicker branch was merged. A
13125         zipfile with that version is available from
13126         http://www.gimp.org/win32/. That should be use by "production"
13127         code until this CVS version is usable. (But note, the Win32
13128         backend has never been claimed to be "production quality".)
13129
13130         * README.win32: Add the above comment about versions.
13131
13132         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13133
13134         * gdk/gdk.def: Update.
13135
13136         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13137         presumably be replaced by some more better mechanism as 1.4 gets
13138         closer to release shape.
13139
13140         * gdk/makefile.{cygwin,msc}: Update.
13141
13142         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13143         internal headers. Change code according to changes in these. Use
13144         gdk_drawable_*, not gdk_window_* where necessary.
13145
13146         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13147         our old DND.
13148
13149         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13150         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13151         Use correct function name in warning messages.
13152
13153         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13154         GSourceFuncs gdk_event_prepare and gdk_event_check.
13155         (gdk_event_get_graphics_expose): Do implement, use
13156         PeekMessage. Thanks to Hans Breuer.
13157         (event_mask_string): Debugging function to print an GdkEventMask.
13158         (gdk_pointer_grab): Use it.
13159
13160         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13161         (old) book I used claimed was Hangul actually is CJK Unified
13162         Ideographs Extension A. Also, Hangul Syllables were missing.
13163         Improve logging.
13164
13165         * gdk/win32/gdkgc-win32.c: Largish changes.
13166
13167         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13168         g_win32_getlocale() from GLib, and not setlocale() to get current
13169         locale name.
13170
13171         * gdk/win32/gdkprivate-win32.h
13172         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13173         gdkwin32.h, similarily as in the X11 backend.
13174
13175         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13176         assignment was used instead of equals in if test. Thanks to Hans
13177         Breuer.
13178
13179         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13180         the X11 version.
13181
13182         * gdk/win32/makefile.{cygwin,msc}
13183         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13184         path to the Win32 headers that works also with the mingw compiler.
13185
13186         * gtk/gtkstyle.c: Include <string.h>.
13187
13188 2000-04-26  Havoc Pennington  <hp@redhat.com>
13189
13190         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13191         replacing the broken gtk_label_get ()
13192
13193 2000-04-15  Havoc Pennington  <hp@pobox.com>
13194
13195         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13196         this keeps scanner scripts from getting confused.
13197
13198         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13199         data, rather than void
13200
13201 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13202
13203         * gtk/gtkclist.c (gtk_clist_motion)
13204         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13205         with is_hint FALSE, get x and y from the event. They used to be
13206         used uninitialised. The Win32 backend never sends motion events
13207         marked as hints. This for instance fixes the annoying file and
13208         font selector behaviour in the Win32 version.
13209
13210 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13211
13212         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13213         gtk_private_n_signals variables, they are used by some software,
13214         sigh.
13215
13216         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13217         installation directory from the Registry, where the installer
13218         should have put it.
13219
13220 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13221
13222         * gdk/x11/Makefile.am: Fix problem with installation directory for
13223         gdkx.h
13224
13225         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13226         <mrcooger@cyberverse.com> so that when selecting menus with the
13227         mouse, the first item will not be selected, but when selecting
13228         with an accelerator, or navigating left-right on a menubar with
13229         the menus popped up, the first item will be selected.
13230
13231 2000-04-05  Dan Damian  <dand@dnttm.ro>
13232
13233         * configure.in: Added "ro" to ALL_LINGUAS.
13234
13235 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13236
13237         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13238         indentation.
13239
13240         * Makefile.am (EXTRA_DIST): Fix typo.
13241
13242         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13243         to catch gdkconfig.h
13244
13245         * gtk/gtkitemfactory.c: Added FIXME.
13246
13247 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13248
13249         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13250         s/return_if_fail/return_val_if_fail/g and add a return value.
13251
13252 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13253
13254         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13255         merge slipup.
13256
13257         * gdk/gdkinput.h: Fix missing line from merge.
13258
13259 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13260
13261         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13262         instead of gdkprivate.h.
13263
13264 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13265
13266         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13267         parent class to correctly be GtkDialogClass.
13268
13269 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13270
13271         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13272         toplevel windows and their immediate children by their parents,
13273         since the size of toplevel windows is out of our immediate
13274         control and we don't get any real benefit from trying to track
13275         this size for clipping.
13276
13277         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13278         for input_only windows.
13279
13280         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13281         to fix some hacks and make sure that we don't try to set the
13282         background of input only windows.
13283
13284 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13285
13286         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13287         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13288         stuff that we've traditionally exposed.
13289
13290         * gdk/**.c: Use gdkinternals.h where appropriate.
13291
13292         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13293         not include gdkprivate-x11.h, move all stuff of conceivable public
13294         interest into gdkx.h; keep all really private stuff in
13295         uninstalled header gdkprivate-x11.h.
13296
13297         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13298         image->image_put on windows through a new function _gdk_window_draw_image()
13299         to allow us to do backing store for images. (Sort of ugly)
13300
13301         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13302         contexts locally so that we can offset them properly when drawing 
13303         onto backing pixmaps.
13304
13305         * gdk/gdkinput.h: Reindented
13306
13307         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13308         pixmap or color for the window, so we can properly initialize
13309         our double-buffer pixmaps, and also so that we temporarily set
13310         a background of None while scrolling.
13311
13312         * gdk/gdkregion.h: Revise region boolean operators to have an
13313         interface that is actually convenient - switch from creating new
13314         regions on every op, to "methods" that modify existing regions
13315         (A = A OP B). 3 argument forms which allow dest == src, would also
13316         be possible, but the current interfaces seem to map nicely
13317         onto what needs to be done. (There is quite a lot of region
13318         code in GDK now.)
13319
13320         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13321         operator.
13322
13323         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13324         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13325         to 32 bit coordinates, modify it to be mostly GTK+ style
13326         and to have interfaces that match gdkregion.h.
13327
13328         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13329         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13330         create a backing pixmap and redirect all drawing to
13331         that backing pixmap until a matching gdk_window_end_paint().
13332
13333         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13334         Create a special drawable class for GtkWindow's that 
13335         redirects the drawing to the backing pixmap as necessary
13336         and then calls the real operations in _gdk_windowing_window_class.
13337
13338         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13339         Store invalid region for each window. Generate expose events for invalid
13340         region in an idle. This replaces both the expose compression
13341         and the redrawing queuing in GTK+. It is both more efficient and
13342         simpler than either one individually and far more so then the
13343         combination.
13344
13345         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13346         Emulate 32 bit coordinates for windows with 16 bit coordinates
13347         by offsetting drawing, guffaw scrolling techniques and
13348         mapping/unmapping child windows as necessary.
13349
13350         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13351         where, when invalid regions are processed, the region is stored,
13352         and if expose events come in that are detectably duplicate
13353         the processed exposes (by comparison of event serial numbers),
13354         the stored region is subtracted out of those exposes.
13355
13356         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13357         regions newly exposed when scrolling or resizing windows.
13358         This, combined with forcing processesing of queued invalidated
13359         regions, gives nice flicker-free scrolling.
13360
13361         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13362         invalidated regions after every scroll.
13363
13364         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13365         emulation in GDK. Its, for all practical purposes just a
13366         GtkViewport/GtkFixed hybrid now.
13367
13368         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13369         (16-bit) structures as necessary instead of just casting.
13370
13371         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13372         in terms of the structures from gdkregion-generic.c, using appropriate
13373         offsets from GDK to X11 coordinates. Cache clip mask and
13374         origin and ts origin locally and only flush to the server
13375         when drawing, to avoid constantly setting and resetting these
13376         values when offsetting GC's for scrolling and backing pixmaps.
13377
13378         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13379
13380         * gtk/gtkcontainer.c: Call process_all_updates at end
13381         of resizing to reduce flicker. (Avoids having redraw
13382         lag arbitrarily behind resize under some circumstances)
13383
13384         * gtk/gtkentry.c: Remove old backing store code, and simply take
13385         advantage of the new backing store capabilities of GDK.
13386
13387         * gtk/gtkmain.c: Simple implementation of widget backing
13388         store - simply push a paint while handling each expose.
13389         (Should really be configurable widget for widget.)
13390         
13391         * gtk/gtkwidget.c: Remove all the old complicated redraw
13392         code, and simply invalidate the GDK windows from
13393         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13394         debugged complexity ... gone to the winds.)
13395
13396         Remove all the code for suppressing expose events while
13397         resizes are pending; this isn't needed since the invalid
13398         areas won't be processed until after the resizes are
13399         processed, since they are in a lower priority idle.
13400
13401 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13402
13403         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13404         and height of dest rectangle for non-intersecting rectangles.
13405
13406 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13407
13408         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13409         for GdkRectangle.
13410
13411 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13412
13413         * gdk/gdk{events,image,private,types,window}.h
13414          gdk/x11/gdkinputprivate.h: Change all coordinates
13415          from int16 to int. Also, Change width and height from
13416          unsigned to signed to avoid all the stupid C 
13417          signedness bugs.
13418
13419 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13420
13421         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13422         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13423         Add some more detailed checking.
13424
13425         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13426         New function to retrieve the depth of a drawable.
13427
13428         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13429         field, reorder fields to save memory. 
13430
13431 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13432
13433         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13434         of the background image instead of scaling the background down to
13435         a line.
13436
13437         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13438         which temporarily set slider to wrong size.
13439
13440         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13441         queue_clear().
13442
13443 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13444
13445 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13446
13447         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13448
13449 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13450
13451         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13452         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13453
13454         * gdk/win32/gdkfont-win32.c
13455         * gdk/win32/gdkproperty-win32.c
13456         * gdk/win32/gdkselection-win32.c
13457         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13458         now declared such.
13459
13460 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13461
13462         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13463
13464 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13465
13466         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13467         is called without trapping X errors.
13468
13469 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13470
13471         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13472         way into the fontset lists.
13473
13474 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13475
13476         * gtk/gtkthemes.h: add extern "C" scope.
13477
13478 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13479
13480         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13481         to make appends to the list constant. (gtk-guy-990901-0.patch)
13482
13483 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13484
13485         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13486         for the typename hash table.
13487
13488 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13489
13490         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13491         to make sure we never divide by zero. 
13492         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13493
13494 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13495
13496         * gtk/gtkfontsel.c: Apply patch from
13497         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13498         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13499
13500         Also, some cleanups in atom handling.
13501
13502 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13503
13504         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13505         not GtkWidget.
13506
13507 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13508
13509         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13510         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13511         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13512         more guint wrap-around bugs before going to bed.
13513
13514 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13515
13516         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13517         guint wrap arounds in allocation.width.
13518
13519         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13520         process untill we fit the allocation given.
13521
13522 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13523
13524         * gtk/gtkwidget.c:
13525         (gtk_widget_unrealize): guard widget access with ref/unref
13526         around signal emission.
13527         (gtk_widget_hide): same here, but also check its destroyed
13528         state before queueing a resize.
13529
13530 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13531
13532         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13533         of gtk_default_insensitive_bg as insensitive base color.
13534
13535         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13536         to the widget's state.
13537         (gtk_text_realize): same here.
13538         (gtk_text_state_changed): same here.
13539         (draw_bg_rect): compare background color against base[] from
13540         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13541
13542 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13543
13544         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13545         grabs are active, unless a delete event is send to the toplevel
13546         of the currently grab holding widget.
13547
13548 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13549
13550         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13551         debugging g_print's.
13552
13553 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13554
13555         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13556         ever make the scrolled-window requisition ever depend on the 
13557         visibility state of the scrollbars for the AUTOMATIC policy. 
13558         This breaks the GTK+ requisition model, and causes loops.
13559
13560 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13561
13562         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13563         the default font to avoid problems with XFree86-4.0 where the
13564         default charset is iso10646-1, not iso8859-1.
13565
13566 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13567
13568         * acinclude.m4
13569         * config.guess
13570         * config.sub
13571         * ltconfig
13572         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13573
13574         * gtk/Makefile.am: minor cosmetic consistency tweak
13575
13576 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13577
13578         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13579         the activate_time to 0, so that we handle a quick
13580         press/release press/release properly and don't suppress
13581         the second release. (Red Hat bug #7545)
13582
13583 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13584
13585         * gtk/gtkctree.c (row_delete):
13586         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13587         bugs with destruction notifier, *always* update internal
13588         structures *before* calling user code.
13589
13590 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13591
13592         A few more fixes for bug #5487, #2051, #2677.
13593         * gtk/gtkclist.c : 
13594         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13595         not GDK_BUTTON_PRESS.
13596         (resync_selection): resync only if selection_mode is
13597         GTK_SELECTION_EXTENDED
13598         * gtk/gtkctree.c (resync_selection): same here
13599
13600 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13601
13602         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13603         gdk_drag_get_selection() and gtk_menu_detach().
13604
13605         [ From Jeroen Ruigrok/Asmodai ]
13606
13607 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13608
13609         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13610         page->tab_label can be NULL.
13611
13612 2000-01-25  Havoc Pennington  <hp@pobox.com>
13613         
13614         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13615         arg is boolean
13616
13617         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13618
13619         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13620
13621         * gdk/gdkproperty.c (gdk_property_get): return boolean
13622
13623         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13624
13625         * gdk/gdkim.c (gdk_im_ready): return boolean
13626
13627         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13628
13629         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13630         glib clash, should fix glib)
13631
13632         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13633         (gdk_get_show_events): return gboolean, and canonicalize 
13634         to TRUE/FALSE
13635
13636         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13637         colormap is private
13638         (gdk_colors_alloc): gboolean whether to be contiguous
13639         (gdk_color_equal): return gboolean since we are a predicate
13640         and not a qsort() (this looks semi-wrong due to glib breakage,
13641         IMO glib should be fixed)
13642         
13643         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13644         (gdk_get_use_xshm): return gboolean
13645         (gdk_pointer_is_grabbed): return gboolean
13646
13647         * gdk/gdk.h: Change prototypes to match all the above changes,
13648         and re-run egtk-format-protos as required.
13649
13650 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13651
13652         * gtk/gtkctree.c (resync_selection): 
13653         * gtk/gtkclist.c (resync_selection):
13654
13655         Return immediately if clist->drag_pos < 0. This is a workaround
13656         for the corrupt state that the clist gets into when a
13657         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13658
13659         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13660         
13661         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13662         variable from recent commit.
13663
13664 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13665
13666         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13667
13668 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13669
13670         * gtk/Makefile.am: prefix all autogenerated source that get build in
13671         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13672         in builddir. since we subsequently cd into srcdir for autogeneration,
13673         the paths have to be stripped from the target file names, thusly we
13674         use $(@F) as target names now.
13675         put a comment about configure.in's --disable-rebuilds option,
13676         which can be used for non-writable source directories, for development
13677         setups though, srcdir has to be *writable*.
13678
13679 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13680
13681         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13682           Finish the job of allowing event to be NULL.
13683           (Fixes bug #4283, reported by Chris Blizzard)
13684
13685         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13686           things so that the cursor appears on screen, properly
13687           take into account INNER_BORDER.
13688           (Fixes bug #4754, reported by Antonio Campos)
13689
13690 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13691
13692         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13693           show the tab_label unless it itself is visible.
13694
13695           gtk/gtknotebook.c (gtk_notebook_size_request):
13696           Do a better job of making sure that the visibility
13697           of the tab label corresponds to whether it should
13698           be mapped or not.
13699
13700 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13701
13702         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13703           Use the requisition, not the allocation, since the
13704           allocation has not necessarily been computed yet.
13705           (Pointed out by Eugene Osintsev)
13706
13707 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13708
13709         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13710           style/base[GTK_STATE_INSENSITIVE] both to
13711           gtk_default_insensitive_bg!
13712           (Bug #2187, reported by Jonathan Blandford)
13713
13714         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13715           Add Alt_L, Alt_R to list of invalid accelerators.
13716           (Bug #3736, reported by Vlad Harchev)
13717
13718 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13719
13720         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13721         bugs which occured after an attempt to open 
13722         invalid home directory left cmpl_state->reference_dir == NULL.
13723
13724          - completion on files in home directory didn't work
13725          - completion on an empty string caused  segfault
13726
13727          (Bug #3678, reported by Steve Ratcliffe)
13728
13729         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13730         cut and paste error that was causing scales to
13731         be incorrectly positioned.
13732         (Bug #2956,
13733          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13734
13735 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13736
13737         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13738         when checking for dcgettext, if we've found we needed
13739         it for dgettext.
13740 +
13741 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13742
13743         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13744         queue_clear on NO_WINDOW widgets during a reparent,
13745         since at that point the window and widget heirarchies
13746         are out of sync. This stops crashing in some cases
13747         (the scrolled window reparent test, for instance), and
13748         _probably_ won't cause drawing errors.
13749
13750         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13751         test do what it was supposed to do and be robust against
13752         window closings, etc. (Bug #2443)
13753
13754 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13755
13756         * gtk/gtkentry.c: Fix return values on mouse events.
13757         (Bug #2686, Sky <seb_sky@yahoo.com>)
13758
13759         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13760         (pointed out by George Lebl)
13761
13762         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13763         (From Ettore Perazzoli  <ettore@helixcode.com>)
13764  
13765 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13766
13767         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13768         clicks between rows or outside calender area correctly.
13769         (Patch from Damon Chaplin)
13770
13771         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13772         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13773           Call destroy function when overwriting existing data. 
13774           (Pointed out by Damon Chaplin)
13775
13776 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13777
13778         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13779           which was causing problems on various systems with Xmu.
13780           This hasn't been needed for a very long time.
13781           (Fixes #1185 3167)
13782
13783 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13784
13785         * gdk/gdki18n.h: Include <ctype.h> when defining
13786           gdk_isw* in terms of is* as a fallback.
13787           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13788
13789 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13790
13791         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13792           realize the widget when it is size allocated!
13793           (old, old bug)
13794
13795         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13796           Removed unused call to gdk_window_get_size() that
13797           showed up when the above was fixed.
13798
13799 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13800
13801         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13802           fix up widget->window when the widget is a
13803           NO_WINDOW container widget.
13804
13805 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13806
13807         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13808           to account for the fact that feof() does _not_ 
13809           return TRUE on errors, and thus avoid infinite loops
13810           when trying to use gdk_pixmap_create_from_xpm()
13811           on unreadable values.
13812
13813 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13814
13815         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13816
13817 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13818
13819         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13820           gdk_gc_set_dashes to take gint8 instead of gchar to
13821           make it clearer that it is _not_ a NULL terminated string.
13822
13823         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13824           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13825           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13826           arguments.
13827
13828 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13829
13830         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13831         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13832         background size relative to our allocation, guard against small
13833         allocations, we may have not yet been size allocated.
13834
13835 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13836
13837         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13838         not just version == 3. We implement all 3 + most of 4 - 
13839         (we don't support matching text/plain;charset=iso-8859-1
13840         to a dest that expects text/plain). We'll still advertise
13841         3 to be safe, but any client implementing version >= 3
13842         must interoperate with 3.
13843         
13844 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13845
13846         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13847         background and gc members, add a warning in gtk_tooltips_set_color()
13848         indicating that this function is deprecated.
13849
13850 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13851
13852         * docs/gtkfaq.sgml: FAQ Update:
13853           - Minor cleanups (Emmanuel, me)
13854           - New questions:
13855                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13856                 How can I retrieve the text from a GtkMenuItem? (timj)
13857                 How do I validate/limit/filter the input to a GtkEntry? (me)
13858                 Memory does not seem to be released when I free the list
13859                         nodes I've allocated (timj)
13860
13861 2000-03-07  Tor Lillqvist  <tml@iki.fi>
13862
13863         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
13864         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
13865         for which it is no use to call GetLastError onWin9x.
13866         (gdk_other_api_failed) New function, for general error
13867         reporting without calling GetLastError.
13868         (gdk_win32_api_failed) OTOH, this function always calls
13869         GetLastError. (gdk_win32_last_error_string) Remove this function,
13870         GLib has the equivalent now.
13871
13872         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
13873         call them with function name, file name and line number in the
13874         arguments.
13875
13876         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
13877         functions.
13878         
13879         * gtk/gtk.def: Add some missing entry points.
13880
13881         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13882         gtk_paned_set_gutter_size, which don't exist any longer, as void.
13883         
13884         Fixes by Hans Breuer:
13885
13886         * gdk/makefile.msc: Update for debugging.
13887
13888         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
13889         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
13890         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
13891         in the dash_list.
13892
13893         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
13894         the x11 backend.
13895
13896         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
13897
13898         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
13899
13900 2000-03-04  Tor Lillqvist  <tml@iki.fi>
13901
13902         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
13903         just pixel value of background colour.
13904
13905         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
13906         containing code snippet previously duplicated in a couple of
13907         places.
13908         
13909         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
13910         gdk_colormap_color.
13911
13912         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
13913         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
13914         events for autorepeated Shift, Control and Alt keys. Use
13915         gdk_colormap_color.
13916
13917         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
13918         pointer is inside the window the cursor of which we are setting,
13919         call SetCursor immediately.
13920
13921         * gdk/win32/makefile.cygwin
13922         * gtk/makefile.cygwin: If we don't have the build number stamp
13923         file, use zero.
13924
13925         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
13926         gtk_paned_set_gutter_size as empty.
13927
13928         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
13929         
13930 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
13931
13932         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
13933           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
13934           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
13935           docs/gtk_tut.sgml docs/gtk.texi TODO:
13936
13937           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
13938
13939 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
13940
13941         * gtk/gtkcalendar.c: Implement num_marked_dates,
13942           and don't emit mutiple day_selected signals on
13943           month_prev.
13944
13945 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
13946
13947         * docs/make-todo (lineno): let title and logo be configurable so
13948         that GNOME can use this script too.
13949
13950         * TODO.xml: added logourl and a title
13951
13952 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
13953
13954         * TODO.xml: Added some UI items, and an explanatory
13955         comment at the top of the file.
13956
13957 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
13958
13959         * TODO.xml: some updates, added abunch of new entries.
13960         a note for those fiddeling with this file, when done
13961         with it, invoke:
13962         $ ./docs/make-todo TODO.xml >/dev/null
13963         and correct output errors before comitting changes.
13964
13965 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
13966
13967         * TODO.xml: Added XML-structured TODO file.
13968         * docs/make-todo: python script to turn TODO.xml into
13969           pretty XML output. 
13970
13971 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
13972
13973         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
13974         the function to let it draw the seven dots, instead of the old,
13975         much maligned, method.
13976         (draw_dot): New function to draw a dot.
13977
13978         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
13979         to draw the handle inside the border width as opposed to outside.
13980         Use paint function instead of gdk_draw_point.
13981
13982         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
13983         to draw the handle inside the border width as opposed to outside.
13984         Use paint function instead of gdk_draw_point.
13985
13986         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
13987         Change indenting to be more GTK like.
13988
13989 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
13990
13991         * docs/gtk_tut.sgml: New section on GtkCalendar
13992         * examples/calendar: Update example code
13993
13994 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
13995
13996         * docs/gtkfaq.sgml: FAQ Update
13997
13998 2000-02-19  Anders Carlsson  <andersca@gnu.org>
13999
14000         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14001         to prevent the scroll event to be propagated upwards.
14002
14003 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14004
14005         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14006         OwnerGrabButtonMask from button entries for
14007         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14008
14009         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14010         to the event mask (which will result in button/press release
14011         being added to the event mask on Unix) so scrolling works
14012         for layouts in scroll windows.
14013
14014         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14015
14016         Patch from Anders Carlsson  <andersca@gnu.org> to add
14017         a scroll event.
14018
14019         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14020         scrolling to the "Test Scrolling" part of testgtk.
14021  
14022         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14023  
14024         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14025         it against GDK_SCROLL.
14026  
14027         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14028         way of mouse wheel scrolling.
14029  
14030         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14031  
14032         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14033  
14034         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14035  
14036         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14037         gdk_event_mask_table.
14038  
14039         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14040         GdkEventScroll handler.
14041  
14042         * gdk/gdkevents.h: Added GdkEventScroll structure.
14043  
14044 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14045
14046         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14047         and Anders Carlsson to change the Paned widgets so that they
14048         can be dragged from anywhere along the length. Also change
14049         the way that this is drawn to make this apparent.
14050
14051         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14052         from George Lebl to check that option_menu->menu is present
14053         before getting history.
14054
14055 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14056
14057         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14058         before the assertion for non-NULL segment list.
14059
14060         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14061         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14062         machine, but it might be display driver dependent. Sigh, so make
14063         sure the stipple is that size. Does Windows suck or what?
14064
14065         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14066         places.
14067
14068 2000-02-13  Havoc Pennington  <hp@pobox.com>
14069
14070         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14071         refcount to 1
14072         (gdk_cursor_new): init refcount to 1
14073
14074         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14075
14076 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14077
14078         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14079         so that we don't have to do unnecessary settings to the HDC.
14080
14081         * gdk/win32/gdkdrawable-win32.c
14082         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14083         gdk_gc_predraw.
14084
14085         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14086         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14087         GDI paths, call WidenPath to get the outline of the stroken path,
14088         and then fill the outline (with the brush that was built from the
14089         stipple).
14090
14091         * gdk/win32/gdkgc-win32.c: Factor out common code from
14092         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14093         gdk_win32_gc_values_to_win32values. Use correct colour for
14094         SetBkColor() (Until now the code actually used a random colour in
14095         the call to SetBkColor()... but that didn't show up as not many
14096         GDI APIs use the background colour. Pattern (opaque stippled)
14097         brushes do.)
14098
14099         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14100         gdk_win32_api_failed): New functions for error logging.
14101
14102         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14103         WIN32_API_FAILED to call them, passing function or file name and
14104         line number.
14105
14106         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14107
14108         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14109         GdkColor for foreground and background in GdkGCWin32Data.
14110
14111         * gdk/makefile.cygwin: Link in the resource object separately.
14112
14113         * gdk/win32/rc/gdk.rc
14114         * gtk/gtk.rc (New file)
14115         * gdk/win32/makefile.cygwin
14116         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14117         as in GLib.
14118
14119 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14120
14121         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14122         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14123         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14124         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14125         parameters given and cursor->ref_count. coding style fixups.
14126
14127         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14128         not GtkWidget.
14129         
14130         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14131         fix up widget macros and add _GET_CLASS() variant.
14132         
14133         * gtk/*.c: some GtkType fixups.
14134
14135 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14136
14137         * gdk/win32/gdkproperty-win32.c
14138         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14139         were reversed.
14140
14141 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14142
14143         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14144         g_filename_to_utf8 to convert the font names Windows gives us from
14145         whatever is the default codepage to UTF-8.
14146         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14147         in the other direction.
14148
14149         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14150         error in debugging output.
14151
14152 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14153
14154         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14155         and height parameters to gdk_window_clear_area(). Not minus one.
14156
14157 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14158
14159         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14160         checks if the widget passed to gtk_drag_get_data() was not the
14161         dest widget.
14162
14163 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14164
14165         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14166         g_filename_from_utf8 functions (which were added a moment ago to
14167         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14168         size buffers.
14169
14170         gtk_file_selection_get_filename returns the filename in the C
14171         runtime encoding. It calls g_filename_from_utf8, but copies the
14172         returned string to a static buffer, which is returned. I think
14173         this is better than returning the result from g_filename_from_utf8
14174         directly, which would mean all apps that use it would have to free
14175         the return value. Or should this function care about this issue at
14176         all? Maybe a new function with clearly defined semantics.
14177
14178         * gtk/gtkfilesel.h: Add comment about
14179         gtk_file_selection_get_filename returning the filename in the C
14180         runtime's encoding.
14181
14182         * README.win32
14183         * gdk/gdk.def
14184         * gdk/makefile.{cygwin,msc}
14185         * gtk/gtk.def: Updates.
14186
14187         * gdk/gdkcursor-win32.c: Initialise refcount.
14188
14189 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14190
14191         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14192
14193 2000-01-30  Havoc Pennington  <hp@pobox.com>
14194
14195         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14196         destroy
14197
14198         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14199
14200         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14201         implemented in platform-specific code
14202
14203         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14204
14205         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14206         underscore in front
14207
14208         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14209         put an underscore in front
14210
14211         * gdk/gdkcursor.c: new file, implements
14212         gdk_cursor_ref/gdk_cursor_unref
14213
14214         * gdk/gdkcursor.h: Refcount GdkCursor
14215
14216         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14217
14218 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14219
14220         * gdk/gdkwindow.h
14221         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14222
14223 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14224
14225         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14226         structures to properly inherit from GtkWidget not GtkBin.
14227
14228 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14229
14230         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14231         (bug #5178 - Peter Wainright)
14232         
14233         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14234         so that it will be installed.
14235         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14236
14237 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14238
14239         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14240         for the GtkStyleClass vtable const.
14241
14242         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14243         take a const string argument like GtkTranslateFunc. This will
14244         require changes in use code.
14245
14246 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14247
14248         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14249         semantics (to mimic the X11 backend, which just calls XClearArea)
14250         is to check for zero width (and height), and in that case use the
14251         window's width minus x (height minus y). This fixes for instance
14252         some redraw problems with gtkclist, which were easily noticeable
14253         in the gtk file selection widget.
14254
14255         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14256         windows.
14257
14258 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14259
14260         * configure.in
14261         * gdk/Makefile.am
14262         * gdk/x11/Makefile.am
14263         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14264         (bug #5177).
14265         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14266         out later.
14267
14268 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14269
14270         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14271         WM_MOVE for iconified or invisible windows. This fixes various
14272         problems when minimising windows. Thanks to Bernd Herd.
14273
14274 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14275
14276         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14277         backend's draw_lines method, not draw_points.
14278
14279 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14280
14281         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14282         before Owen's reorganisation: Don't have queued_events and
14283         queued_tail statics in this file, but use gdk_queued_events and
14284         gdk_queued_tail. This makes exposure event compression work again.
14285
14286         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14287         seem to be needed?
14288
14289 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14290
14291         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14292         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14293         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14294         doesn't do anything.
14295
14296         * gdk/gdk.def: Add gdk_xid_table_insert.
14297
14298         * gdk/win32/gdkprivate-win32.h
14299         * gdk/win32/gdkevents-win32.c
14300         * gdk/win32/gdkinput-win32.c
14301         
14302         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14303         extension_events field in the GdkWindowWin32Data struct. Use only
14304         the extension_events field in GdkWindowPrivate. Previously one was
14305         set, and the other one tested, which broke tablet
14306         functionality. Thanks to Keishi Suenaga for pointing this out.
14307
14308 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14309
14310         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14311         When handling a single character (text length == 1), don't handle
14312         it as if it was UTF-8.
14313
14314 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14315
14316         * Makefile.am: Distribute README.win32.
14317         
14318         * gdk/Makefile.am
14319         * gdk/win32/Makefile.am: Distribute Win32 files.
14320
14321         * gdk/makefile.msc: New file.
14322
14323         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14324         after label).
14325
14326         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14327         gdk_error_code as GDKVAR, as they are referred outside GDK.
14328
14329         * gdk/win32/makefile.msc: Update.
14330
14331         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14332         tweaks. Check only if at least one of those Unicode subrange bits
14333         we care for is set. If no code page bits are set, guess (wildly)
14334         based on the charset.
14335
14336         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14337
14338         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14339         non-NULL.
14340
14341         * gtk/gtkdnd.c
14342         * gtk/gtklayout.c
14343         * gtk/gtkplug.c
14344         * gtk/gtkselection.c
14345         * gtk/gtksocket.c
14346         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14347         appropriate. There must be a cleaner way to handle this?
14348
14349         * gtk/gtkrc.c: Must include windows.h on Win32.
14350
14351         * gtk/testgtk.c: No need to include gdkx.h.
14352
14353         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14354
14355 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14356
14357         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14358         the rbearing is set to the same as the width, but this should be
14359         fixed.
14360
14361 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14362
14363         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14364         function. If Windows doesn't tell us what Unicode subranges a font
14365         covers, guesstimate based on the codepages it covers. This will
14366         hopefully help those Windows versions or fonts that don't give us
14367         any useful Unicode subrange information with GetTextCharsetInfo.
14368         Call this function in gdk_font_load_internal.
14369
14370         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14371         minor changes.
14372
14373 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14374
14375         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14376         New function, long needed.
14377
14378 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14379
14380         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14381         only_if_exists argument of gdk_atom_intern to
14382         bool.
14383
14384 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14385
14386         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14387         Fix two copy&paste errors.
14388
14389         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14390         win32 has changed.
14391
14392         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14393         GdkWin32SingleFont struct.
14394
14395         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14396         subranges of loaded fonts. Clear font signature first, in case
14397         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14398         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14399
14400         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14401         Unoffset clip region.
14402
14403 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14404
14405         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14406         event->any.window before calling filter functions.
14407
14408 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14409
14410         * gtk/gtkgamma.h: Adapt cast macros to standard.
14411
14412 [ Merges from 1.2 ]
14413
14414 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14415
14416         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14417         If translation does not include a '/', use entire
14418         translation instead of crashing.
14419
14420 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14421
14422         * docs/gtk_tut.sgml:
14423         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14424
14425 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14426
14427         * gtk/gtkselection.c (gtk_target_list_remove): Use
14428         g_list_remove_link, not g_list_remove.
14429
14430         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14431         
14432 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14433
14434         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14435         statement upon unselection (how the heck did that slip in?).
14436
14437 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14438
14439         * gtk/gtktext.c (gtk_text_freeze): 
14440         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14441         in frozen state (and aparently crashes). patch provided by Anders
14442         Melchiorsen <and@kampsax.dtu.dk>.
14443
14444 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14445
14446         * fix insensitive default/focus widget activation,
14447         reported by Matt Goodall <mgg@isotek.co.uk>.
14448
14449         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14450         (gtk_window_activate_default):
14451         (gtk_window_activate_focus):
14452         return handled=FALSE for actiavtion of insensitive default
14453         widgets. return handled=TRUE for activation of insensitive
14454         focus widgets. don't activate in either case.
14455
14456 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14457
14458         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14459         and $glib_cflags to match library order and in the
14460         theory that an old version of GLib is more likely to
14461         be in the include directory for X then vice-versa.
14462         (Bug #2776)
14463
14464 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14465
14466         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14467         to determine the locale for fontsets, not LC_MESSAGES;
14468         the user may want English messages with a handling
14469         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14470         will still be broken) (Bug #2891)
14471
14472 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14473
14474         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14475
14476 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14477
14478         * gtk/gtkrc.ko: Changed the Korean default fontset.
14479
14480 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14481
14482         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14483         where when scrolling to the left or top double exposes
14484         were done, causing major slowdowns.
14485
14486 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14487
14488         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14489         names to lowercase and alphanumeric, before looking
14490         them up.
14491
14492         * gtk/Makefile.am: Install codeset variant gtkrc files
14493         with normalized names.
14494
14495 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14496
14497         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14498         popup menus when the menu is already visible, but its parent
14499         is still hidden, (happens after tornoff window got hidden).
14500
14501 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14502
14503         * gtk/Makefile.am (install-data-local): Fix
14504         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14505         deleted, causing error messages on install.
14506
14507 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14508
14509         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14510         the handle as well, since we now sometimes ignore
14511         exposes on the handle while resizing.
14512
14513 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14514
14515         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14516         extra g_free introduced in one of the last one or two 
14517         commits.
14518
14519 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14520
14521         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14522         consistent, put each style that a gtkrc.* file creates
14523         in a unique namespace, remove old files before installing.
14524
14525 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14526
14527         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14528         gtk_rc_init is called multiple times. (Yes, people who
14529         do that have bugs in their code.)
14530
14531 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14532
14533         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14534         Remove it since it's generated by the Makefile anyway
14535
14536 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14537
14538         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14539         device->info.axes for core pointer.
14540
14541 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14542
14543         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14544         idle_id, to deal with obsolete, broken C libraries.
14545
14546 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14547
14548         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14549         allocation->x/y twice!
14550
14551         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14552         consistent with gtk_vscale_pos_trough().
14553
14554 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14555
14556         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14557         be queueing a resize on a toplevel container between
14558         the time we show it and when we map it. So, we need
14559         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14560         use GTK_WIDGET_DRAWABLE() for child windows.
14561
14562 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14563
14564         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14565         (fixes bug #2144)
14566
14567 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14568
14569         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14570         container DRAWABLE (instead of VISIBLE), so we don't queue
14571         resizes on non-toplevel containers.
14572
14573 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14574
14575         * gtk/gtkselection.[ch]: Make the data argument
14576         const guchar *.
14577
14578 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14579
14580         * gtk/gtkwindow.c: Try to behave sensibly if 
14581         the focus widget is the window itself. (Should
14582         we allow this at all?)
14583
14584 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14585
14586         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14587         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14588         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14589         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14590         in prototypes and implementations consistent (Tomas Ogren).
14591
14592         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14593         before the widget is unparented (reported by damon).
14594
14595         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14596         since we provide unsigned data anyways.
14597
14598 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14599
14600         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14601         the call to gtk_tooltips_layout_text() until later.
14602
14603         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14604         Call gtk_widget_ensure_style() before using the style.
14605
14606 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14607
14608         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14609         for old widgets that don't propagate draws to all
14610         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14611
14612 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14613
14614         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14615         for a redraw but just the widget that requested the resize.
14616
14617 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14618
14619         * gtk/gtkcontainer.c: added new widget level method
14620         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14621         reallocate_redraws : 1 to reflect the setting, exported this through
14622         the argument system as a boolean ::reallocate_redraws.
14623
14624         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14625         on the widget because the allocation changes, do so as well for
14626         widget->parent if the parent has reallocate_redraws set to TRUE.
14627         with that containers requesting reallocation redraws get automatically
14628         redrawn if their children changed allocation (this unfortunately
14629         affects also other children that didn't change allocation, but we
14630         cannot work around that before 1.3).
14631
14632 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14633
14634         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14635         _and_ height are >0 (not _or_).
14636
14637         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14638         instead of gtk_container_queue_resize(), which is a core gtk internal
14639         function (must have been on crack when i queued that).
14640
14641         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14642         we can check more reliably if we want to discard expose events.
14643         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14644         flag.
14645         
14646         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14647         we simply trust these events. for deciding whether to discard exposes,
14648         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14649         
14650 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14651
14652         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14653         queues of areas that are completely off screen.
14654
14655         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14656         logic for handleboxes.
14657
14658         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14659         check on width/height.
14660
14661 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14662
14663         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14664         we are fine with using $@ the way we do (if we actually encounter
14665         brokeness with $@ in VPATH builds because of additional path prefixes,
14666         we need to use $(@F) actually).
14667
14668 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14669
14670         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14671         short lived bugs, that would allow language bindings to do surgeries
14672         to our guts.
14673
14674 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14675
14676         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14677         where comparison was being done against an uninitialized
14678         value causing intermittant results depending on
14679         compiler flags. Also make it clearer that we aren't
14680         ever initializing the child as 0x0 (though this will
14681         be caught in gtk_widget_size_allocate())
14682
14683 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14684
14685         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14686         gtk_window_unset_transient_for() call after we do checks
14687         involving the old transient parent.
14688         [ From Lance Capser <lmc@cyberhighway.net> ]
14689
14690 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14691
14692         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14693         an empty file.
14694
14695 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14696
14697         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14698         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14699
14700 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14701
14702         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14703         `$@' is valid only in the build dir, not after we've done 
14704         `cd $srcdir'.  Also use `test -f' instead of less portable
14705         `test -e'.
14706
14707 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14708
14709         * gtk/gtktext.c (correct_cache_insert): Rewrite
14710          for simplicity, and hopefully correctness.
14711          (Fixes bug #1322, which was a segfault when
14712           on some insertions with the properties around
14713           the insertion set up just wrong.)
14714
14715         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14716          a "changed" signal, clamp the new value to the adjustment
14717          bounds to avoid segfaulting if someone tries to change
14718          the adjustment to a bogus value. (Bug #1795)
14719
14720 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14721
14722         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14723         for children, for toplevel windows handle them
14724         like delete_event.
14725
14726         * gtk/gtkplug.c: Add an unrealize handler so that
14727         we unref plug->socket_window when we are done
14728         with it.
14729
14730 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14731
14732         * gtk/gtktext.c (clear_area): Fix stupid signedness
14733          problem that was causing background to sometimes
14734          be misaligned.
14735
14736 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14737
14738         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14739         
14740         * gtk/gtkmenu.c (gtk_menu_position): Make
14741          sure we never position menus with negative x, y,
14742          since gtk_widget_set_uposition() can't handle that.
14743
14744         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14745          Modify the positioning code a bit so that we always
14746          put the top-left corner onscreen. (This is for
14747          UI reasons, gtk_menu_position() now takes care of
14748          gtk_widet_set_uposition() brokeness.)
14749
14750 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14751
14752         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14753
14754 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14755
14756         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14757           RC style that is passed in. The lack of the ref
14758           before was a bug. If people worked around this
14759           bug, this will introduce a slight memory leak
14760           in their code. The code should typically look like:
14761
14762             rc_style = gtk_rc_style_new ();
14763             [...]
14764             gtk_widget_modify_style (widget, rc_style);
14765             gtk_rc_style_unref (rc_style);
14766
14767         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14768           the style if it was already set.
14769
14770         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14771           style if it was set before.
14772
14773 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14774
14775         * gtk/testgtk.c (main): Add a check to see if we
14776           are being run from the correct directory and
14777           to quit nicely if we are not.
14778
14779         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14780           static.
14781
14782 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14783
14784         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14785
14786         * gtk/gtkwindow.c:
14787         queue resizes unconditionally (gtk_widget_queue_resize will figure
14788         what to do if the window is not realized).
14789         (gtk_window_move_resize): only recenter the window
14790         for GTK_WIN_POS_CENTER_ALWAYS.
14791         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14792         the same way as GTK_WIN_POS_CENTER.
14793
14794 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14795
14796         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14797         with (!(info->last_flags & GDK_HINT_POS)) instead of
14798         (!info->last_flags & GDK_HINT_POS).
14799
14800         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14801         new_height unconditionally, because we use these values even if
14802         !default_size_changed && !hints_changed.
14803         comented the (default_size_changed || hints_changed) case with
14804         respect to resize rejects from the window manager.
14805
14806         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14807         in the zvt condition hack, since this includes the window hints, set
14808         the hints after the handling_resize case.
14809
14810         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14811         window is initially shown with to the geometry.
14812
14813 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14814
14815         * gtk/gtkwindow.c (gtk_window_move_resize):
14816         s/size_changed/default_size_changed/g so i know what's
14817         really going on (frying brain on smaller flame now).
14818
14819 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14820
14821         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14822         we have size_changed upon handling_resize. this is a gross
14823         workaround for the broken zvt widget and should be removed in
14824         1.3 again (search for FIXME).
14825         Owen provided an accurate comment for this:
14826
14827         /* We could be here for two reasons
14828          *  1) We coincidentally got a resize while handling
14829          *     another resize.
14830          *  2) Our computation of size_changed was completely
14831          *     screwed up, probably because one of our children
14832          *     is broken. It's probably a zvt widget.
14833          *
14834          * For 1), we could just go ahead and ask for the
14835          * new size right now, but doing that for 2)
14836          * might well be fighting the user (and can even
14837          * trigger a loop). Since we really don't want to
14838          * do that, we requeue a resize in hopes that
14839          * by the time it gets handled, the child has seen
14840          * the light and is willing to go along with the
14841          * new size. (this happens for the zvt widget, since
14842          * the size_allocate() above will have stored the
14843          * requisition corresponding to the new size in the
14844          * zvt widget)
14845          *
14846          * This doesn't buy us anything for 1), but it shouldn't
14847          * hurt us too badly, since it is what would have
14848          * happened if we had gotten the configure event before
14849          * the new size had been set.
14850          */
14851
14852 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14853
14854         * gtk/gtkrc.c: deal properly with the fact that RC
14855           style lists may include rc styles more than once.
14856
14857         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14858           unused static function.
14859
14860         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
14861           stack of directories of RC files currently being
14862           parsed and implicitely add them to pixmap path.
14863           
14864           This fixes a bug where the directory would get
14865           appended then overwritten by pixmap_path declarations.
14866
14867           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
14868
14869         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
14870           theme's exit function. (Patch from Peter Wainwright,
14871           bug #1454)
14872
14873         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
14874           Add a destroy() handler to take care of removing
14875           group for menu item. (Fixes bug #1197)
14876
14877         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
14878           in warning message.
14879
14880 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
14881
14882         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
14883         roundtrip to figure window's width and height, since we know that
14884         anyways from widget->allocation.
14885
14886 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
14887
14888         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
14889           the hints after we request the new size.
14890
14891 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
14892
14893         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
14894           GTK_WIDGET_REALIZED() assertion - we can compute the
14895           hints before we are realized.
14896
14897         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
14898           hint changing so that we have a value of hints_changed
14899           when we decide whether to constrain the window size.
14900
14901         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
14902
14903         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
14904         change back to G_MAXINT.
14905
14906 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
14907
14908         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
14909         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
14910         contain uncluttered values.
14911         (gtk_window_compute_hints): simply assert that window is realized
14912         and that geometry_info is valid, since we rely on this anyways.
14913         (gtk_window_constrain_size): major cleanups to the code.
14914         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
14915         for the base size, instead of the minimums. use 32767 as max width
14916         and height (like in gtkwindow.c) instead of G_MAXINT.
14917
14918 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
14919
14920         * cleaned up the GtkContainer.need_resize flag handling mess, we
14921         only need to force resize requests when we were prematurely
14922         realized, or our widget tree was modified when we were temporarily
14923         hidden. handling these cases directly upon showing the window (i.e.
14924         while the GdkWindow is still unmapped) avoids the need to wait for
14925         a configure event response and therefore makes the GUI more snappier
14926         and avoids blank windows during the roundtrip.
14927
14928         * gtk/gtkwidget.c:
14929         (gtk_widget_hide): 
14930         (gtk_widget_show): don't queue resizes on toplevels, they know how
14931         to deal with matters.
14932
14933         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
14934         flag directly for not visible resize containers and spare us unecessary
14935         signal emissions.
14936
14937         * gtk/gtkwindow.c:
14938         (gtk_window_realize): if we need to enforce premature size allocation,
14939         queue a container resize so we are correctly resized later on.
14940         (gtk_window_init):
14941         (gtk_window_size_request):
14942         don't freak around with the ->need_resize flag,
14943         gtk_container_queue_resize() will care about that.
14944         (gtk_window_show):
14945         handle initial resizing issues here, we can handle matters better in
14946         this place, especially since we know that our GdkWindow is still
14947         unmapped.
14948         (gtk_window_move_resize):
14949         don't care about ->need_resize at all.
14950         handle size changes properly that occoured while we waited for a
14951         configure event.
14952
14953 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
14954
14955         * gtk/gtkwidget.c (gtk_widget_set_uposition):
14956         * gtk/gtkwindow.[hc] (gtk_window_reposition):
14957         Move the hint setting code from gtk_widget_set_uposition
14958         to here; set the hints so that we respect any previously
14959         set geometry hints.
14960
14961         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
14962         change the window hints here or move the window here,
14963         let that happen in gtk_window_move_resize().
14964
14965 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
14966
14967         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
14968         to already queued resizes (and therefore redraws) on a widget, check
14969         its anchestry as well.
14970
14971         * gtk/gtkcontainer.c:
14972         (gtk_container_queue_resize): clear resize widgets for resize
14973         containers before aborting prematurely. this is especially important
14974         for toplevels which may need imemdiate processing or their resize
14975         handler to be queued.
14976         (gtk_container_dequeue_resize_handler): added new internal function for
14977         gtkwindow.c.
14978
14979         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
14980         configure event, take possible changes in window position into account
14981         as well.
14982         if we request a new window size, queue up a resize handler that will
14983         last until the configure event response arrives.
14984         combined the ->need_resize case (initial show) with the general size
14985         (hints) changed case and added even more comments.
14986         if !auto_shrink, only revert to the old allocation if the new size
14987         is smaller than the current allocation.
14988
14989 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
14990
14991         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
14992                            gtk_window_set_geometry_hints
14993                            gtk_window_set_default_size):
14994         When hints are set, queue a resize so that the hints will
14995         be eventually reset on the toplevel.
14996
14997         * gtk/gtkwindow.c (gtk_window_show): Use
14998         gtk_window_compute_default_size(). Clear the need_resize flag
14999         on the initail map so that we don't unnecessarily trigger the
15000         resize code.
15001
15002         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15003         into separate functions. Compare the hints we are setting
15004         with what we set last time so that we can accurately
15005         tell when we need to reset the hints.
15006
15007         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15008         function to figure out the size from requisition
15009         and default_size.
15010
15011         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15012         from fvwm to constrain a size to the geometry hints.
15013
15014         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15015         to compare two sets of geometry hints.
15016
15017         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15018         from gtk_window_set_hints(), just compute the hints,
15019         don't set them.
15020
15021         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15022         code from gtk_window_move_resize() to separate function,
15023         rationalize a bit.
15024
15025 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15026
15027         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15028         structure into a new private structure.
15029
15030         * gtkrc.c: Split GtkRcStyle into public/private.
15031         In the private part, add a list of pointers to the
15032         RcStyle lists this RcStyle participates in.
15033
15034         * gtkrc.c: When a RcStyle is free, remove all
15035         lists referencing it from the 
15036         realized_style_ht hash, and free those lists.
15037         
15038         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15039         gtk_rc_init(), since that adds the default styles
15040         to the list of parsed RC files again.
15041
15042         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15043         
15044 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15045
15046         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15047         checks that ensure that a widget's allocation is at least 1 in width
15048         and height. (GNOME note: this doesn't affect old panel code anymore,
15049         because GtkSocket will request width and height of at least 1 since
15050         Fri Jul 23).
15051
15052         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15053         allocated yet (happens if the user realizes the window prematurely),
15054         size request and allocate it.
15055         (gtk_window_size_allocate): guard against guint underflows.
15056
15057 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15058
15059         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15060         in gtk_built_sources, so gtk.defs gets built prior to all other
15061         sources.
15062
15063 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15064
15065         * gtk/Makefile.am:
15066         invoke indent on gtkmarshal.*. 
15067         rewrote source generation rules, use COPYING as oldest source tag for
15068         a piggyback rule to generate all sources from (don't touch it ;).
15069         major cleanups, strip spaces on build rules for GNU Make.
15070
15071         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15072         source and target files from commandline arguments. don't invoke indent.
15073
15074 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15075
15076         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15077         notebook after switch to avoid drawing problems.
15078         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15079         
15080         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15081         show them instead. 
15082         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15083
15084 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15085
15086         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15087         notebook after switch to avoid drawing problems.
15088         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15089         
15090         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15091         show them instead. 
15092         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15093
15094 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15095
15096         * gtk/gtkwindow.c:
15097         we use window->need_resize from configure_event now, to indicate that
15098         the gtkwindow should keep its allocation (e.g. because the user resized
15099         the window through window manager handles). resize_count is now reliably
15100         used to figure whether we got the allocation we requested from the
15101         window manager.
15102         configure events get queued as resizes now, the real stuff (size
15103         computation and allocation) now only goes on in gtk_window_move_resize().
15104         GtkWindow's requisition now contains its *real* requisition (like all
15105         other widgets), *not* taking usize into account.
15106         geometry_info->last_{width|height} is now updated from set_hints() only
15107         so it always contains the last hints we set for the window manager.
15108         made some event handlers return TRUE instead of FALSE.
15109         the overall code should be much more straight forward now, and the
15110         significant code portions are accompanied by comments now.
15111         (gtk_window_set_hints):
15112         removed requisition argument and made it
15113         fetch the requisition through gtk_widget_get_child_requisition.
15114         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15115         does that now.
15116         (gtk_window_show):
15117         ensure that the widget is realized before calling 
15118         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15119         ensure that we got properly size requested and allocated before
15120         realization.
15121         (gtk_window_configure_event):
15122         ignore plain window moves, or reallocate the widget tree through the
15123         resize queue otherwise.
15124         (gtk_window_move_resize):
15125         mostly rewrote this function to figure window manager hints more
15126         reliably, coalesce window moves and resizes to reduce configure events
15127         and do actuall size allocations.
15128
15129 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15130
15131         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15132         that have a resize pending, because a redraw is already queued for them.
15133
15134         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15135         hack to clear resize_widgets.
15136
15137         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15138         for resize containers prior to size allocation. (this is also a bit
15139         ugly, but avoids side effects for stopped emissions and is thus more
15140         reliable).
15141         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15142
15143         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15144         function from gtk_tooltips_expose, as we connect to ::expose_event
15145         *and* ::draw now.
15146
15147 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15148
15149         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15150         checks.
15151         (gtk_target_list_unref): Likewise.
15152
15153         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15154
15155 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15156
15157         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15158         guard against division by zero. (Fixes bug #1339)
15159
15160 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15161
15162         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15163         Prevent the trivial leak of information of allowing
15164         word motion when the entry is not visible.
15165
15166 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15167
15168         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15169         modality to error dialog as well as confirmation dialogs.
15170         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15171
15172 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15173
15174         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15175         tree->view_lines.
15176         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15177
15178         * gtk/Makefile.am (install-data-local): Solaris apparently
15179         has various troubles with ln -f; use rm first instead.
15180         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15181
15182 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15183
15184         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15185         use `cp' followed by `rm' (the `rm' was already there).
15186
15187 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15188         
15189         * configure.in: Fix autoconf warnings about cross compilation by
15190         trying to provide sane defaults for AC_TRY_RUN.
15191         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15192         put them into $(srcdir) when generated. Also add a dependency of
15193         gtksignal.h on gtkmarshal.h for -j builds. 
15194         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15195
15196 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15197
15198         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15199         GDK_THREADS_{LEAVE,ENTER} pair.
15200         (From Paul Fisher <pnfisher@redhat.com>)
15201
15202 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15203
15204         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15205         width and height are always >0 (owen).
15206
15207 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15208
15209         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15210         change that assured that a widget's allocated with and height are
15211         always >1, since this breaks *buggy* panel code. unfortunately this
15212         back-breaks the gimp's color selector.
15213
15214         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15215         allocation is always >0 in width and height, before sending the
15216         configure event; this is a *gross* hack to get the gimp back to work.
15217         
15218         * marked both cases with TODO-1.3
15219
15220 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15221
15222         * gtk/gtktext.c: Don't display wrap indicators when
15223         text is not editable and word wrap is on.
15224
15225 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15226
15227         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15228         option menus here as they are not derived from menu shell, assure that
15229         the option menu has a menu we can add items to.
15230
15231 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15232
15233         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15234         width/height to (gint) before calculations and check against < 0 to
15235         avoid guint wraparounds.
15236
15237 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15238
15239         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15240         width and height is never zero. sanity check both dimensions against
15241         32767 and issue a warning if the allocation is greater than that.
15242
15243 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15244
15245         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15246         to g_main_pending() as well.
15247
15248 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15249
15250         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15251         call to g_main_iteration() - since that will regrab
15252         GTK+ lock to process events.
15253
15254 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15255
15256         * gtk/gtkwindow.c
15257         - Regularize with the rest of GTK+ by making widget->requisition
15258           not reflect the set_usize()
15259         - Always recompute geometry hints, then check if they
15260           changed before sending them to the X server. The
15261           previous checks for changes would fail in a number
15262           of circumstances. 
15263
15264 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15265
15266         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15267
15268 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15269
15270         * gtk/gtkdnd.c:
15271         - Code cleanups
15272         - Instantaneously update on modifier key presses
15273         - Allow cancellation of the drag with Escape.
15274
15275 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15276
15277         * gtk/testgtk.c (create_handle_box): Set the policy
15278         to auto_shrink - otherwise the appearance is rather
15279         strange when flipping between horizontal and vertical.
15280
15281 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15282
15283         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15284         (gtk_window_set_default_size): don't change a value if it's < 0.
15285         queue a resize.
15286
15287 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15288
15289         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15290
15291 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15292
15293         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15294         add an extra "/" when concating "/" + filename.
15295         (From Matt Grossman <mattg@oz.net>)
15296
15297 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15298
15299         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15300         for fg_gc if we set it for drawing pixmap.
15301
15302 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15303
15304         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15305         
15306         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15307         already set, call old engine's destroy function and
15308         unref the old engine.
15309
15310 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15311
15312         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15313
15314 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15315
15316         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15317
15318 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15319
15320         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15321         expand behaviour changed.
15322
15323         * gtk/gtklabel.c (gtk_label_set_pattern):
15324         (gtk_label_set_justify):
15325         (gtk_label_set_line_wrap):
15326         don't bother invoking queue_clear, the reallocation does
15327         that for us, always free_words so the upcoming resize will
15328         relayout the label's contents.
15329
15330 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15331
15332         * applied argument implementation patches from Elena Devdariani
15333         <elena@cogent.ca>.
15334
15335         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15336         ::space_style, ::relief
15337         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15338         * gtk/gtkpreview.c: ::expand
15339         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15340         * gtk/gtknotebook.c: ::homogeneous
15341         * gtk/gtklabel.c: ::wrap
15342         * gtk/gtklist.c: ::selection_mode
15343         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15344         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15345         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15346         * gtk/gtkclist.c: ::sort_type
15347         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15348         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15349
15350 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15351
15352         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15353         comment.
15354
15355 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15356
15357         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15358         counting right when we have to attach a new style
15359         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15360
15361         * gtk/gtkstyle.c: Documented the refcounting
15362         peculularities of gtk_style_attach.
15363
15364 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15365
15366         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15367         window types.
15368
15369         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15370         of GTK_TOPLEVEL for creating the window.
15371
15372 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15373
15374         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15375         the last argument (reported by Per Winkvist).
15376         
15377 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15378
15379         Fixes for invisible XOR lines (Frank Loemker
15380         <floemker@TechFak.Uni-Bielefeld.DE>)
15381         
15382         * gtk/gtkclist.c (gtk_clist_realize): Always use
15383         a non-zero pixel for GDK_XOR.
15384
15385         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15386         Use GDK_INVERT instead of GDK_XOR.
15387
15388 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15389
15390         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15391         signals if h/voffsets differ from adjustment values.
15392         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15393
15394 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15395
15396         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15397         ::selection-done emissions up to the topmost menu shell.
15398
15399 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15400
15401         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15402         the user data on the window before destroying it.
15403
15404         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15405         unrealize handler to take care of destroying 
15406         notebook->panel properly. 
15407         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15408
15409         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15410         of g_new and g_realloc to stop memory leak. (Actually,
15411         we could just use g_realloc(), but I'm not 100% sure
15412         that is portable).
15413         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15414
15415 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15416
15417         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15418
15419         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15420         for fontsets.
15421
15422         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15423         with bin/button confusion.
15424
15425 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15426
15427         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15428         and show how preselection of radio items is done.
15429
15430 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15431
15432         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15433         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15434         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15435         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15436         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15437         * gtk/gtktable.c (gtk_table_attach): 
15438         * gtk/gtklist.c (gtk_list_insert_items): 
15439         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15440         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15441         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15442         * gtk/gtkbin.c (gtk_bin_add): 
15443         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15444         * gtk/gtkfixed.c (gtk_fixed_put): 
15445         * gtk/gtklayout.c (gtk_layout_put):
15446         general fixups to container_add logic. always realize child if
15447         child->parent is realized, only map the child and queue a resize
15448         if child and child->parent are both visible.
15449
15450 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15451
15452         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15453         instead of gtk_container_foreach to walk and unrealize children, so
15454         composite children get also unrealized.
15455         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15456         (gtk_widget_map): assert that the widget is visible (basic constrain).
15457         (gtk_widget_real_map): assert that the widget is realized (basic
15458         constrain).
15459
15460 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15461
15462         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15463
15464 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15465
15466         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15467         file for iso-8859-2 locales.
15468
15469         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15470
15471 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15472
15473         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15474          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15475          Remove some suspicious and useless lines. 
15476
15477 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15478
15479         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15480         width,height = 0, 0 to mean - here to edge of window,
15481         instead of -1, -1, since the former is all we support.
15482
15483 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15484
15485         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15486         when removing from quit_functions list.
15487
15488 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15489
15490         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15491
15492 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15493
15494         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15495          When redrawing characters on non-visible entry, use appropriate
15496          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15497
15498 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15499
15500         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15501         from drag coordinates.
15502         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15503         use drag_dest_cell.
15504
15505         * gtk/gtktree (drag_dest_cell)
15506         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15507         (Bug #1129)
15508
15509 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15510
15511         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15512         translate_* fields.
15513         (gtk_item_factory_finalize): invoke translate_notify independant from
15514         translate_data.
15515         (gtk_item_factory_set_translate_func): likewise.
15516         (gtk_item_factory_destroy): only remove ifactory pointer from those
15517         widgets that belong to us (stupid me).
15518
15519 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15520
15521         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15522         rc_style list when lookup succeeeds.
15523
15524 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15525
15526         * gtk/gtkctree.c (resync_selection): 
15527         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15528         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15529         bug.
15530
15531 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15532
15533         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15534         Add some missing GDK_THREADS_ENTER()/LEAVE around
15535         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15536
15537 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15538
15539         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15540         rather than emit_by_name.
15541
15542         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15543         on the widget across multiple signal emissions.
15544         (gtk_editable_delete_text): same here.
15545         (gtk_editable_class_init): set widget_class->activate_signal after
15546         editable_signals[ACTIVATE] has been created.
15547
15548 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15549
15550         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15551         position here prematurely -- we might not have the
15552         right ->min_position and ->max_position yet.
15553
15554 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15555
15556         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15557         Add error traps so if the other end of the connection
15558         dies, we survive.
15559
15560         * gtk/gtkselection.c (gtk_selection_notify): Clean
15561         up properly when selection property retrieval fails.
15562         
15563         * gtk/gtkselection.c (gtk_selection_request): Correctly
15564         reject SelectionRequest notifies where the handler
15565         returns no data.
15566
15567 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15568
15569         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15570         when we've previously highlighted.
15571
15572         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15573         emit two "drag_leave" signals for Motif drops.
15574
15575         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15576         back the correct status messages when dropping from
15577         Motif onto a proxy window that is rejecting the
15578         drop.
15579
15580 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15581
15582         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15583         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15584         to compare two argument values. added gtk_arg_to_valueloc() to set a
15585         variable from an arg through its location (pointer).
15586
15587         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15588         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15589         as gfloat*, uchars are collected as guchar*, ints are collected as
15590         gint*, etc...
15591
15592 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15593
15594         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15595         Include <string.h> instead of <strings.h>.
15596
15597         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15598         (actually, a lot more duplicate includes occur if
15599          you trace through the sequence of #include's)
15600         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15601         
15602 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15603
15604         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15605         gtk-a-higuti-990322-[0-3]
15606
15607         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15608         that was causing -DX_LOCALE not to work.
15609
15610         * gtk/gtkrc.c (gtk_rc_init):
15611         X_LOCALE will never have LC_MESSAGES defined
15612
15613 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15614
15615         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15616         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15617
15618         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15619         left/right as well (gtk-michael-980726-0.patch.gz).
15620
15621         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15622         for pointer values, use gchar instead of char. fixed uline allocation
15623         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15624         chunks instead of G_ALLOC_ONLY.
15625         (gtk_label_size_request): always alter requisition as passed and leave
15626         widget->requisition alone.
15627         (gtk_label_set_text): allow NULL strings.
15628         (gtk_label_new): likewise.
15629
15630 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15631
15632         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15633
15634 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15635
15636         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15637         *and* mapped (i.e. drawable).
15638         (gtk_bin_expose): only send exposes to drawable children.
15639
15640         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15641         (gtk_box_expose): only send exposes to drawable children.
15642
15643         * gtk/gtkhscale.c (gtk_hscale_draw): 
15644         * gtk/gtkvscale.c (gtk_vscale_draw):
15645         hm, this is an ugly one. we first compute the size of our trough area
15646         here (window relative) and then check intersection with the draw_area
15647         which is parent relative because we're a NO_WINDOW widget, so we need
15648         to offset the trough area by allocation.x and allocation.y before the
15649         check. (this must not be done for the background area though, since
15650         that's already computed parent relative).
15651
15652 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15653
15654         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15655         unrealize title buttons.
15656
15657 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15658
15659         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15660         (gtk_clist_column_title_active): 
15661         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15662
15663         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15664         zero initialize event, removed superfluous gdk_window_get_pointer call
15665
15666         * gtk/gtklist.c (gtk_list_vertical_timeout)
15667         (gtk_list_horizontal_timeout): removed superfluous
15668         gdk_window_get_pointer call
15669
15670 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15671
15672         * plugging problems reported by "Bruce Mitchener, Jr."
15673         <bruce@puremagic.com> due to a purify session.
15674
15675         * gtk/gtkstyle.c:
15676         (gtk_style_ref): 
15677         (gtk_style_unref): assert ref_count to be > 0.
15678
15679         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15680         the requisition.
15681         (gtk_clist_set_shift): likewise.
15682
15683         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15684         adjustments.
15685
15686         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15687         event before sending it and set send_event to TRUE (which needs to
15688         be done for *all* synthesized events).
15689         (gtk_list_vertical_timeout): likewise.
15690
15691         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15692         leaks.
15693
15694         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15695         to TRUE when synthesizing events.
15696
15697 [ *** end of merges from 1.2 *** ]      
15698         
15699 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15700
15701         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15702         (or copied from gdkconfig.h.win32 on Win32, sigh).
15703
15704         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15705
15706         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15707
15708         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15709
15710         * gdk/gdkconfig.h.win32: New file.
15711
15712         * gdk/win32/makefile.cygwin: Build just a static archive here.
15713
15714         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15715         for the DLL from the static archive built above.
15716
15717         * gdk/gdk.def: Moved here from the win32 subdirectory.
15718
15719         * gdk/win32/*: Adapt for the changed private struct organisation.
15720
15721         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15722
15723 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15724
15725         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15726         for wheel mice (buttons 4 and 5).
15727
15728 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15729
15730         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15731         drawables use just the pixel field in the foreground and
15732         background GdkColor of the GdkGC.
15733
15734         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15735         GdkColors containing uninitialized (red,green,blue) fields, and
15736         just the pixel field filled in, and furthermore in the
15737         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15738         It thus turns out that we really don't need to have the full
15739         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15740         it later to have just the pixel values.
15741
15742 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15743
15744         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15745
15746 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15747
15748         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15749         New question on GtkLabel background colors.
15750
15751         * docs/gtk_tut.sgml:
15752           - Correct the example code callback
15753             function definitions.
15754           - Update the gtkdial example code, from Frans van Schaik.
15755           - Update setselection.c to current API.
15756
15757         * examples/Makefile examples/*/*.c: Update to code
15758         listed in tutorial.
15759
15760 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15761
15762         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15763         subrange table (from the "Developing International Software for
15764         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15765         block... Get the loaded font's charset correctly.
15766
15767         (Note that this, and the other *-win32.c files, still really are
15768         the old ones, the win32 subdirectory is not ready for compilation
15769         yet after the reorg.)
15770
15771 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15772
15773         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15774         check.
15775
15776 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15777
15778         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15779         on results of XQueryDeviceState().
15780
15781 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15782
15783         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15784         we need to accesss only ->children. We need an accessor
15785         for the children.
15786
15787         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15788         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15789         to get rid of gdkx.h include.
15790         
15791         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15792         and random references to 'None'.
15793
15794         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15795         Get rid of unused #include <gdk/gdkx.h>
15796
15797         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15798         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15799         gdkconfig.h.
15800
15801 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15802
15803         * gdk/win32/gdkdraw.c
15804         * gdk/win32/gdkfont.c
15805         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15806         following yesterday's changes. (Unrelated to Owen's reorg.)
15807
15808 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15809
15810         * gdk/x11/gdkinput-gxi.c: Add missing include,
15811           fix GdkWindowPrivate => GdkDrawablePrivate.
15812
15813         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15814
15815         * gdk/x11/Makefile.am (xinput_sources): Add missing
15816         backslash to fix building with --with-xinput=none
15817
15818 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15819
15820         Move all X specific code into the x11/ directory.
15821         Aside from shuffling things around, did the following:
15822
15823        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15824          gdk_arg_context_* - a simple argument parsing system
15825          in the style of popt.
15826
15827        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15828          gdk/x11/gdkprivate-x11.h:
15829          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15830          add ->klass and ->klass_data fields. The klass_data
15831          field points to an auxilliary structure that is
15832          windowing system dependent.
15833
15834        * gdk/gdkfont.c: Make most of the measurement functions
15835          simply wrappers around gdk_text_extents().
15836
15837        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15838          _gdk_font_strlen() function that hides the weird
15839          behavior in gtk+-1.[02] where a string is interpreted
15840          differently for 8-bit and 16-bit fonts.
15841
15842        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15843          to store common code for synthesizing double/triple
15844          press events.
15845         
15846        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15847          Make all the function that modify an existing GC
15848          simply wrappers around gdk_gc_set_values().
15849          
15850        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15851          for throwing out later.
15852
15853        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15854          GdkImagePrivate and GdkColormapPrivate to have a
15855          windowing system dependent part (GdkFontPrivateX etc.)
15856          that "derives" from the system-independent part.
15857
15858        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15859          Got rid of the included-source-files for XInput in
15860          favor of automake conditionals. (Which didn't exist
15861          when XInput support was originally added.)
15862
15863        * gdk/gdkrgb.c: Remove the visual id from the debugging
15864          statements since that is X11 specific; print out
15865          type/depth info instead.
15866          
15867
15868 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
15869
15870         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
15871         loading duplicates of hashed fonts.
15872
15873         * gdk/gdk.c (gdk_keysym_convert_case): rename
15874         gdk_XConvertCase to gdk_keysym_convert_case, allow
15875         results to be NULL in the GTK+ style.
15876
15877         * gdk/gdkcompat.h: Started compatibility header
15878         for renames.
15879
15880 1999-11-07  Tor Lillqvist  <tml@iki.fi>
15881
15882         * gdk/win32/gdkprivate.h: New font private structures, related to
15883         fontsets.
15884
15885         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
15886         gdk_font_list_free(). On X11, will just be wrappers to
15887         XListFonts() and XFreeFontNames(). On Win32, the code previously
15888         in gtkfontsel.c is now here.
15889
15890         New function gdk_font_xlfd_create(). On X11 will get the FONT
15891         property of the font (for GDK_FONT_FONTs), or call
15892         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
15893         builds a XLFD style name from the font information in the LOGFONT
15894         struct(s).
15895
15896         New function gdk_font_xlfd_free(), which correspondingly frees the
15897         string returned by gdk_font_xlfd_create().
15898
15899         Implement fontsets on Win32. Add a function that iterates over a
15900         wide char string and calls a callback function for each substring
15901         of wide chars from the same Unicode subrange (and thus probably
15902         available in the same real font).
15903
15904         Improve the XLFD emulation a bit.
15905
15906         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
15907
15908         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
15909         Beta3, WM_IME_CHAR messages don't seem to contain the composed
15910         multi-byte char as with the Active IMM on Win9x. Oh well, handle
15911         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
15912         ImmGetCompositionStringW() to get the composed Unicode chars.
15913
15914         * gdk/win32/gdkgc.c
15915         * gdk/win32/gdkdraw.c: Changes needed because of the font private
15916         struct changes.
15917
15918         * gdk/win32/gdk.def: Add the new functions.
15919
15920 1999-11-04  Tor Lillqvist  <tml@iki.fi>
15921
15922         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
15923         get the Platform SDK to get <dimm.h>.
15924
15925         * gdk/win32/gdkevents.c: More event handling fixes and
15926         simplification. Never generate motion events with is_hint true. We
15927         used to do that on bogus grounds earlier. Windows sends
15928         WM_MOUSEMOVE messages on button events even if the mouse hasn't
15929         moved, ignore these.
15930
15931         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
15932
15933         * gdk/win32/gdkglobals.c
15934         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
15935         the TrackMouseEvent function, and use it.
15936
15937         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
15938         char before calling WideCharToMultiByte in order to get a string
15939         for the window title.
15940
15941         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
15942
15943         * gdk/win32/gdk.def: Remove obsolete functions.
15944
15945         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
15946         /nodefaultlib and /defaultlib switches.
15947
15948         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
15949
15950 1999-10-31  Tor Lillqvist  <tml@iki.fi>
15951
15952         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
15953         EuroSign).
15954
15955         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
15956         same type as GdkWChar, especially on Win32.
15957
15958         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
15959
15960         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
15961         before passing to Windows GDI for drawing etc. Convert to the
15962         system default codepage before passing to Windows as window
15963         titles.
15964
15965         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
15966         support changing input locale on the fly.
15967
15968         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
15969         on-the-fly changes. Convert incoming characters from the current
15970         codepage to Unicode (and then to a UTF-8 multi-byte string) based
15971         on the current input language. Use keysym<->Unicode mapping tables
15972         and functions borrowed from xterm sources.
15973
15974         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
15975         editions of Win9x, use the ActiveX-based Active IMM (Input Method
15976         Manager) if available. IMEs and the Active IMM are available under
15977         the disguise of Chinese, Korean and Japanese support for IE and
15978         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
15979         support is present in all editions (as long as you install it).
15980
15981         Call DispatchMessage from gdk_events_queue() (and thus
15982         gdk_WindowProc()), instead of duplicating the code in
15983         gdk_WindowProc().
15984
15985         Reworked the grab handling and propagation code, factored out
15986         duplicated code snippets into separate functions. Other cleanups,
15987         too.
15988
15989         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
15990         the <dimm.h> header describing the Active IMM.
15991
15992         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
15993         just do the same as for "single" fonts.
15994
15995         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
15996         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
15997         the new keysyms from gdkkeysyms.h.
15998
15999         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16000         fontset, so that gtkentry uses wide characters.
16001
16002         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16003         GTk+'s system directory "gtk+", not "gtk".
16004
16005 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16006
16007         * docs/gtkfaq.sgml: FAQ update
16008
16009 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16010
16011         * gdk/win32/gdkprivate.h: Add more font private data.
16012
16013         * gdk/win32/gdkfont.c
16014         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16015         fonts and strings. Now works much better. You still have to
16016         have a correct font selected, though. No fontset emulation yet.
16017
16018 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16019
16020         * gtk/maketypes.awk: Use G_OS_WIN32.
16021
16022         * gtk/gtk.def: Add some missing entry points. Also some non-public
16023         ones, but PyGTK porter claims to need them.
16024
16025         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16026         built-in type generation.
16027
16028 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16029
16030         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16031         GDK_FONT_FONT fonts (which is all we have for now, we don't
16032         emulate fontsets). The X11 version uses plain XDrawString in that
16033         case, too. The string passed to gdk_draw_text_wc seems to be in
16034         fact (at least, when used by gtkentry and gtktext) either in a
16035         single-byte charset, or a DBCS. Not Unicode.
16036
16037         This fixes the problem in gtkfontsel, where even if you had
16038         selected a font with a non-Latin1 charset (windows-greek, for
16039         instance), the preview still used Latin-1 glyphs.
16040
16041         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16042         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16043         (gdk_font_load): Recognize the demibold etc weights, even if we
16044         don't have the corresponding constants in the headers.
16045         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16046         version. Should save font resources a bit, when we don't have
16047         multiple HFONTs for the same font.
16048
16049         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16050         version.
16051
16052 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16053
16054         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16055         X values
16056
16057 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16058
16059         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16060         layout support (as mentioned on
16061         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16062
16063 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16064
16065         * gtk/fnmatch.c
16066         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16067
16068 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16069
16070         * configure.in (ALL_LINGUAS): Added Galician (gl)
16071
16072 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16073
16074         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16075
16076         * gdk/win32/gdkcompat.c: New file, actually provide an
16077         implementation for the deprecated functions. (Just temporarily.)
16078
16079         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16080
16081         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16082
16083         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16084
16085 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16086
16087         * configure.in: Added "uk" to ALL_LINGUAS.
16088         
16089 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16090
16091         * configure.in: correct checking for BeOS check
16092
16093         * gdk/gdktypes.h
16094         * gtk/fnmatch.c
16095         * gtk/gtkfilesel.c
16096         * gtk/gtkitemfactory.c
16097         * gtk/gtkmain.[ch]
16098         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16099
16100 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16101
16102         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16103         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16104         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16105         by Bulgarian). 
16106
16107 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16108
16109         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16110         Fix a reference to window_private->destroyed.   
16111
16112         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16113         (ugly) setting of an internal GdkWindow member to use
16114         a _slightly_ cleaner macro.
16115
16116         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16117         GdkDrawablePrivate and GdkWindowPrivate.
16118         Add extra macros for accessing GDK_DRAWABLE_ components.
16119
16120         * *.[ch]: Massive adjustments for the above, use the
16121         new macros in a lot of places.
16122
16123 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16124
16125         * gdk/gdktypes.h: Make GdkDrawable the base type,
16126         not GdkWindow.
16127
16128 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16129
16130         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16131
16132 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16133
16134         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16135
16136 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16137
16138         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16139         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16140
16141         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16142
16143         * docs/gtk-config.1: Now autogenerated.
16144         * docs/Changes-1.4.txt: started
16145         
16146 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16147
16148         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16149         to #ifdef also here.
16150
16151         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16152         Owen did to the X11 backend.
16153
16154         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16155         ScrollWindowEx when blitting inside a window, it can't be correct
16156         in the general case.
16157
16158         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16159         WM_GETMINMAXINFO is easier.
16160
16161         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16162         depth equal to the bitspixel value, not the visual's depth.
16163
16164         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16165         to 24 even if the bitspixel value is 32.
16166
16167         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16168         need to check for depth==32 when bpp==32, depth will always be 24.
16169
16170 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16171
16172         * docs/Changes-1.4.txt: Started
16173         
16174         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16175
16176         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16177         
16178         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16179         into C file.
16180         
16181         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16182         header to gdkinputprivate.h.
16183
16184         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16185         unused since before 1.2.
16186
16187 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16188
16189         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16190         expand possible hex escapes in the font family (put there by
16191         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16192         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16193         On Win32, add hex escapes here, too.
16194
16195 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16196
16197         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16198         to #ifdef GDK_WINDOWING_X11.
16199
16200 [ Merges from gtk-1-2 ]
16201
16202 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16203
16204         * configure.in: fixed "GNU Make" check to pass with new make version
16205         3.77.95.
16206
16207 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16208
16209         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16210         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16211         AM_PATH_GTK() macros don't get confused by the -pre1.
16212
16213 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16214
16215         * configure.in (REBUILD): Change check for perl5
16216           to check explicitely for v >= 5.002. (5.001
16217           does not work with our scripts.)
16218
16219 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16220
16221         * configure.in: evaluate $PERL for the perl version check. added
16222         --disable-rebuilds to give the user an option to completely disable
16223         any source autogeneration rules.
16224
16225 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16226
16227         * configure.in: evaluate $ac_make when checking for GNU Make.
16228
16229 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16230
16231         * docs/Makefile.am: added generation.txt.
16232
16233         * Makefile.am: require automake 1.4, build README from README.in and
16234         INSTALL from INSTALL.in in dist-hook.
16235         
16236         * README.in:
16237         * INSTALL.in: new files to autogenerate README and INSTALL from.
16238
16239         * configure.in: figure whether we have GNU Make
16240
16241         * docs/generation.txt: minor additions/corrections.
16242
16243 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16244
16245         * docs/gtkfaq.sgml: FAQ Update
16246
16247 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16248         
16249         * configure.in: Fix autoconf warnings about cross compilation by
16250         trying to provide sane defaults for AC_TRY_RUN.
16251
16252 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16253
16254         * ltconfig
16255         * ltmain.sh: upgrade to libtool 1.3.3
16256
16257 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16258
16259         * INSTALL: Indicate that the --with-glib= configure
16260         time flag is unsupported.
16261
16262 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16263
16264         * docs/generation.txt: Added a file that gives
16265         documenation about the autogeneration process for
16266         various autogenerated files.
16267         
16268 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16269
16270         * configure.in (LIBS): Look for libgmodule in the
16271         right location.
16272
16273 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16274
16275         * docs/gtk_tut.sgml: Removed references to
16276         code examples in my directory on gtk.org as
16277         they should all be in the tutorial now.
16278
16279         * docs/gtk_tut.sgml: Added sources for dial-test
16280         and scribble-xinput programs that were previously
16281         missing.
16282
16283 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16284
16285         * TODO: Added entry about menu keyboard navigation, removed
16286         some finished items.
16287
16288 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16289
16290         * acinclude.m4: Standardize on func_dgettext
16291         not func_gettext, so that the checks for dgettext
16292         actually are paid attention to.
16293
16294 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16295
16296         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16297         directly, rather than repeating the checks for
16298         gettext.
16299
16300         * INSTALL: Added information about gettext and
16301         NLS support.
16302
16303         * acinclude.m4 (LIBM): Check for dgettext, not
16304         just gettext. This should hopefully fix things wrt
16305         systems with old versions of GNU gettext installed.
16306
16307 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16308
16309         * configure.in (LIBS): Look for libgmodule in the
16310         right location.
16311
16312 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16313
16314         * autogen.sh: add --enable-maintainer-mode
16315
16316         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16317
16318 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16319
16320         * docs/gtk-config.1.in:
16321           docs/Makefile.am:
16322           configure.in: gtk-config is now generated.
16323
16324         * docs/gtk-config.1: Removed, now generated.
16325
16326 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16327
16328         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16329         handle CreateNotify itself, still put out a debuging message for
16330         --gdk-debug=events. made the ReparentNotify debugging message more
16331         verbose.
16332         wrap xcoords translation for ConfigureEvents into an error trap,
16333         a destroy event may already be pending, and in that case, the
16334         actuall coordinate values are not at all critical.
16335
16336 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16337
16338         * gdk/gdkcc.c: Stop leaking the color_hash all over
16339         the place. Simplify and improve the logic.
16340
16341 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16342
16343         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16344         for prototypes and function implementations consistent (reported
16345         by Tomas Ogren).
16346
16347 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16348
16349         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16350         send_event set in debugging output.
16351         (gdk_compress_exposures): default initialize the event so we don't
16352         operate on bogus values (namely send_event).
16353
16354 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16355
16356         * gdk/gdkwindow.c: When we receive an unexpected
16357         destroy notify on one of our windows, don't just
16358         warn about it, also mark our windows as destroyed.
16359
16360 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16361
16362         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16363           name => font and name => fontset hashes. The 
16364           name => fontset hash is a _big_ win since we
16365           weren't previously caching fontsets at all and loading
16366           fontsets is expensive. The name => font hash
16367           is less of a win, but it does save us from doing
16368           repeated XQueryFont calls on the same font.
16369
16370         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16371           list so we can remove font/fontset from hash.
16372
16373 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16374
16375         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16376           and slightly confusing test. [ XInternAtom (,,TRUE)
16377           will never return None ].
16378
16379 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16380
16381         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16382           gdk/gdkwindow.c (gdk_window_set_hints):
16383
16384         Don't omit setting the properties if flags == 0 -
16385         there may be an existing set of properties there
16386         already. (Very old bug. Would it be better to
16387         delete the property instead?)
16388
16389         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16390           spelling error in comment.
16391
16392 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16393
16394         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16395           to avoid stomping over gdk_error_warnings.
16396
16397         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16398           as (bits_per_pixel + 7) / 8. This gives the same
16399           result as before for multiples of 8, but actually
16400           a "reasonable" value for 1bit or 4bit displays.
16401
16402 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16403
16404         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16405         GNU Make.
16406
16407 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16408
16409         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16410         discarding configure events.
16411
16412 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16413
16414         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16415         refcount is greater than zero.
16416
16417         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16418
16419         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16420
16421         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16422
16423         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16424
16425 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16426
16427         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16428         that format 32 => sizeof(item) == 4. It really is
16429         sizeof(long).
16430
16431 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16432
16433         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16434         core dump at all on X IO errors, only core dump
16435         if --enable-debug for X errors.
16436
16437 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16438
16439         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16440         unknown window:" message. disabled ConfigureNotify discarding code,
16441         because it led to events being processed out of order.
16442
16443 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16444
16445         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16446
16447         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16448         we export this function, supress error warnings and don't reset the
16449         error code in the first half of this function.
16450
16451         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16452         code (instead of just -1) so gdk_error_trap_pop() reveals something
16453         actually informative about the error that happened.
16454
16455         * gdk/*.c:
16456         don't rely on gdk_error_code being -1 if an error occoured, but just
16457         gdk_error_code != 0.
16458
16459 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16460
16461         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16462         pointer *before* invoking the filter function, so we at least don't
16463         crash if a filter is removed that is currently executed. window filters
16464         *really* need to be made truely reentrant at some point.
16465
16466 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16467
16468         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16469         PropertyNotify debug messages.
16470
16471 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16472         
16473         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16474         
16475         * gdk/gdkim.c: Fix cut-and-paste errors for 
16476         x/y and PreeditAttributes/StatusAttributes.
16477
16478 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16479
16480         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16481         G_MAXINT to 2^16 to alleviate overflow problems in
16482         various window managers.
16483
16484 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16485
16486         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16487         for fontsets.
16488
16489 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16490
16491         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16492         Initialize size_hints.x and size_hints.y because kwm
16493         brokenly pays attention to them.
16494         (Bug #1181 -  Lars Heete <hel@admin.de>)
16495
16496 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16497
16498         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16499         return value of gdk_list_visuals(). 
16500         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16501
16502 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16503
16504         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16505         XSetIMValues to (void *) when comparing to NULL, to workaround
16506         the problem of some compilers barfing since older X headers don't
16507         have the prototype for it.
16508
16509 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16510
16511         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16512         for pseudocolor where colormap->colors was double
16513         allocated.
16514
16515         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16516         color value in the hash table with the pixel filled
16517         in so when we do later hash table lookups, the color
16518         value is correct.
16519         
16520 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16521
16522         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16523         making the call
16524
16525 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16526
16527         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16528         pointed out by Morten Welinder <terra@diku.dk>.
16529
16530 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16531
16532         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16533           default filter from the list
16534
16535 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16536
16537         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16538           default filter from the list
16539
16540 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16541
16542         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16543
16544         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16545         g_strdup_printf instead of calcing the length separately
16546
16547 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16548
16549         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16550         that we don't do in many other places. (Fixing duplicate 
16551         #include of config.h)
16552
16553         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16554         Otherwise, #ifndef XINPUT_NONE check in the latter
16555         doesn't work. (Bug #546)
16556
16557 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16558
16559         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16560         "None" case insensitive.
16561
16562 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16563
16564         * gdk/gdkselection.c: 
16565         Add error traps so if the other end of the connection
16566         dies, we survive.
16567
16568 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16569
16570         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16571         dest_xid field into two fields - one for the window
16572         to send in messages, one to indicate the last looked
16573         up window for caching purposes. This is needed, so
16574         that Leave messages get the correct window.
16575
16576 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16577
16578         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16579         Fix warning created by people mucking around
16580         with the gsource API.
16581
16582         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16583         Change mapping between GIOCondition and GdkInputCondition
16584         to match the way the Linux kernel does it. This should
16585         fix problems where closed pipes were no longer signalling
16586         GDK_INPUT_READ on systems with a native poll().
16587
16588 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16589
16590         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16591         explicitly for the string "None" - it is in the XPM
16592         spec and some servers treat unknown colors in odd ways
16593         (like asking the user!)
16594
16595 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16596
16597         * gdk/gdkevents.c: made "->" into a "." of previous change so
16598         it compiles
16599
16600 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16601
16602         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16603         window field of the event structure before calling
16604         user filters.
16605
16606 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16607
16608         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16609         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16610
16611 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16612
16613         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16614         intermediate text property - prevents major memory
16615         leak when gdk_use_mb.
16616         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16617
16618 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16619
16620         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16621         gtk-a-higuti-990322-[0-3]
16622
16623         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16624         sizeof(wchar_t) != sizeof (GdkWChar)
16625
16626         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16627         that was causing -DX_LOCALE not to work.
16628
16629         * gtk/gtkrc.c (gtk_rc_init):
16630         X_LOCALE will never have LC_MESSAGES defined
16631
16632         * gdk/gdk.c (gdk_init_check):
16633         Remove --xim-preedit and --xim-status from argv properly.
16634
16635         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16636         that the client window is present on the X server
16637         before we pass it to the input method.
16638
16639 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16640
16641         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16642         if --display is specified on the command line, than
16643         the drag window will not be created on that display.
16644         
16645 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16646
16647         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16648         lookups with only_if_exists == TRUE were inserting
16649         bogus values into the atom cache.
16650
16651 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16652
16653         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16654         then reset it to NULL.
16655
16656         * gdk/gdkcolor.c:
16657         (gdk_colors_free): 
16658         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16659         key for g_hash_table_remove() in both functions, this prevents us
16660         from accessing possibly uninitialized portions of a GdkColor structure
16661         where we are only interested in its pixel value.
16662
16663 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16664
16665         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16666         font hash table, if we have a GdkFontPrivate entry for this font
16667         already, simply increment its reference count, provided by Olaf Dietsche
16668         <olaf.dietsche+list.gtk@netcologne.de>.
16669
16670 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16671
16672         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16673         just to be sure.
16674
16675         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16676         unused variables, leftovers from the X11 version.
16677
16678         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16679
16680         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16681         downcase fields on X11.
16682
16683 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16684         
16685         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16686         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16687
16688 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16689
16690         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16691
16692         * gtk/makefile.msc: Correct path to libintl.
16693
16694         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16695         use of gint vs. int, and gint vs. gboolean in headers and
16696         definitions. Use GtkType for the *_get_type functions. Note that
16697         these changes preserve binary compatibility.
16698
16699         * gdk/gdk.c
16700         * gdk/win32/gdk.c
16701         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16702
16703         * gtk/gtkmain.c
16704         * gtk/gtkclist.c
16705         * gtk/gtkmenufactory.c
16706         * gtk/gtknotebook.c
16707         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16708         vs. gboolean.
16709
16710         * gtk/gtkcolorsel.[ch]
16711         * gtk/gtkcombo.[ch]
16712         * gtk/gtkdrawingarea.[ch]
16713         * gtk/gtkgamma.[ch]
16714         * gtk/gtkhandlebox.[ch]
16715         * gtk/gtkhpaned.[ch]
16716         * gtk/gtkhruler.[ch]
16717         * gtk/gtkplug.[ch]
16718         * gtk/gtkpreview.[ch]
16719         * gtk/gtkruler.[ch]
16720         * gtk/gtksocket.[ch]
16721         * gtk/gtkstatusbar.[ch]
16722         * gtk/gtktoolbar.[ch]
16723         * gtk/gtkvbbox.[ch]
16724         * gtk/gtkvpaned.[ch]
16725         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16726         functions.
16727
16728         * gtk/gtkgamma.h: Fix bug, missing () in call of
16729         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16730
16731 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16732
16733         * gdk/gdkcolor.c (gdk_colormap_new)
16734         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16735         colormap->colors was allocated twice.
16736
16737         * gdk/win32/gdk.c: Remove some unused stuff.
16738
16739         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16740         colormap.
16741
16742         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16743         * gtk/gtklabel.h (gtk_label_get_type)
16744         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16745         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16746         in a couple of places, not guint.
16747
16748 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16749
16750         * configure.in,po/et.po: added Estonian language file
16751
16752 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16753
16754         * configure.in,po/da.po: added Danish file
16755
16756 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16757
16758         * docs/gtkfaq.sgml: Minor FAQ Update
16759
16760 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16761
16762         * docs/gtkfaq.sgml: FAQ update
16763
16764 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16765
16766         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16767         way to get window contents continually refreshed while resizing. I
16768         didn't like the effects myself, so it's not on by default.
16769
16770         * gdk/win32/gdkprivate.h: New flag variable
16771         gdk_event_func_from_window_proc, FALSE by default.
16772
16773         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16774         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16775         are passed --gdk-event-func-from-window-proc.
16776
16777         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16778         and we have am event_func, call it instead of enqueing the event.
16779
16780 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16781
16782         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16783         Kelley: Set expose_count in GdkEventExposes correctly.
16784
16785         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16786         MULTIPLE_WINDOW_CLASSES).
16787
16788         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16789         for bug in NT, apparently NT *does* draw the end pixel, too, in
16790         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16791
16792 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16793
16794         Improvements by Hans Breuer: 
16795
16796         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16797
16798         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16799         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16800         window contents while dragging" is turned on. Allocate at least
16801         one unique class for every GdkWindowType. If support for single
16802         window-specific icons is ever needed (eg. Dialog specific), every
16803         such window should get its own class.
16804
16805 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16806
16807         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16808         error that caused crashes.
16809
16810 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16811
16812         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16813         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16814         bugs when for instance part of the window was outside the
16815         display. Thanks to Philippe Colantoni for finding and fixing this.
16816
16817 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16818
16819         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16820         endpoint calculations which were totally wrong. (A little RTFMing
16821         helps a lot ;-)
16822
16823         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16824         from a separate directory, not from gettext, because of licensing
16825         issues (we want to use the LGPL version).
16826
16827         * README.win32: Mention the intl from glibc vs from gettext issue.
16828
16829 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16830
16831         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16832         in the key event handling: Now AltGr chars work again. Also,
16833         now Alt-digits are passed up as well as Control-digits.
16834         Pass keypad plus and minus as normal plus and minus.
16835
16836 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16837
16838         * docs/gtkfaq.sgml: FAQ Update
16839
16840 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16841
16842         * README.win32
16843         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16844         the Wintab SDK.
16845
16846         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16847         OK, but getting closer. Guard against bogus tilt data from Wacom
16848         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16849         enable easier building without Wintab.
16850
16851         * gdk/win32/gdkinput.h
16852         * gdk/win32/gdkevents.c 
16853         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16854         
16855         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16856         code. As we have just one visual on Win32, no sense to have it in a
16857         table, and no need for the hash table.
16858
16859         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
16860         better on white background.
16861
16862 1999-07-21  Tor Lillqvist  <tml@iki.fi>
16863
16864         * README.win32: Update gcc build instructions. Mention gettext is
16865         GPL.
16866
16867         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
16868         supported cursor size with GetSystemMetrics.
16869
16870         * gdk/win32/gdkfont.c
16871         * gtk/gtkfontsel.c: Guard against some font weight and charset
16872         symbols being undefined (in mingw32 headers).
16873
16874         * gdk/win32/makefile.cygwin
16875         * gtk/makefile.cygwin
16876         * gtk/gtkthemes.c: No longer need to have differently named
16877         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
16878
16879 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
16880
16881         * docs/gtkfaq.sgml: Long awaited FAQ update.
16882
16883 1999-07-15  Tor Lillqvist  <tml@iki.fi>
16884
16885         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
16886         it. Obscure bit manipulation needed.
16887
16888         * gdk/win32/gdkevents.c: Logging.
16889         
16890         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
16891         style (file name include compiler name) for theme engines.
16892
16893 1999-07-13  Tor Lillqvist  <tml@iki.fi>
16894
16895         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
16896
16897         * gdk/win32/gdkevents.c: Fix long-standing bug in key
16898         events. The key.string wasn't zero-terminated, still we strdup'ed
16899         it in gdk_event_copy(). Synthesize crossing events for button
16900         events before possible propagation.
16901
16902         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
16903
16904         * gdk/win32/makefile.cygwin
16905         * gtk/makefile.cygwin: Use new DLL naming style for the
16906         GCC-compiled ones.
16907
16908         * gdk/win32/makefile.msc
16909         * gtk/makefile.msc: Cosmetics mostly.
16910
16911         * gtk/gtk.def: Add missing entry points.
16912
16913         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
16914
16915 1999-07-09  Tor Lillqvist  <tml@iki.fi>
16916
16917         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
16918         or height is zero. Don't print a warning if Pie or Arc fails, they
16919         always fail (?) for very narrow ellipses.
16920
16921         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
16922         the part or the destination window corresponding to source area
16923         outside of the source drawable's boundary.
16924
16925         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
16926         anything if less than two points.
16927
16928         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
16929         return NULL. Gtk cut-and-paste inside a single program works
16930         better this way. (It always gets the clipboard contents from
16931         Windows, not from its own copy, which is cleared anyway. I can't
16932         say I fully understand what happens... Emulating the X selection
16933         and property stuff is a bit of a mess.)
16934
16935         * gdk/win32/gdkevents.c
16936         * gdk/win32/gdkproperty.c: A bit more verbose logging.
16937
16938         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
16939         that never got deleted). Revamp gdk_region_shrink.
16940
16941         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
16942         after use.
16943
16944         * gtk/gtk.def: Add some missing entry points.
16945
16946         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
16947         component.
16948
16949 1999-07-04  Tor Lillqvist  <tml@iki.fi>
16950
16951         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
16952         Control-digits specially.
16953
16954 1999-07-03  Tor Lillqvist  <tml@iki.fi>
16955
16956         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
16957
16958 1999-06-28  Tor Lillqvist  <tml@iki.fi>
16959
16960         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
16961         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
16962         finding this.)
16963
16964 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
16965
16966         * gtk+.spec.in: Corrected some typos in files section.
16967         
16968 1999-06-15  Tor Lillqvist  <tml@iki.fi>
16969
16970         * README.win32: Mention using GNU gettext.
16971         * config.h.win32: Enable NLS stuff.
16972         * gtk/makefile.msc: Use GNU gettext.
16973         * gdk/win32/gdkdnd.c: Minor header reorg.
16974         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
16975         cosmetics.
16976         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
16977         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
16978
16979 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
16980
16981         * acinclude.m4
16982         * config.guess
16983         * config.status
16984         * ltconfig
16985         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
16986
16987 1999-05-30  Tor Lillqvist  <tml@iki.fi>
16988
16989         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
16990         SafeAdjustWindowRectEx. Don't override all calls to
16991         AdjustWindowRectEx by it, but use it only in two places: When
16992         creating a new top-level window and when moving a top-level
16993         window.
16994
16995         Use screen coordinate rectangle, not client rectangle, in
16996         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
16997         when we try to place a window so that the decoration (mainly,
16998         title bar) isn't visible.
16999
17000         These changes fix the bug that showed up for instance as the
17001         GIMP's saved top-level windows moving right and down (by an amount
17002         equal to the window decoration) for each session. This bug showed
17003         up also in testgtk's "Saved Position".
17004
17005         gdk_window_resize also redone a bit.
17006
17007 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17008
17009         * gtk/testgtkrc: Add (commented out) Windows-style theme
17010         include line.
17011
17012         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17013
17014 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17015
17016         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17017         gdkx.h to a gdk subdirectory, so that applications can include
17018         these with <gdk/*.h> without trouble.
17019
17020         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17021         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17022         have their bitmap destroyed.
17023
17024         * gdk/win32/gdk.def: Add gdk_root_parent.
17025
17026 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17027
17028         * configure.in
17029           gtk-config.in
17030           ltconfig
17031           ltmain.sh     
17032           gtk/Makefile.am: changes to compile nicely (with xlib) 
17033           on BeOS
17034
17035 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17036
17037         * acinclude.m4
17038         * config.guess
17039         * config.sub
17040         * ltconfig
17041         * ltmain.sh: upgrade to libtool 1.3
17042
17043 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17044
17045         * gtk/gtkclist.c:
17046         * gtk/gtkctree.c: merges from gtk-1-2
17047
17048 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17049
17050         Support added for building using a GNU toolchain on Win32,
17051         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17052
17053         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17054         * config.h.win32: Changes for gcc.
17055         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17056         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17057         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17058         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17059         Protect shl stuff unavaiilable with mingw32 headers.
17060         * gdk/win32/gdkevents.c: Fix typo.
17061         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17062         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17063         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17064         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17065         the mingw32 headers.
17066         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17067         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17068         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17069         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17070         Test for NATIVE_WIN32, not _MSC_VER.
17071         * gtk/gtkmain.c: No use warning about developer version on Win32,
17072         there aren't any non-developer versions anyhow.
17073         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17074         * gtk/makefile.msc: Use pthread from another directory. Minor other
17075         changes. 
17076
17077 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17078
17079         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17080           default filter from the list
17081
17082 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17083
17084         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17085          when gtk_widget_grab_default() is called for a widget that
17086          is not within a GtkWindow.
17087
17088 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17089
17090         * docs/gtk_tut.sgml, examples/clist.c: use a
17091           scrolled window in the clist example. Minor
17092           tutorial fixes.
17093
17094 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17095
17096         * docs/gtk_tut.sgml: Style check from David King
17097           <dking@youvegotmail.net>
17098
17099 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17100
17101         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17102         compile with unknown value of GDK_WINDOWING
17103
17104 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17105
17106         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17107         after the rule is fired.
17108         (install-exec-local): Install gdkconfig.h only if the contents are
17109         different from the currently installed gdkconfig.h.
17110
17111 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17112
17113         * gdk/Makefile.am (configexecincludedir): Rename from 
17114         configincludedir so that gdkconfig.h will be installed 
17115         as part of `make install-exec'. 
17116
17117 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17118
17119         * acinclude.m4
17120         * config.guess
17121         * config.sub
17122         * ltconfig
17123         * ltmain.sh: upgrade to libtool 1.2f
17124
17125         * autogen.sh: libtool is not required to autogen gtk+
17126
17127         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17128         needed)
17129
17130 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17131
17132         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17133         declaring gdk variables exported/imported from the DLL. New image
17134         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17135         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17136         GDK_DRAG_PROTO_OLE2.
17137
17138         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17139         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17140         declared only for the Win32 version, but could be in the X11
17141         version as well. (Needed for a Xlib-less gdk_imlib.)
17142         gdk_color_hash should have only one parameter. Declare
17143         gdk_threads_mutex with GDKVAR.
17144         
17145         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17146         just one parameter.
17147
17148         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17149         per pixel, not bits.
17150
17151         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17152         Fetch bpp (which means bits-per-pixel here) from another place on
17153         Win32. Accept also depth==32 (which we might get on Win32) with
17154         bpp==32.
17155
17156         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17157         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17158         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17159         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17160         in the backend-dependent directory, not in the common gdk
17161         directory.
17162
17163         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17164         headers.
17165
17166 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17167
17168         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17169         want to use the Gtk+ devel version (which is true, and yes - even i am
17170         currently working with the 1.2.x branch). so everyone reading this, you
17171         probably want to issue
17172         cvs checkout -r glib-1-2 glib
17173         and
17174         cvs checkout -r gtk-1-2 gtk+
17175         as your next two comands.
17176
17177 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17178
17179         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17180         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17181
17182         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17183         file. strongly deprecated the GTK_HAVE_* macros, we provide
17184         GTK_CHECK_VERSION() for people that need to check for certain
17185         Gtk+ versions.
17186
17187         * gtk/gtkcompat.h: removed this from CVS.
17188         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17189         idea right from the start, it just didn't seem like that back then.
17190
17191 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17192
17193         * merges from gtk-1-2:
17194
17195 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17196
17197         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17198         item factory class has been created.
17199         (gtk_item_factory_parse_rc): likewise.
17200
17201         * gtk/gtkmenu.c:
17202         keep proper references for old_active_menu_item.
17203         (gtk_menu_reparent): unset the usize of the new parent,
17204         so the menu can sanely be size requested and we don't get nasty screen
17205         artefacts upon next reparentation.
17206         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17207         enter notify. only synthesize enter notifies if the pointer really is
17208         inside the event window.
17209         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17210         (gtk_menu_popup): move the background setting stuff into
17211         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17212
17213         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17214         gtk_menu_shell_select_item() to select the new item.
17215         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17216         do the right thing for deselection as well.
17217
17218 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17219
17220         * gtk/gtkwidget.[hc]:
17221         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17222         are locked.
17223
17224         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17225         existing accelerators if the widget's accelerators are locked.
17226
17227 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17228
17229         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17230
17231         * gtk/gtkmenu.c: truely forward key press and key release events to
17232         the menu widget from the toplevel or tearoff window. we can't simply
17233         connect to that, we need to stop further processing of the events as
17234         well.
17235
17236 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17237
17238         * gtk/gtkmenu.c:
17239         (gtk_menu_key_press): pass event->keyval, event->state to
17240         gtk_accelerator_valid, instead of event->keyval twice.
17241         refuse to install single letter accelerators for menus that use
17242         single letter shortcuts.
17243
17244         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17245         gtk_menu_ensure_uline_accel_group().
17246
17247         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17248         which will always return an uline accel group, made
17249         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17250         yet created.
17251
17252 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17253
17254         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17255
17256         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17257         Leave button sensitive, trap  button_press, button_release,
17258         motion_notify, enter_notify and leave_notify events instead.
17259         (gtk_clist_column_title_active): disconnect event handler.
17260         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17261         Guillaume Laurent <glaurent@worldnet.fr>
17262
17263 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17264
17265         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17266         width/height mixups.
17267
17268         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17269         if needed.
17270
17271 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17272
17273         * gtk/testgtk.c (create_item_factory): unref the item factory after
17274         window's destruction.
17275
17276         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17277         count on the menu shell around the menu item's activation, since the
17278         signal emission may cause menu shell destruction.
17279
17280         * gtk/gtkitemfactory.c:
17281         the previous code leaked one accel group per menu. we use
17282         gtk_menu_get_uline_accel_group() now to fix that, and with that
17283         also create the underline accelerator group of the menus only if
17284         required (i.e. an underline accelerator has been specified).
17285         (gtk_item_factory_construct):
17286         (gtk_item_factory_create_item): removed code that would create an
17287         extra accel group for the menu (and leak references).
17288         (gtk_item_factory_create_item): adapted the underline accelerator
17289         installation code to properly feature gtk_menu_get_uline_accel_group().
17290
17291         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17292         menu->accel_group, this may return NULL if the accelerator group
17293         hasn't been set yet.
17294         added gtk_menu_get_uline_accel_group() to retrive the underline
17295         accelerator group of the menu, this will be created on demand
17296         and proper care is taken about its reference count.
17297
17298         * gtk/gtkitemfactory.h:
17299         * gtk/gtkitemfactory.c:
17300         dumped the approach of keeping a widgets by action list on the
17301         factory since the factory<->widget destroy negotiation didn't work
17302         and would be hard to get going at all. instead we keep a list of
17303         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17304         persistant throughout a program's life time).
17305         also, i removed the static const gchar *key_* variables, and made
17306         them inline strings (they weren't actually used anyways).
17307         (gtk_item_factory_add_item): update ifactory->items.
17308         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17309         the item factory pointer from the remaining ifactory widgets).
17310         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17311         list to find the widget.
17312         (gtk_item_factory_get_item): new function that works around
17313         gtk_item_factory_get_widget() limitations, this function will only
17314         return menu items, even for <Branch> entries.
17315
17316 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17317
17318         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17319         font hash table, if we have a GdkFontPrivate entry for this font
17320         already, simply increment its reference count, provided by Olaf Dietsche
17321         <olaf.dietsche+list.gtk@netcologne.de>.
17322
17323         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17324         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17325
17326 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17327
17328         * gtk/gtkcontainer.c:
17329         (gtk_container_add_with_args):
17330         (gtk_container_addv):
17331         (gtk_container_add): before adding a child to a conatiner, make sure
17332         it is (default) constructed, this is neccessary because under certain
17333         circumstances the child will get relized and mapped immediatedly, in
17334         which case it has to be constructed already.
17335
17336 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17337
17338         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17339         values > 1 as TRUE also.
17340
17341 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17342
17343         * README.win32: New file.
17344                 
17345         * configure.in: Check for lstat.
17346
17347         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17348         completeness.
17349
17350         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17351
17352         * gtk/gtk.def: Removed CRs.
17353
17354         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17355         ..\gdk\win32).
17356
17357         * gdk/win32/makefile.msc: Correct upwards relative paths.
17358         
17359 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17360
17361         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17362           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17363           it was connecting a void function to expose_event and the int
17364           returning function to the draw signal
17365
17366 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17367
17368         * configure.in:
17369         Use correct path to libgmodule.la when ref'ing uninstalled copy
17370         of glib.  (Already in stable branch, Bug #417)
17371
17372 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17373
17374         Win32 merge and general portability stuff:
17375                 
17376         * acconfig.h,configure.in: Check for <sys/time.h>.
17377
17378         * gdk/win32: New directory (actually, been there for a while).
17379         
17380         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17381         NATIVE_WIN32, and use these. Always case fold on Win32. No
17382         backslashed escapes on native Win32.
17383
17384         * gtk/{gtk.def,makefile.msc}: New files.
17385
17386         * gtk/Makefile.am: Add above new files.
17387         
17388         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17389         instead of <strings.h>.
17390
17391         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17392         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17393         <unistd.h> appropriately.
17394
17395         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17396         Use ABS() (from <glib.h>) instead of abs().
17397         
17398         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17399         of gtk (and thus glib) headers, so that WIN32 will be
17400         defined. With MS C, include <direct.h> for mkdir prototype.
17401
17402         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17403         some casts, needed by MS C.
17404
17405         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17406         implemented).
17407
17408         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17409         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17410         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17411
17412         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17413                 
17414         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17415         the event is not a hint, or its window is not the slider. Needed
17416         on Win32, at least.
17417
17418         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17419         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17420         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17421         a subdirectory of the Windows directory as gtk system
17422         configuration directory.
17423
17424         * gtk/gtkselection.c: No chunks on Win32.
17425
17426         * gtk/gtksocket.c: Not implemented on Win32.
17427
17428         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17429
17430         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17431
17432         * gtk/maketypes.awk: Declare variables with a macro that expands to
17433         necessary export/import magic in the case of Win32.
17434                 
17435         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17436
17437 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17438
17439         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17440         since those were meant only for gdki18n.h.  
17441         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17442         for widechar tests.
17443         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17444
17445 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17446
17447         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17448         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17449
17450         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17451         installed) to CFLAGS.
17452
17453         * gdk/Makefile.am: Add rules for gdkconfig.h.
17454
17455         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17456         APIs.
17457
17458         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17459         gdkx.h anyway when compiling for X11.
17460         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17461         general): Merge in Win32 version.
17462         
17463         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17464         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17465         expansion (if we don't have HAVE_PWD_H), allow for drive
17466         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17467         included code from Craig Setera's port to Win32 (the one that uses
17468         X11, and the cygwin dll), even if it probably will be abandoned.
17469
17470         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17471         the user entered one herself.  This way one can complete *.h and
17472         don't get matches on any .help files, for instance.
17473         
17474 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17475
17476         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17477         font hash table, if we have a GdkFontPrivate entry for this font
17478         already, simply increment its reference count, provided by Olaf Dietsche
17479         <olaf.dietsche+list.gtk@netcologne.de>.
17480
17481         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17482         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17483
17484 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17485
17486         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17487         the number of calls to gdk_draw_point() (and thus to X) by
17488         clipping the points by hand.
17489
17490         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17491         the clip parameter.
17492         (gtk_handle_box_paint): Only paint the handle if the expose area
17493         intersects it.
17494
17495 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17496
17497         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17498
17499 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17500
17501         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17502         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17503
17504 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17505
17506         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17507          textmode (O_TEXT) for OS/2 version.
17508
17509 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17510
17511         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17512         GtkSpinButton, "input" and "output", to make the output more flexible.
17513         The user has to provide a mapping between adjustment->value and the
17514         output string (and vice versa, if the spin button is editable). 
17515         See testgtk for examples.
17516
17517 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17518
17519         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17520         new one.
17521         
17522         * configure.in: set gtk+ version to 1.3.0.