]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
!GTK_OBJECT_DESTROYED() -> GTK_WIDGET_REALIZE() for resize queueing.
[~andy/gtk] / ChangeLog.pre-2-2
1 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2
3         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
4         GTK_WIDGET_REALIZE() for resize queueing.
5
6         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
7         GTK_WIDGET_REALIZE() for post event delivery destruction upon
8         GDK_DESTROY.
9         
10         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
11         sompensate for former (pre-2.0) connect_after() facility.
12         (gtk_widget_send_expose): 
13         (gtk_widget_event): assert the widget is realized, since event delivery
14         to non-realized widgets is essentially a bug. event handlers should
15         be able to unconditionally rely on widget->window (unless they
16         emit events on their own which can trigger widget destruction).
17         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
18         logic. event delivery happens as follows:
19         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
20         b) if !was_handled in (a) and the widget is still realized, emit event-
21            specific signal (RUN_LAST handler). returns was_handled.
22         c) emission of GtkWidget::event-after for notification if the widget is
23            still realized (regardless of was_handled from previous stages, no
24            class handler). no return value.
25         d) was_handled gets passed on to caller, to determine further
26            propagation. if the widget got unrealized meanwhile, was_handled
27            is returned as TRUE.
28
29         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
30         gdk_event_get_coords().
31
32 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
33
34         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
35         age 0, binary age 0. depend on glib 1.3.7.
36
37         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
38
39         * gtk/gtkmenubar.c: same here.
40         
41         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
42
43         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
44
45         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
46         
47         * gtk/gtkmenubar.c (add_to_window): likewise.
48         
49         * gtk/gtktextbtree.c: and here...
50         
51         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
52         
53         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
54         
55         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
56         
57         * gtk/gtktreeviewcolumn.c:
58         (_gtk_tree_view_column_set_tree_view): yet again.
59
60         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
61         signal connections without g_signal_connect_data().
62         
63         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
64         demo of the matter.
65         
66         * demos/testpixbuf.c (main): running out of equality phrases for the
67         ChangeLog, but had to adapt connections here as well.
68         
69         * demos/testanimation.c (progressive_timeout): and for the fun of it,
70         tackled this the same way.
71         
72         * tests/testtext.c (create_view): ok, it's becoming a pain at this
73         point, but had enough enery for one more fix.
74
75         * tests/testtreecolumns.c (main): stand up man, do your work!
76
77         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
78         fix, either that's been all of it or CVS gtk is broken yet again.
79         
80 2001-06-29  James Henstridge  <james@daa.com.au>
81
82         The following changes correspond to bug #56812
83
84         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
85         code for GdkDevice.
86
87         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
88         GdkCursor.
89
90 2001-06-19  Havoc Pennington  <hp@pobox.com>
91
92         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
93         for mapping a window without fooling with stacking order, but
94         updating the "withdrawn" flag
95
96         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
97         filtering as soon as possible, moving move resize and wmspec_check
98         handling after the event filter.  Make default filter apply to all
99         events, not just those with no GdkWindow wrapped around the X
100         window. Fix a FIXME about how the window could be a pixmap using 
101         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
102
103         Also, be robust against events not on a known GdkWindow.
104
105         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
106         gdk_x11_ungrab_server): export reference-counted server grabs, so
107         other people can grab server over a GDK function that also does
108         so.
109
110 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
111
112         * gtk/gtktreeviewcolumn.c
113         (gtk_tree_view_column_pack_start_cell_renderer): New function to
114         reflect that you can (hypothetically) pack cell renderers into a
115         column.
116         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
117         (gtk_tree_view_column_cell_is_visible): Move more functionality to
118         the column.
119         (gtk_tree_view_column_cell_can_focus): Move more functionality to
120         the column.
121
122         * gtk/gtktreeview.c: Move to use new column-packing code.
123         (gtk_tree_view_real_expand_row): remove totally braindead code.
124         (gtk_tree_view_real_collapse_row): ditto.
125
126 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
127
128         * gtk/gtktreeviewcolumn.c: Fix a typo.
129         
130 2001-06-26  Joel Becker  <jlbec@evilplan.org>
131
132         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
133           at the end of the file
134
135 2001-06-26  Havoc Pennington  <hp@redhat.com>
136
137         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
138
139 2001-06-26  Havoc Pennington  <hp@redhat.com>
140
141         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
142         property
143
144 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
145
146         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
147         stupid missing statement
148
149         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
150         private function for ATK.  It notifies you of how many _visible_
151         children are deleted when a node is deleted.  Should be used by
152         atk only.
153
154 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
155
156         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
157         Use new pango_context_get_metrics() to fix problems
158         with font lists in descriptions. (#56184, reported by
159         Jonas Borgström)
160
161 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
162
163         * gtk/gtkiconfactory.c:
164         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
165         item factory so inlined pixbufs actually work.
166
167 2001-06-25  Havoc Pennington  <hp@redhat.com>
168
169         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
170         s/RESIZEABLE/RESIZABLE/
171
172         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
173
174 2001-06-25  Alexander Larsson  <alexl@redhat.com>
175
176         * configure.in:
177         Added --enable-fbmanager. This is some experimental code
178         that lets several GtkFB apps coordinate their access to the
179         framebuffer.
180         
181         * acconfig.h:
182         Added ENABLE_FB_MANAGER.
183
184         * gdk/linux-fb/Makefile.am:
185         Added gdkfbmanager and gdkfbswitch.
186
187         * gdk/linux-fb/gdkkeyboard-fb.c:
188         * gdk/linux-fb/gdkmouse-fb.c:
189         * gdk/linux-fb/gdkprivate-fb.h:
190         Split device init and open so that
191         they can be opened and closed while switched
192         away.
193
194         * gdk/linux-fb/gdkmain-fb.c:
195         Add the basic manager communication.
196
197         * gdk/linux-fb/gdkrender-fb.c:
198         Don't update to the shadow fb if we're
199         blocked by the fb manager.
200
201 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
202
203         * docs/Changes-2.0.txt: Add note about child property
204         changes.
205
206 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
207
208         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
209         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
210
211         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
212         with un'reffing wrong list reported by Jeff Franks.
213
214         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
215
216         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
217         for the default icon. Remove inline XPM.
218
219         * gtk/gtkstock.h gtk/gtkiconfactory.c:
220         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
221         is used for GTK_STOCK_DND, but it is a bit too small.)
222
223         * gtk/stock-icons/stock_dnd_multiple.png
224         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
225
226         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
227         TRUE when starting a drag. In other cases, we are
228         just observing. (#52995)
229
230         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
231         function to set the icon for a drag from a GdkPixbuf
232         or stock ID.
233
234         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
235         Likewise, for drag sources.
236
237         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
238         (Now should be done using the stock system.)
239
240 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
241
242         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
243         Removed - didn't work and not particularly useful anyways
244         if it did. 
245
246 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
247
248         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
249         introduced last night that was making things decidedly not work.
250
251         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
252         so that we have getter/setter pairing everywhere it makes
253         sense. (#55767)
254
255         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
256         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
257         deprecated compat macro. (#55516)
258
259         * gtk/gtklabel.[ch]: Add functions
260         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
261         gtk_label_set_label(), which mirror the property API for GtkLabel.
262         Make gtk_label_get_attributes() only reflect the attributes
263         set by gtk_label_set_attributes.
264
265         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
266         from gtk_notebook_set_page().
267
268 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
269
270         * configure.in: Fix tests for XShm.h.
271
272         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
273         gdk_image_new() by use of goto, properly use g_object_unref().
274
275 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
276
277         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
278         calls, as GdkImage is an object. these should be g_obejct_unref()
279         instead but that won't work because of the g_error() statement
280         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
281         to spot these places.
282
283 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
284
285         * modules/input/gtkimcontextxim.c: Fixup some problems with 
286         text length handling in error cases.
287
288         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
289         a bit to make test actually warn on attempt to allocation
290         a negative size. (#56101, Matthias Clasen)
291
292 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
293
294         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
295         noticed by Brian Cameron.
296         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
297         Cameron.
298
299 2001-06-22  Hans Breuer  <hans@breuer.org>
300
301         * gdk/gdk.def : updated externals
302
303         * gdk/win32/gdkdrawable-win32.c : corrected some casts
304         in GDK_NOTEs
305
306         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
307         to translate coordinates to the internal > 16 bit system
308         Try to handle WM_WINDOWPOSCHANGED to get better performance for
309         when moving/resizing
310
311         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
312         and gdk_keymap_get_direction (). The latter is untested for
313         the RTL case
314
315         * gtk/gtk.def : updated externals
316
317         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
318         from pango_language_from_string (), not an already freed pointer
319
320         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
321         binary (-kb) to be useable on windoze
322  
323 2001-06-21  Alexander Larsson  <alexl@redhat.com>
324
325         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
326         Update to new PangoLanguage changes.
327         
328         * gtk/gtkwindow-decorate.c:
329         * gtk/gtkwindow.[ch]:
330         Added setting argument to gtk_window_set_has_frame ()
331         
332 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
333
334         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
335         the case without XKB properly.
336
337         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
338         unused gtk_rc_auto_parse variable.
339
340         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
341         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
342         longer needed with GdkPixbuf.
343
344         * gtk/gtkrc.c (_gtk_rc_init): Make private.
345
346 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
347
348         * gtk/gtkentry.h: Mark deprecated functions with
349         GTK_DISABLE_DEPRECATED.
350
351 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
352
353         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
354
355         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
356
357         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
358           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
359           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
360           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
361           to recent changes in Pango.
362
363         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
364           to test whether the basic engine honors them.
365
366 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
367
368         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
369         gtk_container_child_get_property().
370
371 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
372
373         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
374         (gtk_tree_view_move_cursor_page_up_down): implement.
375
376 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
377
378         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
379         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
380         don't use automatic fixed size buffer for printf-ing floats, doubles
381         can expand to really _huge_ strings, use g_strdup_printf() instead.
382
383 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
384
385         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
386         construct property in 1.2 and still needs to be.
387
388         * gtk/gtkwidget.c: "composite_child" is not a settable property.
389
390 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
391
392         * gtk/gtkliststore.c (gtk_list_store_clear): 
393         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
394         clear a model.
395
396 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
397
398         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
399
400         * gtk/Makefile.am:
401         * gtk/gtk.h: disabled GtkPacker compilation.
402
403         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
404
405         * gtk/gtknotebook.c:
406         * gtk/gtktable.c:
407         * gtk/gtkbox.c: ported this over to child properties.
408
409         * gtk/gtksettings.c: fetch class properties via
410         g_object_class_list_properties().
411
412         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
413         child arg interface. use gobjectnotifyqueue.c for child property
414         notification.
415
416         * gtk/gtkwidget.[hc]: provide necessary means for container child
417         properties, i.e. ::child_notify signal,
418         gtk_widget_freeze_child_notify(),
419         gtk_widget_child_notify(),
420         gtk_widget_thaw_child_notify().
421
422         * tests/testgtk.c: removed inferior property handling code, for
423         property editing, a generic module should be used, and GLE
424         coincidentally fullfills that purpose.
425
426         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
427         needs to be adapted to g_object_class_list_properties() before this
428         builds again.
429
430 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
431
432         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
433         test if a node is expanded.
434
435 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
436
437         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
438         where collapsing a selected row would result in the cursor/anchor
439         getting screwed up.
440
441 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
442
443         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
444         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
445         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
446         Now I can really reorder/sort all Store widgets.  treesorttest
447         seems to just work now.
448         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
449         testtreesort worked through a big coincidence all this time.
450         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
451         code.
452         * tests/testtreecolumns.c: Big 'ol warning at the top letting
453         people know that this code should never ever ever be copied.
454
455 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
456
457         * gtk/gtkwindow.h: Fixed a small typo, it should be
458         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
459         on line 134.
460
461 2001-06-14  Havoc Pennington  <hp@redhat.com>
462
463         Docs fixups, and:
464         
465         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
466         GTK_DISABLE_DEPRECATED
467
468 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
469
470         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
471         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
472         finish it off tonight, though it basically works now when it's a
473         list.  Also, I have a sinking feeling neither GtkTreeStore or
474         GtkListStore actually resort when adding a new item.  I'll look
475         into it.
476
477 2001-06-14  Havoc Pennington  <hp@redhat.com>
478
479         * demos/gtk-demo/main.c (load_file): fix bug identified by
480         warnings I just added to gtktextbuffer
481
482 2001-06-14  Havoc Pennington  <hp@redhat.com>
483
484         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
485
486         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
487
488         * gtk/gtktextbtree.c: don't leak node data all over the place.
489
490         * demos/gtk-demo/main.c (main): create fontify tags for the right
491         buffer
492
493         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
494         to mention tags in the same table can't have the same name,
495         suggested by Skip Montanaro
496
497 2001-06-11  Havoc Pennington  <hp@redhat.com>
498
499         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
500         for trying to add two tags with same name to the tag table
501
502         * demos/gtk-demo/main.c (main): fix colors ;-)
503
504 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
505
506         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
507         that allows grouping together multiple windows so that grabs
508         within that set of windows only affect those windows.
509
510         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
511         signal for notification when a widget becomes shadowed
512         by a grab or is no longer shadowed by a grab.
513
514         * gtk/gtkwidget.c (gtk_widget_propagate_state)
515           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
516         insenstive widgets to maintain a grab.
517
518 2001-06-14  Alexander Larsson  <alexl@redhat.com>
519
520         * docs/README.linux-fb:
521         Add some example config files that can be used with the URW fonts.
522         
523         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
524         Set up the color ramps for DirectColor mode.
525
526 2001-06-11  Havoc Pennington  <hp@redhat.com>
527
528         * Release 1.3.6
529          
530 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
531
532         * gdk/linux-fb/gdkwindow-fb.c:
533         Unify shaped window code and make it repaint the area that used
534         to be part of the shape, but isn't anymore.
535
536 2001-06-11  Havoc Pennington  <hp@redhat.com>
537
538         * NEWS: Updates
539
540         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
541
542         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
543         
544 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
545
546         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
547         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
548         passes zero instead, so do we.
549         
550 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
551
552         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
553         Deep copy dash_list too.
554         (_gdk_fb_gc_new): Set default cap_style before
555         setting values.
556
557 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
558
559         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
560         gdk_keymap_get_direction): New functions.
561
562 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
563
564         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
565         gtk_tree_model_get_flags by adding a second flag for atk.
566
567         * gtk/gtktreemodel.c: make cursor behavior interact better with
568         mouse presses.
569
570 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
571
572         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
573         expand_row/collapse_row to be 2 signals each -- test_expand_row
574         and row_expanded as well as test_collapse_row and row_collapsed.
575
576 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
577
578         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
579         signal name to be changed instead of selection_changed.
580
581 2001-06-08  Havoc Pennington  <hp@redhat.com>
582
583         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
584         "scroll_offset" property for notification when the layout offsets
585         may have changed
586         (gtk_entry_adjust_scroll): add notify for scroll_offset
587         (gtk_entry_layout_index_to_text_index): function to compensate for
588         preedit string when doing coordinate stuff on the entry's layout
589         (gtk_entry_text_index_to_layout_index): inverse function
590         (gtk_entry_get_layout_offsets): hook to get current position of
591         the layout      
592         (gtk_entry_get_layout): hook to get the layout itself.
593
594         * gtk/gtklabel.c (gtk_label_get_layout): new function
595
596 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
597
598         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
599         keybinding.
600         (gtk_tree_view_focus): Fix merge conflict.
601
602 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
603
604         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
605         clean up cursor handling.
606
607 2001-06-08  Havoc Pennington  <hp@redhat.com>
608
609         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
610         function
611
612         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
613         this function
614
615 2001-06-08  Alex Larsson  <alexl@redhat.com>
616
617         * gtk/gtkcompat.h.in:
618         Added compat macros for all old GTK_TYPE_GDK_xxx types.
619         Fixes bug #52892
620
621 2001-06-08  Havoc Pennington  <hp@redhat.com>
622         
623         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
624         parent still
625
626 2001-06-08  Havoc Pennington  <hp@redhat.com>
627
628         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
629         don't call g_list funcs on GSList
630
631         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
632         gtk_container_focus(), since some widgets have focusable locations
633         which are not other widgets. These widgets should not have to be 
634         containers just to manage the focus. For example, GtkHSV is
635         currently a container for no good reason. Also, this cleans
636         up the "if (is_container && is_sensitive && is_drawable)
637         container_focus ()" mess in widget implementations.
638
639         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
640         function, and have it just call gtk_widget_child_focus().
641
642         * gtk/gtkhsv.c: derive from widget not container
643         
644         Throughout: fix to reflect GtkContainer::focus change
645         
646 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
647
648         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
649         range.  Fix bug #55921
650
651         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
652         (#55920).
653
654 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
655
656         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
657         and gdk_keymap_get_current_direction().
658
659         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
660           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
661         the current locked group, use it to set the keymap
662         direction.
663
664         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
665         to determine whether we draw a split cursor or use
666         a jumping cursor based on the current direction.
667
668         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
669         Obey the split cursor setting. 
670
671 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
672
673         * gtk/gtkimmulticontext.c (activate_cb): Only activate
674         when toggling on, not when toggling off... (#55906)
675
676 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
677
678         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
679         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
680         in docs. (#55812, Vitaly Tishkov)
681
682 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
683
684         * demos/gtk-demo/main.c (create_tree): Changed signal name from
685         selection_changed to changed in signal connection to GtkTreeSelection,
686         also used g_signal_connectc since GtkTreeSelection is now a GObject.
687
688 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
689
690         * gtk/gtktreeselection.c: Now it's a GObject instead of a
691         GtkObject.  The GtkTreeSelection::selection_changed signal is now
692         the GtkTreeSelection::changed signal.
693
694         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
695         object.
696
697         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
698         object.
699
700 2001-06-07  Havoc Pennington  <hp@redhat.com>
701
702         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
703
704 2001-06-07  Havoc Pennington  <hp@redhat.com>
705         
706         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
707         (not tested yet because with absolute path to srcdir I can't build
708         atk, but it was broken anyway so this may help) 
709
710 2001-06-07  Havoc Pennington  <hp@redhat.com>
711
712         * configure.in: output m4macros/Makefile
713         
714 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
715
716         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
717         buttons.  Fixes #55460 reported by matthiasc@poet.de.
718
719 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
720
721         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
722         expansion/collapsing so it only happens in one place.
723         (gtk_tree_view_real_expand_row): ditto.
724
725 2001-06-07  Havoc Pennington  <hp@redhat.com>
726
727         * tests/Makefile.am: add missing -I flag
728
729         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
730
731         * configure.in: use pkg-config to see if GModule is
732         supported; fix to properly turn on included loaders 
733         when GModule isn't supported; don't use AC_CHECK_LIB 
734         when libs are not installed yet
735
736         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
737
738         * Makefile.am (SUBDIRS): add m4macros subdir
739
740         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
741         dependencies also.
742
743 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
744
745         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
746         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
747
748 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
749
750         * gtk/gtktreeview.c
751         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
752         bindings to expand and collapse rows.
753         (gtk_tree_view_real_select_cursor_parent): New key binding.
754         (gtk_tree_view_real_toggle_cursor_row): New key binding.
755
756         * gtk/gtkmarshal.list: new
757         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
758
759 2001-06-06  Havoc Pennington  <hp@redhat.com>
760
761         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
762
763         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
764         Down to move visually rather than logically, since it confuses 
765         people. Add -/+ and Ctrl--/+ bindings for logical movement.
766
767 2001-06-06  Alex Larsson  <alexl@redhat.com>
768
769         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
770         Fix up error messages.
771
772 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
773
774         * gtk/gtktooltips.h: Include gtkwidget.h 
775         (#55798, Karl Nelson)
776
777         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
778         a valid latin-1 character. (Marc Lehmann, #35467)
779
780         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
781         (Marc Lehmann, #35467)
782         
783 2001-06-05  Alex Larsson  <alexl@redhat.com>
784
785         * demos/gtk-demo/appwindow.c (do_appwindow):
786         Don't swap the order of the args to gtk_widget_destroyed.
787
788         * tests/testgtk.c (destroy_properties):
789         Don't crash when the properties window is destroyed.
790
791         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
792         Use with_mnemonics to handle the case of stock items with
793         underscores in them.
794
795 2001-06-05  Havoc Pennington  <hp@redhat.com>
796
797         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
798         gtk_text_iter_reorder
799
800 2001-06-05  Havoc Pennington  <hp@redhat.com>
801
802         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
803
804 2001-06-05  Havoc Pennington  <hp@redhat.com>
805
806         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
807         to the range that was set
808
809         * gtk/gtkrange.c: add value_changed signal, primarily 
810         intended for use with GtkScale
811         (gtk_range_set_increments): new function
812         (gtk_range_set_range): new function with weird name
813         (gtk_range_set_value): new function
814         (gtk_range_get_value): new function
815
816         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
817         from gtk_spin_button_get_value_as_float(). Compat #define
818         added for get_value_as_float.
819
820         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
821
822         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
823
824 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
825
826         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
827
828 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
829
830         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
831
832         * tests/testgtk.c (create_tooltips): Remove usage of
833         gtk_widget_set().
834
835 2001-06-05  Havoc Pennington  <hp@redhat.com>
836
837         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
838
839         Applying patch from Jeff Franks, with function docs added.
840         
841         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
842         remove call to set_mnemonic_widget, change docs a bit.  
843
844         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
845         new function
846
847         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
848         new function
849
850         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
851
852         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
853         function
854         (gtk_radio_button_new_with_mnemonic_from_widget): new function
855
856         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
857         new function
858
859         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
860         function        
861
862         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
863         auto-selection of mnemonic widget.
864
865 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
866
867         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
868         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
869         (gtk_tree_view_column_set_min_width): ditto.
870
871 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
872
873         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
874         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
875
876 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
877
878         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
879         gtk_clist_thaw().
880
881 2001-06-04  Havoc Pennington  <hp@pobox.com>
882
883         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
884         releases for buttons 6, 7
885
886 2001-06-04  Havoc Pennington  <hp@redhat.com>
887
888         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
889         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
890         #55562
891
892 2001-06-04  Havoc Pennington  <hp@redhat.com>
893
894         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
895         where text_view->layout == NULL by assuming its size is 0, 
896         i.e. same as if we haven't done any reflow. Reported by 
897         Hidetoshi Tajima #55448 
898
899 2001-06-04  Havoc Pennington  <hp@redhat.com>
900
901         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
902         and 7 for scroll left/right, from Thomas Broyer
903
904 2001-05-10  Havoc Pennington  <hp@redhat.com>
905
906         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
907         we need to parse the xsetting as if it were an RC file string.
908
909         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
910         value of palette from settings, not from static variable
911
912         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
913         xsettings translation table
914
915         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
916         hardcoding the toolbar style conflicts with new customizable 
917         toolbar style philosophy
918         (gtk_toolbar_class_init): add settings for default toolbar style;
919         these are used unless the app specifically forces a toolbar style
920
921         * gtk/gtksettings.c (settings_install_property_parser): only
922         return at the start if we warn and parser == NULL
923
924         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
925         palette changed handler so we don't notify dead color selections
926
927         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
928         xthickness/ythickness of 0 or 1 properly 
929         (gtk_default_draw_resize_grip): clear the background behind the
930         resize grips, and align to bottom right if we square the 
931         area to be drawn.
932
933         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
934         statusbar label to 1, so it doesn't make toplevels resize oddly
935         (gtk_statusbar_size_request): add grip size to request
936         (gtk_statusbar_size_allocate): hack so the hbox still works with 
937         the grip size in the request
938
939         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
940         bug where showing all on a toplevel makes the toolbar 
941         button text appear despite the toolbar mode
942
943         * gtk/gtkmenubar.c: add internal padding style property
944
945         * gtk/gtktoolbar.c: Add internal padding style property; add
946         shadow type style property
947
948         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
949         state; and put Container::border_width outside the frame
950
951         * gtk/gtktextview.c: don't draw focus rectangle if we're in
952         interior focus mode, we just use blinking cursor
953
954 2001-06-04  Havoc Pennington  <hp@redhat.com>
955
956         * configure.in: Make gdk-pixbuf have same version number as GTK
957
958 2001-06-04  Havoc Pennington  <hp@redhat.com>
959
960         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
961         digits greater than 6. If there actually are limits (which there
962         likely aren't), should clamp to them not warn.
963         (gtk_spin_button_new_with_range): don't take log of 0
964         (gtk_spin_button_size_request): use digits to compute size
965         request, rather than step increment.
966
967         * tests/testgtk.c (create_spins): test larger values of digits
968         
969         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
970         font on map not expose, so we don't get weirdness during scrolling
971
972 2001-06-04  Havoc Pennington  <hp@redhat.com>
973
974         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
975         Sam Solon, bug #54577, update value even if not drawable.
976
977 2001-06-04  Havoc Pennington  <hp@redhat.com>
978
979         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
980         SCROLL_LEFT, reported by Thomas Broyer.
981
982 2001-06-04  Havoc Pennington  <hp@redhat.com>
983
984         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
985         Process updates immediately, to prevent funny lag effect
986         when scrolling, at some mild potential efficiency cost.
987
988 2001-06-04  Havoc Pennington  <hp@redhat.com>
989
990         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
991         slider on the click.
992
993 2001-06-03  Havoc Pennington  <hp@pobox.com>
994
995         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
996         hscale/vscale details, so we can use it for scrollbar as well.
997
998         * tests/testgtk.c (reformat_value): honor digits from GtkScale
999
1000         * gtk/gtkenums.h (GtkTroughType): Remove this enum
1001         (GtkScrollType): add START and END from GtkTroughType
1002
1003         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
1004         its x/y arguments
1005
1006         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
1007         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
1008         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
1009         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
1010         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
1011
1012         Notable changes in the process:
1013          
1014         - stepper_size style property is the height for vertical 
1015           ranges, width for horizontal; the other dimension matches
1016           the trough size
1017         - add ability to do NeXT-style steppers (and several other styles
1018           that don't make any sense)
1019         - added min_slider_length, fixed_slider_length properties to
1020           GtkScrollbar
1021         - cleaned some private (or at least useless) functions out of
1022           gtkscale.h    
1023         - moved bindings to GtkScale from subclasses, even arrow keys,
1024           since blind users don't know scale orientation.
1025         - change move_slider action signal to use new GtkScrollType,
1026           remove GtkTroughType argument
1027         - digits rounds the values a range will input to the given 
1028           number of decimals, but will not try to force adjustment 
1029           values set by other controllers. That is, we no longer
1030           modify adjustment->value inside a value_changed handler.
1031         - added getters for GtkScale setters
1032         - middle-click begins a slider drag
1033         
1034 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
1035
1036         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
1037         getting the focus code to work.
1038         (gtk_tree_view_class_init): Add a bunch of keybindings.
1039
1040         * gtk/gtktreeviewcolumn.c
1041         (gtk_tree_view_column_set_cell_data_func):
1042         s/GtkCellDataFunc/GtkTreeCellDataFunc.
1043         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
1044         of "properties_changed" to help justify the death of the latter
1045         signal. (-:
1046
1047         * tests/testtreefocus.c (main): Let some columns be focussable to
1048         test focus better.
1049
1050 2001-06-01  Havoc Pennington  <hp@redhat.com>
1051
1052         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
1053         
1054         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
1055         overwrite in overwrite mode if we already deleted the selection
1056         and replaced it with new text.  
1057
1058         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
1059         selection to an empty range, clear the clipboard if we owned it.
1060         (gtk_label_set_selectable): give up selection if we become
1061         unselectable.
1062         (gtk_label_state_changed): override state changed to unselect text
1063         when insensitive
1064         (get_text_callback): add paranoia check that indexes aren't
1065         outside of label->text
1066         (gtk_label_select_region): make -1 for start_offset mean "end of
1067         label," for consistency with GtkEditable
1068
1069         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
1070         GTK_DIALOG_NO_SEPARATOR flag
1071
1072 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
1073
1074         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
1075         notifications on non-existant "enable_arrow_keys".
1076         (#53753, Skip Montanaro)
1077
1078 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
1079
1080         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
1081         GDK_TYPE_RECTANGLE.
1082
1083         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
1084         of allocation argument be GDK_TYPE_RECTANGLE.
1085
1086 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
1087
1088         * gtk/gtkoptionmenu.c: Account for the fact that the border
1089         width is _outside_ the window. (Fixes #54585, bug found
1090         by Bastien Nocera.)
1091
1092 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
1093
1094         * gtk/gtksettings.c (gtk_settings_get_property): Validate
1095         value from GDK settings against parameter spec.
1096
1097         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
1098         to temporary values and use g_value_transform(), since
1099         thinking that GValue was going to be easy or efficient
1100         to use was, of course, a mistake.
1101
1102         * gtk/gtksettings.c: Add cursor blink setting.
1103         
1104         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
1105
1106         * gtk/gtkentry.c: Add cursor blinking.
1107
1108         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
1109         cursor blink global settings.
1110
1111         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
1112         for :text_position in places where it is missing.
1113
1114 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
1115
1116         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
1117
1118 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
1119
1120         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
1121         not pkg-config. (#51032)
1122
1123         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
1124         (fixes #51952, James Henstridge)
1125         
1126 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
1127
1128         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
1129         Rename to the more correct gtk-go-up.
1130
1131         * gtk/stock-icons/stock_menu_sort_ascending.png:
1132         Added new file.
1133         
1134         * gtk/stock-icons/stock_menu_sort_descending.png:
1135         Changed to show descending instead of ascending.
1136
1137         * gtk/gtkiconfactory.c:
1138         Added menu size icon to sort ascending.
1139
1140         * gtk/stock-icons/Makefile.am:
1141         Added stock_menu_sort_ascending.png.
1142         
1143         * gtk/gtkseparatormenuitem.c:
1144         Use correct typenames.
1145
1146 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
1147
1148         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
1149         gulong as in GSignal.
1150
1151 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
1152
1153         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
1154         instances of GtkCellRenderer in code (all but dnd icon code).
1155         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
1156         there, and I can do multiple Cells per column.
1157
1158         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
1159
1160         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
1161         when model was unreffed prior to removing the row reference.
1162
1163 2001-05-25  Havoc Pennington  <hp@redhat.com>
1164
1165         * gtk/gtkiconfactory.c: fix so that default icons are created if 
1166         you call gtk_stock_list_ids()
1167
1168         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
1169         in list
1170
1171 2001-05-25  Havoc Pennington  <hp@redhat.com>
1172
1173         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
1174         set can render without falling back to missing image icon
1175
1176         * gtk/gtktextview.c (gtk_text_view_size_request): request full
1177         size of text, instead of random values
1178
1179         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
1180         size of tree view, instead of random values
1181
1182         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
1183         image in an appropriate size
1184
1185         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
1186         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
1187
1188         Throughout: fix GTK_STOCK_BUTTON_ instances
1189         
1190         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
1191         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
1192         Add a bunch of new stock items/icons
1193
1194         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
1195         new function, convenience for inserting columns with a data func
1196
1197         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
1198         (_gtk_icon_factory_list_ids): use list of all factories to
1199         generate a list of all known IDs
1200
1201         * gtk/gtkstock.c (gtk_stock_list_ids): replace
1202         gtk_stock_list_items() with a function that returns all IDs known
1203         including those for GtkIconFactory.
1204
1205 2001-05-25  Hans Breuer  <hans@breuer.org>
1206
1207         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
1208         work -> check boxes and radio buttons are drawn now, even on win9x.
1209         Improved line settings a bit, still no clue how to get really dotted
1210         lines on win9x, on NT it's PS_ALTERNATE.
1211
1212         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
1213         GDK_HINT_MIN_SIZE as well
1214
1215         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
1216
1217         * gtk/gtk.def : updated
1218
1219         * gtk/gtktreeprivate.h : change column_drop_func to be a function
1220         pointer not a function pointer pointer
1221
1222         * tests/testdnd.c : include <stdlib.h> for putenv prototype
1223
1224         * tests/testsocket.c : made it compile on win32 again
1225
1226         * tests/makefile.msc : one more test-app uses prop-editor.obj
1227
1228 2001-05-22  Havoc Pennington  <hp@pobox.com>
1229
1230         * gtk/gtkbin.c (gtk_bin_get_child): New function
1231
1232 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
1233
1234         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
1235         to ignore when doing compose processing.
1236
1237 2001-05-22  Joe Shaw  <joe@ximian.com>
1238
1239         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
1240         Simplify as suggested by Havoc. Just get the last iter and work
1241         backward to the tag instead of getting a line and working back from
1242         there. Fixes passing in an invalid offset to
1243         iter_init_from_byte_offset().
1244
1245 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
1246
1247         * gtk/gtktreeview*.h: 
1248         * gtk/gtkcell*.h:
1249         * gtk/gtk*store.h:
1250         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
1251         macros to all objects.
1252
1253 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
1254
1255         * gtk/gtkcellrenderertext.c
1256         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
1257         with very large (TM) amounts of text.  May be moved to
1258         GtkCellRenderer in the future, though I'm not sure it wants to be
1259         this accessible.
1260
1261         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
1262         More sanity brought to this class.  I like it.
1263
1264         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
1265         case.  Kids, don't try this at home.
1266
1267         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
1268         convenience function.
1269
1270         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
1271
1272 2001-05-21  Alexander Larsson  <alexl@redhat.com>
1273
1274         * gtk/gtkfontsel.c:
1275         Added properties. Based on patch by Lee Mallabone.
1276
1277         * gtk/gtkruler.c:
1278         * gtk/gtkhruler.c:
1279         * gtk/gtkvruler.c:
1280         * gtk/gtktext.c:
1281         * gtk/gtktextview.c:
1282         Converted GtkArg to GParam. Based on patches by John Margaglione.
1283
1284         * tests/Makefile.am:
1285         * tests/testtext.c:
1286         Add a property editor to testtext.
1287         
1288 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
1289
1290         * gtk/gtk{h,v,}paned.c: Only show the separator if 
1291
1292         * configure.in: Fixed reversed conditional causing all image
1293         libraries to be linked in.
1294
1295 2001-05-21  Joe Shaw  <joe@ximian.com>
1296
1297         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
1298         that top_y needs to be >= 0.
1299
1300 2001-05-11  Havoc Pennington  <hp@pobox.com>
1301         
1302         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
1303         losing connection to the X server.
1304
1305 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
1306
1307         * configure.in: Start checks for X from pangox/pangoxft
1308         CFLAGS to avoid duplicate libraries.
1309
1310         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
1311
1312         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
1313         to include gobject.
1314         
1315 2001-05-18  Alexander Larsson  <alexl@redhat.com>
1316
1317         * gtk/gtkspinbutton.c:
1318         Convert GtkArgs to GParams. Based on patch by John Margaglione.
1319         Also do size request reasonable for MAXDOUBLE. Previously it printed
1320         the limits to a buffer and overran it. Instead do it using log10() and
1321         limit the width to 10 digits.
1322         
1323         * gtk/gtkwidget.c (gtk_widget_get_property):
1324         Correctly handle setting the parent property to NULL.
1325
1326 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
1327
1328         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
1329         style attributes even if the widget isn't realized.
1330
1331         * demos/gtk-demo/main.c: Use a slightly smaller font.
1332
1333 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
1334
1335         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
1336         This is something that only a widget writer would ever want
1337         to change.
1338
1339         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
1340         gtk_signal_emit_by_name().
1341
1342         * gtk/gtkviewport.c: Fix some warnings.
1343
1344         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
1345         allowing the requisitions of multiple widgets to be grouped
1346         together.
1347
1348         * tests/testgtk.c: Add GtkSizeGroup test
1349
1350         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
1351
1352         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
1353         warnings.
1354
1355         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
1356
1357 2001-04-28  Martin Baulig  <baulig@suse.de>
1358
1359         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
1360         to gtk_image_menu_item_set_icon() and made it work if there's already
1361         an image.
1362         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
1363         (gtk_image_menu_item_new_with_label): New function.
1364
1365 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
1366
1367         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
1368         highlighting code!!!!  The result is okay so long as you don't try
1369         to stress it.  It also highlights a bug in the TextView so it's in
1370         an unproportional font right now until it's fixed.
1371
1372         *demos/gtk-demo/*.c: Clean up code a bit to make it
1373         ugly-parser(TM) friendly. (-:
1374
1375 2001-05-17  Joe Shaw  <joe@ximian.com>
1376
1377         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
1378         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
1379         if it is only partially onscreen.
1380
1381 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
1382
1383         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
1384         not by characters.
1385
1386         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
1387         are not zero or one; that is, when graphemes of multiple characters
1388         are involved.
1389
1390         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
1391         FIXME.
1392
1393 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
1394         
1395         * gtk/gtkbbox.c:
1396         Add properties, based on patch by Lee Mallabone.
1397
1398         * gtk/gtknotebook.c:
1399         * gtk/gtktoolbar.c:
1400         Convert from GtkArg to GParam, based on patch by John Margaglione.
1401         
1402         * gtk/gtkhscale.c:
1403         * gtk/gtkvscale.c:
1404         * gtk/gtkhscrollbar.c:
1405         * gtk/gtkvscrollbar.c:
1406         * gtk/gtkrange.c:
1407         Move adjustment property to GtkRange.
1408
1409         * gtk/gtklabel.c:
1410         Setup mnemonics on property changes
1411
1412         * gtk/gtkwidget.c (gtk_widget_get_property):
1413         GdkExtensionMode is an enum, not a flag. Set it with
1414         g_value_set_enum ().
1415
1416         * tests/prop-editor.c:
1417         Better propery editor.
1418
1419         * tests/testgtk.c:
1420         Add new property test. Pass zero to the property editor to
1421         get properties from all derived types.
1422         
1423 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
1424
1425         * autogen.sh (have_automake): Require libtool-1.4,
1426         automake-1.4p1.
1427
1428         * acinclude.m4: Remove libtool macros.
1429
1430         * gdk-pixbuf/Makefile.am: Add dependencies to loade
1431         modules.
1432
1433         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
1434         for libgdk.
1435
1436         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
1437         libgdk.la for libgtk.
1438
1439         * modules/input/Makefile.am: Make modules have full
1440         dependencies.
1441
1442 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
1443
1444         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
1445         #54699 where paths weren't being checked for correctness.
1446
1447 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
1448
1449         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
1450         in any order you wan, whether or not the column is added to the
1451         tree, or the tree is realized.  Yay!
1452
1453         * gtk/gtktreeviewcolumn.c
1454         (gtk_tree_view_column_setup_sort_column_id_callback): handle
1455         sorting columns a lot saner
1456
1457         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
1458         new function to actually set wether or not a column is
1459         reorderable.
1460
1461         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
1462         if we have 'em.
1463
1464         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
1465         Fix nasty bug where we were showing the button just before
1466         realizing it.  As a result, the parent window was
1467         tree_view->window instead of tree_view->priv->header_window.
1468
1469         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
1470         to let you easily reorder a list or tree.
1471
1472 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
1473
1474         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
1475         from args to properties.
1476
1477 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
1478
1479         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
1480         from args to properties. (#51957)
1481
1482         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
1483         calls to after ->set_property call.
1484
1485 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
1486
1487         * tests/prop-editor.c: Block against redundant changes.
1488
1489         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
1490         properties.
1491
1492 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
1493
1494         * gdk/gdkpixmap.h: Remove creative formatting.
1495
1496 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
1497
1498         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
1499         property API. (#51669)
1500
1501         * gtk/gtkscale.c: Patch from John Margaglione converting to
1502         property API. (#51891)
1503
1504         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
1505         to property API. (#50985)
1506
1507 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
1508
1509         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
1510         buffering state across expose event, so we still call end_paint().
1511
1512 2001-05-11  Alexander Larsson  <alexl@redhat.com>
1513
1514         * gtk/gtkhsv.c (paint_triangle):
1515         Expose the ring in the triangle at the correct place when
1516         exposing just a part of the triangle.
1517
1518         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
1519         Return FALSE, or window focusing will not work.
1520
1521 2001-05-11  Havoc Pennington  <hp@pobox.com>
1522
1523         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
1524         #54144
1525
1526         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
1527         bug #54330
1528
1529 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
1530
1531         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
1532         propagate exposes to NULL child.
1533
1534         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
1535         against not having one of the scrollbars.
1536
1537         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
1538         we don't keep a mnemonic window if we have no mnemonic installed.
1539
1540 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
1541
1542         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
1543         it has the _important_ side effect of initializing a class.
1544
1545 2001-05-10  Alexander Larsson  <alexl@redhat.com>
1546
1547         * gdk/linux-fb/gdkprivate-fb.h:
1548         Make sure you can compile out the implementation/wrapper assert
1549         macros.
1550
1551         * gdk/linux-fb/gdkdrawable-fb2.c:
1552         Check implementation/wrappers, initialize type for pixmap dummys.
1553
1554         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1555         Hide the cursor if reading from the screen.
1556
1557         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1558         Fix sign bug in tiling code.
1559
1560         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
1561         Handle background pixmaps.
1562
1563 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
1564
1565         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
1566         function to let user control where columns are dragged.
1567
1568         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
1569         Escape is pressed.
1570
1571 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
1572
1573         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
1574         "columns_changed" signal.
1575         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
1576         motion code to draw arrows to the side if indicator is outside the
1577         widget.
1578         (gtk_tree_view_map_expanded_rows): Implement.
1579
1580 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1581
1582         * demos/testpixbuf-save.c: 
1583         * demos/testpixbuf-drawable.c:
1584         Include gdkfb.h on linux-fb.
1585
1586 2001-05-07  Alexander Larsson  <alexl@redhat.com>
1587
1588         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
1589         New function for getting toplevel window at position.
1590         (gdk_drag_find_window): Use get_toplevel_window () instead
1591         of gdk_window_get_pointer(). (gdk_drag_status): Use
1592         correct context for getting window.
1593
1594         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
1595         g_strdup the atom name.
1596
1597         * gdk/linux-fb/gdkwindow-fb.c:
1598         Costmetic fix.
1599
1600         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
1601         Add code for changing cursor on linux-fb backend (same as
1602         win32).
1603
1604 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
1605
1606         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
1607         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
1608         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
1609         report was not for the development branch of GTK+, but it applies
1610         anyways).
1611
1612 2001-05-04  Havoc Pennington  <hp@redhat.com>
1613
1614         * configure.in: fix some shell typos
1615
1616         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
1617
1618         * gtk/gtkimage.c: handle animations
1619
1620         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
1621         border_width * 2, not just border_width
1622
1623         * gtk/gtkscale.c: add "format_value" signal to allow people
1624         to override the way values are drawn.
1625         (gtk_scale_get_value_size): fix width/height mistake,
1626         and compute size from actual displayed text, not 
1627         from made-up text.
1628
1629         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
1630         signal registration
1631
1632         * tests/testtext.c: Add "Remove all tags" menu item for testing
1633
1634         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
1635
1636         * demos/gtk-demo/main.c (main): add hack so we can find modules
1637         without installing gtk
1638
1639         * demos/gtk-demo/textview.c (insert_text): demo font scaling
1640
1641         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
1642         factor)
1643         (gtk_cell_renderer_text_set_property): remove some bogus
1644         g_object_notify
1645
1646         * gtk/gtktexttag.c: add "scale" property which is a font scaling
1647         factor
1648
1649         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
1650         to layout
1651
1652         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
1653         gtk_text_iter_is_first
1654
1655 2001-01-06  Hans Breuer  <hans@breuer.org>
1656
1657         * gdk/gdk.def : updated exports
1658
1659         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
1660         gdk won't compile anymore
1661  
1662         * gdk/win32/gdkevents-win32.c : initialize ret_val when
1663         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
1664         Improved gdk_flush () to not only do pending drawing operations
1665         but also process all currently pending events. This should make
1666         the behaviour more similar to the X11 version.  
1667
1668         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
1669         option needs to be set even if there is no GDK_GC_BACKGROUND.
1670         (gdk_win32_hdc_get) : use predraw_set_background () independent
1671         of value_mask. This allows to draw dashed lines leaving the original
1672         background intact.
1673
1674         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
1675         after processing, because we can't reuse it as the X11 version does.
1676
1677         * gtk/gtk.def : updated exports
1678
1679         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
1680         would like to get rid of this file again, and use straight
1681         makefile.msc again, as the other Gtk+ subdirs do)
1682
1683         * test/makefile.msc (new file) : build the test apps here
1684
1685 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
1686
1687         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
1688         strike-through setting
1689         (gdk_draw_layout_line_with_colors): Render strike-through
1690
1691 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
1692
1693         * Release 1.3.5
1694
1695         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
1696
1697         * NEWS: Updated
1698
1699         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
1700         Makefile breakage.
1701
1702 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
1703
1704         * demos/gtk-demo/images.c (progressive_timeout): Fix
1705         typo in filename.
1706
1707         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
1708         out FIXME warning; just too annoying.
1709
1710 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
1711
1712         * gdk/linux-fb/gdkcolor-fb.c:
1713         Better error messages.
1714
1715         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
1716         Initialize abs_x and abs_y.
1717         
1718         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
1719         Correct handling of stipple offset.
1720
1721         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
1722         Treat directcolor framebuffers as truecolor.
1723         
1724 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
1725
1726         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
1727         dependency on Atk for accessibility support.
1728
1729         * configure.in **/Makefile.am: Major reworking of substituted
1730         variables for CFLAGS/LIBS to make a lot more sane and 
1731         keep the the compile/link lines a bit shorter.
1732
1733         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
1734
1735 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
1736
1737         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
1738         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
1739         use _gtk_boolean_handled_accumulator.
1740
1741 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
1742
1743         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
1744         to fix things so clicking inside selection leaves cursor
1745         at point where clicked. (#50324)
1746
1747         * gtk/gtksettings.c (gtk_settings_class_init): Restore
1748         sane value for default double click time.
1749
1750         * tests/testtext.c (test_init): Really path to input modules.
1751
1752 2001-05-03  Sven Neumann  <sven@convergence.de>
1753
1754         * demos/testpixbuf-save.c: include target-specific headers as
1755         done in testpixbuf-drawable.c
1756
1757 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
1758
1759         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
1760         new_text_length appropriately when we run into the 
1761         size limit for the entry. (#53445, reported by Jeff Franks)
1762
1763         * tests/testgtk.c (create_entry): Remove most of the
1764         property toggle buttons. Replace with a "Props" button
1765         that brings up a property editor.
1766
1767         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
1768         Split the property editor code out for reuse, improve.
1769
1770 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
1771
1772         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
1773         trap errors around calls to XSetInputFocus since we have
1774         no way of knowing reliably whether we are viewable or
1775         not. (#53947)
1776
1777 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
1778
1779         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1780         fix bug in dropping columns.  Moving columns now basically works
1781         modula some fine tuning.
1782
1783 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
1784
1785         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
1786         autoscroll support.  It mostly works, but could use some fine
1787         tuning.
1788         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
1789         Actually move the column.
1790
1791 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
1792
1793         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
1794           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
1795           New default theme! A slighly improved version of the 2.0 Raleigh
1796           theme, with Windows-esque focus/drawing default. 
1797           (GtkWidget::interior_focus defaults to TRUE.)
1798
1799         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
1800
1801 2001-04-30  Havoc Pennington  <hp@pobox.com>
1802
1803         * tests/testtext.c (line_numbers_expose): fix to work with
1804         gtk_paint_layout change
1805
1806 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
1807
1808         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
1809           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
1810           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
1811           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
1812
1813         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
1814           with GtkWidget::interior_focus = TRUE better.
1815
1816         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
1817         ::default_outside_border for more flexibility.
1818
1819         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
1820         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
1821         change that had to be made with g_object_get.
1822
1823 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
1824
1825         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
1826         (gtk_tree_view_move_column_after): Clean up interface. 
1827
1828 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
1829
1830         * gtk/gtkpacker.h:
1831         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
1832          to gtkenum.h.
1833
1834         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
1835         handled in switch).
1836
1837         * gtk/Makefile.am:
1838         (gtk.defs): generate enum portions with  glib-mkenums.
1839         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
1840         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
1841         
1842         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
1843         addition.
1844
1845         * docs/Changes-2.0.txt: keep a note on signal handlers now
1846         not getting emitted during the emission they were connected within.
1847
1848 2001-04-28  Havoc Pennington  <hp@pobox.com>
1849
1850         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
1851
1852 2001-04-24  Havoc Pennington  <hp@redhat.com>
1853
1854         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
1855         (gtk_text_layout_move_iter_to_next_line): fix these two for
1856         invisible text, lots of other stuff still hosed.
1857
1858         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
1859         new function, replaces the get/set palette stuff. This function 
1860         is intended for use by libgnomeui which should set the hook to a
1861         thing which sets the palette in GConf, and we need the
1862         GConf-to-xsettings proxy which will result in the change being
1863         propagated back to the GTK app.
1864
1865         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
1866         about unusable signals that it may be because the signal has 
1867         parameters.
1868
1869         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
1870         style, otherwise gtkrc.c won't know to create a new GtkStyle for
1871         it.
1872         (gtk_widget_modify_color_component): call
1873         gtk_widget_modify_style() so the rc style will get copied.
1874         (gtk_widget_modify_font): ditto
1875
1876         * gtk/gtkrc.c: make a couple variables static
1877
1878         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
1879         help button by default, since it does nothing
1880
1881         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
1882         around with UI
1883
1884         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
1885         so we can have tooltips
1886
1887         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
1888         can have tooltips
1889
1890         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
1891         GDK_ENABLE_BROKEN, because its memory behavior is completely
1892         hosed.
1893
1894         * gtk/gtknotebook.c: remove key press handler, replace with
1895         binding set, add numeric keypad support
1896
1897         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
1898
1899         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
1900
1901         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
1902         addition to plain Delete
1903
1904         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
1905         GDK_KP_Enter in addition to GDK_Return
1906
1907         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
1908         activate on entry instead of key press
1909         (gtk_font_selection_on_clist_key_press): get
1910         rid of this signal handler, not needed with new font sel.
1911
1912         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
1913         no-longer-needed emit_stop_by_name(), just return TRUE
1914
1915         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
1916         cruft, this widget is no longer focusable.
1917
1918         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
1919         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
1920         move_slider action signal, add binding set for vscale/hscale, in
1921         the process support numeric keypad
1922
1923         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
1924         make GDK_Return and GDK_KP_Enter activate the entry via 
1925         binding set, instead of hardcoded.
1926
1927 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
1928
1929         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
1930         code.  Some documentation added.
1931
1932 2001-04-27  Havoc Pennington  <hp@redhat.com>
1933
1934         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
1935
1936         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
1937
1938         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
1939         line/para separators
1940         (gtk_entry_create_layout): set single paragraph mode on the layout
1941
1942         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
1943         spacing between the image and label; instead, inside a button box 
1944         the button will get extra space that will go there, but if people 
1945         configure button box for 0 chubbiness, then there's no spacing.
1946
1947         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
1948         and min/max size style properties, so people can tune their
1949         chubbiness.
1950
1951         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
1952         functions
1953
1954         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
1955         space_style, and button_relief into style properties, remove
1956         functions for setting them
1957         
1958         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
1959         it back down
1960
1961         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
1962         types from gtk_widget_style_get
1963
1964         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
1965         with a style property.
1966
1967         * gdk/x11/gdkevents-x11.c: namespace the settings
1968
1969         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
1970
1971         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
1972         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
1973         be used. Also, translate doc strings for settings. Also, namespace
1974         the double-click-time property. Also, remove bell properties crap.
1975
1976 2001-04-27  Sven Neumann  <sven@gimp.org>
1977
1978         * Makefile.am: before creating links, check if pkg-config files
1979         exist for the default target. Otherwise link to the pkg-config files
1980         that got installed with this build.
1981
1982 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
1983
1984         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
1985         dragging code.  Revealed some (potential) GdkWindow bugs.
1986
1987         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
1988         _gdk_window_init_position to the end of reparent to fix the case
1989         of reparenting when new_x != old_x and new_y != old_y.
1990
1991 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
1992
1993         * gtk/gtkentry.c (strstr_len): Fix optimization that
1994         was correct for the use here, but completely incorrect
1995         in general.
1996
1997 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
1998
1999         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
2000         until patch adding gtk_window_set_size() is recommitted. 
2001
2002         * **Makefile.am configure.in gdk/x11/gdkim-11.c
2003           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
2004           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
2005           (#10784)
2006
2007 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2008
2009         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
2010         window == NULL in a number of cases.
2011
2012         * tests/testdnd.c: Set module path for gdk-pixbuf.
2013
2014 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
2015
2016         * gtk/Makefile.am xembed.h: File containing #defines
2017         for XEMBED protocol.
2018
2019         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
2020
2021         - Change protocol from old plug/socket specific protocol
2022           to XEMBED draft
2023         - Various fixes to work with GTK+-2.0
2024
2025         Still quite a bit of work to do here to handle initiation
2026         from the socket side (as specified by XEMBED), to handle
2027         the more advanced features of XEMBED, and to figure out
2028         a good way to handle same-app embedding with less overhead
2029         than using full XEMBED.
2030
2031 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
2032
2033         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
2034         track of whether the toplevel has the focus; only send
2035         focus-in events to the focus widget when the window
2036         actually has the focus.
2037
2038 2001-04-25  Havoc Pennington  <hp@pobox.com>
2039
2040         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
2041         were still in the header
2042
2043 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2044
2045         * gtk/gtkclist.[ch]:
2046         * gtk/gtkctree.c:
2047         When there is a row highlighted for D'n'D it must alse
2048         be painted hightlighted on exposes. Otherwise exposes from
2049         the icon being dragged will mess up the hightlight.
2050
2051         * gtk/gtkfontsel.c:
2052         Don't recenter selected font when exposing the font family
2053         clist. This means you can now actually scroll the font family
2054         list.
2055
2056         * gtk/gtknotebook.c:
2057         Fix focus movement on scrolling tabs that are placed on the left
2058         and right.
2059
2060 2001-04-21  Havoc Pennington  <hp@pobox.com>
2061
2062         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
2063         empty/invisible lines.
2064
2065         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
2066         (gtk_text_iter_set_visible_line_index): new functions to set
2067         indexes excluding invisible text
2068
2069         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
2070         index
2071
2072         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
2073         (gtk_text_iter_get_visible_line_offset): new functions to 
2074         get indexes excluding invisible text
2075
2076         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
2077         bunch of extra padding that served no purpose
2078
2079         * gtk/gtkdialog.c: Make all the spacings configurable via style
2080         properties, for chubbiness configuration in themes
2081
2082         * tests/testtext.c: fix path to the immodules.
2083         
2084 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
2085
2086         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
2087         got munched by #endif.
2088
2089         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
2090
2091         * gtk/gtktreeview.c: Refactored code to clean up a number of
2092         events.
2093
2094         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
2095         values to make consistent with other functions.  Spotted by Jeff
2096         Franks <jcf@tpg.com.au>.
2097
2098         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
2099         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
2100
2101 2001-04-23  Sven Neumann  <sven@gimp.org>
2102
2103         * gtk/Makefile.am
2104         * gtk/gtkplug.c
2105         * gtk/gtksocket.c: on request of Owen, reverted my last change 
2106         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
2107
2108 2001-04-23  Sven Neumann  <sven@gimp.org>
2109
2110         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
2111         compile for non-X11 targets again
2112
2113 2001-04-20  Alexander Larsson  <alexl@redhat.com>
2114
2115         * gtk/gtkcolorsel.[ch]:
2116         API Change. Take GdkColor arguments instead of gdouble *.
2117         Leave the old gtk_color_selection_set_color for compatibility,
2118         but marked deprecated.
2119         Do correct rounding when converting RGB <-> HSV.
2120         
2121         * gtk/gtkcolorseldialog.c:
2122         * tests/testgtk.c:
2123         Use new GtkColorSelection API.
2124
2125         * gtk/gtkhsv.c:
2126         Fix problem selecting colors in triangle when Hue is 330.
2127         Fix some black dots around the HSB triangle.
2128         
2129         * gtk/gtkfilesel.c:
2130         return FALSE from the focus_in_event handler to fix focus problems.
2131
2132 2001-04-18  Havoc Pennington  <hp@redhat.com>
2133
2134         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
2135         set, so keybindings are configurable    
2136         (gtk_window_activate_default): Change to activate the focus widget
2137         instead if there's a focus widget, to be consistent with the
2138         behavior that previously existed in key_press_event
2139
2140 2001-04-18  Havoc Pennington  <hp@redhat.com>
2141
2142         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
2143
2144 2001-04-18  Havoc Pennington  <hp@redhat.com>
2145
2146         Close bug #50615:
2147         
2148         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
2149         the layout
2150
2151         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
2152
2153         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
2154
2155         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
2156         
2157         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
2158         to blue for base, in addition to bg
2159         
2160 2001-04-18  Havoc Pennington  <hp@redhat.com>
2161
2162         * tests/testgtk.c (create_image): allow shrinking the image window
2163         to test that we clip to allocation.
2164
2165         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
2166         #9845
2167
2168         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
2169
2170 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
2171
2172         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
2173         mode on shm segments to 0600. We'll see who complains.
2174
2175         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
2176         _gdk_windowing_window_destroy() AFTER recursing through
2177         children.
2178
2179         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
2180         testsocket_child on X.
2181
2182         * tests/testsocket[_child].c: Fix uses of
2183         gtk_window_get_default_accel_group().
2184
2185         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
2186
2187         * gdk/gdkimage.c: (gdk_image_get):
2188         Deal with the possibility that XGetImage() might return NULL.
2189         Allocate the GdkImagePrivate structure only after XGetImage()
2190         succeeds in order not to dereference a NULL ximage pointer.  This
2191         prevents a core dump when XGetImage() fails - which is unlikely,
2192         but can happen due to race conditions accessing the geometries of
2193         drawables.  An x error will still be triggered, but the gdk image
2194         wrapper at least wont seg fault.
2195         
2196 2001-04-18  Havoc Pennington  <hp@redhat.com>
2197
2198         * gtk/gtkimage.c: fix to properly queue resizes when the image is
2199         set
2200
2201         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
2202         if the insertion point isn't editable
2203
2204         * demos/gtk-demo/images.c: Added a GtkImage demo
2205
2206         * demos/gtk-demo/drawingarea.c: drawing area demo
2207         
2208         * demos/gtk-demo/menus.c (create_menu): cleanups
2209
2210 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
2211
2212         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
2213           gdk/x11/gdkevents-x11.c: Introduce an extra child
2214         of toplevel windows that serves to hold the focus to
2215         avoid events being delivered to embedded windows.
2216
2217         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
2218         some extra variables to clean up code and reduce the
2219         number of casts.
2220
2221         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
2222         guint for 1 bit bit fields, not gboolean.
2223
2224 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2225
2226         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
2227         not TRUE. (Fixes #52925)
2228
2229 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
2230
2231         * Released 1.3.4
2232
2233         * NEWS: Updated
2234
2235         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
2236         use GTK_TYPE_ENUM.
2237
2238 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2239
2240         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2241
2242         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
2243         names to compatibility #defines so docs work.
2244
2245         * gtk/gtkenums.h: Remove GtkMenuFactoryType
2246
2247         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
2248
2249         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
2250
2251         * tests/testgtkrc: No magenta cursors, please.
2252
2253         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
2254
2255         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
2256         
2257 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
2258
2259         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
2260         grabs, since they are no longer necessary.
2261
2262         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
2263         by signal_connect() and call gtk_button_pressed() rather
2264         than signal_connect_after().
2265
2266         * tests/testgtk.c: Restore radio menu items to combos 
2267         since they'll look OK with Raleigh, and it is easier
2268         than finishing the process of removing them that was
2269         started earlier.
2270
2271 2001-04-16  Hans Breuer  <hans@breuer.org>
2272
2273         * gdk/gdk.def :
2274         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
2275
2276         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
2277         we are interested in the functions return value not the function address
2278         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
2279
2280         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
2281
2282 2001-04-14  Hans Breuer  <hans@breuer.org>
2283
2284         * gdk/gdk.def :
2285         * gdk/makefile.msc : updated
2286
2287         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
2288         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
2289         (the testgtk::text backgound pixmap is drawn again)
2290         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
2291         Win32 Pango change
2292         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
2293
2294         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
2295         Not sure if the returned settings have the right unit, because I couldn't
2296         find any docs for the X version ...
2297
2298         * gtk/gtk.def :
2299         * gtk/makefile.msc.in : updated
2300
2301 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
2302
2303         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
2304         wording problems. (Compared to version from Johannes Stezenbach to
2305         check correctness.)
2306
2307 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
2308
2309         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
2310         this to compile.
2311
2312 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
2313
2314         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
2315         not pixbufpos.
2316
2317         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
2318
2319         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
2320         are unsigned insts, therefore use g_value_set_uint.
2321         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
2322
2323 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
2324
2325         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
2326
2327         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
2328         GTK_TYPE_STRING.
2329
2330         * gtk/gtktreeview.c: New functions to allow initial column
2331         dragging work.
2332
2333         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
2334
2335         * tests/testtreefocus.c: give dave some love.
2336
2337         * tests/testtreesort.c: Modify test to check really long samples.
2338
2339 2001-04-11  Alexander Larsson  <alexl@redhat.com>
2340
2341         * gtk-2.0.m4: Pass pkg-config options
2342         before the other args so it works even if
2343         POSIXLY_CORRECT is set.
2344
2345 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
2346
2347         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
2348         0, interface 0).
2349
2350 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2351
2352         * gtk/gtkcalendar.c (gtk_calendar_button_press):
2353         check for action_func != NULL
2354
2355 2001-04-04  Sven Neumann  <sven@gimp.org>
2356
2357         * tests/testgtk.c (test_init): corrected path to gtk.immodules
2358
2359 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2360
2361         * Released Gtk+-1.3.3.
2362
2363 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
2364
2365         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
2366
2367 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
2368
2369         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
2370         files to/from source dir. (if we don't stay in builddir, we
2371         can't reach make-inline-pixbuf.
2372
2373         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
2374         deps.
2375
2376         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
2377         ages 0).
2378
2379 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
2380
2381         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
2382         moved to the GtkTreeSortable interface.
2383
2384         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2385         Make more efficient (fixes #50262).
2386
2387 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
2388
2389         * NEWS: Updated.
2390
2391         * configure.in: Remove support for uninstalled glib.
2392
2393         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
2394         so as not to stop emission.
2395
2396         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
2397         is no longer supported.
2398
2399         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
2400         into tests, change build order to build modules before
2401         gtk/.
2402
2403         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
2404         to here.
2405
2406 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
2407
2408         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
2409         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
2410         GPatternSpec. this is actually unlikely to cause breakage in
2411         third-party apps since except for gle, pretty much ever caller
2412         passes NULL here.
2413
2414         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
2415
2416         * *.c: use g_pattern_*() API.
2417
2418         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
2419
2420         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
2421         directions aren't passed in.
2422
2423         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
2424         functionality to be usable from gtkstyle.c as well, give precedence
2425         for conversion to user-supplied parsers.
2426         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
2427
2428         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
2429         _gtk_settings_parse_convert() for rcporperty value conversion.
2430
2431 2001-04-03  Alexander Larsson  <alexl@redhat.com>
2432
2433         * gdk/linux-fb/gdkevents-fb.c:
2434         Add empty gdk_setting_get().
2435
2436 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
2437
2438         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
2439         variable names.
2440         
2441         * gtk/makeenums.pl: touch this so enum files get remade.
2442
2443 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
2444
2445         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
2446         work again when not sorted.
2447
2448         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
2449         and "expand_row" signal, closing bug 52578.
2450
2451         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
2452         support.
2453
2454         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
2455         support.
2456
2457 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2458
2459         * gdk/gdkevents.h: Add GdkEventSetting event for notification
2460         of changes to system settings, gdk_setting_get() to retrieve
2461         a single system setting.
2462
2463         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
2464         to the draft XSETTINGS mechanism.
2465
2466         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
2467         XSETTINGS.
2468
2469         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
2470         of GDK settings changes to the GtkSettings object.
2471
2472         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
2473         double-click-timeout property to GDK.
2474
2475         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
2476         Define GDK boxed types here.
2477
2478         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
2479         gdk/gdkenumtypes.[ch] for enum definitions.
2480
2481         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
2482         * gtk/gtk-boxed.defs: Comment out GDK types
2483         * gtk/gtktypeutils.h: Remove GDK types
2484         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
2485
2486 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
2487
2488         * Applied patch from Ron Steinke to add signal accumulators
2489         so that signals with the convention 'TRUE return means
2490         handled' stop emission on a TRUE return.
2491
2492         * gtk/gtkmain.[ch]: Add private accumulator 
2493         _gtk_boolean_handled_accumulator, used throughout GTK+.
2494         
2495         * gtk/gtkspinbutton.c: Add accumulator for ::output.
2496
2497         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
2498         
2499         * gtk/gtkwidget.c: Add accumulators for event signals,
2500         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
2501         for ::mnemonic-activate.
2502
2503         * gtk/gtkwindow.c: Add accumulator for ::frame_event
2504
2505 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
2506
2507         * gtk/gtkwidget.c: Add missing include.
2508
2509 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
2510
2511         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
2512         marshaller.
2513
2514         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
2515         "changed" signal to "range_changed".
2516
2517         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
2518         removing a tree from one model would remove all trees from that
2519         model.
2520         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
2521         changed signal instead.
2522
2523 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
2524
2525         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
2526         chaining up to parent impl, since we have a INPUT_ONLY
2527         window.
2528
2529         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
2530         foreground color for the cursor.
2531
2532 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2533
2534         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
2535         param spec when caching property values, since we unref it
2536         later when we free the style.
2537
2538         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
2539         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
2540
2541 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
2542
2543         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
2544         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
2545         stupidity.
2546
2547 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
2548
2549         [ First pass at adding style properties. Still needs some definite
2550         fine-tuning. ]
2551
2552         * gtk/gtkbutton.c: Add ::default_spacing style property.
2553          
2554         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
2555         ::indicator_spacing style properties.
2556
2557         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
2558         style properties.
2559
2560         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
2561         rather than a normal property.
2562
2563         * gtk/gtkwidget.c: Add an ::interior_focus style property to
2564         draw focus inside buttons, in the Windows/Java Metal/etc. style.
2565
2566         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
2567         Honor ::interior_focus.
2568         
2569         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
2570         TRUE.
2571
2572         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
2573         Add ::slider_width, ::trough_border, ::stepper_size,
2574         ::stepper_spacing style properties.
2575
2576         * gtk/gtkscale.[ch] Add ::slider-length style property.
2577
2578 2001-04-02 Alexander Larsson   <alexl@redhat.com>
2579
2580         * gdk/linux-fb/gdkwindow-fb.c:
2581         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
2582         warnings that were spewed on startup.
2583
2584         * gtk/gtkwindow-decorate.c:
2585         gtk_window_reposition -> _gtk_window_reposition
2586
2587 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
2588
2589         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2590         Add boxed type for GtkRequistion. Use it for ::size-request.
2591
2592         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
2593         Add a new GtkBorder structure useful for geometry properties
2594         for widgets. Add corresponding GTK_TYPE_BORDER.
2595         
2596         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
2597         Support automatic parser selection like
2598         gtk_settings_install_property_parser().
2599
2600         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
2601         functionality for use by gtk_widget_class_install_style_property.
2602         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
2603
2604 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
2605
2606         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
2607         g_param_spec_unichar(). 
2608
2609 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
2610
2611         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
2612         _NET window managers.
2613
2614         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
2615
2616 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
2617
2618         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
2619         bad needs to be nuked, not just deprecated.
2620
2621         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
2622         gtk_widget_popup().
2623
2624         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
2625         
2626         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
2627         widget.
2628         
2629         * docs/Changes-2.0.txt: updates.
2630         
2631 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
2632
2633         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
2634         for (i = 0; i < 100; i ++)
2635           g_print ("I will confirm it compile before committing\n");
2636
2637 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
2638
2639         * gtk/gtktreestore.c: Initial work on implementing the
2640         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
2641
2642 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
2643
2644         * gtk/gtkwidget.c: fixed a bunch of notifications, added
2645         reference counts around emissions where the widget is used afterwards.
2646         added freeze/thaws around multiple properties being notified.
2647         (_gtk_widget_get_aux_info): cleanups.
2648         
2649         * gtk/gtksettings.c (gtk_settings_install_property): provide
2650         default parsing functions for gdkcolor, enums and flags.
2651
2652         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
2653         applied by owen.
2654         backed out gtk_window_get_location(), gtk_window_set_location(),
2655         gtk_window_get_size() and gtk_window_set_size(), these
2656         have to be sorted out wrg x/y/width/height/default_with/default_height
2657         properties.
2658         kept a flag in GtkWindowGeometryInfo to handle user
2659         resetting default sizes.
2660         cleaned up ZVT comments.
2661         bunch of assorted bug fixes, notification fixes.
2662         (_gtk_window_reposition): make this a really internal function.
2663         
2664         * gtk/testgtk.c: fixups.
2665         
2666 2001-03-31  Hans Breuer  <hans@breuer.org>
2667
2668         * config.h.win32.in : disable USE_MMX for msvc build cause
2669         the assembler doesn't fit and is out of my scope. Disable
2670         USE_GMODULE for msvc build as wel. The right way to share
2671         binaries on win32 would be to use libtiff.dll etc. To reduce
2672         installation hassles IMO it's better to include all fileformats
2673         builtin to gdk-pixbuf
2674
2675         * gdk-pixbuf/makefile.msc : new file
2676
2677         * gdk/gdk.def : updated
2678
2679         * gdk/win32/gdkevents-win32.c : don't erase the background if
2680         .no_bg is set. It improves the scrolling (e.g. of testgtk main
2681         buttons
2682         * gdk/win32/gdkgeometry-win32.c : added comment about the above
2683
2684         * gdk/win32/gdkwindow-win32.c : added three new functions like
2685         the X version. Only one is implemented, because the other two
2686         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
2687         be default behaviour on win32 anyway ...
2688
2689         * gtk/gtk.def : updated
2690
2691         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
2692         from where it was built and add an additional rule to automagically
2693         build gtkmarshal.[hc]
2694
2695         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
2696         before array access for the current entry isn't finished
2697
2698         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
2699         use g_return_val_if_fail
2700
2701         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
2702         for the static array, but let the compiler calculate it. It
2703         makes me wonder if gcc isn't capable to catch bugs like this ...
2704
2705 2001-03-31  James Henstridge  <james@daa.com.au>
2706
2707         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
2708         constant "-1" in the aux info structure.
2709
2710 2001-03-30  Alexander Larsson  <alexl@redhat.com>
2711
2712         * gtk/gtkbutton.c (gtk_button_get_property):
2713         * gtk/gtklabel.c:
2714         Remove leaks.
2715         
2716         * gtk/gtkcontainer.c:
2717         * gtk/gtkhscale.c:
2718         * gtk/gtkhscrollbar.c:
2719         * gtk/gtklayout.c:
2720         * gtk/gtkmisc.c:
2721         * gtk/gtkprogress.c:
2722         * gtk/gtkprogressbar.c:
2723         * gtk/gtkrange.c:
2724         * gtk/gtktable.c:
2725         * gtk/gtkviewport.c:
2726         * gtk/gtkvscale.c:
2727         * gtk/gtkvscrollbar.c:
2728         * gtk/gtkwidget.c:
2729         Property patches, based on patches from John Margaglione and Lee Mallabone.
2730
2731 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
2732
2733         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
2734         adjustment. Cleaned redundant preconditions (spin != NULL). Added
2735         inline API function docs.
2736         (gtk_spin_button_new_with_range): New convenience constructor.
2737         (gtk_spin_button_set_increments): New adjustment helper.
2738         (gtk_spin_button_set_range): New adjustment helper.
2739
2740         * gtk/testgtk.c : added test of the new convenince constructor and
2741         value_changed signals.
2742
2743 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
2744
2745         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
2746         listen to the reorder signal.
2747
2748 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
2749
2750         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
2751         to get the aux info structure fo the widget.
2752
2753         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
2754         above function.
2755
2756         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
2757
2758         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
2759         to get the size of the window manager frame, basically the same
2760         code that gdk_window_get_root_origin() had
2761         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
2762
2763         * gtk/gtkwindow.c (gtk_window_set_default_size): use
2764         gdk_window_resize() if the window is realized and resizeable
2765
2766         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
2767         typo so that setting gravity works
2768
2769         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
2770         allocation if auto_shrink is on, even if the default size
2771         has not changed.
2772
2773         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
2774         g_return_if_fail
2775
2776 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
2777
2778         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
2779         reordering/sorting work.  Now pretty much works.
2780
2781         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
2782         reorder mostly work.  Still need to get the parity correct.
2783
2784         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
2785         signal, so I can listen for the sort_column_changed signal so I
2786         can change my "sort_indicator" property.  Cool.
2787
2788 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
2789
2790         [ Patch from Havoc Pennington, hp@redhat.com ]
2791
2792         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
2793         Add functions gdk_window_begin_resize_drag/begin_move_drag
2794         to start resizing or moving a toplevel window. This
2795         is done either using the _NET_WM_MOVERESIZE protocol,
2796         or, if that isn't present, by emulation.
2797
2798         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
2799         to export the above to GTK+-land.
2800
2801         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
2802         
2803         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
2804         Move this function into gdkwindow, since we need it
2805         when implementing fallback resizing.
2806
2807         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
2808         Fix typo when setting gravity.
2809
2810         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
2811         Add an optional (but on by default) resize grip for resizing 
2812         the parent window.
2813
2814 01-03-29  Alexander Larsson  <alexl@redhat.com>
2815
2816         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
2817         Don't return TRUE from the event handler, that blocks all
2818         event signals on the tooltip widget. Now you can press buttons
2819         in toolbars again.
2820
2821 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
2822
2823         * gtk/testtext.c (create_buffer): Add missing NULL on
2824         valist.
2825
2826         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
2827         c-n-p problem with INCONSISTENT property.
2828
2829         [ Patch from Havoc Pennington  <hp@redhat.com> ]
2830
2831         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
2832         hook.
2833
2834         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
2835         signal as a hook for extending the default popup menu
2836
2837         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
2838         use radio menu items for the input method menuitems
2839
2840         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
2841         inserted unicode from Ctrl-Shift-hex input method
2842
2843         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
2844         validatation here, already done at GtkTextBuffer level.
2845
2846         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
2847         popup_menu run action signal and Shift+F10 and Menu keybindings.
2848
2849         * gtk/gtkentry.c: implement a default handler for popup_menu
2850
2851         * gtk/gtktextview.c: implement a default handler for popup_menu
2852
2853         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
2854         from a key event
2855         
2856         * gtk/gtklabel.c: remove "trailer" cruft
2857
2858 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
2859
2860         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
2861         handle reordering of trees.  Seems to mostly work w/ the exception
2862         of the parity flag.
2863
2864         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
2865         signal.
2866
2867 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
2868
2869         * gtk/gtkwidget.h: c++ fixes.
2870
2871 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
2872
2873         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
2874         memory.
2875
2876 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
2877
2878         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
2879         Nils Barth fixing event return values. (#51041)
2880
2881         * gtk/gtkwidget.c: Fix some return values for default
2882         functions.
2883
2884         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
2885         return values for trough_keys functions.
2886
2887         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
2888         value for add_accelerator (shoudl have been a void
2889         return.)
2890
2891         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
2892         Fix return type of EVENT.
2893
2894         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
2895         signal return a boolean.
2896
2897 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
2898
2899         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
2900         reordered signal.
2901
2902         * tests/testtreesort.c (main): fix spelling.
2903
2904 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
2905
2906         * gtk/gtkliststore.c: More work on implementing sortable
2907         interface.
2908
2909 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
2910
2911         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
2912         reference the widgets in the resulting list. (#11821)
2913         This makes this consistent with gtk_container_children.
2914
2915         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
2916         uses of gtk_window_list_toplevels.
2917
2918 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
2919
2920         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
2921         a virtual function to set whether the IM context should use 
2922         the preedit string. (#51922)
2923         
2924 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
2925
2926         * gdk/gdkpango.h: Remove stale FIXME comment.
2927
2928 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
2929
2930         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
2931         Fixed bug that returned NULL if a filename was selected.
2932
2933 2001-03-24  Havoc Pennington  <hp@pobox.com>
2934
2935         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
2936         to contain the word "theme"
2937
2938 2001-03-24  Havoc Pennington  <hp@pobox.com>
2939
2940         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
2941         slower but finer-grained
2942         (gtk_hsv_focus): get initial focus on the ring or triangle 
2943         according to tab direction
2944
2945         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
2946
2947 2001-03-23  Havoc Pennington  <hp@pobox.com>
2948
2949         * gtk/gtkhsv.c: make this somewhat key-navigable
2950
2951         * gtk/gtkfontsel.c: mnemonics
2952
2953         * gtk/gtkgamma.c: mnemonics
2954
2955         * gtk/gtkcolorsel.c: add mnemonics to labels
2956
2957 2001-03-22  Havoc Pennington  <hp@pobox.com>
2958
2959         Applied big patch from Seth Lytle to fix event handler return
2960         values, slightly modified.
2961
2962         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
2963         handled.
2964         (gtk_calendar_key_press): return TRUE for GDK_space triggers
2965         select_day
2966
2967         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
2968         (gtk_clist_button_release): return TRUE if handled
2969
2970         * gtk/gtkcolorsel.c (mouse_release):
2971         (palette_activate): 
2972         (palette_press): 
2973         (palette_new): 
2974         (mouse_press): 
2975         (get_screen_color): 
2976         fixed return type (void to gboolean), return TRUE,
2977         added GTK_SIGNAL_FUNC cast
2978
2979         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
2980         (void to gboolean), and return TRUE
2981         (gtk_combo_button_release): changed return value to TRUE after
2982         gtk_grab_add on combo->popwin
2983
2984         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
2985         collapse or expand
2986
2987         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
2988         button/motion
2989
2990         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
2991         press/release and motion that trigger act
2992
2993         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
2994
2995         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
2996         for GDK_Return
2997         
2998         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
2999         (gtk_list_button_release): return TRUE if selection
3000
3001         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
3002         press
3003
3004         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
3005         (gtk_menu_shell_button_release): chain parent_menu_shell retval
3006
3007         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
3008         nothing triggered
3009         (gtk_notebook_button_release): return TRUE if we do anything
3010
3011         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
3012         (gtk_spin_button_button_release): return TRUE or chained retval
3013
3014         * gtk/gtktext.c (gtk_text_button_press): 
3015         (gtk_text_button_release): return TRUE
3016         (gtk_text_key_press): remove redundant retval code
3017         
3018         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
3019         and sensitive
3020         (gtk_tree_item_subtree_button_click): changed type to gint, and return
3021         TRUE if sensitive
3022
3023         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
3024         return TRUE
3025
3026 2001-03-23  Havoc Pennington  <hp@redhat.com>
3027
3028         * gtk/testgtk.c: fix warnings
3029
3030         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
3031
3032         * gtk/gtktextview.c: fix warnings
3033
3034         * gtk/gtktext.c (find_cursor_at_line): fix warning
3035
3036         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
3037
3038         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
3039         of this function
3040
3041         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
3042         fix warning
3043
3044         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
3045
3046         * gtk/gtkfontsel.c: fix warning
3047
3048         * gtk/gtkcolorsel.c: fix warnings
3049
3050 2001-03-23  Havoc Pennington  <hp@redhat.com>
3051
3052         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
3053
3054         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
3055
3056         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
3057         and deprecated gtk_check_menu_item_set_show_toggle().
3058         
3059         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
3060
3061         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
3062
3063         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
3064
3065 2001-03-23  Havoc Pennington  <hp@redhat.com>
3066
3067         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
3068         some docs
3069
3070 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
3071
3072         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
3073         this.
3074
3075         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
3076         set_cell to set_value
3077
3078         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
3079         set_cell to set_value
3080
3081 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
3082
3083         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3084         fix braino.
3085         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
3086         support.
3087
3088         * gtk/gtktreeview.c: Addition of initial sortable support.
3089
3090         * gtk/gtktreestore.c: Addition of initial sortable support.
3091
3092         * gtk/gtkliststore.c: Addition of initial sortable support.
3093
3094         * gtk/gtkmarshal.list: yet another marshaller.
3095
3096         * gtk/gtktreedatallist.[ch]: shared code between the store models
3097         for handling sorting headers.
3098
3099 2001-03-22  Havoc Pennington  <hp@redhat.com>
3100
3101         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
3102         (gtk_container_unset_focus_chain): Add ability to override the 
3103         focus chain for a container explicitly
3104
3105 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
3106
3107         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
3108         added PROP_MNEMONIC_WIDGET.
3109
3110         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
3111         (gtk_window_remove_mnemonic): 
3112         (gtk_window_add_mnemonic): fixed assertions.
3113         (gtk_window_activate_mnemonic): constrain modifier checks to those
3114         permitted by gtk_accelerator_get_default_mod_mask().
3115         got rid of gtk_window_get_default_accel_group().
3116
3117         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
3118         activatable widgets either by focussing or a warning.
3119         added a signal accumulator to ::activate_mnemonic which stops the
3120         emission once a handler returned TRUE.
3121
3122 2001-03-22  Havoc Pennington  <hp@pobox.com>
3123
3124         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
3125         the stock item label
3126
3127         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
3128
3129         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
3130
3131         * demos/gtk-demo/*.c: Add mnemonics all over the place
3132
3133         * gtk/gtklabel.h: mark parse_uline deprecated
3134
3135 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3136
3137         * gtk/gtkitemfactory.[ch]:
3138         Add support for stock and normal imagemenuitems.
3139         
3140         * gtk/testgtk.c:
3141         Add some tests for mnemonics, stock toolbars, stock
3142         and image menuitems in itemfactory and gdk_window_scroll.
3143
3144 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3145
3146         * gtk/gtkbutton.[ch]:
3147         * gtk/gtkdialog.c:
3148         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
3149         removed accel_group argument. Renamed gtk_button_new_accel() to
3150         gtk_button_new_with_mnemonic() and removed accel_group argument.
3151
3152         * gtk/gtkcheckbutton.[ch]:
3153         New function gtk_check_button_new_with_mnemonic().
3154
3155         * gtk/gtkentry.c:
3156         Override activate_mnemonic and just grab focus.
3157
3158         * gtk/gtkitemfactory.c:
3159         Don't add menu uline accel group, instead use mnemonics support.
3160
3161         * gtk/gtklabel.[ch]:
3162         New support for mnemonics.
3163
3164         * gtk/gtkmarshal.list:
3165         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
3166
3167         * gtk/gtkmenu.[c]:
3168         * gtkmenushell.c:
3169         Use mnemonics instead of accel groups for uline
3170         support in menu items.
3171         Removed gtk_menu_get_uline_accel_group() and
3172         gtk_menu_ensure_uline_accel_group().
3173
3174         * gtk/gtkmenuitem.c:
3175         Override activate_mnemonic to handle switching between
3176         menu items if there are collisions.
3177         
3178         * gtk/gtknotebook.c:
3179         Connect to activate_mnemonic on the tab_label, so that
3180         activating it switches to that notebook page.
3181
3182         * gtk/gtkwidget.[ch]:
3183         Add activate_mnemonic signal. New function
3184         gtk_widget_activate_mnemonic() to emit it.
3185         Default implementation does activate/grab_focus.
3186
3187         * gtk/gtkwindow.[ch]:
3188         Add support for mnemonics in windows.
3189         New functions:
3190         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
3191         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
3192
3193         * gtk/testgtk.c:
3194         Update to function name changes.
3195         
3196 2001-03-21  Alexander Larsson  <alexl@redhat.com>
3197
3198         * gtk/gtkimagemenuitem.[c]:
3199         Add gtk_image_menu_item_new_from_stock()
3200
3201 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
3202
3203         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3204         Fix buglet in meeting.
3205
3206 2001-03-19  Havoc Pennington  <hp@redhat.com>
3207
3208         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
3209         add a bunch of accessor functions. This is because we have
3210         reasonable expectations of extending what fields it contains in
3211         the future.
3212
3213         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
3214         changes
3215
3216         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
3217         GtkIconSource   
3218
3219 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
3220
3221         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
3222         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
3223
3224         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
3225           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
3226           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
3227           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
3228         Change float to double everywhere with the exception of 0<->1.0 alignment
3229         and GtkCurve.
3230
3231 2001-03-19  Tor Lillqvist  <tml@iki.fi>
3232
3233         * gdk/win32/gdkdrawable-win32.c
3234         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
3235         output.
3236
3237         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
3238         gdkwin32.h.
3239
3240 2001-03-18  Tor Lillqvist  <tml@iki.fi>
3241
3242         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
3243         print_event_state, print_event): Use preprocessor macro to make
3244         code more compact. Print also GDK_WINDOW_STATE events.
3245         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
3246         
3247         * gtk/gtk.def
3248         * gtk/makefile.mingw.in: Update.
3249
3250         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
3251         to catch also Cygwin.
3252
3253 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
3254
3255         * gtk/gtkspinbutton.[hc]: added rc-style argument
3256         GtkSpinButton::shadow_type.
3257         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
3258         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
3259         rc-style settings.
3260
3261         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
3262
3263         * gtk/gtkwidget.c: quark cleanups.
3264
3265         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
3266         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
3267         to create_rc_style() (we don't do cloning in standard OO sense).
3268         added per rc style properties.
3269         
3270         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
3271         property values and for caching those. some cleanups.
3272         
3273         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
3274         
3275         * gtk/gtksettings.[hc]: new file for global rc-file properties
3276         (at least currently, should get extended to support X properties
3277         and other communication mechanisms).
3278         
3279         * gtk/gtkwidget.[hc]: added style property support:
3280         (gtk_widget_class_install_style_property_parser): install style
3281         property pspec with parser function for rc-file values other
3282         than LONG, DOUBLE or STRING.
3283         (gtk_widget_class_install_style_property): same as above without
3284         parser (parsers are going to be needed quite infrequently).
3285         (gtk_widget_style_get_property): retrive style property value.
3286         (gtk_widget_style_get_valist): same as above with varargs support,
3287         has NOCOPY semantics.
3288         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
3289
3290 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
3291
3292         * demos/gtk-demo/main.c (row_activated_cb): modified to use
3293         "row_activated" signal.
3294
3295         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
3296         stupidity.  Lets actually pass in the row with this signal...
3297
3298 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
3299
3300         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
3301
3302         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
3303
3304         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
3305         everything into the ::destroy function, and freed a lot more.
3306
3307 2001-03-16  Havoc Pennington  <hp@redhat.com>
3308
3309         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
3310         instead of gint16, to avoid overflow issues, since sizes > 16-bit
3311         are now allowed.
3312
3313 2001-03-16  Havoc Pennington  <hp@redhat.com>
3314
3315         * Applied patch from Nils Barth (bug # 51041) to 
3316         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
3317         in various places.
3318
3319 2001-03-15  Havoc Pennington  <hp@redhat.com>
3320         
3321         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
3322         for properties to set on the tag.
3323
3324         * gtk/testtext.c: fixups to reflect create_tag change
3325         
3326         * gtk/gtktexttag.c (gtk_text_tag_set_property):
3327         background/foreground stipple are objects, not boxed.
3328
3329         * demos/gtk-demo/textview.c: intellihancing
3330
3331 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
3332
3333         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
3334         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
3335
3336 2001-03-16  Alexander Larsson  <alexl@redhat.com>
3337
3338         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
3339         Fix sign error with queued region translations.
3340
3341 2001-03-15  HideToshi Tajima  <tajima@happy>
3342
3343         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
3344         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
3345         * gtk/gtkentry.c (update_im_cursor_location): 
3346         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
3347         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
3348         set_cursor_pos to set_cursor_location in GtkInputContext class
3349
3350 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
3351
3352         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
3353         the location of the cell relative to its area.
3354         * gtk/gtkcell*: modified for above change
3355         * gtk/gtktreeview.c: modified for above change.
3356
3357 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
3358
3359         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
3360          (gtk_tree_view_finalize): actually unref the model.  Thanks to
3361         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
3362
3363 2001-03-14  Havoc Pennington  <hp@redhat.com>
3364
3365         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
3366         
3367         * gtk/gtk.h: remove gtkdata.h
3368
3369         * gtk/Makefile.am: remove gtkdata
3370         
3371         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
3372         not "disconnect" on the adjustments.
3373         
3374         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
3375         GtkData
3376
3377         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
3378         not GtkData
3379
3380         * configure.in: handle case where X render exists, but Pango lacks
3381         Xft support.
3382
3383 2001-03-15 Alexander Larsson  <alexl@redhat.com>
3384
3385         * gtk/gtktoolbar.[ch]:
3386         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
3387         to add stock items to toolbars.
3388
3389         * gtk/Makefile.am:
3390         Remove ../gdk/gdkim.h from gdk_headers.
3391
3392 2001-03-15  Sven Neumann  <sven@gimp.org>
3393
3394         * gdk/gdkim.h: removed
3395         
3396         * gdk/gdkprivate.h
3397         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
3398
3399 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
3400
3401         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
3402         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
3403         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
3404         set_cursor_pos() virtual method
3405
3406         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
3407         (gtk_im_context_xim_set_cursor_pos): add implementation for
3408         set_cursor_pos() method
3409
3410         * gtk/gtkentry.c (recompute_idle_func): set current cursor
3411         position to input methods
3412
3413 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
3414
3415         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
3416         code a lot.
3417
3418         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
3419         g_mem_chunk.
3420         (_gtk_tree_data_list_alloc): use g_mem_chunk.
3421         (_gtk_tree_data_list_node_to_value): Fix to switch on
3422         G_TYPE_FUNDAMENTAL.
3423         (_gtk_tree_data_list_value_to_node): Fix to switch on
3424         G_TYPE_FUNDAMENTAL.
3425         (_gtk_tree_data_list_node_copy): Fix to switch on
3426         G_TYPE_FUNDAMENTAL.
3427
3428 2001-03-12  Havoc Pennington  <hp@redhat.com>
3429
3430         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
3431         to convert to new property API. Also, change default_width and
3432         default_height get_property to return 0 as the flag value for
3433         "unset"; -1 is not a valid value for these fields.
3434
3435 2001-03-12  Havoc Pennington  <hp@redhat.com>
3436
3437         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
3438         enum with registration for icon sizes, instead of strings.
3439
3440         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
3441         gtkwidget.c: Fix to reflect GtkIconSize
3442         
3443 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3444
3445         Make GtkFB compile and link.
3446         
3447         * gdk/linux-fb/gdkdrawable-fb2.c:
3448         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3449         
3450         * gdk/linux-fb/gdkwindow-fb.c:
3451         window->mapped to GDK_WINDOW_IS_MAPPED(). 
3452         Added gdk_window_shape_combine_region.
3453         Added assorted placeholders for unimplemented new GdkWindow API calls.
3454
3455 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3456
3457         * gtk/gtkfilesel.c:
3458         Add more test when converting filenames from/to utf-8.
3459         Don't allow entering text in the filename entry which isn't allowed in
3460         a filename. Just beep instead.
3461
3462 2001-03-12  Alexander Larsson  <alexl@redhat.com>
3463
3464         * gtk/gtkclist.c:
3465         Scroll using gdk_window_scroll(). Don't wait for exposes.
3466         Move the column headers in an order that makes them flash less.
3467
3468 2001-03-10  Hans Breuer  <hans@breuer.org>
3469
3470         * gdk/gdk.def : updated
3471
3472         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
3473         to offseting the clip_mask at the right place
3474
3475         * gdk/win32/gdkwindow-win32.c : don't create background brushes
3476         for all the gdkClasses, especially not for the input_only case.
3477         Otherwise flickering wont be avoidable, because we don't get
3478         WM_ERASEBKGND message for these windows.
3479
3480         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
3481         and fixed massive redraw problems apparently triggered by Alexanders 
3482         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
3483         but it seems to work quite well :-)
3484
3485         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
3486         prototype
3487
3488 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
3489
3490         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
3491         (gtk_list_store_set_cell): Fix a stupid typo.
3492
3493 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
3494
3495         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
3496         select_all not work if you're in SINGLE mode (it doesn't make that
3497         much sense, anyway.)
3498
3499         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3500         handle types more sanely.
3501         (_gtk_tree_data_list_value_to_node): handle types more sanely.
3502         (_gtk_tree_data_list_node_copy): handle types more sanely.
3503
3504         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
3505         GValue better. Converts the type as well.
3506
3507         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
3508         GValue better. Converts the type as well.
3509
3510 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
3511
3512         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
3513         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
3514         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
3515         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
3516
3517         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
3518         gdk_im/gdk_ic.
3519
3520 2001-03-09  Hans Breuer  <hans@breuer.org>
3521
3522         * gdk/gdk.def : updated
3523
3524         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
3525         for their palette
3526
3527         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
3528         removing
3529
3530         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
3531         removing and implemented Havoc's GdkWindow state functions; 
3532         stick/unstick only as no-op, cause I don't know how to emulate 
3533         on win32 ...
3534
3535         * gtk/gtk.def : updated
3536
3537         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
3538
3539         * gtk/gtktypeutils.c : #include <string.h>
3540
3541         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
3542
3543 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
3544
3545         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
3546         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
3547         not a boxed.
3548
3549 2001-03-09  Alexander Larsson  <alexl@redhat.com>
3550
3551         * docs/Changes-2.0.txt:
3552         Document expose event->region change and that gtk_widget_event
3553         doesn't allow passing expose events.
3554
3555         * gdk/gdkevents.h:
3556         Add region to expose event.
3557         
3558         * gdk/gdkevents.c:
3559         Handle event->region in gdk_event_copy() and gdk_event_free().
3560
3561         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
3562         Generate expose_event->region when creating expose events.
3563
3564         * gdk/x11/gdkevents-x11.c:
3565         Generate expose events with regions when translating X events.
3566
3567         * gtk/gtkcontainer.[ch]:
3568         Default expose handler that propagates expose events to NO_WINDOW
3569         children. New function gtk_container_propagate_expose()
3570
3571         * gtk/gtkwidget.[ch]:
3572         Moved gtk_widget_event implementation to gtk_widget_event_internal.
3573         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
3574         expose events. New function gtk_widget_send_expose() to send expose
3575         events. New function gtk_widget_region_intersect() to calculate
3576         window/region intersections.
3577         
3578         * gtk/gtkmain.c (gtk_main_do_event):
3579         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
3580         Use gtk_widget_send_expose() to send expose events.
3581         
3582         * gtk/gtkbin.c:
3583         * gtk/gtkbox.c:
3584         * gtk/gtkfixed.c:
3585         * gtk/gtkimagemenuitem.c:
3586         * gtk/gtklist.c:
3587         * gtk/gtkpacker.c:
3588         * gtk/gtktable.c:
3589         * gtk/gtktree.c:
3590         Remove expose handler, using the default container implementation
3591         instead.
3592         
3593         * gtk/gtkbutton.c:
3594         * gtk/gtkcheckbutton.c:
3595         * gtk/gtkeventbox.c:
3596         * gtk/gtkfixed.c:
3597         * gtk/gtkhandlebox.c:
3598         * gtk/gtklayout.c:
3599         * gtk/gtklistitem.c:
3600         * gtk/gtkmenu.c:
3601         * gtk/gtkmenubar.c:
3602         * gtk/gtkmenuitem.c:
3603         * gtk/gtknotebook.c:
3604         * gtk/gtkoptionmenu.c:
3605         * gtk/gtkpaned.c:
3606         * gtk/gtkscrolledwindow.c:
3607         * gtk/gtktogglebutton.c:
3608         * gtk/gtktoolbar.c:
3609         * gtk/gtktreeitem.c:
3610         * gtk/gtkviewport.c:
3611         Chain expose handler to parent class handler. Use
3612         gtk_container_propagate_expose() to propagate exposes.
3613
3614         * gtk/gtkclist.c (check_exposures):
3615         * gtk/gtktext.c (process_exposes):
3616         Use gtk_widget_send_expose instead of gtk_widget_event.
3617
3618 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
3619
3620         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
3621
3622 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
3623
3624         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
3625         unref the nodes.   Fixes bug #50058.
3626
3627         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
3628         "::ref_iter" to "::ref_node".
3629         (gtk_tree_model_unref_node): change "::unref_iter" to
3630         "::unref_node". Fixes bug #50064.
3631
3632 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
3633
3634         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
3635         support for invisible cells.
3636          (gtk_tree_view_bin_expose): ditto
3637
3638 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
3639
3640         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
3641         on gobjects.
3642
3643         * tests/testtreefocus.c (main): New test file.
3644
3645         * tests/testtreeview.c: update to latest glib changes.
3646
3647         * tests/testtreecolumns.c: update to latest glib changes.
3648
3649 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
3650
3651         * gtk/testgtk.c: re-enabled event watcher emission hooks.
3652
3653 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
3654
3655         * *.c: added accumulator data argument to g_signal_newc()
3656         functions.
3657
3658         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
3659         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
3660         * gtk/treestoretest.c (make_window):
3661         s/g_signal_connect/g_signal_connectc/.
3662
3663         * gtk/gtktextbuffer.c: completed signal arg fixups,
3664         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
3665
3666 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
3667
3668         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
3669         G_CONST_RETURN.
3670
3671         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
3672         ::hierarchy-changed signal when a widget changes
3673         from anchored to unanchored or vice versa.
3674         (anchored means 
3675          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
3676         Use a private flag to keep track of this efficiently.
3677
3678 2001-03-07  Havoc Pennington  <hp@redhat.com>
3679
3680         * gtk/testgtk.c (create_spins): uglify so that size request gets
3681         tested.
3682
3683         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
3684         request on values for upper/lower, completes #6152
3685
3686 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
3687
3688         * Makefile.am: Remove gtk-config-2.0 again.
3689         (Grrrr, pkg-config. And stops make loops.)
3690
3691 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
3692
3693         * gtk/gtksignal.[hc]: removed old emission hook API.
3694         
3695         * docs/Changes-2.0.txt: fixed sections.
3696         
3697         * gtk/gtktextbuffer.c: signal arg fixups.
3698
3699 2001-03-07  Havoc Pennington  <hp@redhat.com>
3700
3701         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
3702
3703         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
3704         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
3705         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
3706         validation and the redraw which is higher priority than the
3707         validation.
3708
3709 2001-03-07  Havoc Pennington  <hp@redhat.com>
3710
3711         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
3712         (gtk_entry_set_property): remove trailer
3713
3714         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
3715         (gtk_entry_get_width_chars): new functions, to set size request to 
3716         a given number of characters
3717
3718         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
3719
3720         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
3721         (gtk_dialog_get_has_separator): new function
3722         (run_delete_handler): fix to not emit "response" signal
3723         because we already did in the delete event handler installed
3724         at dialog creation time.
3725         
3726         * gtk/gtkdialog.h: add a has_separator property,
3727         add GTK_DIALOG_NO_SEPARATOR flag
3728
3729 2001-03-07  Havoc Pennington  <hp@redhat.com>
3730
3731         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
3732         off decorations for a window.
3733
3734         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
3735         changes
3736
3737         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
3738         to get location of PangoLayout inside the label, closes #51198
3739
3740         * gtk/testgtk.c (create_bbox): fix up button box usage
3741
3742         * gtk/testcalendar.c (create_calendar): fix up button box usage
3743
3744         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
3745
3746         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
3747
3748         * gtk/gtkhbbox.h: deprecations
3749
3750         * gtk/gtkvbbox.h: deprecations
3751
3752         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
3753         emulate deprecated gtk_button_box_get_spacing
3754
3755         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
3756         the "set global default" functions
3757         (struct _GtkButtonBox): remove "spacing" field, use the one from 
3758         GtkBox base class
3759
3760         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
3761
3762         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
3763         render the icon, return the missing image icon.
3764
3765         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
3766         image icon if the load fails.   
3767
3768         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
3769         when no image is found; should be the Netscape "missing image"
3770         icon eventually but for now is a random image
3771
3772         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
3773         role for the session manager
3774
3775         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
3776
3777         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
3778         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
3779
3780         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
3781
3782 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
3783
3784         * gtk/*.c: marshaller fixes.
3785         
3786         * gtk/gtkmarshal.list: extreme cleanup.
3787
3788         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
3789         param spec for now.
3790
3791         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
3792         where appliable.
3793
3794         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
3795         special cased autogenerated boxed types from gtktypebuiltins_ids.c
3796         which are not reference counted:
3797         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
3798         PangoFontDescription, GtkTreeIter and GtkTreePath.
3799
3800 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
3801
3802         * gtk/gtktreeselection.h: 
3803         * gtk/gtktreemodel.c:
3804         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
3805         file should be included directly, and gobject/gmarshal.h
3806         as well as gtk/gtkmarshal.h even can't be included directly.
3807
3808         * Makefile.am: grr, install gtk-config-2.0.
3809
3810         * gtk/testgtk.c:
3811         * gtk/simple.c:
3812         * gtk/gtkmenu.c:
3813         * gtk/gtkitemfactory.c: use g_object_connect() instead of
3814         passing "*signal*::*" args to gtk_widget_set().
3815         
3816         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
3817         
3818         * gtk/*.c: removed trailer arg from property setters and getters.
3819         macro fixups.
3820
3821 2001-03-07  Alexander Larsson  <alexl@redhat.com>
3822
3823         * gtk/gtklabel.c (set_markup): Removed warning
3824
3825 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
3826
3827         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
3828         field to allow you to hide cell renderers.
3829
3830         * gtk/gtkcellrenderer.c: Add support for invisible cells.
3831
3832         * gtk/gtktreeview.c: Add support for invisible cells.
3833
3834 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
3835
3836         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
3837         Add "clicked" signal back to columns.
3838
3839         * ChangeLog: remove conflict markers.
3840
3841 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
3842
3843         * gtk/gtkbutton.c: Add animation of activation by, on 
3844         activate, pressing the button, and adding a timeout that 
3845         releases the button after 250ms or on key release and
3846         emits ::clicked. (#51501)
3847
3848         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
3849         action area, we connect to ::clicked instead of ::activate
3850         so the dialog stays up through the animation.
3851
3852 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
3853
3854         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
3855         check the ignore_enter flag for the menu shell that
3856         the item is actually a child of, not for attached
3857         submenus. (#51536)
3858
3859 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3860
3861         * gtk/gtkmain.c (gtk_propagate_event): Only do special
3862         special key-press grab handling for widgets within
3863         GtkWindows. Otherwise, fall through to normal case.
3864
3865         This prevents key events being sent twice to GtkInvisible
3866         widgets, which can cause all sorts of mischief.
3867
3868 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
3869
3870         * gtk/gtkmain.c (gtk_propagate_event): When a grab
3871         widget is in effect, give the grab widget a first
3872         crack at KEY_PRESS/RELEASE events. (#424)
3873
3874 2001-03-06  James Henstridge  <james@daa.com.au>
3875
3876         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
3877         offset for the window_state_event to point at window_state_event
3878         rather than no_expose_event.
3879
3880 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
3881
3882         * gtk/gtkimmodule.h: fix busted /* comment */
3883
3884 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
3885
3886         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
3887         object properties.
3888
3889 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
3890
3891         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
3892         add object properties.
3893
3894         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
3895         to add object properties.
3896
3897         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
3898         object properties.
3899
3900         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
3901         add object properties.
3902
3903         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
3904         object properties.
3905
3906 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
3907
3908         * gtk/gtktreemodel.c: renamed "child_toggled" to
3909         "has_child_toggled".
3910
3911         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
3912         handle new signal name.
3913
3914         * gtk/gtktreestore.c: Updated to handle new signal name.
3915         * gtk/gtklisttore.c: Updated to handle new signal name.
3916         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
3917
3918 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3919
3920         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
3921         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
3922
3923 2001-03-05  Michael Natterer  <mitch@gimp.org>
3924
3925         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
3926         pixbuf-engine coincidentially also failed to make one of it's
3927         parent_class pointers static, causing overwriting of GtkLabel's
3928         parent_class pointer in pixbuf_style_class_init().
3929         (Will commit the fix to the pixbuf-engine too).
3930
3931 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3932
3933         * gdk/gdkwindow.h:
3934         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
3935         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
3936         gdk_window_set_icon_list for net wmspec functionality.
3937
3938         * gdk/x11/gdkwindow-x11.c:
3939         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
3940         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
3941         gdk_window_set_icon_list.
3942         Added gdk_wmspec_change_state helper function and used it in the code.
3943         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
3944
3945         * gtk/gtkdialog.c (gtk_dialog_init):
3946         Set GDK_WINDOW_TYPE_HINT_DIALOG.
3947
3948         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
3949         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
3950
3951         * gtk/gtkwindow.c:
3952         new function gtk_window_set_type_hint.
3953         On realize, set type hint and modal hint.
3954
3955         * gtk/gtkwindow.h:
3956         Added type_hint field and gtk_window_set_type_hint.
3957
3958 2001-03-05  Alexander Larsson  <alexl@redhat.com>
3959
3960         * gtk/gtklabel.[ch]:
3961         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
3962         New function gtk_label_get_accel_keyval () to get the underline accelerator
3963         of the label. Setting the label pattern overrides other attributes.
3964
3965 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
3966
3967         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
3968         Added missing initializers to gtk_rc_style_init().
3969
3970 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
3971
3972         * gtk/gtktextview.c: fixed bug #51097 about setting 
3973         gtk_text_view_set_border_window_size() if the widget is 
3974         already realized.
3975
3976 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
3977
3978         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
3979
3980         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
3981         comment. Won't do to have duplicated doc comments between
3982         the platform subdirs.
3983
3984 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
3985
3986         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
3987           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
3988
3989         Detectable auto-repeat - make a repeating key generate
3990         press/press/press/release instead of press/release pairs.
3991
3992         If we have Xkb and XkbSetDectableAutoRepeat supports
3993         that, we do it that way. Otherwise, when we get
3994         a release event, we check ahead with XPending to see
3995         if the next key is a KeyPress with the same keycode
3996         and timestamp. (Not 100% reliable, but pretty close.)
3997           
3998 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
3999         
4000         * gtk/gtkmain.c (gtk_propagate_event): Only do special
4001         special key-press grab handling for widgets within
4002         GtkWindows. Otherwise, fall through to normal case.
4003  
4004         This prevents key events being sent twice to GtkInvisible
4005         widgets, which can cause all sorts of mischief.
4006  
4007 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
4008  
4009         * gtk/gtkmain.c (gtk_propagate_event): When a grab
4010         widget is in effect, give the grab widget a first
4011         crack at KEY_PRESS/RELEASE events. (#424)
4012  
4013 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
4014
4015         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
4016         to extend the selection. (Roughly based on patch
4017         from Jay Cox, #50939)
4018
4019         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
4020         to properly handle previous GDK_BUTTON_PRESS. 
4021         (Patch from Jay Cox, #50938)
4022
4023         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
4024         '\0' back along with the deleted text. (#51148)
4025
4026 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
4027
4028         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
4029         the group when extracting it from the X keyboard event.
4030
4031         * modules/input/Makefile.am modules/input/imipa.c: 
4032         Simple module for entering IPA. (Do we need a 
4033         gtk-stupid-input-tricks CVS module?)
4034
4035 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
4036
4037         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
4038         const.
4039
4040         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
4041
4042         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
4043         is no focus widget for the dialog currently, grab the focus as well
4044         as the default.
4045
4046         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
4047         the action area's children to iterate through, not the
4048         dialog's children.
4049
4050 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
4051
4052         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
4053         Add plug-socket tests. (Won't work worth a darn until I commit
4054         the rest of the plug-socket changes, but no reason these
4055         can't go into CVS now.)
4056
4057 2001-03-02  Havoc Pennington  <hp@redhat.com>
4058
4059         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
4060         _gdk_region_get_xrectangles()
4061
4062         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
4063
4064         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
4065
4066         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
4067         function, contributed by Ron Steinke    
4068
4069         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
4070         gdk_net_wm_supports
4071
4072         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
4073         New function, contributed by Ron Steinke
4074
4075         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
4076         used to line up the text in the entry when using the entry for
4077         editable sheet cell hacks
4078
4079         * gtk/testgtk.c (create_entry): test the activate_default setting
4080         on GtkEntry
4081
4082         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
4083         cause the entry to activate the default button for a dialog when 
4084         activated
4085         (gtk_entry_get_activates_default): new function
4086
4087 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
4088
4089         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
4090         Hwang to move call to sync_selection() up a few lines
4091         to before the row list is modified, to fix crash when
4092         removing rows in the undo_selection list.
4093
4094         (Test case provided by Daniel Elstner:
4095
4096         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
4097
4098 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
4099
4100         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
4101         of tree->root_tree in parent_set rather than _map(), 
4102         fixing #50892 in a bit better manner.
4103
4104 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
4105
4106         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
4107
4108 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
4109
4110         * gtk/gtkstyle.c : Remove duplicate fwd decl for
4111         gtk_default_draw_shadow.
4112
4113 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
4114
4115         * gdk/gdkimage.c (gdk_image_new): Remove excess 
4116         warning, make warnings more verbose, treat a error
4117         in shmat as permanent, and don't try again.
4118         (#51163, Ed Randall.)
4119
4120 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
4121
4122         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
4123         delay for the first click before starting to scroll.
4124         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
4125
4126         * gtk/gtktext.c: GtkText should have I-beam cursor. 
4127         (based on gtk-enf-990513-1.patch, Eric Fisher.)
4128
4129 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
4130
4131         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
4132         cleanup to remove some references to unused
4133         ->xoffset, ->yoffset.
4134
4135 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
4136
4137         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
4138         mask. (#51039, fix from Martin Maierhofer)
4139
4140 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
4141
4142         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
4143         for unshifted + and shifted = for non-us keyboards.
4144         Make <Control>+ and <Control>- work as well as 
4145         <Control>KP_Plus, <Control>KP_Minus for recursive
4146         open/close.  (#2682, René Seindal)
4147
4148 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
4149
4150         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
4151         the active menu item before deactivating the menu,
4152         so gtk_menu_popdown doesn't change the history. (#50964)
4153         
4154 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
4155
4156         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
4157         draw lines with text_gc rather than black_gc.
4158         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
4159
4160 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
4161
4162         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
4163         Move handling of buttons fully in gtktreeviewcolumn.  This code is
4164         less interrelated then it was, but it still requires the
4165         GtkTreeView to map it.
4166
4167         * test/testtreecolumn.c: Now I can add a column to one view,
4168         remove it, add it to the another view, remove it, then re-add it
4169         to the first.  Nifty.
4170
4171 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
4172
4173         * docs/tutorial/gtk-tut.sgml: Minor corrections
4174
4175 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
4176
4177         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
4178         GtkRowReference.
4179
4180 2001-02-28  Havoc Pennington  <hp@redhat.com>
4181
4182         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
4183         draw_default
4184         (gtk_widget_draw_focus): remove this function; we could instead
4185         make it just gtk_widget_draw(), but in most cases I think the
4186         result would be broken user code, so think it's better to have
4187         that code not compile and get fixed
4188         (gtk_widget_draw_default): ditto
4189
4190         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
4191         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
4192         
4193         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
4194         widgets lose/get the default, instead of calling draw_default
4195         
4196         * docs/Changes-2.0.txt: note about all this
4197
4198         Then fixed every widget in GTK, I won't list all the filenames.
4199
4200 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
4201
4202         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
4203         _gtk_tree_row_reference_deleted.
4204         (inserted_callback): Proxy out to
4205         _gtk_tree_row_reference_inserted.
4206         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
4207         get around signal emission ordering problem.
4208
4209         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4210         fix to work with SINGLE 
4211         (_gtk_tree_selection_internal_select_node): Major sanitization on
4212         selections.  SINGLE now seems to work.
4213
4214         * tests/Makefile.am: add testtreecolumn.c:
4215
4216         * tests/testtreecolumn.c: New test.  Mostly points out selection
4217         bugs currently, but will test columns later.
4218
4219         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
4220         selection bug.  I hate touching this code -- it's scary.
4221
4222 2001-02-26  Havoc Pennington  <hp@redhat.com>
4223
4224         * gtk/testgtk.c: test the window state stuff
4225
4226         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
4227         window come to the user's attention as if it were just created
4228         (gtk_window_iconify): new function
4229         (gtk_window_deiconify): new function
4230         (gtk_window_stick): new function
4231         (gtk_window_unstick): new function
4232         (gtk_window_maximize): new function
4233         (gtk_window_unmaximize): new function
4234
4235         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
4236
4237         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
4238
4239         * gdk/x11/gdkevents-x11.c: create window state events when
4240         appropriate
4241         (gdk_wmspec_supported): new function
4242
4243         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
4244         iconification before showing the window
4245         (gdk_window_deiconify): new function
4246         (gdk_window_stick): new function
4247         (gdk_window_unstick): new function
4248         (gdk_window_maximize): new function
4249         (gdk_window_unmaximize): new function
4250
4251         * gdk/gdkwindow.c: store the window state in the window; 
4252         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
4253         window->mapped.
4254         (gdk_window_get_state): return the current window state
4255
4256         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
4257         (gdk_event_get_state): handle GDK_WINDOW_STATE
4258         (gdk_synthesize_window_state): function to create the window state
4259         events
4260
4261         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
4262         event, for changes to "window state" such as maximized, sticky, 
4263         etc.
4264         
4265         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
4266         focuses a window
4267
4268         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
4269         finds out if we support a given WM spec hint
4270
4271 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
4272
4273         * docs/faq/gtk-faq.sgml: New question re memory leaks.
4274
4275 2001-02-25  Hans Breuer  <hans@breuer.org>
4276
4277         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
4278         cause we want to loose those prototypes only in the latter case
4279
4280         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
4281         GdkPixmapImplWin32 because it itsn't derived from it. Use the
4282         impl member variable instead
4283
4284         * gtk/gtk.def : updated
4285
4286         * gtk/gtklist.c : 
4287         * gtk/gtkmenus.c : include <string.h> for memset ()
4288
4289         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
4290         for everthing built here, but for gtk-x.x.dll only. This solves
4291         problem of indifferent gtk type definitions
4292
4293 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
4294
4295         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
4296
4297 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
4298
4299         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
4300         column that is exposed.
4301
4302         (_gtk_tree_view_update_size): Changed name from set_size, and
4303         changed function to do more work, and not force people calling it
4304         to figure out the size.  Simplifies a lot of code elsewhere.
4305
4306 2001-02-23  Alexander Larsson  <alexl@redhat.com>
4307
4308         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
4309         return solid masks for xpms that have no transparent color.
4310         This makes the ..._create_from_xpm... API backwards
4311         compatible.
4312
4313 2001-02-23  Tor Lillqvist  <tml@iki.fi>
4314
4315         * README.win32: Update. Mention the gtk-1-3-win32-production
4316         branch.
4317
4318         * gdk/win32/bdfcursor.c: New file. A program that generates
4319         xcursors.h. Thanks to Stefan Ondrejicka.
4320
4321         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
4322         compact format.
4323
4324         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
4325
4326         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
4327         function, uses xcursors.h.
4328         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
4329         cursor from inline data instead of using LoadCursor() to generate
4330         it from a resource.
4331
4332         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
4333         event, must check the Windows message for mouse button state, as
4334         the GDK event state might not have been built if it is
4335         undelivered. Remove one goto.
4336
4337         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
4338         SetCursor() if the current cursor as returned by GetCursor() is
4339         the window's previous cursor. The ChildWindowFromPoint() test
4340         apparently didn't work correctly.
4341
4342         * gdk/win32/rc/*.cur: Remove.
4343
4344         * gdk/win32/rc/gdk.rc.in: Remove cursors.
4345
4346         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
4347
4348         * gtk/makefile.{mingw,msc}.in: Updates.
4349
4350 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
4351
4352         * gtk/gtktreemodel.h: add functions for signal emission.
4353
4354         * gtk/gtktreestore.c: move to use above functions instead of
4355         g_signal_emit.
4356
4357         * gtk/gtkliststore.c: ditto
4358
4359 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
4360
4361         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
4362         GObject instead of GtkObject.
4363
4364         * gtk/gtkliststore.c: ditto.
4365
4366         * gtk/gtktreemodelsort.c: ditto.
4367
4368         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
4369         GtkTreeModelIface, instead of in each model.
4370
4371 2001-02-21  Havoc Pennington  <hp@redhat.com>
4372
4373         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
4374         unbreak this function
4375
4376         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
4377         properties
4378
4379         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
4380         properties
4381
4382         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
4383         properties
4384
4385         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
4386         mean unset the max length
4387
4388 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
4389
4390         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
4391         Changed name to be set_cell_data_func to make it clear what
4392         the functino does.  Close bug #51069.
4393
4394 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
4395
4396         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
4397         have memory actually freed.  Keeps box running longer.
4398
4399 2001-02-21  Alexander Larsson  <alexl@redhat.com>
4400         
4401         * gtk/gtkseparatormenuitem.[ch]:
4402         Added new menu separator item. The drawing and size handling
4403         is still done in GtkMenuItem, but the API is a bit more sane.
4404         
4405         * gtk/Makefile.am:
4406         Add gtkseparatormenuitem.[ch].
4407
4408         * gtk/gtk.h:
4409         Add gtkseparatormenuitem.h.
4410         
4411         * gtk/gtkentry.c:
4412         * gtk/gtkmenufactory.c:
4413         * gtk/gtktextview.c:
4414         Use the new API for menu separators.
4415         
4416         * demos/gtk-demo/menus.c (create_menu):
4417         Add some GtkSeparatorMenuItem demo code.
4418
4419 2001-02-20  Havoc Pennington  <hp@redhat.com>
4420
4421         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
4422         Lee Mallabone
4423
4424         * gtk/gtkarrow.c: Convert to new property API, patch from 
4425         Lee Mallabone
4426
4427 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
4428
4429         * tests/testtreeview.c (toggled_callback): fix to reflect change
4430         in GtkTreeModelStore.
4431
4432 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
4433
4434         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
4435         function to create an icon set from a pixbuf.
4436
4437 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4438
4439         * gtk/gtkcellrenderertext.[ch]:
4440         Add a "markup" property.
4441
4442         * gtk/treestoretest.c:
4443         Use the markup property, remove some leftover stuff from
4444         GtkTreeModelMapping.
4445
4446 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4447
4448         * gtk/gtklabel.c (gtk_label_set_selectable):
4449         Queue a redraw if the selectable setting was changed.
4450
4451 2001-02-20  Alexander Larsson  <alexl@redhat.com>
4452
4453         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4454         Actually copy the whole gc, not just the public parts.
4455         
4456         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4457         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
4458         labels.
4459
4460 2001-02-19  Havoc Pennington  <hp@pobox.com>
4461
4462         * gdk/gdkwindow.c: docs
4463
4464         * gdk/gdkrgb.c: docs
4465
4466         * gdk/gdkregion-generic.c: docs
4467
4468         * gdk/gdkgc.c (gdk_gc_set_values): docs
4469
4470         * gdk/gdkdraw.c: docs
4471
4472         * gdk/gdkdrawable.h: deprecate drawable get/set data
4473
4474 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
4475
4476         * demos/gtk-demo/dialog.c: Add simple new demo.
4477
4478 2001-02-19  Havoc Pennington  <hp@redhat.com>
4479
4480         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
4481         insert_child_anchor signal, bug #50245
4482
4483         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
4484         from create_child_anchor, so the anchor is passed in
4485
4486         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
4487         (_gtk_widget_segment_new): have the child anchor object passed in, 
4488         instead of creating it.
4489
4490         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
4491         to gtk_text_buffer_get_modified
4492
4493 2001-02-19  Havoc Pennington  <hp@redhat.com>
4494
4495         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
4496         changed GLib without fixing GTK
4497
4498         * gtk/gtkrange.h: Rename all the stupid implementation detail 
4499         functions to have an underscore in front. Most of them should 
4500         probably just go away, but for starters don't export them.
4501         Bug #50482
4502
4503 2001-02-19  Havoc Pennington  <hp@redhat.com>
4504
4505         * gdk/gdkcolor.h: test was backward, so deprecated functions were
4506         excluded by default
4507
4508         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
4509         clean up the old code a bit
4510
4511         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
4512         inconsistent state
4513
4514         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
4515         draw inconsistent state
4516
4517         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
4518         (create_menu): add inconsistent test
4519
4520         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
4521         new function
4522         (gtk_check_menu_item_get_inconsistent): new function
4523         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
4524         state (using etched in for now)
4525
4526         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
4527         draw inconsistent state
4528
4529         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
4530         function, used when the user has selected a range of stuff in
4531         different states
4532         (gtk_toggle_button_get_inconsistent): accessor for that
4533         (gtk_toggle_button_paint): draw inconsistent state (etched in?
4534         don't know what else to do)
4535
4536 2001-02-19  Hans Breuer <hans@breuer.org>
4537
4538         * gtk/gtk.def : updated exported symbols
4539
4540         * gtk/makefile.msc.in : updated
4541
4542         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
4543         a colormap, when invoked from testgtk::entry. I'm not sure where
4544         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
4545         avoids immediate crashing ...
4546
4547         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
4548         any objections ?
4549
4550         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
4551         0 parameter. At least msvc doesn't like macros with var args. 
4552         I simply removed the extra 0, was it a feature or a typo ?
4553
4554         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
4555         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
4556         because the value assignment to the internal struct wasn't working.
4557         I'm not absolutely sure. The problem could have been resolved by
4558         changing the "func" declartion in the struct, but was the pointer
4559         to the function pointer intended ?
4560
4561         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
4562
4563         * gdk/gdk.def : updated exported symbols
4564
4565         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
4566         only use SetDIBitsToDevice if there is a palette at the drawable
4567         and the image is GDK_VISUAL_PSEUDO_COLOR
4568
4569         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
4570
4571         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
4572
4573         * gdk/*/makefile.msc : updated
4574
4575 2001-02-19  Havoc Pennington  <hp@redhat.com>
4576
4577         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
4578         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
4579
4580         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
4581         (gdk_key_repeat_restore): nuke
4582
4583         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
4584         (gdk_init_check): no atexit func
4585
4586         * gdk/gdkrgb.h: mark some stuff deprecated
4587
4588         * gdk/gdkcolor.h: mark some stuff deprecated
4589         
4590         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
4591
4592         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
4593
4594 2001-02-16  Havoc Pennington  <hp@redhat.com>
4595
4596         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
4597         scroll steps.
4598
4599         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
4600         steps, and add Ctrl-arrow shortcuts for paging visually as with
4601         HScale, since Page Up and Page Down move logically.
4602
4603         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
4604         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
4605         
4606         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
4607         steps
4608         (gtk_range_scroll): handle the visual steps
4609
4610         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
4611         scroll steps
4612
4613         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
4614         steps, not the logical ones.
4615
4616         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
4617         (scroll_vertical): handle up/down steps
4618
4619 2001-02-19 Alexander Larsson  <alexl@redhat.com>
4620
4621         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
4622         Copy data and free data with free().
4623
4624         * gdk-pixbuf/gdk-pixbuf.c:
4625         * gdk-pixbuf/io-jpeg.c:
4626         * gdk-pixbuf/io-png.c:
4627         Use g_try_malloc/g_free instead malloc/free.
4628         
4629         * gdk-pixbuf/test-gdk-pixbuf.c:
4630         Must... initialize... gobject...
4631         
4632         * gdk-pixbuf/pixops/timescale.c:
4633         * gtk/gtkcalendar.c:
4634         Use g_malloc instead of malloc.
4635         
4636 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
4637
4638         * gtk/testgtkrc:
4639         Comment out property assignments, these don't work yet.
4640
4641 2001-02-17  Havoc Pennington  <hp@pobox.com>
4642
4643         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
4644         bit.
4645
4646 2001-02-17  Havoc Pennington  <hp@pobox.com>
4647
4648         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
4649         shadowed variables that had broken size request in some cases,
4650         leading to bogus tooltips (#50996)
4651
4652 2001-02-06  Jon K Hellan  <hellan@acm.org>
4653
4654         Implement fast browsing of tooltips, bug #50619
4655         
4656         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
4657         and last_popdown
4658         
4659         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
4660         use_sticky_delay and last_popdown.
4661         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
4662         time of popdown.
4663         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
4664         is NULL.
4665         (gtk_tooltips_recently_shown): New static function.  Return true
4666         if < sticky_delay has elapsed since last popdown.
4667         (gtk_tooltips_event_handler): Display window after sticky_delay
4668         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
4669         since last popdown.
4670         
4671 2001-02-17  Havoc Pennington  <hp@pobox.com>
4672
4673         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
4674         instead of (). #6394
4675
4676         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
4677         G_CONST_RETURN, make it return by reference, #50473
4678         
4679 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
4680
4681         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
4682         generated ENTER_NOTIFY event with 0, otherwise not explicitely
4683         setup fields contain garbage (e.g. subwindow, breaking
4684         gdk_drawable_ref() upon event copy).
4685         (gtk_menu_stop_navigating_submenu_cb): same here.
4686
4687         * gtk/gtklist.c (gtk_list_vertical_timeout): 
4688         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
4689         * gtk/gtkclist.c (vertical_timeout): 
4690         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
4691         default-zero-intialization for unions to memset(,0,), as unions are
4692         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
4693         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
4694
4695         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
4696         g_closure_sink() warning.
4697
4698         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
4699         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
4700         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
4701         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
4702         
4703 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
4704
4705         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
4706         gtk_*_store_get, and moved to GtkTreeModel.
4707
4708         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
4709
4710         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
4711
4712         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
4713
4714         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
4715         set the func.
4716
4717         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4718         freeze/thaw notify between setting all the properties for a cell.
4719
4720         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
4721
4722 2001-02-15  Havoc Pennington  <hp@redhat.com>
4723
4724         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
4725         the X coordinates so they're with respect to the line, rather than 
4726         with respect to the layout.
4727
4728         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
4729         Mallabone
4730
4731         * gtk/testgtk.c (create_range_controls): add vscale tests, 
4732         and inverted test
4733
4734         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
4735         #50806
4736
4737         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
4738
4739         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
4740         gtk_text_iter_is_end
4741
4742         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
4743         rename gtk_text_buffer_get_end_iter
4744
4745         * gtk/testgtk.c (create_labels): Add test for selectable
4746
4747         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
4748         the selection stuff. This code is kind of broken since it doesn't 
4749         use the theme engine.
4750
4751         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
4752         fix infinite loop and y offset problem
4753         (gdk_draw_layout_line_with_colors): fix foreground color handling
4754
4755         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
4756         that makes the label selectable.
4757         
4758         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
4759         layout when the style is set, since fonts etc. could have changed.      
4760
4761 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
4762
4763         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
4764
4765         * gtk/gtktreemodelsimple.[ch]: removed.
4766
4767 2001-02-16  Alexander Larsson  <alexl@redhat.com>
4768
4769         * gtk/gtktreemodelmapping.[ch]:
4770         New files. Implement GtkTreeModelMapping.
4771         
4772         * gtk/Makefile.am:
4773         Add gtktreemodelmapping.[ch].
4774         
4775         * gtk/gtk.h:
4776         Add gtktreemodelmapping.h
4777
4778         * gtk/treestoretest.c:
4779         Test the GtkTreeModelMapping
4780
4781 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
4782
4783         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
4784         have a demo, we might as well pass in real values.  Thanks to
4785         clahey for pointing this out.
4786
4787 2001-02-14  Havoc Pennington  <hp@pobox.com>
4788
4789         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
4790         "static" to a private function
4791         (gtk_image_menu_item_class_init): remove destroy handler,
4792         add "image" object property
4793
4794 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
4795
4796         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
4797         Add a shortcut if the window and the current clip_region doesn't
4798         overlap. This is needed when there are a lot of windows in a
4799         window. The layout test in testgtk is a good test.
4800
4801         * gdk/linux-fb/gdkwindow-fb.c:
4802         Whitespace fix.
4803
4804 2001-02-13  Sven Neumann  <sven@convergence.de>
4805
4806         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
4807
4808 2001-02-13  Alexander Larsson  <alexl@redhat.com>
4809
4810         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
4811         Don't reference last_cursor if it is null. Fixes crash when rotating
4812         the screen before having moved the mouse.
4813
4814         * gdk/linux-fb/gdkcc-fb.c: Zapp!
4815
4816         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
4817
4818         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
4819         when using 90 or 270 degrees rotation.
4820
4821 2001-02-12  Havoc Pennington  <hp@pobox.com>
4822
4823         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
4824         it always set the foreground, even if we were only using
4825         a stipple.
4826         (gdk_draw_layout_line_with_colors): new function, allow
4827         override colors
4828         (gdk_draw_layout_with_colors): new function, allow override
4829         colors
4830         (gdk_pango_layout_line_get_clip_region): function to get the clip
4831         region for a logical text range
4832         (gdk_pango_layout_get_clip_region): get the clip region for a
4833         logical text range
4834
4835         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
4836         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
4837         the right number of arguments.
4838
4839         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
4840         enhance the function to check that node data corresponds to a 
4841         view still belonging to the tree.
4842
4843         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
4844         GtkTreePath
4845         (gtk_tree_view_inserted): ditto
4846         (gtk_tree_view_child_toggled): ditto
4847
4848         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
4849         simplify this code.
4850
4851         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
4852         a PangoAttrList
4853
4854         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
4855
4856         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
4857
4858         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
4859         size in the size request 
4860         (gtk_menu_bar_size_allocate): consider toggle size here
4861
4862         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
4863         that displays a widget in the toggle slot
4864
4865         * gtk/testgtk.c: test GtkImageMenuItem
4866
4867         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
4868         
4869         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
4870         request and allocation
4871
4872         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
4873
4874         * gtk/gtkcheckmenuitem.c
4875         (gtk_check_menu_item_toggle_size_request): ditto
4876         
4877 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
4878
4879         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
4880         reference.
4881
4882         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
4883         and refuse to initialize GTK+ if they fail.
4884
4885 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
4886
4887         * configure.in: Add check for gtk-doc version.
4888
4889 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
4890
4891         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
4892         where the xpad/ypad was only being used on one side!
4893
4894 2001-02-11  Tor Lillqvist  <tml@iki.fi>
4895
4896         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
4897         function, copied from X11 version.
4898
4899         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
4900         DestroyCursor failures. The reason for the problem (despite the
4901         inconsistent messages from GetLastError()) was that
4902         DestroyCursor() cannot be called while a cursor is set in a
4903         window. Set the new cursor first and then destroy the old one.
4904         Thanks to jpe@archaeopteryx.com.
4905
4906         * gdk/win32/gdkcc-win32.c: Remove.
4907
4908         * gdk/win32/Makefile.am: Remove from here, too.
4909         
4910         * gdk/gdk.def
4911         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
4912
4913         * gtk/gtk.def
4914         * gtk/makefile.mingw.in: Updates.
4915
4916 2001-02-08  Havoc Pennington  <hp@redhat.com>
4917
4918         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
4919         add a widget to a bin that already has a child.
4920
4921         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
4922
4923         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
4924         
4925         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
4926
4927         * gdk/gdk.h: remove gdkcc.h
4928
4929         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
4930
4931         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
4932         GdkPixbuf, since the previous implementation was GdkColorContext
4933         dependent.
4934
4935         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
4936         
4937 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
4938
4939         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
4940         a sane value!
4941
4942 2001-02-08  Havoc Pennington  <hp@redhat.com>
4943
4944         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
4945         lighten them.
4946
4947 2001-02-08  Havoc Pennington  <hp@redhat.com>
4948
4949         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
4950         validation idle
4951
4952         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
4953         cell renderer
4954
4955         * demos/pixbuf-demo.c (timeout): remove deprecated
4956         gtk_widget_draw
4957
4958         * demos/testpixbuf-save.c (main): remove deprecated
4959         gtk_drawing_area_size
4960
4961         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
4962         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
4963         at the start of the allocation.
4964         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
4965         unsetup or NULL model.
4966
4967         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
4968         even/odd/sorted cells in the tree view.
4969
4970         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
4971         bugfixes
4972
4973         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
4974         backgrounds with draw_flat_box using different detail for even/odd
4975         rows.
4976
4977         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
4978         row, so we can draw the alternating colors thing
4979
4980         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
4981         property from a synonym property, notify for the synonym.
4982         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
4983         (gtk_text_tag_get_property): Always return the font, even if
4984         all its fields aren't set
4985
4986         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
4987         store the attr list; it leaves us with no way to change attributes
4988         in _render according to the render flags, and no way to implement
4989         get_property. Instead store all the specific text attributes. 
4990         Separate whether an attribute is enabled from its value. Sync all
4991         properties with GtkTextTag, make them all consistent, etc.
4992
4993         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
4994         renderers can highlight the sort row/column     
4995
4996         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
4997         accessor functions to get values; this has the side effect of
4998         showing up which accessor functions were missing. Added those.
4999
5000         * gtk/gtktreeviewcolumn.h: Replace set_justification with
5001         set_alignment, to be consistent with GtkLabel, GtkMisc
5002
5003         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
5004         arrow.
5005
5006         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
5007
5008         * gtk/gtktreesortable.h: updates in here
5009
5010 2001-02-07  Sven Neumann  <sven@convergence.de>
5011
5012         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
5013         pango dimensions after painting the background. We used to draw
5014         gigantic flat boxes here.
5015
5016 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
5017
5018         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
5019         error introduced with earlier commit) (pointed out by
5020         Ollie Lho)
5021
5022 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
5023
5024         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
5025         which are no longer necessary.
5026
5027 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
5028
5029         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
5030
5031 2001-02-04  Tor Lillqvist  <tml@iki.fi>
5032
5033         * gdk/gdk.def
5034         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
5035         Provide dummy implementations.
5036
5037 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
5038
5039         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
5040
5041         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
5042         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
5043         deprecated this function.
5044
5045         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
5046         argument.
5047
5048 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
5049
5050         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
5051
5052 2001-02-03  Havoc Pennington  <hp@pobox.com>
5053
5054         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
5055         Mikael Hermansson with patch from Mikael (if there was a toggle
5056         start one after the first character in the range, this function
5057         was broken). Bug #50380
5058
5059 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
5060
5061         * configure.in: Remove confusing comment about X11.
5062
5063 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
5064
5065         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
5066         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
5067         
5068 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
5069
5070         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
5071         it breaks things on BSD. If you want to compile GTK+ with
5072         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
5073         when configuring, since GTK+ simply can't be "pure ANSI" 
5074         in the header files it uses. (#8170, Greg Hudson)
5075
5076 2001-02-02  Havoc Pennington  <hp@redhat.com>
5077
5078         * gtk/gtkwindow.c: docs
5079
5080         * gtk/gtkwidget.c: docs
5081         (gtk_widget_set_colormap): add a reference to the colormap
5082         (gtk_widget_get_default_colormap): add a reference to the colormap
5083
5084         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
5085
5086         * gtk/gtktextiter.c: docs
5087
5088         * gtk/gtkmain.c (gtk_propagate_event): docs
5089
5090         * gtk/gtkpaned.c (gtk_paned_get_position): docs
5091         (gtk_paned_set_position): docs
5092
5093         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
5094         sort interface, no implementation yet.
5095
5096         * demos/testpixbuf.c (new_testrgb_window): replace
5097         gtk_drawing_area_size() with gtk_widget_set_usize()
5098
5099         * demos/testpixbuf-drawable.c (main): ditto
5100         
5101         * gtk/testgtk.c: remove use of GtkStatusbarMsg
5102
5103         * gtk/gtktextbuffer.c: docs
5104
5105         * gtk/gtkstock.c: docs
5106
5107         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
5108
5109         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
5110
5111         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
5112         
5113         * gtk/gtkimage.c: add some docs in here
5114         (gtk_image_size_request): change name of
5115         gtk_widget_render_stock_icon
5116         (gtk_image_get_icon_set): don't dup returned string
5117         (gtk_image_get_icon_set): don't dup returned string
5118
5119         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
5120         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
5121         and gtkiconfactory.h functions
5122
5123         * gtk/gtkiconfactory.c: add some docs in here
5124
5125         * gtk/gtkmain.c (gtk_get_default_language): document
5126         (gtk_get_current_event): document
5127         (gtk_get_current_event_state): document
5128         (gtk_get_event_widget): document
5129
5130         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
5131
5132         * gtk/gtkcontainer.c: Add some documentation
5133         (gtk_container_add): give a more explanatory warning on adding an
5134         already-parented widget, this is kind of a FAQ and also a common
5135         typo that's easier to debug with a nice warning 
5136
5137         * gtk/gtkcellrenderertoggle.c
5138         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
5139         adding this, it's useless
5140         (gtk_cell_renderer_toggle_set_active): remove
5141         (gtk_cell_renderer_toggle_get_radio): add
5142
5143         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
5144         the NULL cell renderer, that doesn't make any sense to me. 
5145
5146         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
5147         demo code should never use deprecated features.
5148
5149         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
5150         code should never use deprecated features.
5151
5152         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
5153         gtk_widget_queue_clear_area deprecated
5154
5155         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
5156         deprecated
5157
5158         * gtk/gtklabel.h: mark gtk_label_get() deprecated
5159
5160         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
5161         a GdkImage deprecated, replaced by new consistently-named
5162         functions       
5163
5164         * gtk/gtkmain.h: Mark gtk_exit() deprecated
5165
5166         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
5167
5168         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
5169         deprecated
5170
5171         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
5172         so it won't appear in docs and confuse people.
5173
5174         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
5175
5176         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
5177         macros deprecated. (can't mark the type itself deprecated, since
5178         GtkProgressBar is not deprecated and we need the type decl to use
5179         GtkProgressBar)
5180
5181         * gtk/gtkpixmap.h: Mark deprecated
5182
5183         * gtk/gtkoldeditable.h: Mark deprecated
5184
5185         * gtk/gtklist.h: Mark deprecated
5186
5187         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
5188         for anything anymore.
5189
5190         * gtk/gtkctree.h: Mark deprecated
5191
5192         * gtk/gtkclist.h: Mark deprecated
5193
5194         * gtk/gtkpreview.h: Mark deprecated
5195
5196         * gtk/gtkpacker.h: Mark deprecated
5197
5198         * gtk/gtktipsquery.h: Mark deprecated
5199
5200         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
5201
5202         * gtk/gtkvruler.h: Add comment that it will move out of GTK
5203
5204         * gtk/gtkhruler.h: Add comment that it will move out of GTK
5205
5206         * gtk/gtkruler.h: Add comment that it will move out of GTK
5207
5208         * gtk/gtkgamma.h: Add comment that it will move out of GTK
5209
5210         * gtk/gtkcurve.h: Add comment that it will move out of GTK
5211
5212 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
5213
5214         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
5215         gdk_colormap_sync private since it was never exported
5216         in a header file.
5217
5218         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
5219         colormap->colors[] for StaticGray, StaticColor colormaps.
5220
5221         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
5222         was being used as if it was image->bits_per_pixel.
5223
5224         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
5225         for the image in the GdkImage structure since it isn't
5226         reconstructable, and we need it to handle packed types
5227
5228         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
5229         the assumption that on Win32 image->bits_per_pixel == image->depth,
5230         always.
5231
5232         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
5233
5234         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
5235         warning message if no converter can be found. 
5236
5237 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
5238
5239         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
5240         chars to isupper() / tolower(). (#567)
5241
5242         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
5243         to clear up 64-bit warnings. (#567)
5244
5245 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
5246
5247         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
5248         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
5249
5250         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
5251         since some people set $(libdir) separately. (#1290, David Kaelbling)
5252
5253 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
5254
5255         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
5256         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
5257         MAXPATHLEN, but the code here depends on a fixed value.)
5258         (#4524)
5259
5260 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
5261
5262         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
5263         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
5264
5265 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
5266
5267         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
5268         viewable there is no way that moving the node will cause the 
5269         focus row to become not viewable, so omit check on the visibility
5270         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
5271
5272 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
5273
5274         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
5275         selection before inserting new text.
5276
5277 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
5278
5279         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
5280         Make the sensitivity of the reparented child track that of
5281         the original parent menu item. (#34218, David Hodson)
5282
5283         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
5284         the case where the current item is destroyed properly.
5285
5286         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
5287         some edge cases with child-less menuitems.
5288         
5289 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
5290
5291         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
5292         key pop down window. (#12074, Jon K Hellan)
5293
5294 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
5295
5296         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
5297         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
5298         The solution here isn't perfect - you get an extraneous
5299         emission of "toggle", which could conceivably confuse an app,
5300         but better than the current situation. LXR search seems to
5301         indicate that no apps in GNOME CVS connect to "toggle".
5302
5303 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
5304
5305         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
5306         gtk_public_h_sources to directly here to avoid warning when
5307         building srcdir != builddir. (#9656)
5308
5309 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
5310
5311         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
5312         handlers in gtkrange.c return the proper values (TRUE == handled)
5313         (#10316).
5314
5315         This is just the tip of the iceberg, but gtkrange.c is the
5316         most common place where the propagation is problematical,
5317         and also a place where it is almost certainly safe to change
5318         this in the stable branch.
5319
5320         (You don't want right click popups on a range control or anything...)
5321
5322 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
5323
5324         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
5325         area on focus out, even if a background pixmap isn't set.
5326         (#13941)
5327         
5328 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
5329
5330         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
5331         to deal with setting the shape properly when scrolling arrows are
5332         turned on, but not visible because there is sufficient space.
5333         (#13432)
5334
5335 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
5336
5337         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
5338         items with submenus, destroy the item along with the submenu.
5339         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
5340         properly.
5341
5342         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
5343         later.
5344
5345 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
5346
5347         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
5348         the focus widget sometimes wasn't drawn with the default if there
5349         was no default widget.
5350
5351         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
5352         unreference pixmaps. 
5353
5354         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
5355         for some extra safety.
5356
5357 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
5358
5359         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
5360         the text of a cell to the old pointer value better, by
5361         copying the new text before freeing the old text. Some code
5362         cleanup. (#8079, Karl Nelson)
5363
5364 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
5365
5366         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
5367         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
5368
5369 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
5370
5371         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
5372         item from a menu, check to see if it matches 
5373         menu->old_active_menu_item, and if so, unref and clear
5374         old_active_menu_item (Patch from Pavel Cisler)
5375
5376         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
5377         menu_shell->active_menu_item, if it is the child being
5378         removed. (Patch based on that of Gene Ragan, #50337)
5379
5380 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
5381
5382         * gdk/linux-fb/gdkselection-fb.c: 
5383         * gdk/linux-fb/gdkcolor-fb.c: 
5384         * gdk/linux-fb/gdkdrawable-fb2.c: 
5385         * gdk/linux-fb/gdkfont-fb.c: 
5386         * gdk/linux-fb/gdkim-fb.c: 
5387         * gdk/linux-fb/gdkinput.c: 
5388         * gdk/linux-fb/gdkkeyboard-fb.c: 
5389         * gdk/linux-fb/gdkmain-fb.c: 
5390         * gdk/linux-fb/gdkrender-fb.c: 
5391         A bunch of whitespace cleanup.
5392         
5393 2001-01-30  Havoc Pennington  <hp@pobox.com>
5394
5395         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
5396         #ifdef GTK_ENABLE_BROKEN.
5397
5398         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
5399         GTK_ENABLE_BROKEN just before including the broken headers.
5400         
5401         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
5402         deprecated types registered.
5403
5404         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
5405         we have to test the broken stuff.
5406
5407         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
5408         
5409 2001-01-30  Havoc Pennington  <hp@redhat.com>
5410
5411         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
5412         here where prev pointer was set to the wrong thing
5413
5414         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
5415         (gtk_tree_path_is_descendant): new function
5416
5417         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
5418         cached length
5419         (gtk_list_store_get_iter): don't modify iter if we can't get the
5420         path.
5421
5422         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
5423         
5424         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
5425         GtkTreeDragDest
5426
5427         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
5428         was causing segfault
5429
5430         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
5431         pointer to NULL
5432
5433         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
5434
5435         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
5436         on returning FALSE
5437         (gtk_list_store_iter_children): ditto
5438         (gtk_list_store_iter_nth_child): ditto
5439         (gtk_list_store_iter_nth_child): ditto
5440         (gtk_list_store_iter_parent): ditto
5441
5442         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
5443         on iter->user_data != NULL instead of silently accepting it.
5444         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
5445         we are returning TRUE.
5446         (gtk_tree_store_iter_children): ditto
5447         (gtk_tree_store_iter_nth_child): ditto
5448         (gtk_tree_store_iter_parent): ditto
5449         (gtk_tree_store_insert): remove handling of parent->user_data ==
5450         NULL, replace with parent == NULL       
5451
5452         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
5453         and a comment explaining things
5454
5455         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
5456         interface support to GtkTreeStore.
5457
5458         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
5459         FALSE if no prev, fix
5460
5461         * gtk/gtktreeview.c (set_source_row): use a row reference
5462         (set_dest_row): use a row reference
5463
5464 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
5465
5466         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
5467         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
5468         (gtk_tree_selection_select_iter): The same as above.
5469
5470 2001-01-26  Havoc Pennington  <hp@redhat.com>
5471
5472         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
5473         which holds a handle to a specific row (particular set of values
5474         in the model, i.e. pointer-identity row).
5475
5476         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
5477         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
5478         Still need to use it for the src/dest row saved on the drag context.
5479
5480 2001-01-26  Havoc Pennington  <hp@redhat.com>
5481
5482         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
5483
5484         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
5485         not offset by TREE_VIEW_HEADER_HEIGHT
5486         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
5487         TREE_VIEW_HEADER_HEIGHT
5488
5489         * configure.in (included_loaders): for me, --with-included-loaders
5490         generates the error "the specified loader yes does not exist",
5491         i.e. the arg defaults to "yes", so change test for value ""
5492         to test for value "yes", and include all loaders in that case.
5493
5494         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
5495
5496         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
5497         handle TREE_VIEW_VERTICAL_SEPARATOR
5498         (gtk_tree_view_bin_expose): fix to consider the row offset as
5499         pointing halfway into vertical separator.       
5500         (gtk_tree_view_draw_node_focus_rect): ditto
5501
5502         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
5503         --gtk-debug=updates, which causes gdk_window_set_debug_updates
5504         (TRUE) to be called.
5505
5506         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
5507         debug mode where the invalid region is colored in on invalidate,
5508         so you can see the flicker and know whether your redraw code is 
5509         doing a good job.
5510
5511         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
5512         tree window coordinates (clip rect is in tree window coords)
5513
5514         * gtk/Makefile.am: add gtktreednd.[hc]
5515
5516         * gtk/gtkliststore.c: implement gtktreednd interfaces.
5517
5518         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
5519         drag-and-drop data operations on a model (so we can set up tree
5520         drag-and-drop automatically)
5521
5522         * gtk/testgtk.c: Add a window to change sensitivity in the
5523         GtkLabel test; add a way to change the entry frame in GtkEntry
5524         test
5525
5526         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
5527         (gtk_entry_get_has_frame): new functions to remove the frame
5528         around an entry
5529         (gtk_entry_size_request): shrink requisition if no frame
5530         (gtk_entry_draw_focus): don't draw frame if no frame
5531
5532         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
5533         checks inside a cell renderer
5534         (gtk_default_draw_option): ditto for options
5535
5536         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
5537         children from the alignment, not the button
5538         (gtk_tree_view_column_init): ref/sink the column, to emulate
5539         GObject refcounting.
5540
5541         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
5542         
5543         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5544         Use theme functions to draw the toggles 
5545
5546         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
5547
5548         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
5549         GdkPangoAttrEmbossed to use in rendering insensitive text
5550
5551         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
5552
5553         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
5554         using new GDK features
5555         
5556 2001-01-24  Alexander Larsson  <alexl@redhat.com>
5557
5558         * gtk/gtkimage.c:
5559         Splitted gtk_image_clear into gtk_image_clear() and
5560         gtk_image_reset(). Call gtk_image_clear() in ::destroy
5561         to avoid leaks.
5562
5563         * gtk/gtklabel.c (set_markup):
5564         Don't leak text.
5565
5566         * gtk/gtktextlayout.c:
5567         Always free display->shaped_objects.
5568
5569         * gtk/testgtk.c (create_clist):
5570         Don't leak custom style.
5571
5572 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5573
5574         * gtk/gtkcolorsel.c (grab_color_at_mouse):
5575         Don't leak image. Simplify using gdk_colormap_query_color().
5576         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
5577
5578         * linux-fb/gdkcolor-fb.c:
5579         Implemented gdk_colormap_query_color.
5580
5581 2001-01-23  Alexander Larsson  <alexl@redhat.com>
5582
5583         * linux-fb/gdkcursor-fb.c:
5584         Don't leak built-in cursors.
5585
5586         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
5587         Don't leak tmp_points.
5588
5589         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
5590         Don't modify desc. Don't leak font if the PangoFont
5591         isn't found.
5592         
5593         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
5594         Free dash_list.
5595
5596         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
5597         Don't leak string.
5598         
5599 2001-01-20  Havoc Pennington  <hp@pobox.com>
5600
5601         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
5602         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
5603         me, matches Pango
5604
5605 2001-01-22  Havoc Pennington  <hp@redhat.com>
5606
5607         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
5608
5609         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
5610
5611         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
5612         Remove, move back to gdk-pixbuf
5613
5614         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
5615         to all the word functions
5616
5617         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
5618         before doing anything on NULL layout or if we don't have the focus
5619
5620         * gtk/testtext.c (fill_example_buffer): "justification"
5621
5622         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
5623         to be called "justification" not "justify"
5624
5625         * demos/gtk-demo/textview.c (create_tags): "justification"
5626         
5627         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
5628
5629 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5630
5631         * gdk/gdkwindow.c (gdk_window_invalidate_region):
5632         Don't leak visible_region. Use visible_region instead of region.
5633         
5634         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5635         Don't do extra gdk_drawable_ref(). This is not X.
5636         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
5637         gdk_fb_focused_window is ref:ed.
5638         (gdk_fb_window_send_crossing_events): Watch out for destroyed
5639         windows.
5640
5641 2001-01-22  Alexander Larsson  <alexl@redhat.com>
5642
5643         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
5644         Don't leak the PangoFontDescriptor.
5645
5646 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
5647
5648         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
5649         when not realized.
5650         (gtk_tree_view_scroll_to_cell): Make work when not realized.
5651         (gtk_tree_view_realize): add scroll_to support
5652         (gtk_tree_view_finalize): add a finalize method.  Populate.
5653         (gtk_tree_view_insert_column): ref and sink the column.
5654         (gtk_tree_view_append_column): ref and sink the column.
5655         (gtk_tree_view_queue_draw_node): New function to handle redrawing
5656         individual nodes.  Should make the code much more efficient, if
5657         actually used.
5658
5659 2001-01-19  Havoc Pennington  <hp@redhat.com>
5660
5661         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
5662         byte_offset variable was being used to mean both "offset into
5663         layout" and "offset into buffer line" which was no longer true
5664         with addition of preedit string; fix
5665
5666 2001-01-19  Havoc Pennington  <hp@redhat.com>
5667
5668         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
5669
5670         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
5671         function
5672
5673         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
5674         implement
5675
5676         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
5677         scroll_to_cell, matches TextView scroll functions better
5678         (gtk_tree_view_tree_to_widget_coords): new function
5679         (gtk_tree_view_widget_to_tree_coords): new function
5680         (gtk_tree_view_get_visible_rect): new function
5681         (gtk_tree_view_get_path_at_pos): accept negative coordinates
5682         (gtk_tree_view_draw_node_focus_rect): new function moved from
5683         draw_focus, also, use width of bin_window as width of the focus
5684         rect
5685         (gtk_tree_view_expand_row): fix bug where it didn't recognize
5686         already-expanded rows
5687         (gtk_tree_view_get_cell_rect): new function
5688         (gtk_tree_view_get_path_at_pos): return the click position
5689         relative to the passed-in cell
5690         (gtk_tree_view_set_expander_column): new function
5691
5692         * configure.in: remove gtk-config-2.0 chmod
5693
5694         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
5695         and properly handle drags with targets we don't understand
5696         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
5697         scrolling anyway
5698         (gtk_text_view_drag_drop): stop scrolling here though, and set the
5699         mark invisible
5700
5701         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
5702         function
5703         (gtk_drag_dest_get_target_list): new function
5704         (gtk_drag_dest_set_target_list): new function
5705         
5706         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
5707
5708         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
5709         related to drag-and-drop
5710
5711 2001-01-19  Alexander Larsson  <alexl@redhat.com>
5712
5713         * gdk/linux-fb/gdkprivate-fb.h:
5714         Define EMULATE_GDKFONT.
5715         Add extra pango_font stuff to GfkFontPrivate.
5716         
5717         * gdk/linux-fb/gdkdrawable-fb2.c:
5718         * gdk/linux-fb/gdkfont-fb.c:
5719         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
5720         emulation using PangoFont.
5721
5722 2001-01-17  Havoc Pennington  <hp@pobox.com>
5723
5724         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
5725         all the non-deprecated set_foo functions. Added missing object
5726         properties, and added g_object_notify() to setters. 
5727         Wrote docs.
5728         
5729 2001-01-18  Tor Lillqvist  <tml@iki.fi>
5730
5731         * gtk/gtkmain.c
5732         * gtk/gtkrc.c: (Win32) Use the new
5733         g_win32_get_package_installation_(sub)directory() functions.
5734
5735         * config.h.win32.in: New file.
5736         
5737         * config.h.win32: Removed.
5738
5739         * configure.in: Output config.h.win32.
5740
5741         * Makefile.am: Add it to EXTRA_DIST.
5742
5743         * gtk/gtk.def: Update.
5744
5745 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
5746
5747         * gtk/gtklabel.c (gtk_label_size_request): Set the
5748         attributes onto the PangoLayout even if they are newly
5749         created from label->pattern.
5750
5751 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
5752
5753         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
5754
5755         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
5756         structures in functions. Fixes bug where gtk_dataset_*
5757         was accidentally still being used in one place, causing
5758         every dest side event to be treated independently.
5759
5760         * gtk/gtkdnd.c: Remove last vestages of handling
5761         ::draw (fixes warning)
5762         
5763         * gtk/gtkentry.[ch]: Add drag and drop support.
5764
5765         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
5766         new function gtk_check_drag_threshhold() for checking
5767         to check if (dx,dy) has exceeded the threshhold for starting
5768         a drag and use it everywhere.
5769
5770 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
5771
5772         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
5773         add -I{includedir}/gtk-2.0.
5774
5775         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
5776         gdk/gdk-pixbuf.h: Doc fixups.
5777         
5778         * gtk/gtkobject.h: Remove trailing , from enum
5779
5780 2001-01-17 Alexander Larsson <alexl@redhat.com> 
5781
5782         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
5783         Doh! Mixed up x and y.
5784
5785         * gdk/linux-fb/gdkglobals-fb.c:
5786         Removed gdk_fb_pointer_grab_window_events,
5787         added _gdk_fb_pointer_grab_owner_events and
5788         _gdk_fb_keyboard_grab_owner_events.
5789
5790         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
5791         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
5792         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
5793         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
5794         Send crossing events after ungrab finished.
5795         (gdk_keyboard_grab): Set ..._owner_events
5796         (type_masks): Move out of function.
5797         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
5798         gdk_fb_keyboard_event_window): New functions, return the
5799         window an event should be targeted at. Handles grabs and
5800         event propagation. Can return NULL.
5801         (gdk_event_make): Remove event_mask checking. Now always
5802         returns an event.
5803                 
5804         * gdk/linux-fb/gdkkeyboard-fb.c:
5805         * gdk/linux-fb/gdkproperty-fb.c:
5806         * gdk/linux-fb/gdkselection-fb.c:
5807         Use new event_window/gdk_event_make() behaviour.
5808         
5809         * gdk/linux-fb/gdkmouse-fb.c:
5810         Use new event_window/gdk_event_make() behaviour.
5811         Only send motion events if in the same window.
5812         If grabbed, use cursor from window if sibling of grabbed
5813         window, and cursor from grabbed window otherwise.
5814
5815         * gdk/linux-fb/gdkprivate-fb.h:
5816         Update gdk_fb_window_send_crossing_events, gdk_event_make
5817         and grab varaible declarations. Add gdk_fb_*_event_window().
5818
5819         * gdk/linux-fb/gdkwindow-fb.c:
5820         Use new event_window/gdk_event_make() behaviour.
5821         Keep correct track of focus window.
5822         (gdk_window_set_events): Set all specific button motion masks
5823         if GDK_BUTTON_MOTION_MASK set.
5824
5825         * gtk/gtkdnd.c (gtk_drag_update):
5826         Free info->last_event if gdk_drag_motion returned FALSE.
5827
5828 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5829
5830         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
5831         Eliminate redraws when input-only windows are shown or
5832         hidden. Thanks to jpe@archaeopteryx.com.
5833
5834 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
5835
5836         * docs/faq/gtk-faq.sgml: FAQ update:
5837           - Update to bugzilla
5838           - Add GTK+ and security/SUID/SGID
5839           - Add DnD question
5840
5841 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
5842
5843         * gdk/linux-fb/gdkdnd-fb.c:
5844         Some cleanups.
5845         
5846 2001-01-15  Havoc Pennington  <hp@pobox.com>
5847
5848         * tests/testtreeview.c: add test stuff for CellRendererToggle
5849
5850         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
5851         accessor
5852
5853         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
5854         only toggle on button press (would do release like GtkButton, but
5855         we'd need implicit grab code for treeview cells)
5856
5857 2001-01-16  Tor Lillqvist  <tml@iki.fi>
5858
5859         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
5860
5861         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
5862         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
5863
5864         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
5865         to g_{locale,filename}_{to,from}_utf8 to match current API.
5866
5867         * gtk/makefile.msc.in (gtk_OBJECTS)
5868         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
5869
5870         * gtk/gtk.def: Update.
5871
5872 2001-01-15  Tor Lillqvist  <tml@iki.fi>
5873
5874         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
5875         implementaion that more closely mimics the events that an X server
5876         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
5877         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
5878         with nested preview widgets, for instance, more responsive when
5879         you move the mouse quickly into them.
5880         (find_window_for_pointer_event): Make it actually compile.
5881         (gdk_event_translate): Set send_event to the value of
5882         InSendMessage (). This doesn't really mean the same as X11's
5883         send_event flag, but is close enough, says jpe@archaeopteryx.com
5884
5885 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5886
5887         * gdk/linux-fb/gdkdnd-fb.c:
5888         Implemented drag and drop.
5889         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
5890         when it tries to free and then copy the same event (info->last_event).
5891         I am not sure about why this happens, but will continue looking.
5892
5893 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5894
5895         * gdk/linux-fb/gdkwindow-fb.c:
5896         Use gdk_window_invalidate_rect instead of
5897         gdk_window_invalidate_rect_clear to minimise flashing.
5898         When hiding windows you need to clear the root window though.
5899
5900 2001-01-15  Alexander Larsson  <alexl@redhat.com>
5901
5902         * gdk/linux-fb/gdkdrawable-fb2.c:
5903         For optization, add an full_shapes argument to gdk_fb_clip_region.
5904         If this is false, only the cliprects of the shapes are used.
5905
5906         * gdk/linux-fb/gdkprivate-fb.h:
5907         Export gdk_fb_window_peek_shape.
5908         Add full_shapes to gdk_fb_clip_region.
5909
5910         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5911         When moving a window, don't clear everything under the it, just the
5912         root window. Makes stuff faster and flash less.
5913         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
5914         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
5915         offset of the shape.
5916         
5917
5918 2001-01-12  Havoc Pennington  <hp@redhat.com>
5919
5920         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
5921         current invalid region, fixes redraw bug while scrolling the 
5922         text widget
5923
5924         * gtk/gtktextview.c, gtk/gtktextview.h:
5925         Rearrange the scrolling/validation/etc. code in a major way, 
5926         so it seems to make sense to me. Probably isn't genuinely that
5927         much better, but...
5928
5929         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
5930         notifies
5931
5932         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
5933
5934 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
5935
5936         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
5937         Hide mouse pointer while rotation. Show it afterwards.
5938
5939 2001-01-12  Alexander Larsson  <alexl@redhat.com>
5940
5941         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
5942         windows in consideration when generating clip region.
5943
5944         * gdk/linux-fb/gdkfb.h:
5945         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
5946
5947         * gdk/linux-fb/gdkprivate-fb.h:
5948         Add shape to GdkWindowFBDatat.
5949         exported gdk_fb_window_get_abs_shape().
5950         removed gdk_fb_draw_lines declaration.
5951
5952         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
5953         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
5954         send focus changes when there is a grabbed window.
5955         (gdk_window_get_pointer): Handle shaped windows.
5956         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
5957         (gdk_fb_window_peek_shape): Returns the shape for a window,
5958         handles GDK_FB_USE_CHILD_SHAPE.
5959         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
5960         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
5961         (gdk_window_shape_combine_mask): Implement.
5962
5963         * gtk/gtkwindow-decorate.c:
5964         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
5965         setting the shape of a window makes the window transparent.
5966
5967 2001-01-11  Havoc Pennington  <hp@redhat.com>
5968
5969         * gtk/gtktreemodelsimple.h: Oops, broke some macros
5970
5971 2001-01-10  Havoc Pennington  <hp@redhat.com>
5972
5973         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
5974         add this function, bug 40251
5975
5976         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
5977         of type macro   
5978
5979 2001-01-11  Alexander Larsson  <alexl@redhat.com>
5980
5981         * acconfig.h:
5982         Added ENABLE_SHADOW_FB
5983
5984         * configure.in:
5985         Added --disable-shadowfb
5986
5987         * gdk/linux-fb/gdkcursor-fb.c:
5988         Update shadowfb when updating cursor
5989
5990         * gdk/linux-fb/gdkdrawable-fb2.c:
5991         Added wrappers for shadowfb that calls  the normal drawable
5992         methods, but calls gdk_shadow_fb_update(bounding box) when
5993         GdkWindows are drawed to.
5994         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
5995         which also returns the bounding box.
5996
5997         * gdk/linux-fb/gdkfb.h:
5998         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
5999
6000         * gdk/linux-fb/gdkgeometry-fb.c:
6001         Update shadowfb when scrolling window.
6002
6003         * gdk/linux-fb/gdkglobals-fb.c:
6004         Add _gdk_fb_screen_angle.
6005         
6006         * gdk/linux-fb/gdkkeyboard-fb.c:
6007         Test code for screen rotation. Shift-F2 in the xlate driver
6008         rotates the screen.
6009
6010         * gdk/linux-fb/gdkmain-fb.c:
6011         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
6012
6013         * gdk/linux-fb/gdkmouse-fb.c:
6014         Use fb_width/height instead of modeinfo.xres/yres.
6015
6016         * gdk/linux-fb/gdkprivate-fb.h:
6017         Added fb_men, fb_width, fb_height & fb_stride. When using
6018         shadow fb these can differ from the framebuffer stuff.
6019         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
6020         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
6021         _gdk_fb_screen_angle. Removed CM, RP.
6022
6023         * gdk/linux-fb/gdkrender-fb.c:
6024         Added code for shadowfb handling and screen rotation using
6025         shadowfb.
6026
6027         * gdk/linux-fb/gdkwindow-fb.c:
6028         Use fb_mem, fb_stride, fb_width, fb_height.
6029         Added recompute_rowstride to reset the rowstride of all windows.
6030         Added gdk_fb_recompute_all() which recomputes rootwindow size,
6031         window abs positions and window rowstrides. Usefull when the
6032         rotation has changed.
6033
6034 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
6035
6036         * docs/faq/gtk-faq.sgml: update to make web site updating easier
6037
6038 2001-01-10  Havoc Pennington  <hp@redhat.com>
6039
6040         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
6041         where sibling == iter
6042         (gtk_tree_store_insert_after): handle sibling == iter
6043         (gtk_tree_store_prepend): remove stamp checks
6044         (gtk_tree_store_insert_before): ditto
6045         (gtk_tree_store_append): ditto
6046         (gtk_tree_store_get_path): ditto
6047         (gtk_tree_store_get_value): ditto
6048         (gtk_tree_store_iter_has_child): ditto
6049         (gtk_tree_store_iter_n_children): ditto
6050         (gtk_tree_store_iter_nth_child): ditto
6051         (gtk_tree_store_insert_after): ditto
6052         (gtk_tree_store_is_ancestor): ditto
6053         (gtk_tree_store_iter_depth): ditto
6054         (gtk_tree_store_insert_before): assert that sibling's parent is
6055         the same as the passed-in parent
6056         (gtk_tree_store_insert_after): assert that sibling's parent is
6057         the same as the passed-in parent
6058
6059         
6060         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
6061         function to get the first iterator in a model
6062         
6063         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
6064         conventionally the "root" in this sense is just NULL afaict.
6065
6066         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
6067         where sibling == iter
6068         (gtk_list_store_insert_after): handle case where sibling == iter
6069
6070         * tests/testtreeview.c (run_automated_tests): fairly lame basic
6071         automated tests for ListStore, TreeStore
6072
6073         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
6074         (gtk_list_store_insert): update tail pointer, and fix it to work
6075         (gtk_list_store_insert_before): update tail pointer, and fix it to work
6076         (gtk_list_store_append): use tail to be faster
6077         (gtk_list_store_prepend): fix it, update tail pointer
6078         (gtk_list_store_insert_after): fix it, update tail pointer
6079
6080         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
6081         the list
6082
6083 2001-01-09  Havoc Pennington  <hp@redhat.com>
6084
6085         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
6086         is NULL due to a pending resize
6087
6088         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
6089         column width to values less than 1
6090
6091         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
6092         width to be between min/max width, and still set the width 
6093         even if autosize is turned on, so the tree view can use this 
6094         function in order to autosize.
6095         (gtk_tree_view_column_init): set initial width to 1 not 0
6096
6097         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
6098         setter function to modify column width, so we get notification
6099         (gtk_tree_view_insert_iter_height): ditto
6100         (gtk_tree_view_calc_size): ditto
6101         (gtk_tree_view_check_dirty): ditto
6102
6103         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
6104         properties to change all the interesting attributes of the tree
6105         view column.
6106         (gtk_tree_view_column_set_header_clickable): rename set_clickable
6107         (gtk_tree_view_column_get_clickable): add
6108         (gtk_tree_view_column_set_cell_renderer): don't unset the current
6109         attributes; assume a cell renderer with equivalent object
6110         properties has been swapped in. Do g_object_notify().
6111         (gtk_tree_view_column_set_visible): g_object_notify
6112         (gtk_tree_view_column_get_sizing): rename from get_col_type
6113         (gtk_tree_view_column_set_sizing): g_object_notify
6114         (gtk_tree_view_column_set_width): add g_object_notify
6115         (gtk_tree_view_column_set_min_width): ditto
6116         (gtk_tree_view_column_set_max_width): ditto
6117         (gtk_tree_view_column_set_title): ditto
6118         (gtk_tree_view_column_set_clickable): ditto
6119         (gtk_tree_view_column_set_widget): ditto
6120         (gtk_tree_view_column_set_justification): ditto
6121
6122 2001-01-09  Havoc Pennington  <hp@redhat.com>
6123
6124         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
6125         there are no rows in the model
6126
6127         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
6128         NULL, then return the start of the list
6129
6130         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
6131         if we can't get any rows from an empty model 
6132
6133         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
6134         extraneous * after function pointer typedef usage
6135
6136         * Makefile.am: don't specify full path to cp and rm
6137
6138         * gtk/gtkcellrenderertextpixbuf.c
6139         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
6140         NULL before dereferencing, fixes a segfault that happened from
6141         time to time
6142
6143         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
6144         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
6145         and reindent the function
6146         (gtk_cell_renderer_pixbuf_get_size): indentation
6147
6148         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
6149         we quit it
6150         (gtk_dialog_add_buttons_valist): add g_return_if_fail
6151         (gtk_dialog_set_default_response): New function, to set default
6152         button
6153         (gtk_dialog_set_response_sensitive): New function, to set 
6154         sensitivity of buttons
6155
6156         * gtk/gtkcellrendererpixbuf.c
6157         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
6158         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
6159
6160         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6161         handle any G_TYPE_OBJECT subclass, not just the base class, and 
6162         also boxed types.
6163         (_gtk_tree_data_list_value_to_node): ditto
6164
6165         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
6166         --gtk-debug=tree
6167
6168         * gtk/gtkmain.c: add GTK_DEBUG_TREE
6169
6170         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
6171
6172 2001-01-09  Tor Lillqvist  <tml@iki.fi>
6173
6174         * gdk/win32/gdkevents-win32.c: Implement better mouse
6175         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
6176         (find_window_for_pointer_event): New function.
6177         (gdk_event_translate): Use it when handling mouse events.
6178
6179 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
6180
6181         * configure.in:
6182         Added --with-included-loaders option
6183
6184         * gdk-pixbuf/Makefile.am:
6185         * gdk-pixbuf/gdk-pixbuf-io.c:
6186         Add support for including selected gdk-pixbuf loaders only.
6187
6188         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
6189         gtk_window_set_has_frame):
6190         Added inline documentation.
6191
6192         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
6193         * docs/reference/gdk/tmpl/windows.sgml:
6194         Added inline documentation.
6195
6196 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
6197
6198         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
6199         realizing buttons that have already been realized.
6200
6201 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
6202
6203         * tests/testtreeview.c (main): Show menu items before adding to
6204         option menu.
6205
6206         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
6207         around if we kill them.
6208
6209         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6210         Return if we pass in a NULL model.
6211
6212 2001-01-08  Havoc Pennington  <hp@redhat.com>
6213
6214         * tests/testtreeview.c: hack on this some
6215
6216         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
6217         gtk_tree_store_set_valist, v is for arrays, valist for varargs
6218         list
6219         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
6220
6221         * gtk/gtkliststore.h: Add varargs set() and get() convenience
6222         functions
6223
6224 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6225
6226         * gtk/gtkwindow-decorate.[hc]:
6227         * gtk/Makefile.am:
6228         New files. Contains an implementation of a minimal WM for
6229         linux-fb.
6230
6231         * gtk/gtkwindow.h:
6232         Add the possibility for GtkWindows to specify a frame. This
6233         is used for the window decoration code, but could concievably
6234         be used for X programs too (xmms style windows).
6235         GtkWindow->frame is the toplevel window if the window is framed.
6236         The signal frame_event gets all events that are targeted to
6237         GtkWindow->frame.
6238         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
6239         
6240         * gtk/gtkwindow.c:
6241         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
6242         Call out to gtkwindow-decorate.c for WM support in linx-fb.
6243
6244 2001-01-08  Alexander Larsson  <alexl@redhat.com>
6245
6246         * docs/README.linux-fb:
6247         Correct filename ~/.pangoft2_aliases
6248
6249         * gdk/gdkwindow.h:
6250         Added new function gdk_window_get_decorations.
6251
6252         * gdk/linux-fb/gdkfb.h:
6253         Removed _gdk_window_get_decorations declaration.
6254         Renamed _gdk_window_set_child_handler to
6255         gdk_fb_window_set_child_handler.
6256
6257         * gdk/linux-fb/gdkwindow-fb.c:
6258         Renamed _gdk_window_set_child_handler to
6259         gdk_fb_window_set_child_handler.
6260
6261         * gdk/x11/gdkwindow-x11.c:
6262         New function gdk_window_get_mwm_hints().
6263         Implemented gdk_window_get_decorations.
6264
6265         * docs/reference/gdk/tmpl/windows.sgml:
6266         * docs/reference/gdk/gdk-sections.txt:
6267         Added gdk_window_get_decorations docs.
6268         
6269 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
6270
6271         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
6272         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
6273         gdk_fb_window_send_crossing_events):
6274         Possibly send focus events when the mouse moves from one
6275         window to another.
6276
6277 2001-01-07  Tor Lillqvist  <tml@iki.fi>
6278
6279         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
6280         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
6281         to match current API.
6282
6283         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
6284         environment variable is set, don't call g_error when on a
6285         palettized (PseudoColor) display. Some people want to use GTK+ 
6286         in 256-colour mode even though works only partially.
6287
6288         * gdk/gdk.def
6289         * gtk/gtk.def
6290         * gtk/makefile.mingw.in: Update.
6291
6292 2001-01-05  Havoc Pennington  <hp@redhat.com>
6293
6294         * tests/testtreeview.c: hack on this a bit
6295
6296         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
6297         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
6298
6299         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
6300         was spelled incorrectly
6301         (GTK_IS_TREE_MODEL_SIMPLE): ditto
6302
6303         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
6304         from gtk_tree_view_set_headers_active   
6305
6306         * gtk/gtktexttag.c:
6307         (gtk_text_tag_get_property): handle PROP_DIRECTION
6308         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
6309         properties, bug 40235
6310
6311         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
6312         forward_to_line_end
6313
6314 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
6315
6316         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
6317         modules/input/gtkimcontextxim.c: Adapt to new prototypes
6318         for unicode,locale,filename conversion functions.
6319
6320 2001-01-05  Havoc Pennington  <hp@redhat.com>
6321
6322         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
6323         broken if called on the first position in the buffer.
6324
6325         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
6326         forward_to_delimiters to be called only if we aren't already at
6327         the delimiters.
6328
6329 2001-01-05  Havoc Pennington  <hp@redhat.com>
6330
6331         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
6332
6333 2001-01-05  Alexander Larsson  <alexl@redhat.com>
6334
6335         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
6336         colormap in here. Sync from X port.
6337         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
6338         Sync from X port.
6339         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
6340         This happens now and then, and i don't think it is a bug.
6341         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
6342         != endpoint.
6343         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
6344         GDK_LINE_SOLID.
6345
6346         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
6347         some of the fields filled in at least.
6348
6349         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
6350         miLineArcD is no more, remove it from the function definition.
6351
6352 2001-01-04  Havoc Pennington  <hp@redhat.com>
6353
6354         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
6355         this
6356
6357         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
6358         user_data instead of tree_node
6359
6360         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
6361         TREE_VIEW_COLUMN_SIZE
6362
6363         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
6364         "size" field to "width" finishes bug 40061
6365
6366         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
6367         for bitfields, bug 40268
6368
6369 2001-01-04  Havoc Pennington  <hp@redhat.com>
6370
6371         Rename some stuff:
6372         
6373         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
6374
6375         s/GtkModelSimple/GtkTreeModelSimple/g;
6376         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
6377         s/gtk_model_simple/gtk_tree_model_simple/g;
6378         s/gtkmodelsimple/gtktreemodelsimple/g;
6379
6380         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
6381
6382         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
6383         s/column_set_col_type/column_set_sizing/g;
6384
6385         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
6386         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
6387
6388         s/GtkCellRendererType/GtkCellRendererState/g;
6389         
6390         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
6391         (gtk_cell_renderer_toggle_class_init): change "state" property to
6392         "active", to match GtkToggleButton
6393         (gtk_cell_renderer_toggle_get_active): new function, bug
6394         40269
6395         (gtk_cell_renderer_toggle_set_active): new function
6396         (gtk_cell_renderer_toggle_set_property): route changes to toggle
6397         state through gtk_cell_renderer_set_active
6398
6399 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
6400
6401         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
6402         temporarily until they work again.  Brought up to date with
6403         changes in the model.
6404         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
6405         model.
6406
6407 2001-01-04  Havoc Pennington  <hp@redhat.com>
6408
6409         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
6410         equal to the line length, then position iterator before paragraph 
6411         separators. Fixes crash reported by Mikael Hermansson when
6412         pressing left arrow from the start of a line.   
6413
6414         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
6415         about byte indexes off the end
6416         (iter_set_from_char_offset): add g_error about char offsets
6417         off the end
6418
6419 2001-01-03  Havoc Pennington  <hp@redhat.com>
6420
6421         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
6422
6423         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
6424         of private functions; remove inclusion of private headers.
6425
6426         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
6427         function, so we don't need private functions in gtktextdisplay.c
6428
6429         * gtk/gtktextiterprivate.h: underscore-ification
6430
6431         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
6432         to instead say "only useful to implement widgets"
6433
6434         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
6435         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
6436         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
6437
6438         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
6439         This function was completely broken
6440
6441         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
6442
6443         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
6444
6445         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
6446
6447         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
6448
6449         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
6450
6451         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
6452
6453         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
6454         gtk_paint_layout
6455
6456         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
6457         gtk_paint_layout
6458
6459         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
6460         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
6461         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
6462         which were not implemented.     
6463
6464         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
6465         insert_pixbuf signal. Rename delete_text to delete_range since it
6466         also deletes pixbufs and child anchors. This almost closes bug
6467         40245 (still need to deal with child anchors)
6468
6469         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
6470         insert_pixbuf, change signal names as appropriate, change types of
6471         signals taking marks/tags to have the specific type, not just
6472         G_TYPE_OBJECT
6473         
6474         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
6475         closes bug 40051
6476
6477         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
6478         unnecessary remove_contents() call
6479         (gtk_option_menu_class_init): add a "changed" signal, closes
6480         bug 40039
6481         (gtk_option_menu_update_contents): emit "changed" if the 
6482         active menu item changes
6483
6484         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
6485         cast to GtkObject, reported by Jonas Borgstrom
6486         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
6487         we can't do stuff with side effects in finalize. Instead, spew a
6488         warning if the loader isn't closed.
6489
6490         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
6491         colormap in here, non-X ports probably need to sync to this change
6492
6493         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
6494         assertion that colormap != NULL, you can set the colormap to NULL
6495         if you like.
6496         
6497         * Makefile.am: remove gtk-config-2.0
6498
6499         * configure.in: Use pkg-config to locate GLib. Remove
6500         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
6501         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
6502         Use pkg-config to locate Pango. Output correct Pango libs to
6503         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
6504
6505         * Makefile.am (pkgconfig_DATA): install only target-specific pc
6506         files
6507         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
6508         X11 pc files
6509
6510         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
6511         unref from here
6512
6513 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
6514
6515         * configure.in:
6516         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
6517
6518 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
6519
6520         * gtk/gtktextlayout.c
6521         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
6522         variable when moving back onto a single line.
6523
6524 2001-01-01  Havoc Pennington  <hp@redhat.com>
6525
6526         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6527
6528         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
6529
6530         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
6531         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
6532
6533 2001-01-01  Havoc Pennington  <hp@redhat.com>
6534
6535         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
6536
6537         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
6538         GtkTextAttributes
6539
6540         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
6541         #40246
6542         (gtk_text_attributes_copy_values): rename from 
6543         gtk_text_attributes_copy
6544         (gtk_text_attributes_copy): a more standard GTK copy function, 
6545         which returns a new object
6546
6547 2001-01-01  Havoc Pennington  <hp@redhat.com>
6548
6549         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
6550         
6551         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
6552         don't fill in tree_view->priv->selection, kind of an unexpected
6553         side effect
6554
6555         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
6556         gtkintl.h
6557         
6558         * gtk/gtkcellrenderer.c: Remove definition of _ and include
6559         gtkintl.h
6560         (gtk_cell_renderer_get_property): remove calls to g_value_init
6561
6562         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
6563         gtkintl.h
6564
6565         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
6566         and include gtkintl.h
6567         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
6568         property names
6569
6570         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
6571         GtkTreeSelection
6572         (_gtk_tree_selection_new_from_with_view): rename, return
6573         GtkTreeSelection
6574         (_gtk_tree_selection_set_tree_view): rename with uscore
6575         (gtk_tree_selection_get_selected): fill in the "model" out param
6576         first, so it gets filled in even if we return at the top of the 
6577         function
6578         (gtk_tree_selection_real_select_all): add a comment and an else{}
6579         to clarify this a bit
6580         (gtk_tree_selection_real_unselect_all): add the same else{}
6581
6582         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
6583         set_tree_view to have underscore prefixes, move them to the
6584         private header, fix return type of new_with_tree_view
6585         (struct _GtkTreeSelection): mark struct
6586         fields private  
6587
6588         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
6589         GtkTreeModelFlags, not a guint
6590         (gtk_tree_path_prev): return gboolean not gint
6591         (gtk_tree_path_up): return gboolean not gint
6592
6593         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
6594         return GtkTreeModelFlags, not a guint
6595
6596         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
6597         that child model is non-null before unrefing it
6598         (g_value_int_compare_func): make this a qsort compare func, not 
6599         a boolean predicate
6600
6601         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
6602         (add -umn to the end), and mark it unimplemented
6603         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
6604         I don't see what it's for - doesn't the model always sort itself?
6605         (gtk_tree_model_sort_set_compare): this had the wrong signature
6606
6607         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
6608         Fix the docs to say that it destructively replaces existing
6609         attributes (previously said that it added attributes).
6610         (gtk_tree_view_column_set_visible): canonicalize bool before
6611         equality testing. Also, check for realization before
6612         hiding/showing the tree_column->window; if this window could exist
6613         before realization, then it's busted and needs fixing, we can't 
6614         create GDK resources pre-realization. Also, remove
6615         superfluous queue_resize(), since set_size() does that for us.
6616         (gtk_tree_view_column_set_col_type): check realization before 
6617         using tree_column->window
6618
6619         * gtk/gtktreedatalist.c: fix filename in copyright notice
6620
6621 2000-12-31  Havoc Pennington  <hp@pobox.com>
6622
6623         * gtk/gtktextview.c: Rearrange all the
6624         scroll-while-dragging-or-selecting code to be different, not
6625         necessarily better. ;-)
6626         (gtk_text_view_scroll_to_mark): Change this
6627         function to take within_margin as a fraction instead of a pixel
6628         value, and to take alignment arguments (indicating where to align 
6629         the mark inside the visible area)
6630         
6631         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
6632         to GtkObject
6633
6634         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
6635         behavior so that offsets past the end of the line are not 
6636         allowed, and an offset equal to the line length moves the iterator
6637         to the next line
6638         (gtk_text_iter_set_line_index): make parallel change
6639         (gtk_text_iter_get_bytes_in_line): add this function
6640         
6641         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
6642         of byte indexes off the end of the line; byte index at the end of
6643         the line now returns FALSE and doesn't fill in the requested
6644         values, byte index past the end of the line is an error.  Also,
6645         don't allow -1 offset anymore, since its meaning is unclear.
6646
6647         This change exposes some bug in visual cursor motion, where we
6648         end up with a huge invalid byte index; needs fixing. Symptom of 
6649         bug is a crash when you hit up arrow.
6650         
6651         (_gtk_text_line_char_locate): match the change to byte_locate
6652
6653         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
6654         from start of line properly. fixes bug reported by Mikael
6655         Hermansson where backspace would delete all text before the
6656         cursor.
6657
6658 2000-12-30  Tor Lillqvist  <tml@iki.fi>
6659
6660         * gdk/win32/gdkwindow-win32.c
6661         (gdk_window_impl_win32_get_visible_region): New function, as in
6662         the X11 backend.
6663         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
6664         instead of duplicating the same code here.
6665
6666         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
6667         GDK_COLORMAP macro.
6668
6669         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
6670         destroy function.
6671         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
6672         access that.
6673
6674         * gtk/gtk.def: Update.
6675
6676         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
6677
6678 2000-12-30  Havoc Pennington  <hp@pobox.com>
6679
6680         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
6681         colormap on input only windows, to avoid special cases all over
6682         the code for these windows.
6683
6684 2000-12-26  Tor Lillqvist  <tml@iki.fi>
6685
6686         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
6687         we are on a palettized display ("PseudoColor" in X11), as the code
6688         for that doesn't work anyway, and never has.
6689
6690 2000-12-22  Alexander Larsson  <alexl@redhat.com>
6691
6692         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
6693         Don't use isprint() for chars > 255.
6694
6695 2000-12-21  Havoc Pennington  <hp@redhat.com>
6696
6697         * tests/testtreeview.c: more work
6698
6699 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6700
6701         * docs/README.linux-fb:
6702         Update the docs to the new pangoft2 way.
6703
6704 2000-12-21  Alexander Larsson  <alexl@redhat.com>
6705
6706         * configure.in:
6707         For linux-fb get the pangoft2 cflags and libs. This needs a recent
6708         pango version.
6709         Remove modules/linux-fb/Makefile.
6710
6711         * gdk/linux-fb/gdkdrawable-fb2.c:
6712         Render glyphs using freetype.
6713
6714         * gdk/linux-fb/gdkfb.h:
6715         Add new fb-specific functions needed for managing windows.
6716
6717         * gdk/linux-fb/gdkmain-fb.c:
6718         Remove gdk_font_init/fini() calls.
6719
6720         * gdk/linux-fb/gdkpango-fb.c:
6721         Remove old implementation. Use pangoft2 instead.
6722
6723         * gdk/linux-fb/gdkprivate-fb.h:
6724         Remove PangoFBFont and related stuff.
6725
6726         * gdk/linux-fb/gdkwindow-fb.c:
6727         Implement drawable->get_visible_region.
6728         Implement support for _gdk_window_set_child_handler () and
6729         _gdk_window_get_decorations().
6730
6731         * modules/Makefile.am:
6732         Remove linux-fb subdir.
6733
6734         * modules/linux-fb/*:
6735         Removed all.
6736         
6737 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
6738
6739         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
6740         calls, as they are no longer needed.
6741
6742         * gtk/gtktreemodelsort.c: Fix up the comparison code.
6743         
6744         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
6745         figure out how to emit a signal on an interface.
6746
6747 2000-12-20  Havoc Pennington  <hp@redhat.com>
6748
6749         * tests: new directory to contain tests, gtk/test* should move
6750         here sometime (with appropriate on-cvs-server hackery)
6751
6752         * tests/testtreeview.c, tests/Makefile.am: a test
6753         
6754         * configure.in (AC_OUTPUT): add tests/Makefile
6755
6756         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
6757         and "invisible_set" which were missing
6758
6759         * gtk/gtkrbtree.h: some cheesy indentation fix
6760         
6761 2000-12-20  Alexander Larsson  <alexl@redhat.com>
6762
6763         * gtk/gtkinvisible.c (gtk_invisible_realize):
6764         Attach the style to the window so that the style it is not
6765         leaked when unrealizing the window.
6766
6767 2000-12-18  Havoc Pennington  <hp@redhat.com>
6768
6769         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
6770         begin/end user action where appropriate
6771         (gtk_text_view_commit_handler): add begin/end user action
6772
6773         * gtk/gtktextbuffer.c: add begin/end user action signals, and
6774         bracket interactive operations with begin/end user action pair.
6775         
6776         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
6777         "interactive" arg from insert_text and delete_text signals.
6778         Add begin_user_action, end_user_action signals
6779         (gtk_text_buffer_begin_user_action): 
6780         (gtk_text_buffer_end_user_action): New functions to delimit 
6781         a user-visible action
6782
6783         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
6784         signals.
6785         
6786 2000-12-18  Havoc Pennington  <hp@redhat.com>
6787
6788         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
6789         was pretty non-working.
6790
6791         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
6792         by passing the length to g_utf8_validate().
6793
6794 2000-12-16  Havoc Pennington  <hp@pobox.com>
6795
6796         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
6797         Port to GObject, can go back in gdk-pixbuf after setting up 
6798         a gdk-pixbuf-marshal.h header over there.
6799
6800         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
6801         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
6802         args
6803         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
6804         set
6805         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
6806         here, do it when we create the buttons later
6807         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
6808         (gtk_tree_view_map): paranoia checks that column->button is shown 
6809         and unmapped
6810         (gtk_tree_view_size_request): only request visible children.
6811         Move header size calculation in here, for cleanliness, and 
6812         to maintain invariants for child widgets if we eventually 
6813         let users set different children inside the buttons
6814         (gtk_tree_view_map_buttons): factor out code to map buttons,
6815         since it was being called several times
6816         (gtk_tree_view_size_allocate_buttons): move_resize the drag
6817         windows instead of just moving them; their height may change 
6818         if we allow random widgets in there, or the theme changes.
6819         (gtk_tree_view_size_allocate): move button size allocation 
6820         above emitting the scroll signals, to ensure a sane state when we
6821         hit user code
6822         (gtk_tree_view_button_release): remove queue_resize after
6823         tree_view_set_size(), set_size() will handle any resize queuing
6824         that's needed
6825         (gtk_tree_view_focus_in): just queue a draw, don't fool with
6826         draw_focus goo
6827         (gtk_tree_view_focus): use gtk_get_current_event() and
6828         gdk_event_get_state()
6829         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
6830         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
6831         semicolon
6832         (gtk_tree_view_create_button): show the button here
6833         (gtk_tree_view_button_clicked): actually emit the clicked signal
6834         on the column
6835         (_gtk_tree_view_set_size): return right away if the size is
6836         unchanged, as a cheesy optimization
6837         (gtk_tree_view_setup_model): rename set_model_realized to 
6838         setup_model to match the flag that indicates whether we've 
6839         called it
6840         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
6841         exist, because set_scroll_adjustment does that and it shouldn't
6842         matter what order you call these in
6843         (gtk_tree_view_get_vadjustment): ditto
6844         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
6845         for paranoia
6846         (gtk_tree_view_set_headers_visible): call
6847         gtk_tree_view_map_buttons() instead of using cut-and-paste code
6848         (gtk_tree_view_append_column): clarify whether the return value
6849         is the count of columns before or after, and do the increment 
6850         separately from the return statement so you can tell from the code.
6851         (gtk_tree_view_remove_column): ditto
6852         (gtk_tree_view_insert_column): ditto
6853         (gtk_tree_view_get_column): remove g_return_if_fail for columns
6854         outside the existing range, the docs say that outside-range
6855         columns are allowed, so we handle them as documented. (Presumably
6856         this allows a nice loop with column != NULL as test.)
6857         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
6858         mean (left/right/center etc.).
6859         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
6860         (gtk_tree_view_expand_row): add docs
6861         (gtk_tree_view_collapse_row): add docs
6862
6863         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
6864         function to emit the clicked signal on a column
6865         
6866         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
6867         state of an event
6868         (gdk_event_get_time): don't treat GDK_SCROLL 
6869         as a button event, remove default case from switch so gcc 
6870         will whine if we don't explicitly handle all event types
6871
6872         * gtk/gtktreeselection.h: added some FIXME 
6873         
6874         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
6875         "columns" to "n_columns" and "column" to "columns" for clarity
6876
6877 2000-12-16  Havoc Pennington  <hp@pobox.com>
6878         
6879         * gtk/gtktextiter.c: General cleanup of the log attr iteration
6880         stuff. This should make e.g. the delete key work again in the
6881         text widget...
6882         (gtk_text_iter_forward_cursor_positions): handle negative count
6883         (gtk_text_iter_backward_cursor_positions): handle negative count
6884         (gtk_text_iter_forward_word_ends): handle negative count
6885         (gtk_text_iter_backward_word_starts): handle negative count
6886
6887         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
6888         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
6889         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
6890         GObject. No doubt will cause breakage.
6891
6892         * demos/gtk-demo/textview.c: remove hacks around
6893         non-GObject-ification of the text objects
6894
6895         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
6896         the text tag
6897         
6898 2000-12-14  Havoc Pennington  <hp@pobox.com>
6899
6900         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
6901         that we have Xrender
6902
6903 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
6904
6905         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
6906         Add two virtualized functions gdk_drawable_get_clip_region - to
6907         get the clip region when drawing.
6908         
6909         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
6910         use invalidate_region.
6911
6912         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
6913         region.
6914
6915         * acconfig.h configure.in: Check for Xft. For now, assume
6916         that if Xft is found, Pango was compiled with Xft support
6917         as well.
6918
6919         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
6920         gdk_colormap_query_color().
6921         
6922         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
6923         with Xft if appropriate.
6924
6925         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
6926         a pangoxft context if we have XFT and the environment
6927         variable GD_USE_XFT is set.
6928         
6929         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
6930         and also possibly an XftDraw structure.
6931
6932         * gtk/gtkfontsel.c: Handle the case where the font from the
6933         style doesn't match any of the fonts a bit better.
6934         
6935         * gtk/testgtk.c: Add tabs between directional segments for
6936         hebrew/arabic test. (Not really necessary, just a little
6937         prettier.)
6938
6939 2000-12-14  Havoc Pennington  <hp@redhat.com>
6940
6941         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
6942         reading a file
6943
6944 2000-12-14  Havoc Pennington  <hp@redhat.com>
6945
6946         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
6947         unused call to get_last_line()
6948
6949         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
6950         here until boxed is working (and maybe after that - we should
6951         really not gratuitously break old code)
6952
6953         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
6954         specific types for font_desc and tabs args, move them to
6955         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
6956         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
6957
6958         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
6959         use GTK_TYPE_POINTER for signal signatures as a hack-around
6960
6961         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
6962         PangoTabArray
6963
6964         * gtk/gtktextlayout.c (line_display_iter_to_index): 
6965         make static
6966         (line_display_index_to_iter): make static
6967
6968         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6969         to marshal a string not a boxed
6970
6971         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
6972
6973         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
6974         since the UTF-8 isn't validated yet
6975
6976         * gtk/gtktextsegment.c (char_segment_check_func): don't require
6977         lines to end in '\n'
6978         
6979         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
6980         forward_to_delimiters, and grapheme boundaries
6981         (gtk_text_view_delete_from_cursor): properly handle non-newline
6982         delimiters, and grapheme boundaries
6983
6984         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
6985         to gtk_text_iter_forward_to_delimiters, and make it work properly
6986         if empty lines end with a character other than '\n'
6987
6988         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
6989         position
6990
6991 2000-12-15  Tor Lillqvist  <tml@iki.fi>
6992
6993         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
6994
6995         * gtk/gtk.def
6996         * gdk/gdk.def: Update.
6997
6998         * gdk/win32/gdkmain-win32.c
6999         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
7000         gdkmain-win32.c here.
7001
7002         * gdk/win32/makefile.mingw.in (all): No need to make
7003         gdk-win32res.o here, the makefile one step up will call us to make
7004         it.
7005
7006         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
7007         gdkkeys-win32.
7008
7009         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
7010
7011         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
7012         call to g_source_add().
7013
7014         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
7015         leak. Thanks to Andreas Kemnade.
7016
7017 2000-12-13  Havoc Pennington  <hp@pobox.com>
7018
7019         * gtk/gtktextbtree.h: Remove double _ in front of some functions
7020
7021         * gtk/gtktext*.[hc]: update accordingly
7022         
7023 2000-12-13  Havoc Pennington  <hp@pobox.com>
7024
7025         * gtk/gtktextbtree.h: Put _ in front of every function in this 
7026         header file
7027
7028         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
7029
7030 2000-12-13  Alex Larsson  <alexl@redhat.com>
7031
7032         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
7033         Add support for ps2 intellimouse.
7034
7035         * gdkkeyboard-fb.c:
7036         Move shift-F1 repaint handling to xlate handler only.
7037         
7038         * docs/README.linux-fb:
7039         Add imps2 to docs.
7040         Document the new refresh keys.
7041         
7042 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
7043
7044         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
7045
7046         * gtk/gtkbox.c: change property types from (u)long to (u)int for
7047         ::position and ::padding.
7048
7049         * gtk/gtkcontainer.c: make ::border_width an INT property.
7050
7051         * gtk/gtkpacker.c: make ::position an INT property.
7052
7053         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
7054         guard against NULL h/v scrollbars, since this is used at construction
7055         time.
7056
7057         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
7058         internal gtk_clist_constructor().
7059
7060         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
7061         gtk_ctree_constructor().
7062
7063         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
7064         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
7065
7066         * docs/reference/Makefile.am: fun stuff, disabled docs generation
7067         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
7068
7069         * gtk/gtkwidget.[hc]:
7070         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
7071         and gtk_widget_get().
7072         (gtk_widget_new): use g_object_new_valist().
7073         (gtk_widget_set): use g_object_set_valist().
7074
7075         * gtk/gtkobject.[hc]:
7076         removed gtk_object_arg_get_info(), gtk_object_getv(),
7077         gtk_object_query_args(), gtk_object_newv(),
7078         gtk_object_class_add_signals(),
7079         gtk_object_class_user_signal_new(),
7080         gtk_object_class_user_signal_newv(),
7081         gtk_object_arg_set(), gtk_object_arg_get(),
7082         gtk_object_args_collect(),
7083         gtk_object_default_construct(),
7084         gtk_object_constructed(),
7085         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
7086         removed nsignals, signals and n_args members from GtkObjectClass.
7087         (gtk_object_new): use g_object_new_valist().
7088         (gtk_object_set): use g_object_set_valist().
7089         (gtk_object_get): use g_object_get_valist().
7090         
7091         * gtk/gtkcompat.h: define gtk_object_default_construct().
7092         
7093         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
7094         g_object_new().
7095
7096         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
7097         fucntions, cleaned up method assignments (make sure your structures
7098         are setup properly before calling out). removed all GTK_CONSTRUCTED
7099         hacks ;)
7100
7101 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
7102
7103         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
7104         off-by-one error in checks. (Dave Lambert)
7105
7106 2000-12-12  Alexander Larsson  <alexl@redhat.com>
7107
7108         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
7109         Don't free gdk_fb_keyboard twice.
7110
7111 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
7112
7113         * gtk/testgtk.c:
7114         (create_tooltips): 
7115         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
7116         use GObject swapped_signal:: properties instead.
7117
7118         * gtk/gtkcellrenderertoggle.c: 
7119         * gtk/gtkcellrenderertextpixbuf.c: 
7120         * gtk/gtkcellrenderertext.c: 
7121         * gtk/gtkcellrendererpixbuf.c: 
7122         * gtk/gtkcellrenderer.c:
7123         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
7124         missing warnings for invalid property ids, install properties
7125         with g_object_class_install_property() now.
7126         
7127         * gtk/gtksignal.c:
7128         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
7129         
7130 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
7131         
7132         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
7133         to determine if a window is the focus widget within
7134         its toplevel.
7135
7136         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
7137         to be boolean.
7138
7139         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
7140         of the case where the container CAN_FOCUS to here instead
7141         of having it in each individual move-the-focus place.
7142
7143         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
7144         focusing to be geometric in a much more obvious sense. Arrowing
7145         around is still non-intuitive because it isn't perfect and
7146         because entries, etc, grab the arrow keys, but it at least
7147         usually will do what you expect now.
7148         
7149         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
7150         file.
7151
7152         * gtk/gtknotebook.c: Change tabs to be a single item in
7153         the focus chain. Make movement of focus on tabs with arrow
7154         keys wrap around.
7155         
7156         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
7157         CHECK_FIND_CHILD macro to give informative error messages
7158         instead of silent returns.
7159
7160         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
7161         flag since we handle GdkReturn on the tabs.
7162
7163         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
7164         windows rather than sending expose events directly.
7165
7166         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
7167         definition for GtkNotebookPage into .c file, since it is private.
7168
7169         * gtk/testgtk.c (create_notebook): Add option for 
7170         testing borderless notebook.
7171
7172         * gtk/testgtk.c (page_switch): Removed egregious poking
7173         around in GTK+ internals.
7174
7175         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
7176
7177         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
7178         properly through gtk_clist_focus. Make the title headers a
7179         single item in the tab-focus chain, and make left-right wrap
7180         around.
7181
7182         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
7183         focus method so that wrapping around works properly.
7184
7185         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
7186         that is handled for the widget now. 
7187
7188 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
7189
7190         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
7191         widgets as TOPLEVEL.
7192
7193         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
7194         TOPLEVEL widgets are containers.
7195
7196         * gtk/gtkinvisible.h: Remove useless include.
7197
7198 2000-12-11  Havoc Pennington  <hp@redhat.com>
7199
7200         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
7201         Handle chopping off \r\n and 0x2029 in addition to \n before
7202         passing to PangoLayout
7203
7204         * gtk/gtkimcontextsimple.c
7205         (gtk_im_context_simple_get_preedit_string): 
7206         return an empty string if no match is pending
7207
7208         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
7209         assertion that the returned preedit string was sane
7210
7211         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
7212         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
7213         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
7214
7215 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
7216
7217         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
7218         Fix up finalizer to chain to its parent.
7219
7220 2000-12-11  Alexander Larsson  <alexl@redhat.com>
7221
7222         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
7223         Clearified the difference between the keyboard types. Wrote a note
7224         about the magic sysrq key to get out of raw mode.
7225
7226 2000-12-09  James Henstridge  <james@daa.com.au>
7227
7228         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
7229         member to hold masks for detecting the start of a protocol packet.
7230         (mouse_devs): add packet start masks for ps2 and ms device types.
7231         Left the mask for fidmour blank, as I have no idea what it should
7232         be.
7233         (handle_mouse_io): skip bytes until we get to the start of a
7234         packet.  My Logitech mouse seems to be passing an extra NULL pad
7235         byte, and GPM does a similar thing here.
7236         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
7237         this is the ms mouse driver.
7238         (gdk_fb_mouse_ms_packet): fix up button handling, which was
7239         completely broken except for button1.  It was checking the wrong
7240         bit in the packet for the status of the right mouse button, and
7241         wrongly assuming right == button2 rather than 3.  I fixed that and
7242         also added support for middle button (button2).
7243
7244 2000-12-08  Havoc Pennington  <hp@redhat.com>
7245
7246         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
7247         that cause a segfault on text insertion
7248
7249         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
7250         warning
7251
7252         * gtk/gtktextiter.c (test_log_attrs): use
7253         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
7254
7255         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
7256         Get log attrs for a line, using a cache stored on the buffer
7257         
7258         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
7259         reported by Jeff Franks
7260
7261 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7262
7263         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
7264         /dev/ttyS0 -> /dev/mouse
7265
7266 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7267
7268         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
7269         Added dummy gdk_fontset_load.
7270
7271 2000-12-08  Alexander Larsson  <alexl@redhat.com>
7272
7273         * docs/README.linux-fb:
7274         * docs/Makefile.am:
7275         Initial GtkFB docs.
7276         
7277         * gdk/linux-fb/Makefile.am:
7278         Define GDK_DATA_PREFIX.
7279
7280         * gdk/linux-fb/gdkmain-fb.c:
7281         Fix typo.
7282         Change default display to /dev/fb0.
7283
7284         * gdk/linux-fb/gdkpango-fb.c:
7285         Add $(prefix)/share/fonts/ to font path.
7286         
7287 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
7288
7289         * gdk/linux-fb/gdkkeyboard-fb.c:
7290         New file containing the abstracted keyboard driver. Most code
7291         taken from gdkinput-ps2.c
7292
7293         * gdk/linux-fb/gdkinput-ps2.c:
7294         Removed file.
7295         
7296         * gdk/linux-fb/Makefile.am:
7297         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
7298
7299         * gdk/linux-fb/gdkcolor-fb.c:
7300         display->fb was renamed to display->fb_fd.
7301
7302         * gdk/linux-fb/gdkcursor-fb.c:
7303         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7304
7305         * gdk/linux-fb/gdkinput.c:
7306         Moved gdk_input_init here from gdkinput-ps2.c
7307
7308         * gdk/linux-fb/gdkmain-fb.c:
7309         display->fb was renamed to display->fb_fd.
7310         Now the tty and the console is opened here instead
7311         of in the keyboard driver. Also check GDK_VT to see what
7312         tty to open.
7313         Move gdk_beep () here from gdkinput-ps2.c
7314         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7315
7316         * gdk/linux-fb/gdkmouse-fb.c:
7317         Add header.
7318         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7319         Return correct keyboard modifiers.
7320         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
7321
7322         * gdk/linux-fb/gdkprivate-fb.h:
7323         Add tty and vt info to display.
7324         Add orignal modeinfo storage to display
7325         Update global functions
7326
7327         * gdk/linux-fb/gdkwindow-fb.c:
7328         Added gdk_fb_window_find_focus().
7329         gdk_mouse_get_info -> gdk_fb_mouse_get_info
7330
7331 2000-12-07  Havoc Pennington  <hp@pobox.com>
7332
7333         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
7334         function, noticed by Alex
7335
7336 2000-12-06  Elliot Lee  <sopwith@redhat.com>
7337
7338         * configure.in: Detect freetype properly
7339
7340         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
7341         above.
7342
7343 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7344
7345         * gdk/linux-fb/Makefile.am:
7346         Add gdkmouse-fb.c
7347         
7348         * gdk/linux-fb/gdkmouse-fb.c:
7349         New file. Abstracted the mouse drivers a bit.
7350
7351         * gdk/linux-fb/gdkcursor-fb.c:
7352         The cursor hide/show functions was moved here from gdkinput-ps2.c.
7353
7354         * gdk/linux-fb/gdkinput-ps2.c:
7355         Removed old mouse handling code. Moved cursor handling code
7356         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
7357         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
7358         gdk_mouse_get_info.
7359
7360         * gdk/linux-fb/gdkmain-fb.c:
7361         Pass NULL pointers for x,y in gdk_mouse_get_info call.
7362
7363         * gdk/linux-fb/gdkprivate-fb.h:
7364         Removed public gdk_fb_find_common_ancestor, added and renamed
7365         functions for the new mouse handling code.
7366
7367         * gdk/linux-fb/gdkwindow-fb.c:
7368         Moved gdk_fb_window_send_crossing_events here. added global
7369         variable gdk_fb_window_containing_pointer. made
7370         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
7371         renamed to gdk_mouse_get_info.
7372
7373 2000-12-06  Alexander Larsson  <alexl@redhat.com>
7374
7375         * gdk/linux-fb/gdkevents-fb.c:
7376         Update to match latest gmain/gsource changes.
7377
7378         * gdk/linux-fb/gdkinput-ps2.c:
7379         Bogus gdk_keymap_get_entries_for_keycode implementation so that
7380         it links. Will be implemented later.
7381
7382 2000-12-03  Havoc Pennington  <hp@pobox.com>
7383
7384         * gdk/Makefile.am: add gdkkeys.[hc]
7385
7386         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
7387         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
7388
7389         * acconfig.h, configure.in: add checks and command line options
7390         for XKB
7391
7392         * gdk/x11/gdkkeys-x11.c: Implement the above functions
7393         
7394         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
7395         and group in the key event
7396
7397         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
7398         field with the low-level hardware key code, and a group
7399         field with the keyboard group
7400
7401         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
7402         and declare a couple globals used for keymap handling
7403         
7404         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
7405         hold down Shift-Control and type a hex number to get a Unicode 
7406         character corresponding to the hex number
7407         (gtk_im_context_simple_get_preedit_string): Fix cursor position
7408         (return bytes not chars)
7409
7410 2000-12-05  Elliot Lee  <sopwith@redhat.com>
7411
7412         * gdk/gdkcolor.h: Make GdkColor specify element sizes
7413         to avoid waste on 64-bit platforms.
7414
7415 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
7416
7417         * INSTALL: Fix link to PNG home, remove reference
7418         to fribidi.
7419
7420         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
7421         
7422         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
7423         tested.)
7424
7425         * gtk/gtkcheckmenuitem.c: Permanently turn on
7426         always_show_toggle.
7427
7428         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
7429         be NULL. (Vladimir Klebanov, #26545)
7430
7431         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
7432         some signed/unsigned comparison problems. (#6510,
7433         David Kaelbling)
7434
7435         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
7436         return type to boolean (Oskar Liljeblad, #18648)
7437
7438 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7439
7440         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
7441         Remove bogus colormap setting.
7442
7443 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7444
7445         * gdk/linux-fb/gdkcolor-fb.c:
7446         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
7447
7448         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
7449         Must set colormap.
7450         
7451 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
7452
7453         * docs/tutorial/gtk-tut.sgml: DND updates
7454
7455 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
7456
7457         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7458         Remove old debug g_warning().
7459         (gdk_fb_draw_drawable): The src argument can be either a wrapper
7460         or an implementation, just pass the implementation to draw_drawable_2.
7461         
7462         * gdk/linux-fb/gdkprivate-fb.h:
7463         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
7464
7465         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7466         clear and invalidate area when window is destroyed.
7467         (send_map_events): Remove old commented out code.
7468
7469 2000-12-05  Alexander Larsson  <alexl@redhat.com>
7470
7471         * gdk/linux-fb/gdkpango-fb.c:
7472         Use italic instead of oblique in font aliases.
7473         
7474         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
7475         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
7476         other unsupported functions.
7477
7478 2000-12-04  Havoc Pennington  <hp@redhat.com>
7479
7480         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
7481
7482         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
7483
7484         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
7485
7486         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
7487         hack to avoid infinite loops (synthetic expose event) - 
7488         Owen has more appropriate fixes in a branch he'll check in later.
7489
7490         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
7491         separator, CR, and CRLF as line ends
7492
7493         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
7494         into lines using pango_find_paragraph_boundary(); other bits of
7495         the widget are still going to be broken if the boundary isn't '\n'
7496         though
7497
7498 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7499
7500         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
7501         multiply.
7502
7503         * gdk/linux-fb/gdkpango-fb.c:
7504         Copied some 26.6 scaling macros from pango to clean up the rounding.
7505         (pango_fb_font_get_glyph_info): Correct sign on x value.
7506
7507         * gdk/linux-fb/gdkprivate-fb.h:
7508         Removed unreferenced external functions.
7509
7510         * modules/linux-fb/Makefile.am: Use ` instead of '.
7511
7512         * modules/linux-fb/basic.c:
7513         Remove dead code. In particular the dummy lang engine which broke all
7514         pango layouts in GtkFB. Don't include tables-big.i anymore.
7515
7516         * modules/linux-fb/tables-big.i:
7517         Upgrade to latest version from pango. Left for reference, basic_ranges
7518         moved to basic.c.
7519         
7520 2000-12-04  Havoc Pennington  <hp@redhat.com>
7521
7522         Fix bugs Alex found:
7523         
7524         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
7525         to "draw"
7526
7527         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
7528
7529         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
7530
7531         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
7532         implementation in here, apparently the expose() implementation was
7533         dead code.
7534
7535 2000-12-04  Alexander Larsson  <alexl@redhat.com>
7536
7537         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7538         Return positive descent.
7539
7540 2000-12-02  Havoc Pennington  <hp@pobox.com>
7541
7542         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
7543         method and signal
7544         
7545         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
7546         calls gdk_window_process_updates() to push the exposes through
7547         (gtk_widget_class_init): No more draw signal, no
7548         gtk_widget_real_draw()  
7549         
7550         * gtk/gtkbin.c (gtk_bin_draw): remove
7551
7552         * gtk/gtkbox.c (gtk_box_draw): remove
7553
7554         * gtk/gtkbutton.c (gtk_button_draw): remove
7555
7556         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
7557
7558         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
7559
7560         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
7561
7562         * gtk/gtkclist.c (gtk_clist_draw): remove
7563
7564         * gtk/gtkentry.c (gtk_entry_draw): remove
7565
7566         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
7567
7568         * gtk/gtkfixed.c (gtk_fixed_draw): remove
7569
7570         * gtk/gtkframe.c (gtk_frame_draw): remove
7571
7572         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
7573
7574         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
7575
7576         * gtk/gtklayout.c (gtk_layout_draw): remove
7577
7578         * gtk/gtklist.c (gtk_list_draw): remove
7579
7580         * gtk/gtklistitem.c (gtk_list_item_draw): remove
7581
7582         * gtk/gtkmenu.c (gtk_menu_draw): remove
7583
7584         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
7585
7586         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
7587
7588         * gtk/gtknotebook.c (gtk_notebook_draw): remove
7589
7590         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
7591
7592         * gtk/gtkpacker.c (gtk_packer_draw): remove
7593
7594         * gtk/gtkrange.c (gtk_range_draw): remove
7595
7596         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
7597
7598         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
7599
7600         * gtk/gtktable.c (gtk_table_draw): remove
7601
7602         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
7603
7604         * gtk/gtktext.c (gtk_text_draw): remove
7605
7606         * gtk/gtktextview.c (gtk_text_view_draw): remove
7607
7608         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
7609
7610         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
7611
7612         * gtk/gtktree.c (gtk_tree_draw): remove
7613
7614         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
7615
7616         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
7617
7618         * gtk/gtkviewport.c (gtk_viewport_draw): remove
7619
7620         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
7621
7622         * gtk/gtkvscale.c (gtk_vscale_draw): remove
7623
7624         * gtk/gtkwindow.c (gtk_window_draw): remove
7625
7626 2000-20-01  Anders Carlsson  <andersca@gnu.org>
7627
7628         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
7629         a GtkToggleButton is both insensitive and active, it was being
7630         drawn by the GtkButton draw handler which doesn't check the
7631         state. Now it's calling gtk_toggle_button_paint instead.
7632         
7633 2000-12-01  Havoc Pennington  <hp@redhat.com>
7634
7635         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
7636         dangling pointers to the appearance attributes from the 
7637         line display
7638
7639         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
7640         width/height to mean "full width/height of drawable"
7641
7642         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
7643         click to select word/line
7644         
7645         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
7646         when getting log attrs. Get a slice, so that pixmaps and stuff
7647         are properly handled.
7648
7649         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
7650         paste into the selection (replaces selection now, previously
7651         crashed or added to selection). Reveals longstanding btree bug -
7652         select multiple lines, middle-click on the selection, boom. This
7653         isn't related to my changes though.
7654
7655         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
7656         PangoLogAttrs changes
7657         (gtk_entry_move_backward_word): ditto
7658
7659         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
7660         functions return bool whether the iter moved onto a
7661         dereferenceable position.
7662  
7663         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
7664         functions for motion in terms of display lines.
7665
7666         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
7667         get the buffer a mark is inside
7668         
7669 2000-12-01  Alexander Larsson  <alexl@redhat.com>
7670
7671         * gdk/linux-fb/Makefile.am:
7672         * modules/linux-fb/Makefile.am:
7673         Freetype 2 final uses freetype-config
7674
7675         * gdk/linux-fb/gdkpango-fb.c:
7676         Upgrade to use Freetype 2 final.
7677         More flexible support for font aliases, this also fixes a bug with
7678         GtkFontSelector, as the aliases must be visible in the font/family list,
7679         or GtkFontSelector reads uninitialized memory.
7680
7681 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
7682
7683         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
7684         XGetIMValues to properly terminate variable argument list, and do
7685         NULL return check for ic_values and xim_styles.
7686
7687         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
7688         Restore preedit state after XmbResetIC().
7689         
7690         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
7691         XvaCreateNestedList() should take XvaNestedList, but not
7692         XvaNestedList*.
7693
7694         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
7695         preedit_draw_callback, preedit_caret_callback): Match
7696         "preedit-changed" signal name to "preedit_changed" to be
7697         consistent to the spec.
7698
7699         * gtk/gtkimcontextsimple.c (check_table):
7700         Match "preedit-changed" to "preedit_changed" to be consistent
7701         to the spec.
7702
7703 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
7704
7705         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
7706         gc->clip_region == NULL>
7707
7708 2000-11-30  Tor Lillqvist  <tml@iki.fi>
7709
7710         Changes by Hans Breuer:
7711         
7712         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7713         Dont't use negative width and height as max_hints. This fixes
7714         Owen's recent testgtk changes for win32.
7715
7716         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
7717         gdk_win32_hdc_release): These are exported and may be called with
7718         other drawable types than our GdkDrawableImplWin32 (?).
7719
7720         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
7721         so always #define USE_BACKING_STORE.
7722
7723         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
7724         of printf for debugging output.
7725
7726         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
7727         
7728         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
7729
7730         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
7731         declaration.
7732
7733         * gtk/gtktexttypes.h: Ditto.
7734
7735         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
7736         (GDK_VoidSymbol) also if in case of arg check failure.
7737
7738         * gtk/gtkimcontextsimple.c
7739         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
7740         position to the pointer, but to the variable it points to.
7741
7742         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
7743
7744         * gtk/gtk.def: Updates.
7745
7746 2000-11-29  Elliot Lee  <sopwith@redhat.com>
7747
7748         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
7749         GTK_TYPE_TREE_MODEL.
7750
7751 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7752
7753         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
7754         Set the size of the font from the description.
7755         (gdk_text_width): Gross hack that calculates the width
7756         of text by text_length * size/2. This is necessary because
7757         GtkLabel does some ugly gtk_string_width call to calculate
7758         an good size.
7759         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
7760
7761 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
7762
7763         * docs/tutorial/gtk-tut.sgml: DND updates
7764
7765 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7766
7767         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
7768         If you pass width or height == 0 to gdk_window_clear_area they
7769         should be calculated from the window size.
7770
7771 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7772
7773         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
7774         a grab, but no grab-cursor, use the cursor from the grabbed
7775         window. (gdk_fb_window_send_crossing_events): Send normal
7776         enter/leave notifications if grab and owner_events == TRUE.
7777
7778 2000-11-29  Alexander Larsson  <alexl@redhat.com>
7779
7780         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7781         Do implicit button grabs, even if the window doesn't
7782         want the event.
7783         (gdk_fb_window_send_crossing_events): If there is a
7784         grab, only the grabbed window gets normal enter/leave
7785         notifications. On ungrab go from grabbed window to current.
7786         Don't send any notification to b when propagating from c -> b.
7787         If setting a grab on window, don't set prev_window.
7788         (handle_mouse_input): Send enter/leave events to the window the
7789         mouse is over, not the grabbed one.
7790         
7791 2000-11-28  Elliot Lee  <sopwith@redhat.com>
7792
7793         * gdk/gdkregion-generic.c: Zap warning.
7794         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
7795         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
7796
7797 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
7798
7799         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7800         The cursor should be hidden if it is part of either the
7801         source or destination region. Not only if it is in both.
7802         (gdk_window_set_transient_for): Silence warnings.
7803
7804 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7805
7806         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
7807         The default mode in X is Pie Arcs, therefore that is
7808         what Gtk+ uses.
7809
7810 2000-11-28  Alexander Larsson  <alexl@redhat.com>
7811
7812         * gdk/linux-fb/gdkinput-ps2.c:
7813         Implement correct EnterNotify/LeaveNotify:
7814         (gdk_fb_window_send_crossing_events): New function that sends
7815         all GdkCrossingEvents from the last mouse-window to the specified
7816         destination.
7817         (gdk_fb_window_visibility_crossing): Removed function.
7818         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
7819         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
7820         instead of gdk_window_get_pointer() for better readability.
7821
7822         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
7823         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
7824
7825         * gdk/linux-fb/gdkprivate-fb.h:
7826         removed gdk_fb_window_visibility_crossing, added
7827         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
7828
7829         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
7830         New function that finds the least common ancestor of two windows.
7831         (gdk_window_show, gdk_window_hide):
7832         Use gdk_fb_window_send_crossing_events.
7833         (gdk_fb_window_move_resize): Send configure events to toplevel
7834         windows. Use gdk_fb_window_send_crossing_events.
7835
7836 2000-11-27  Havoc Pennington  <hp@redhat.com>
7837
7838         * gtk/gtkprivate.h (enum): Remove a trailing comma
7839
7840 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
7841
7842         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
7843         the "changed" callback of the adjustment.  We need to redraw the
7844         spin button's arrows when the adjustment's range changes.
7845         (adjustment_changed_cb): Draw the arrows.
7846         (gtk_spin_button_value_changed): Draw the arrows.
7847
7848 2000-11-23  Alexander Larsson  <alexl@redhat.com>
7849
7850         * gdk/linux-fb/gdkselection-fb.c:
7851         Initial selection implementation.
7852
7853         * gtk/gtkselection.c:
7854         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
7855         requestor in gtk_selection_request.
7856         
7857         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
7858         Added gdk_selection_property atom.
7859
7860         * gdk/linux-fb/gdkprivate-fb.h:
7861         Export _gdk_selection_window_destroyed.
7862         Removed mask_off_x/y from GdkCursorPrivateFB.
7863         Removed hbearing, added top, left to PangoFBGlyphInfo.
7864
7865         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
7866         Call _gdk_selection_window_destroyed
7867         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
7868         the root window has been created.
7869         (static_dx_hack, static_dy_hack, compare_draw_rects,
7870         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
7871         in region. They are already sorted. Instead just traverse them in
7872         reverse if draw_direction < 0.
7873         
7874         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
7875         Double-clicks must be sent after the normal button_press.
7876         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
7877         
7878         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
7879         Pass _gdk_fb_screen_gc instead of NULL.
7880
7881         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
7882         Initialize gdk_selection_property.
7883         (gdk_event_make): Remove unused code.
7884
7885         * gdk/linux-fb/gdkcursor-fb.c:
7886         Make the pixmap for the cursor the same size as the mask. Also remove
7887         the mask_off_x/y fields in GdkCursorPrivateFB and combine
7888         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
7889         Now the whole cursor is visible.
7890
7891         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
7892         Fix bug where xdest+height instead of ydest+height was used
7893         to calculate if the source and dest overlapped. This fixes the
7894         redraw bug when the main window in testgtk was scrolled when
7895         partially covered by a tall window.
7896         Copy rectangles in region in order depending on draw_direction.
7897         Also moved the draw_direction flipping of start_y and end_y into
7898         the gc functions, as this might not be what all of them want.
7899         (gdk_fb_draw_lines): Support dashed lines.
7900         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
7901         so that the text is positioned correctly (was 1 pixel high).
7902
7903         gdk/linux-fb/gdkgc-fb.c:
7904         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
7905         all lines were drawn a pixel to short. Also checked the default of
7906         the rest of the values, and they're the same as X now.
7907
7908         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
7909         Clean up pixel positioning of the glyphs. Just use bgy->top and
7910         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
7911         to all divisions to get correct rounding behaviour.
7912
7913         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
7914         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
7915         Moved start_y/end_y flip into draw_drawable implementations.
7916         Flip also x rendering when draw_direction < 0.
7917         Remove unneccesary multiply with draw_direction.
7918
7919 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
7920
7921         * docs/tutorial/gtk-tut.sgml:
7922           - get rid of gtk_toggle_button_toggled FUD
7923           - start DND section - needs work - based on:
7924                 http://wolfpack.twu.net/docs/gtkdnd/
7925
7926 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7927
7928         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
7929         Correct calculation of font metrics. Now GtkEntrys have sane
7930         size.
7931
7932 2000-11-22  Alexander Larsson  <alexl@redhat.com>
7933
7934         * gdk/gdktypes.h:
7935         Add new type GdkSpan
7936         
7937         * docs/reference/gdk/gdk-sections.txt,
7938         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
7939         gdk/gdkregion.h:
7940         Implement and document gdk_region_spans_intersect_foreach.
7941
7942         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
7943         Add new file gdkrender-fb.c which contains all core
7944         rendering code.
7945         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
7946         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
7947         (optimized rectangle fillers).
7948
7949         * gdk/linux-fb/gdkdrawable-fb2.c:
7950         Move all rendering code to gdkrender-fb.c.
7951         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
7952         Use the new span intersection functions in gdk_fb_fill_spans.
7953         gdk_fb_draw_rectangle() clips filled rectangles and calls
7954         gc->fill_rectangle with the result.
7955         gdk_fb_fill_spans() gets extra argument "sorted".
7956
7957         * gdk/linux-fb/gdkevents-fb.c:
7958         Remove unused includes and defines.
7959         New function gdk_fb_get_time() to get correct time for events.
7960
7961         * gdk/linux-fb/gdkinput-ps2.c:
7962         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
7963         Make sure to set the time of all events.
7964
7965         * gdk/linux-fb/gdkmain-fb.c:
7966         Use gdk_fb_get_time ().
7967
7968         * gdk/linux-fb/gdkprivate-fb.h:
7969         New virtual GC calls: fill_span & fill_rectangle.
7970         Export gdk_fb_get_time().
7971         gdk_fb_fill_spans() gets extra argument "sorted".
7972
7973         * gdk/linux-fb/mi*.c:
7974         Use GdkSpan instead of GdkRectangle.
7975         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
7976         from XFree 4 source)
7977         
7978 2000-11-22    <jrb@redhat.com>
7979
7980         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
7981         reversing the order in an if statement will do.  Doing so managed
7982         to make the treemodelsort half work.  Other half will follow after
7983         I get the insert function fully fixed.
7984
7985 2000-11-21  Elliot Lee  <sopwith@redhat.com>
7986         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
7987         more than 2 bits. Besides, I need to implement an evil hack. :)
7988
7989 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
7990
7991         * docs/tutorial/gtk-tut.sgml: minor corrections
7992
7993 2000-11-20  Jonathan Blandford <jrb@redhat.com>
7994         * gtk/gtktreemodelsort.h: Add convertion functions to let you
7995           convert to and from relative path's and iters.
7996
7997         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
7998           testing sorting functions a bit better.  Currently broken -- will
7999           fix in morning.
8000
8001 2000-11-20  Havoc Pennington  <hp@redhat.com>
8002
8003         * gtk/gtkwidget.c: Documented a bunch of functions in here
8004         (gtk_widget_realize): Warn if you try to realize
8005         a widget with no parent that isn't a toplevel
8006         (gtk_widget_intersect): return a gboolean
8007
8008 2000-11-20  Havoc Pennington  <hp@redhat.com>
8009
8010         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
8011         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
8012         scrolling to be implemented in GDK to finish. Also, right now
8013         we just size_allocate all children on every layout change,
8014         which is pretty lame. Test commented out of testtext.c, 
8015         until it works better.
8016
8017 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
8018
8019         * gdk/linux-fb/gdkdrawable-fb2.c:
8020         Removed unused arguments from gdk_fb_drawable_get_pixel().
8021
8022         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
8023         Renamed fidur specific mouse packet data in MouseDevice to
8024         generic. Used it in ps2 mouse handling code to avoid blocking
8025         reads.
8026
8027 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
8028
8029         * demos/gtk-demo/main.c: Changed to have the list become
8030         non-italic when the demo window is destroyed through an external
8031         event (like a close button).  Doing so found three bugs in the
8032         widget.
8033
8034         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
8035
8036         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
8037         we actually set the cell.
8038
8039         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
8040
8041         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
8042         free a leaked path.  Thanks memprof.
8043
8044 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
8045
8046         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
8047         off-by-one error when destroying allocated segments
8048         on failure. (Elliot)
8049
8050 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
8051
8052         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
8053         memleaks found by Evan Martin.
8054
8055 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
8056
8057         * Released 1.3.2
8058         
8059         * NEWS: Updates for 1.3.2
8060
8061 2000-11-17  Tor Lillqvist  <tml@iki.fi>
8062
8063         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
8064         but in general for window system specific events.
8065
8066         * gtk/gtk.def
8067         * gtk/makefile.mingw.in
8068         * gtk/makefile.msc.in: Update.
8069         
8070         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
8071
8072 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
8073
8074         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
8075         distribute gtk.immodules.
8076
8077         * gtk/Makefile.am (install-data-local): Don't install the
8078         gtk.immodules file created for the uninstalled modules;
8079         instead run gtk-query-immodules after install
8080
8081 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
8082
8083         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
8084         -rpath to the right install location.
8085
8086         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
8087         -export-dynamic.
8088
8089         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
8090         properly.
8091
8092 2000-11-15  Havoc Pennington  <hp@pobox.com>
8093
8094         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
8095         patch from Mikael Hermansson to temporarily stop blinking while
8096         the user is using the keyboard to type or navigate. 
8097
8098         Also, when blinking, stay on for longer than we stay off. Also,
8099         return from start_cursor_blink if !cursor_visible, to save
8100         checking that flag all over the place before we call
8101         start_cursor_blink.
8102
8103 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
8104
8105         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
8106         only contain a "fontset" line, which is now ignored.
8107
8108         * gtk/gtkentry.c (gtk_entry_button_release): Make 
8109         double-click-to-select-word work.
8110         
8111 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
8112
8113         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
8114         Don't move back one char when we are actually at the end of the 
8115         paragraph.
8116
8117 2000-11-15  Robert Brady  <robert@suse.co.uk>
8118
8119         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
8120         'o' < 'p'.
8121         
8122         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
8123         bind_textdomain_codeset.
8124
8125         (gtk_init_check): Make the warning about translating default:LTR
8126         sterner.
8127         
8128 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
8129
8130         * **/Makefile.am : remove unecessary rules for win32-specific
8131         config-substituted targets. If you want these rules, use
8132         --enable-maintainer-mode (called automatically by autogen.sh).
8133         Stops a lot of unneccessary make-time warnings.
8134
8135         * gtk/gtktext{layout,display}.c: Factor in total width as
8136         well as screen when figuring alignment for word-wrap as well as
8137         no wrap; this is necessary to handle lines that cannot be wrapped
8138         at all.
8139
8140 2000-11-15  Havoc Pennington  <hp@redhat.com>
8141
8142         * gtk/testtext.c: Implement essential color cycling feature
8143
8144 2000-11-15  Havoc Pennington  <hp@redhat.com>
8145
8146         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
8147         when we invalidate the main window.
8148
8149         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
8150         GtkTextView will now invalidate the side windows for us when text
8151         changes.
8152
8153 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
8154
8155         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
8156         unconditionally, since we may need to update the horizontal
8157         scrollbars even if the height didn't change.
8158
8159         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
8160         the extra attrs, since some of them affect size.
8161
8162         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
8163         x_offset correctly.
8164
8165 2000-11-15  Havoc Pennington  <hp@redhat.com>
8166
8167         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
8168         don't move the first line out into the margin, instead move the
8169         whole paragraph in order to make space for the first line within 
8170         the margin
8171
8172 2000-11-15  Havoc Pennington  <hp@redhat.com>
8173
8174         * gtk/gtktextview.c (changed_handler): offset redraw rect by
8175         xoffset in addition to yoffset, so horizontal scrolling doesn't
8176         break redraws
8177
8178 2000-11-15  Havoc Pennington  <hp@redhat.com>
8179
8180         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
8181         from the cursor
8182         (render_layout_line): fix reversed test that caused weird
8183         underlines to get drawn
8184
8185 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8186
8187         * gdk/linux-fb/gdkprivate-fb.h:
8188         Fix debug macros.
8189         
8190 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
8191
8192         * gdk/linux-fb/gdkprivate-fb.h:
8193         Added virtual functions set_pixel, get_color,
8194         fill_span and draw_drawable to the GC.
8195         Added global _gdk_fb_screen_gc to use instead of
8196         NULL when drawing to the screen.
8197         Added _gdk_fb_gc_calc_state() prototype.
8198
8199         * gdk/linux-fb/gdkgc-fb.c:
8200         Call _gdk_fb_gc_calc_state() on any gc state change.
8201
8202         * gdk/linux-fb/gdkglobals-fb.c:
8203         Add _gdk_fb_screen_gc
8204                 
8205         * gdk/linux-fb/gdkdrawable-fb2.c:
8206         _gdk_fb_gc_calc_state() calculates best functions
8207         for the GC state and depth.
8208         Moved bpp specialized code to separate functions.
8209         Added optimized 24 bpp AA draw_drawable.
8210
8211         * gdk/linux-fb/gdkevents-fb.c:
8212         Silence gcc warning.
8213
8214         * gdk/linux-fb/gdkimage-fb.c:
8215         Use _gdk_fb_screen_gc
8216
8217         * gdk/linux-fb/gdkwindow-fb.c:
8218         Init and use _gdk_fb_screen_gc
8219
8220         * gdk/linux-fb/mitypes.h:
8221         Remove unused types.
8222
8223 2000-11-14  Havoc Pennington  <hp@pobox.com>
8224
8225         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
8226         to pixels
8227
8228 2000-11-14  Havoc Pennington  <hp@pobox.com>
8229
8230         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
8231
8232         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
8233         unknown char, no real reason we were using a variable. 
8234         Remove gtk_text_unknown_char variable. Fix all the text widget
8235         files accordingly.
8236
8237         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
8238         since the Unicode spec seems to prefer that character for our
8239         purposes.
8240
8241 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
8242
8243         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
8244         value of g_getenv() isn't freeable, so g_strdup it.
8245
8246         * modules/input/inuktitut.c: Inuktitut input method.
8247
8248         * modules/input/Makefile.am: Build this.
8249         
8250 2000-11-14  Elliot Lee  <sopwith@redhat.com>
8251
8252         * gtk/Makefile.am: Install gtk.immodules, needed for operation
8253         of gtk programs.
8254
8255 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
8256
8257         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
8258         reversed > that was causing Home to go to end of previous line.
8259
8260         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
8261         modified-keypresses (leave for bindings.)
8262
8263         * modules/input/Makefile.am: Remove useless -export-dynamic
8264         from module LDFLAGS.
8265
8266 2000-11-14  Havoc Pennington  <hp@redhat.com>
8267
8268         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
8269         higher.
8270
8271         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
8272         account. Also, render rise, underline, background, etc. for
8273         pixbufs as well as text. Also, draw underlines one pixel higher.
8274
8275         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
8276         PangoAttribute for the rise, so it gets drawn properly. Also,
8277         add the GtkTextAppearance attribute for pixbuf/widget segments
8278         as well; we should go ahead and have rise, underline, background,
8279         stipple work for those
8280
8281         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
8282         Pango
8283
8284 2000-11-15  Tor Lillqvist  <tml@iki.fi>
8285
8286         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
8287
8288         * gtk/gtk.def: Update.
8289
8290         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
8291         included.
8292         (gtk_rc_get_im_module_file): Use run-time installation directory
8293         on Win32.
8294
8295         * gdk/win32/rc/gdk.rc: Remove.
8296         * gdk/win32/rc/gdk.rc.in: New file.
8297         * gdk/win32/rc/Makefile.am: New file
8298         * gdk/win32/Makefile.am: Corresponding changes.
8299
8300         * gtk/gtk.rc: Remove.
8301         * gtk/gtk-win32.rc.in: New file.
8302         * gtk/Makefile.am: Corresponding changes.
8303
8304         * configure.in: Corresponding changes.
8305
8306         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
8307         has a built gtkcompat.h. Developers using CVS code on Win32 can
8308         hand-edit it from gtkcompat.h.in.
8309
8310         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
8311         gtkcompat.h from gtkcompat.h.win32.
8312
8313 2000-11-14  Havoc Pennington  <hp@redhat.com>
8314
8315         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
8316         to default to GDK_ACTION_MOVE if the drag is within a single
8317         widget. Defaults to GDK_ACTION_COPY between widgets.
8318
8319 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
8320
8321         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
8322
8323         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
8324
8325         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
8326         srcdir != builddir
8327
8328         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
8329
8330         * configure.in (GTK_VERSION): Up to 1.3.2
8331
8332         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
8333         gtkimcontextxim.h
8334
8335         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
8336         missing doc comment.
8337
8338 2000-11-14  Alexander Larsson  <alexl@redhat.com>
8339
8340         * modules/linux-fb/basic.c:
8341         Use the glib iconv wrappers.
8342
8343 2000-11-13  Havoc Pennington  <hp@pobox.com>
8344
8345         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
8346         still more bugs.
8347
8348         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
8349         scroll the GdkWindows before realization.
8350
8351 2000-11-13  Havoc Pennington  <hp@redhat.com>
8352
8353         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
8354         where GC didn't always get updated properly
8355
8356         * demos/gtk-demo/textview.c (create_tags): Use subattributes
8357         of fonts instead of setting the entire font
8358
8359         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
8360         setting entire font
8361
8362         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
8363
8364         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
8365         a bunch of individually-settable font attributes. You can still 
8366         use the "font" and "font_desc" args, they just set all the font
8367         attributes at once.
8368
8369 2000-11-13 Elliot Lee <sopwith@redhat.com>
8370
8371         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
8372
8373 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
8374
8375         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
8376         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
8377
8378         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
8379         work better.
8380
8381 2000-11-13  Havoc Pennington  <hp@redhat.com>
8382
8383         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
8384         the module file.
8385
8386         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
8387         dest->language
8388
8389         * gtk/testtext.c: Test pixels above/below/inside paragraphs
8390         settings
8391
8392         * gtk/gtktextview.c: Implement object args and setters/getters for
8393         all the aspects of the GtkTextAttributes that are not set from
8394         GtkWidget attributes. This is spacing, justification, margins,
8395         etc.
8396
8397         (gtk_text_view_set_arg)
8398         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
8399         args
8400         (gtk_text_view_class_init): Add args for justify, left_margin,
8401         right_margin, indent, and tabs
8402         
8403
8404         * gtk/gtktextlayout.c (set_para_values): fix to display indent
8405         attribute properly
8406
8407         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
8408         replace with indent attribute
8409
8410         * gtk/gtktextlayout.c (set_para_values): multiply indent by
8411         PANGO_SCALE
8412
8413         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
8414         rearranging code to do that
8415         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
8416         i.e. don't subtract the top_margin first, just to keep
8417         all margin-futzing in one place.
8418
8419         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
8420
8421         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
8422         special case of last line, Pango now handles this itself.
8423         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
8424         Y coordinate
8425         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
8426         (find_display_line_above): wasn't moving the byte index as it
8427         iterated over lines, so always returned byte 0. Also, port to use
8428         PangoLayoutIter.
8429         (find_display_line_below): same problem as
8430         find_display_line_above. Also, port to use PangoLayoutIter.
8431
8432 2000-11-13  Alexander Larsson  <alexl@redhat.com>
8433
8434         * gdk/linux-fb/*.[ch]:
8435         Massive reindent to gtk+ standard. My hands hurt.
8436
8437         * gdk/linux-fb/gdkcolor-fb.c:
8438         Move GdkColorPrivateFB from inherited to windowing_data
8439
8440         * gdk/linux-fb/gdkcursor-fb.c:
8441         _gdk_cursor_new_from_pixmap made static
8442
8443         * gdk/linux-fb/gdkdnd-fb.c:
8444         GdkDragContextPrivate moved to windowing_data
8445
8446         * gdk/linux-fb/gdkdrawable-fb2.c:
8447         Removed endian.h, use glib endianness macros instead
8448         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
8449         and GDK_DRAWABLE_IMPL_FBDATA
8450
8451         * gdk/linux-fb/gdkfont-fb.c:
8452         Add empty gdk_font_load(). Needed for linking of Gtk+.
8453
8454         * gdk/linux-fb/gdkimage-fb.c:
8455         Removed endian.h, use glib endianness macros instead
8456         Moved GdkImagePrivateFB to windowing_data
8457         gdk_image_new_bitmap didn't always allocate enough
8458         memory.
8459
8460         * gdk/linux-fb/gdkinput-ps2.c:
8461         Added semi-working support for MS serial mice.
8462
8463         * gdk/linux-fb/gdkprivate-fb.h:
8464         s/GdkWindowPrivate/GdkWindowObject/
8465         Removed GdkWindowPrivate typedef
8466         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
8467         Removed GDK_DRAWABLE_P
8468         Move GdkColorPrivateFB from inherited to windowing_data
8469         Moved GdkImagePrivateFB to windowing_data
8470
8471         * gdk/linux-fb/gdkvisual-fb.c:
8472         Removed some unused debug code.
8473
8474         * gdk/linux-fb/gdkwindow-fb.c:
8475         Use stock cursors instead of including X headers.
8476         s/GdkWindowPrivate/GdkWindowObject/
8477
8478         * gdk/linux-fb/mitypes.h:
8479         Removed unused types.
8480
8481         * modules/linux-fb/basic.c:
8482         Use the pango fribidi wrappers.
8483
8484 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8485
8486         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
8487         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
8488         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
8489         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
8490         GEqualFunc where applicable.
8491         
8492         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
8493         pango_font_description_equal as changed in pango.
8494         
8495         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
8496
8497         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
8498
8499         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
8500
8501         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
8502
8503         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
8504
8505         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
8506
8507         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
8508         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
8509
8510         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
8511         gtk_rc_styles_compare -> gtk_rc_styles_equal.
8512
8513 2000-11-12  Havoc Pennington  <hp@pobox.com>
8514
8515         * demos/gtk-demo/Makefile.am (democodedir): change demo install
8516         dir to datadir/gtk+-2.0/demo
8517
8518         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
8519         sorts of text widget and Pango font bugs. Urgh.
8520
8521         * demos/gtk-demo/Makefile.am (demos): Add textview.c
8522
8523         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
8524         tree that you should double click to see the demo. Fix 
8525         types of variables to reflect changed return values from 
8526         GtkTreeStore and GtkTreeViewColumn constructors.
8527
8528         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
8529         newly-created buffer to prepare for GObject semantics
8530
8531         * gtk/testtext.c: don't leak the buffer with GObject semantics
8532
8533         * gtk/testtextbuffer.c: ditto
8534         
8535 2000-11-12  Havoc Pennington  <hp@pobox.com>
8536
8537         Rename this testgtk to gtk-demo to avoid confusion, and 
8538         install it so people can use it as a supplement to 
8539         the documentation.
8540         
8541         * demos/gtk-demo: Moved from demos/testgtk
8542
8543         * demos/testgtk: Removed
8544
8545         * configure.in: make Makefile in gtk-demo
8546         
8547         * demos/gtk-demo/Makefile.am: Install sample source to 
8548         datadir/gtk-demo (maybe there's a better place?), and 
8549         rename the binary to gtk-demo
8550         
8551         * demos/gtk-demo/main.c (load_file): Load installed sample
8552         source if source isn't found in pwd.
8553
8554 2000-11-09  Havoc Pennington  <hp@pobox.com>
8555
8556         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
8557         argument to set the char displayed when visibility == FALSE
8558         (gtk_entry_create_layout): If !entry->visible, replace 
8559         all chars with the "invisible char"
8560
8561         * gtk/testgtk.c: Test the invisible_char deal
8562         
8563 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
8564
8565         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
8566         can't get a native font in the right encoding.
8567
8568 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
8569
8570         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
8571         respectively.
8572
8573 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
8574
8575         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
8576         Fix warning when moving between paragraphs.
8577
8578         * gtk/gtkentry.[ch]: Change move => move_cursor, 
8579         delete => delete_from_cursor, insert => insert_at_cursor
8580
8581 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
8582
8583         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
8584
8585         * modules/input/imthai-broken.c: A Thai input method for use if
8586         Thai keys are really generating Latin1 keysyms.
8587
8588         * modules/input/Makefile.am: Build these.
8589
8590 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
8591
8592         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
8593         g_filename_{to,from}_utf8 now takes an extra parameter.
8594
8595         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
8596         strftime into UTF-8.
8597
8598         (column_from_x, gtk_calendar_paint_day_names): Support RTL
8599         calendars.
8600
8601         (gtk_calendar_paint_day_names): Draw day names in the right 
8602         place.
8603         
8604 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
8605
8606         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
8607         problem with using result of g_get_charset() backwards -
8608         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
8609
8610         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
8611         negative min_width/height and max_width/height to
8612         mean "requisition"; this allows setting a window
8613         to be user-resizable in only one direction easily.
8614
8615         * gtk/testgtk.c (create_main_window): Remove hard-coded
8616         usize - set a default size in the vertical direction.
8617
8618 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
8619
8620         * gtk/gtkrange.c: Add some missing casts. Support 
8621         2 and 3 button clicks on the arrows to mean 
8622         "move by pages" and "jump to end". (Like gtkspinbutton)
8623
8624 2000-11-12 Hans Breuer <Hans@Breuer.Org>
8625
8626         * gdk/win32/makefile.msc : reflect build module changes
8627
8628         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
8629         from GdkPixmap*, cast implementation member instead.
8630
8631         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
8632         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
8633         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
8634         more Gdi functions return value checking. 
8635         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
8636         GdkImagePrivateWin32 *.
8637
8638         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
8639         menus useable again. Add #pragma message to keep reminded on this issue.
8640         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
8641         windows. This allows to enable backing store on Win32!
8642
8643         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
8644         in drawable is of impl type. Correct specific type checks appropriate.
8645  
8646         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
8647         GDK_WINDOW_DESTROYED before allocating new resources.
8648
8649         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
8650
8651         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
8652         (gdk_window_foreign_new) initialize parent handle.
8653         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
8654
8655         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
8656         Let the GDI invalidate the window on MoveWindow call to fix scrolling
8657         problems (e.g. main buttons in testgtk). 
8658
8659 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
8660
8661         * gtk/gtkentry.c (gtk_entry_key_press): Call 
8662         gtk_widget_activate for GDK_Return.
8663
8664         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
8665         of preedit cursor position.
8666
8667 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
8668
8669         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
8670         static.
8671
8672 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
8673
8674         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
8675         out support for multiple locales; that simple doesn't
8676         work reliably with current Xlib
8677
8678         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
8679         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
8680         Add support for positioning the cursor within the preedit string.
8681
8682 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
8683
8684         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
8685         at XIM input method module.
8686
8687         * gtk/gtktextview.c: Check for bindings after passing
8688         events to im context filter.
8689
8690 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
8691
8692         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
8693         empty attribute lists properly.
8694
8695 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
8696
8697         * gtk/queryimmodules.c (main): Return non-zero exit
8698         status if errors were encountered querying any
8699         modules.
8700
8701         * modules/input/Makefile.am (moduledir): remove
8702         leftover bin program target.
8703
8704         * docs/make-todo: Fix typo in error message.
8705
8706 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
8707
8708         * configure.in: Add modules/input/Makefile
8709
8710 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
8711
8712         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
8713         don't include gtkthemes.h.
8714
8715         * gtk/testgtk.c gtk/testtext.c: Set environment variables
8716         to point
8717
8718         * gtk/Makefile.am: Add new .c and .h files, build 
8719         gtk-query-immodules and use it to create a gtk.immodules
8720         file for use of test programs.
8721
8722         * gtk/gtkpreview.c: remove extra blank line.
8723
8724 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
8725
8726         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
8727         Add the ability to add extra tables beyond the default
8728         one, and also the ability to have compose sequences 
8729         that are prefixes of other compose sequences. 
8730
8731         * gtk/gtkimcontextsimple.c: Export a preedit string which
8732         consists of possible candidates for keystrokes that have
8733         been entered but not yet committed.
8734
8735         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
8736         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
8737
8738         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
8739         Add a function to add input-method switching menu items
8740         to a menu.
8741
8742         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
8743         when switching input methods.
8744
8745         * gtk/gtkimcontextsimple.[ch]: Change the format of
8746         the compose table to allow compose tables of different
8747         lengths / sequence.
8748
8749 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
8750
8751         * gtk/gtkimmodule.[ch]: Support routines for loading
8752         GtkIMContext implementations dynamically at runtime.
8753
8754         * modules/input/imcyrillic-translit.c: A sample input
8755         method (based on GtkIMContextSimple with an extra table),
8756         which demonstrates preedit strings and the module
8757         system for input modules
8758
8759         * gtk/queryimmodules.c: Program to query the available
8760         input modules and write the results into a file.
8761          
8762         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
8763         extra config options "im_module_file" (cache file for
8764         input method modules), and "im_module_path" - path
8765         to look for modules when generating cache file.
8766
8767         This doesn't scale.
8768
8769 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
8770
8771         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
8772         generic code from gtkthemes into a new abstraction
8773         GtkModule which has the logic for implementing
8774         a loadable module which implements a number of 
8775         GObject types.
8776
8777 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
8778
8779         * gtk/gtkeditable.[ch]: Convert GtkEditable from
8780         a class into an interface  
8781         
8782         * gtk/gtkoldeditable.[ch]: Move the old editable
8783         implementation into here, so legacy widgets can
8784         still rely on the implemenation. GtkOldEditable
8785         exports GtkEditable. Make selection handling
8786         code use new text conversion functions (and
8787         handle UTF-8 as a side-effect). Use GtkClipboard
8788         for CLIPBOARD.
8789
8790         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
8791         Adopt to match above changes.
8792
8793         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
8794         avoid GtkOldEditable implementation. Restructure
8795         to reduce number of places that modify state directly.
8796         Move to GtkBindingSet. Display the preedit string.
8797         Queue recomputation of PangoLayout and scroll position
8798         to improve effiency of doing complex changes naively.
8799         Add a menu with cut/copy/paste and input method selection.
8800
8801 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
8802
8803         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
8804         to set preedit string and attributes; display preedit string by
8805         inserting string and attributes at cursor when creating the
8806         GtkTextLineDisplay.
8807
8808         * gtk/gtktextlayout.c: Move all conversions between byte
8809         positions in PangoLayout and GtkTextIter into new functions
8810         line_display_iter_to_index/index_to_iter that properly
8811         handle the preedit string.
8812
8813         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
8814         it to return const char * (eventually will end up
8815         as GCONST char *, most likely.)
8816
8817         * gtk/gtktextview.[ch]: Handle the preedit string, call
8818         gtk_im_context_reset() as necessary, add a menu to switch
8819         input methods.
8820         
8821         * gtk/gtktextlayout.[ch]: Remove useless
8822         gtk_text_layout_get_log_attrs() function.
8823
8824 2000-11-11  Tor Lillqvist  <tml@iki.fi>
8825
8826         * gdk/gdk.def
8827         * gtk/gtk.def: Update.
8828
8829         * gdk/win32/*.c: Add last argument to g_type_register_static()
8830         calls.
8831
8832         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
8833
8834         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
8835         generated by older wheel mouse drivers. Get the correct y
8836         coordinate from WM_MOUSEWHEEL messages.
8837
8838         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
8839         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
8840         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
8841         Debugging functions.
8842
8843         * gdk/win32/gdkprivate-win32.h: Declare them.
8844
8845         * gdk/win32/gdkinput-win32.h: Add declaration for
8846         gdk_input_window_destroy().
8847
8848         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
8849
8850 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
8851
8852         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
8853         function to help handle keeping things in sync.
8854
8855 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
8856
8857         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
8858         BOXED marshallers.
8859
8860         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
8861         (gtk_list_store_class_init): use the new BOXED marshallers.
8862
8863         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
8864         new_with_values to new_with_types.
8865         (gtk_tree_store_get_column_type): add this.
8866         (gtk_tree_store_class_init): use the new BOXED marshallers.
8867
8868         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
8869         mirror some POINTER marshallers.
8870
8871 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
8872
8873         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
8874         allow more interesting iterators.  Also, made the lifecycle of
8875         iterators more explicit.
8876
8877         * gtk/gtktreemodelsort.[ch]: New model for sorting.
8878
8879         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
8880         types.
8881
8882 2000-11-09  Alexander Larsson  <alexl@redhat.com>
8883
8884         * demos/testgtk/menus.c:
8885         Changes to make the new testgtk compile after
8886         gtk_menu_append was removed.
8887
8888         * gdk/linux-fb/gdkdrawable-fb2.c
8889         (gdk_fb_get_depth, gdk_fb_get_visual,
8890         gdk_drawable_impl_fb_class_init): Implement
8891         these drawable functions. Now GtkImages work again.
8892
8893         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
8894
8895         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
8896         
8897         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
8898         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
8899         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
8900         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
8901
8902 2000-11-08  Havoc Pennington  <hp@pobox.com>
8903
8904         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
8905         visible_set args, don't know where these had gone, I thought they
8906         used to be there
8907
8908         * gtk/testtext.c: Add a menu item to apply invisibility tag;
8909         now we can test the feature and see that it's totally broken.
8910
8911 2000-11-08  Havoc Pennington  <hp@pobox.com>
8912
8913         Make DND copy pixbufs and tags when source and target share a 
8914         tag table.
8915         
8916         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
8917         in-process GTK_TEXT_BUFFER_CONTENTS target
8918         (gtk_text_view_drag_data_received): Paste from
8919         GTK_TEXT_BUFFER_CONTENTS if we receive it.
8920
8921 2000-11-08  Alexander Larsson  <alexl@redhat.com>
8922
8923         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
8924         API changes.
8925
8926         * gtk/gtkmenu.c: Add support for scrolling menus.
8927         Remove gtk_menu_append/prepend/insert, these have been moved to
8928         gtkcompat.h as #defines.
8929
8930         * gtk/gtkcompat.h.in:
8931         Add compatibility #defines for gtk_menu_append/prepend/insert
8932
8933         * gtk/gtkmenu.h: Add data needed for scrolling menus.
8934         GtkMenuPositionFunc gets an extra argument push_in.
8935         gtk_menu_append/prepend/insert removed.
8936         
8937         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
8938         positioning behaviour to fit to scrolling menus.
8939
8940         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
8941         into menuitem->submeny. That is wrong, and broke torn
8942         off submenus of torn off menus, since they were unrealized
8943         when the first menu was unrealized.
8944
8945         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
8946         gtk_menu_shell_select_item() since these need to be overridden in
8947         GtkMenu.
8948
8949         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
8950         positioning behaviour to fit to scrolling menus.
8951         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
8952         the current item so that it is prelighted when the menu pops up.
8953         This is a workaround to the fact that the menu doesn't get the
8954         initial enter event (due to grabs).
8955
8956         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
8957         s/gtk_menu_append/gtk_menu_shell_append/
8958
8959         * gtk/gtknotebook.c:
8960         s/gtk_menu_insert/gtk_menu_shell_insert/
8961
8962         * gtk/testgtk.c (create_menu, create_menus):
8963         Create the first menu with 50 items so that menu scrolling
8964         can be tested.
8965         
8966         
8967         Patch from Jonathan Blandford  <jrb@redhat.com>
8968
8969         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
8970         system to handle size requests.  First, we ask what the size of
8971         the toggle is.  Then, when allocating the size, we allocate the
8972         toggle_size first.  This way we can have multiple menu-item
8973         classes w/o needing a seperate class for each.
8974
8975         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
8976         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
8977
8978         * gtk/gtkcheckmenuitem.c
8979         (gtk_check_menu_item_toggle_size_request): New function to handle
8980         the toggle size-request.
8981
8982 2000-11-07  Havoc Pennington  <hp@redhat.com>
8983
8984         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
8985         Half-ass somewhat fix this function, so that scrolling to the
8986         insertion point works. Pango hacking is in the future to really
8987         fix it.
8988
8989         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
8990         length of data, no longer used.
8991
8992         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
8993         method contents in here, get rid of destroy method
8994         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
8995         that were backward. Remove debug spew.
8996         (cut_or_copy): Make the clipboard work with insert_range to
8997         preserve tags and pixbufs, not just the primary selection.
8998
8999 2000-11-07  Havoc Pennington  <hp@redhat.com>
9000
9001         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
9002         to gtk_text_mark_get_visible
9003
9004         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
9005         bug that was generating an invalid iterator
9006
9007         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
9008         ensure_char_offsets() in front of code placing the iter in an
9009         invalid state.
9010
9011         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
9012         make override_location arg const
9013         (paste): Replace the selection if we paste into the 
9014         current selection
9015
9016         * gtk/gtkselection.h: Remove "GtkSelectioData"
9017         (struct _GtkSelectionData): move the definition here.
9018
9019         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
9020         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
9021
9022         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
9023
9024         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
9025         (gtk_text_buffer_insert_range_interactive): implement
9026         (gtk_text_buffer_get_tags): Remove, replaced by
9027         gtk_text_iter_get_tags()
9028
9029         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
9030         limit parameter, to avoid infinite linear scan.
9031         (gtk_text_iter_backward_search): Add search limit
9032         (gtk_text_iter_forward_find_char): Add search limit
9033         (gtk_text_iter_backward_find_char): Add search limit
9034
9035 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
9036
9037         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9038         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
9039         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
9040         gdk/linux-fb/gdkwindow-fb.c:
9041         use g_object_new() instead of g_type_create_instance() which
9042         is a private function for fundamental type implementations.
9043
9044         * gdk/linux-fb/gdkinput-ps2.c:
9045         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
9046         instead just store the current modifier state. Add a (somewhat broken)
9047         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
9048         Rename exported function gdk_input_ps2_get_mouseinfo to
9049         gdk_input_get_mouseinfo.
9050
9051         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
9052         gdk/linux-fb/gdkwindow-fb.c:
9053         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
9054         
9055
9056 2000-11-02  Havoc Pennington  <hp@redhat.com>
9057
9058         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
9059         use stock buttons. Should be 100% source compatible, appropriate
9060         filesel fields now point to dialog->vbox and dialog->action_area.
9061         On the bizarre side, dialog->action_area and filesel->action_area
9062         are not the same widget.
9063         (gtk_file_selection_init): Put some padding around the selection
9064         entry, so it isn't touching the GtkDialog separator.    
9065
9066         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
9067         use stock buttons, etc. Should also be source compatible.
9068         Set the dialog default title in _init not _new().
9069         
9070         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
9071         Use stock buttons; don't put a button box inside the existing
9072         dialog button box. Don't bother with push/pop colormap anymore.
9073
9074         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
9075         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
9076         for message dialog, and necessary for the font selection and color
9077         selection with help and apply buttons.
9078         
9079         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
9080         to the created button widget. Set GTK_CAN_DEFAULT on the button.
9081         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
9082         between buttons, put less padding around the action area.
9083         (gtk_dialog_run): Exit on unmap rather than on destroy. 
9084         This will also exit the loop if the widget is hidden.
9085         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
9086         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
9087         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
9088         special-case delete event.
9089
9090         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
9091         formatting
9092         
9093 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
9094
9095         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
9096         button to temporarily disable position recording in the
9097         "saved position" test.
9098
9099 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
9100
9101         * gtk/gtkthemes.c: added compat code that temporarily implements
9102         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
9103         going to be revamped by owen's upcoming GtkModule patches, but
9104         untill then people want gtk to build, right? ;)
9105
9106 2000-11-04  Havoc Pennington  <hp@pobox.com>
9107
9108         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
9109         list
9110
9111         * docs/Changes-2.0.txt: Add note about
9112         gtk_container_get_toplevels()
9113
9114         * gtk/gtktextview.h: formatting
9115         
9116         * gtk/gtktextview.c: don't start descriptions with "Returns",
9117         confuses gtk-doc
9118
9119 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
9120
9121         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
9122         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
9123
9124 2000-11-03  Havoc Pennington  <hp@redhat.com>
9125
9126         * gtk/gtktexttagtable.c: Docs
9127         (gtk_text_tag_table_size): return a signed int
9128
9129         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
9130         (gtk_text_tag_event): make the event_object a GObject
9131
9132         * gtk/gtktextview.c: Write API docs for all functions.
9133
9134         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
9135         for gtk_text_view_get_window_type() called on one of the private
9136         windows.
9137
9138         * gtk/gtktextview.c: Instead of accessing text_view->buffer
9139         directly, call get_buffer() which demand-creates a default
9140         buffer. So gtk_text_view_new() can be used to create a view with a
9141         default buffer in it, if you just want an empty text box users can
9142         put data in. Useful for GUI builders also.
9143
9144 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
9145
9146         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
9147         the charset encodign portion MUST be in lowercase.
9148         * gtk/gtkrc.az: added file for Azeri language
9149
9150 2000-11-03  Havoc Pennington  <hp@redhat.com>
9151
9152         Get widgets working on the btree/buffer side. Display of them 
9153         still doesn't work.
9154         
9155         * gtk/gtktextview.c: start implementing child widget stuff
9156
9157         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
9158
9159         * gtk/gtktextlayout.c: handle embedded widgets
9160
9161         * gtk/gtktextdisplay.c: handle embedded widgets
9162
9163         * gtk/gtktextchild.c: Implement all the child anchor goo
9164
9165         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
9166         function
9167
9168         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
9169         (insert_pixbuf_or_widget_segment): abstract out common portions of 
9170         creating a child anchor or a pixbuf segment.
9171         (gtk_text_btree_create_child_anchor): new function
9172         (gtk_text_btree_unregister_child_anchor): new function
9173
9174         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
9175         allocate_child signal on GtkTextLayout
9176
9177         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
9178         values
9179         (gtk_text_iter_get_child_anchor): new function
9180
9181         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
9182         default handler for the changed signal, which calls
9183         gtk_text_buffer_set_modified(), instead of just always emitting
9184         changed then calling set_modified() manually. I guess this is
9185         maybe more flexible. It seems logical.
9186
9187 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
9188
9189         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
9190         now.
9191
9192         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
9193
9194 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
9195
9196         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
9197         been marked static.
9198
9199 2000-11-02  Havoc Pennington  <hp@redhat.com>
9200
9201         * gtk/testgtk.c (create_labels): had a test backward
9202
9203         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
9204         fields, so the dest GC ends up with the correct clip origin, 
9205         etc. Fixes a bug where colored labels didn't redraw 
9206         properly.
9207
9208 2000-11-02  Alexander Larsson  <alexl@redhat.com>
9209
9210         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
9211         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
9212         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
9213         Add last argument to t_type_register_static call.
9214         
9215         * gdk/linux-fb/gdkdrawable-fb2.c:
9216         Add last argument to t_type_register_static call.
9217         export the get_image drawable virtual function.
9218
9219         * gdk/linux-fb/gdkimage-fb.c:
9220         Add last argument to t_type_register_static call.
9221         rename gtk_image_get to _gdk_fb_get_image and
9222         export it for use by gdkdrawable-fb2.
9223
9224         * gdk/linux-fb/gdkprivate-fb.h:
9225         export _gdk_fb_get_image.
9226
9227         * gdk/linux-fb/gdkselection-fb.c:
9228         Add new api call stubs.
9229
9230         * gtk/Makefile.am:
9231         Missing ( in linux-fb part.
9232
9233         * modules/linux-fb/Makefile.am:
9234         Must link with gdk_pixbuf or get unresolved symbol.
9235
9236 2000-11-01  Havoc Pennington  <hp@pobox.com>
9237
9238         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
9239         GTK_TYPE_TEXT_ITER and BOXED marshallers
9240
9241         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
9242
9243         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
9244         
9245         * gtk/gtk-boxed.defs: add GtkTextIter
9246
9247         * gtk/gtkmarshal.list: Add marshallers for text widget that 
9248         properly use OBJECT and BOXED
9249
9250 2000-11-01  Havoc Pennington  <hp@redhat.com>
9251
9252         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
9253
9254         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
9255         before returning it. 
9256         
9257 2000-11-01  Havoc Pennington  <hp@redhat.com>
9258
9259         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9260         Clip the rectangle to be rendered to the drawable, since
9261         get_from_drawable() requires a region within the drawable
9262
9263 2000-11-01  Havoc Pennington  <hp@redhat.com>
9264
9265         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
9266         from coordinates.
9267
9268 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
9269
9270         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
9271         it isn't NULL.
9272
9273 2000-11-01  Havoc Pennington  <hp@pobox.com>
9274
9275         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
9276         on a label
9277         (gtk_label_finalize): unref the attr list if any.
9278
9279         * gtk/testgtk.c (create_get_image): close test on second click
9280         (make_message_dialog): close dialog if it exists
9281
9282         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
9283
9284         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
9285         gdk-pixbuf
9286
9287         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
9288         from Pango markup format
9289         (gtk_label_set_markup_with_accel): ditto but with accelerator
9290         parsing
9291
9292         * gtk/gtkimage.c (gtk_image_expose): reformatting.
9293
9294         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
9295         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
9296         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
9297         call gdk_window_get_origin().
9298
9299         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
9300         implement GDK_PIXBUF_ALPHA_FULL
9301         
9302 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
9303
9304         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
9305         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
9306         g_signal_handlers_disconnect_matched to block/unblock and disconnect
9307         multiple handlers respectively, instead of only treating the
9308         first handler found (bug reported by owen).
9309
9310 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
9311
9312         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
9313
9314         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
9315
9316         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
9317         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
9318         gtk/gtktreeviewcolumn.h: Fixed inline docs.
9319
9320         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
9321         widget.  Needs writing someday.
9322
9323         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
9324         the docs.
9325
9326 2000-10-30  Havoc Pennington  <hp@redhat.com>
9327
9328         * gtk/gtktextview.h, gtk/gtktextview.c:
9329         Rename delete_at_cursor delete_from_cursor, and 
9330         move to move_cursor.
9331
9332 2000-10-30  Havoc Pennington  <hp@redhat.com>
9333
9334         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
9335         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
9336         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
9337         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
9338         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
9339         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
9340         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
9341         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
9342         gtktexttypes.h, gtktextview.c, gtktextview.h:
9343
9344         Massive reindentation and reformatting. Arg alignment and comments
9345         still need fixing in various places.
9346
9347 2000-10-30  Havoc Pennington  <hp@redhat.com>
9348
9349         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
9350         to be named insert_at_cursor and delete_at_cursor so C++ can
9351         handle them.
9352
9353 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9354
9355         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
9356         to get a double directory separator in case the home directory
9357         ends with one. This would cause trouble especially on Windows,
9358         where the path will be confused with the syntax for an an UNC
9359         (network share) path \\server\share\path.
9360         (gtk_rc_add_initial_default_files): Ditto.
9361
9362 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
9363
9364         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
9365
9366         * gtk/gtktextview.c: Use correct marshallers.
9367
9368 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
9369
9370         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
9371         use new iter stuff, and added all the appropriate signals et al.
9372
9373         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
9374         code is internal to gtk only.
9375
9376 2000-10-28  Tor Lillqvist  <tml@iki.fi>
9377
9378         * gtk/gtk.def
9379         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
9380         glib-genmarshal etc.
9381
9382 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
9383
9384         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
9385         parallel builds.
9386
9387 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
9388
9389         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
9390
9391 2000-10-27  Robert Brady  <robert@suse.co.uk>
9392
9393         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
9394         en_GB (British), ia (Interlingua).
9395
9396 2000-10-26  Havoc Pennington  <hp@redhat.com>
9397
9398         * gtk/gtktextiter.c (my_strrstr): fix constness warning
9399
9400         Fixed output of:
9401         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
9402         
9403         * gtk/gtktextsegment.c (char_segment_new): rename
9404         (_char_segment_new_from_two_strings): rename
9405         (_toggle_segment_new): rename
9406         
9407         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
9408         (make_clipboard_widget): make it static
9409         (text_get_func): static
9410         (text_clear_func): static
9411
9412         * gtk/gtkcolorsel.c (adjustment_changed): make this function
9413         static
9414         (hex_changed): make it static
9415         (hsv_changed): make it static
9416         (opacity_entry_changed): make it static
9417
9418         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
9419         (toggle_segment_check_func): rename with _gtk
9420
9421         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
9422         (_widget_segment_new): rename
9423         (_widget_segment_add): rename
9424         (_widget_segment_remove): rename
9425         (_widget_segment_ref): rename
9426         (_widget_segment_unref): rename
9427
9428         * gtk/gtktextmark.c (_mark_segment_new): Rename
9429         _gtk_mark_segment_new   
9430
9431 2000-10-26  Havoc Pennington  <hp@redhat.com>
9432
9433         * gtk/gtkmarshal.list: add new marshallers used by the text widget
9434         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9435         types
9436
9437         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
9438         marshaller types
9439
9440         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
9441         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
9442         license on these files.
9443
9444         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
9445         work.
9446
9447         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
9448         runtime random number different for each tree, instead of 
9449         a constant I made up.
9450
9451 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
9452
9453         * gtk/Makefile.am: buncha cleanups, kludged build sources
9454         dependencies with a Makefile: oldest-source-stamp dependancy
9455         for the moment. automake is really fighting us here, with
9456         intentionally not allowing user-defined rules or dependancies
9457         prior to it's -include $(DEP_FILES) statement. sucks rocks!
9458
9459         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
9460         to public headers. tehy have a comment stating that they are
9461         "semi-public" aren't included by gtk.h and if enums popup there,
9462         they can be /*< skip >*/-ed.
9463
9464         * gtk/gtktextlayout.h: 
9465         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
9466         added LGPL... <SIGH>
9467
9468 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
9469
9470         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
9471         GtkTreeIter.  Added iterators everywhere.
9472
9473         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
9474
9475         * gtk/gtktreeviewselection.c: Changed to use the iterators.
9476
9477         * gtk/gtktreestore.c: Changed to use the iterators.
9478
9479         * gtk/gtkliststore.c: Commented out the code.  Will convert to
9480         iterators tomorrow.
9481
9482         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
9483         iterators tomorrow.
9484
9485         * gtk/treestoretest.c: Changed to use iterators.
9486
9487         * demos/testgtk/main.c: Moved to use the new iterator system.
9488
9489 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
9490
9491         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
9492         localization misbehaviour.
9493
9494         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
9495         a useless type without copy/free.
9496
9497         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
9498         of GTK_TYPE_CTREE_NODE.
9499
9500 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
9501
9502         * gtk/gtksignal.c:
9503         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
9504         applicable.
9505
9506         * gtk/gtk-boxed.defs (GtkSelectionData): specify
9507         gtk_selection_data_copy and gtk_selection_data_free
9508         do GtkSelectionData work as params in signals.
9509
9510 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
9511
9512         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
9513         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
9514         couldn't they at least give it a non-standard name?
9515         
9516         * gtk/gtktextlayout.c: arg! yet another implementation of
9517         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
9518
9519         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
9520         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
9521         home. now i know this _is_ a conspiracy.
9522
9523         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
9524         ::state-changed.
9525
9526         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
9527         (gtk_accel_group_create_add): marshaller signature fixups.
9528
9529         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
9530         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
9531
9532         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
9533         anymore.
9534
9535 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
9536
9537         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
9538         due to the signal system changes, it wouldn't build currently. to
9539         be fixed soon.
9540
9541         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
9542
9543         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
9544         so it needs gtk_marshal_VOID__ENUM() instead of
9545         gtk_marshal_NONE__UINT().
9546
9547         * gdk/gdk*.c: adapted type registration functions.
9548
9549         * gtk/gtkbindings.c:
9550         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
9551         gone.
9552
9553         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
9554
9555         * gtk/gtkobject.c:
9556         (gtk_object_destroy):
9557         (gtk_object_shutdown): fixed recursion guards. basically we have to
9558         catch the case where any of GObject.shutdown() or gtk_object_destroy()
9559         is called during ::destroy, and avoid recursion there.
9560
9561         * gtk/gtktypeutils.c:
9562         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
9563         boxed_copy/boxed_free. this needs a more general solution based on a
9564         publically installed code-generator utility.
9565
9566         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
9567         glib's gobject has support for that now.
9568         define GtkSignalMarshaller in terms of GSignalCMarshaller.
9569
9570 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
9571
9572         * gtk/gtksignal.[hc]:
9573         * gtk/gtkmarshal.[hc]:
9574         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
9575         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
9576         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
9577         care of that.
9578
9579         * *.c: marshaller name fixups.
9580
9581         * gtk/gtkmarshal.list: added a comment briefing the format.
9582
9583 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
9584
9585         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
9586         compatibility macros here now. more specifically, most of
9587         the API is preserved (yes, _most_, nonwithstanding the
9588         following exceptions listed, the API is stil lHUGE ;)
9589         things that got removed completely:
9590         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
9591         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
9592         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
9593         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
9594         gtk_signal_remove_emission_hook().
9595         non-functional functions variants:
9596         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
9597         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
9598         not supported anymore.
9599         (gtk_signal_compat_matched): new internal function to aid
9600         implementation of the compatibility macros, it  provides
9601         functionality to block/unblock/disconnect handlers based
9602         on func/data.
9603
9604         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
9605
9606         * *.c: adaptions to new type registration API signatures.
9607
9608 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
9609
9610         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
9611
9612 2000-10-25  Robert Brady  <robert@suse.co.uk>
9613
9614         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
9615         gdk_property_delete): If window == NULL, assume the root window.
9616         (restoring the behaviour that was in 1.2).
9617         
9618         * gtk/testtext.c (save_buffer): Allow creation of new files when
9619         saving.
9620
9621         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
9622         calls to read().
9623
9624 2000-10-25  Tor Lillqvist  <tml@iki.fi>
9625
9626         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
9627
9628         * gdk/win32/gdkdrawable-win32.c
9629         * gdk/win32/gdkimage-win32.c
9630         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
9631         X11 backend.
9632
9633         * gdk/win32/gdkcc-win32.c
9634         * gdk/win32/gdkcolor-win32.c
9635         * gdk/win32/gdkfont-win32.c
9636         * gdk/win32/gdkinput-win32.c
9637         * gdk/win32/gdkmain-win32.c
9638         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
9639
9640 2000-10-24  Havoc Pennington  <hp@redhat.com>
9641
9642         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
9643         it a static function
9644
9645         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
9646         redraw text when a tag is applied to it.
9647
9648         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
9649         (gtk_text_tag_affects_nonsize_appearance): private functions to
9650         see if a tag requires various kinds of redraw/layout to be queued
9651         up.
9652
9653         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
9654
9655         * gtk/testtext.c (fill_example_buffer): Put the cursor 
9656         at the start of the buffer, so search works by default
9657
9658         * gtk/gtktextiter.c (lines_match): init match_start always
9659
9660         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
9661         function, get iter at a line + a byte index
9662
9663         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
9664         to set byte position within a line
9665         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
9666
9667 2000-10-23  Havoc Pennington  <hp@redhat.com>
9668
9669         * gtk/testtext.c: Re-enable the "find" dialog
9670
9671         * gtk/testgtk.c: Add test for gdk_drawable_get_image
9672         
9673         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
9674         the arguments to gdk_draw_drawable were in the wrong order
9675         (gdk_window_paint_init_bg): This function was ignoring the
9676         init_region, instead of clipping to it, so the entire backing
9677         pixmap was cleared on every begin_paint()
9678         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
9679         was in here again, the loop kept using the same GtkWindowPaint
9680         over and over.
9681         (gdk_window_begin_paint_region): Fix a bug where we had two
9682         x_offset instead of x_offset and y_offset
9683
9684         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
9685         before we get the image.
9686         (gdk_draw_drawable): get the composite before we draw the drawable.
9687         (gdk_drawable_real_get_composite_drawable): default
9688         get_composite_drawable implementation that returns the drawable 
9689         itself
9690
9691         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
9692         get_composite_drawable virtual function
9693
9694         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
9695         list-walking bug
9696
9697         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
9698         make this work if the source drawable is a GdkDrawableImplX11
9699         instead of a public drawable type. This is really broken; the
9700         problem is that GdkDrawable needs a virtual method get_xid(), but
9701         of course that doesn't work in practice. Enter RTTI.
9702
9703         Also, improve mismatched depth message.
9704
9705         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
9706         GdkPixmap
9707
9708         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
9709         install _gdk_x11_get_image as our implementation of get_image
9710         
9711         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
9712         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
9713
9714         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
9715         gdk_drawable_get_image
9716
9717         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
9718
9719         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
9720         get_image
9721
9722         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
9723         trailing semicolon after for loop
9724
9725 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
9726
9727         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
9728         where font_desc for widget's context lagged widget's font_desc by
9729         one step.
9730
9731 2000-10-22  Tor Lillqvist  <tml@iki.fi>
9732
9733         * gdk/win32/gdkgc-win32.c
9734         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
9735
9736         * gtk/makefile.mingw.in
9737         * gtk/gtk.def: Updates.
9738
9739         * gtk/testgtk.c: sleep() is called _sleep in MS's C
9740         library.
9741
9742         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
9743
9744         * gtk/makefile.msc: Remove
9745
9746         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
9747
9748         * gtk/Makefile.am: Add it.
9749
9750         * configure.in: Generate it.
9751
9752         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
9753         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
9754         something even if not implemented, to satisfy picky MSVC.
9755
9756         Patches by Hans Breuer:
9757         
9758         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
9759         SetBkMode() and SetTextAlign() before calling
9760         pango_win32_render().
9761
9762         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
9763         Set hcliprgn to NULL after destroying it.
9764         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
9765
9766         * gdk/win32/gdkgeometry-win32.c
9767         (_gdk_windowing_window_queue_antiexpose): More effective
9768         implementation.
9769
9770         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
9771         depth as default, not the visual's.
9772
9773         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
9774         against empty title.
9775
9776         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
9777         IMAGE_PRIVATE_DATA.
9778
9779         * gdk/win32/gdkimage-win32.c: Use it.
9780
9781 2000-10-22  Robert Brady  <robert@suse.co.uk>
9782
9783         * configure.in: Check for bind_textdomain_codeset
9784
9785         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
9786         present, make use of it.
9787
9788         Add a translatable string "default:LTR" which, if translated
9789         to "default:RTL", will cause the default direction to be
9790         Right-to-Left.
9791
9792         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
9793         direction if marked as flippable.
9794
9795         * gtk/gtkhscale.c: Mark widget as flippable.
9796         
9797 2000-10-04  Havoc Pennington  <hp@redhat.com>
9798
9799         * gtk/testgtk.c (create_buttons): create some stock buttons
9800         with the default accel group
9801         (create_image): test some new GtkImage features
9802         (make_message_dialog): test GtkMessageDialog
9803         (create_modal_window): fix someone's bizzarro indentation
9804
9805         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
9806         GTK_WIN_POS_CENTER_ON_PARENT. 
9807         Add "destroy with parent" setting, which means the window goes
9808         away with its transient parent.
9809         (gtk_window_get_default_accel_group): get the default accel group
9810         for the window.
9811         (gtk_window_set_destroy_with_parent): set/unset destroy with
9812         parent flag
9813         (gtk_window_read_rcfiles): invalidate icon set caches
9814         after reloading rcfiles 
9815
9816         * gtk/gtkenums.h (GtkWindowPosition): add
9817         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
9818         on its parent window when the dialog is mapped for the first time.
9819
9820         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
9821         a simple message dialog class
9822         
9823         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
9824         handler to emit response signal, and maybe later it would
9825         honor a hide_on_delete flag - though that isn't there yet.
9826         Set border width on the vbox to 2, so we get some padding.      
9827         Use a button box for the action area.
9828         (gtk_dialog_key_press): synthesize a delete event if Esc
9829         is pressed and the GtkWidget key press handler didn't 
9830         handle the escape key.
9831         (gtk_dialog_new_with_buttons): new function creates a dialog
9832         with some default buttons in it.
9833         (gtk_dialog_add_action_widget): add an activatable widget
9834         as a button in the dialog - you can also add a non-activatable
9835         widget by accessing the action area directly.
9836         (gtk_dialog_add_button): add a simple button - stock ID or 
9837         label - to the action area
9838         (gtk_dialog_response): emit response signal
9839         (gtk_dialog_run): block waiting for the dialog, return 
9840         the response. Override normal delete_event behavior, so that 
9841         delete_event does nothing inside gtk_dialog_run().
9842
9843         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
9844         emitted when an action widget is clicked or the dialog gets
9845         delete_event
9846
9847         * gtk/gtk.h: add gtkmessagedialog.h
9848
9849         * gtk/Makefile.am: add gtkmessagedialog.[hc]
9850
9851 2000-10-18  Havoc Pennington  <hp@redhat.com>
9852
9853         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
9854         where any number of empty lines would get skipped
9855
9856         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
9857         edge.
9858
9859         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
9860         warning about invalid iterators (explain more thoroughly)
9861         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
9862
9863         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
9864         big
9865
9866         * demos/*.c: Add error handling
9867
9868         * gtk/gtktextbuffer.c: don't modify const iterators
9869
9870         * gtk/gdk-pixbuf-loader.c: Add full error handling here
9871
9872         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
9873         on file load
9874
9875         * gtk/gtkiconfactory.c: Update to reflect addition of error
9876         handling to gdk-pixbuf loaders
9877
9878 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
9879
9880         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
9881         move to new modularized testgtk.
9882
9883 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
9884
9885         * gtk/gtktreeview.c: Draw the arrows correctly.
9886
9887         * gtk/gtktreemodel.c: Added user docs.
9888
9889         * gtk/gtk.h: remove gtktreedatalist.h.
9890
9891         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
9892         parent when generating my type.
9893
9894         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
9895         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
9896
9897 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9898
9899         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
9900         GtkTreeModel from object to interface.
9901
9902 2000-10-16  Havoc Pennington  <hp@redhat.com>
9903
9904         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
9905         compilation
9906
9907 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
9908
9909         * gtk/gtktreeselection.c: Add API documentation to all public
9910         functions.
9911
9912         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
9913         functions.
9914
9915 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
9916
9917         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
9918         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
9919         docs to all public functions.
9920
9921         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
9922         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
9923         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
9924         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
9925         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
9926         issue.
9927
9928 2000-10-14  Robert Brady  <robert@suse.co.uk>
9929
9930         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
9931
9932 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
9933
9934         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
9935         values other then G_TYPE_STRING.
9936         * gtk/gtktreeselection.c: Minor commenting updates.
9937         * gtk/gtktreeview.c: Format updates.
9938
9939 2000-10-09  Tor Lillqvist  <tml@iki.fi>
9940
9941         * README.win32: Update.
9942
9943         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
9944         lines that had been deleted by mistake (?).
9945
9946         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
9947         also the case fg==white and bg==black (but still not randomly
9948         coloured cursors). Thanks to Wolfgang Sourdeau.
9949
9950         * gdk/win32/*.c: Silence gcc -Wall.
9951
9952         * gtk/gtk.def: Add missing entry points.
9953
9954         Fixes by Hans Breuer:
9955
9956         * gdk/makefile.msc
9957         * gdk/win32/makefile.msc: Update.
9958
9959         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
9960         some MSVC thing, presumably), cause breakpoint on failures. Add
9961         GDK_NOR case. Call g_log_set_always_fatal.
9962
9963         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
9964         should be pased by reference.
9965         
9966         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
9967         
9968         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
9969
9970         * gdk/win32/gdkevents-win32.c
9971         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
9972
9973         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
9974         implementation object.
9975
9976         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
9977         not just windows.
9978         
9979         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
9980         Use the wrapper object.
9981         
9982 2000-10-06  Havoc Pennington  <hp@redhat.com>
9983
9984         * Makefile.am (SRC_SUBDIRS): contrib subdir
9985
9986         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
9987         so it can be used in Xlib version
9988
9989         * demos/testpixbuf.c (update_timeout): error checking from 1.0
9990         tree
9991
9992         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
9993         change from 1.0 tree that returns first frame of animation
9994         if the loaded file is an animation.
9995
9996         * contrib: add new directory to hold stuff that comes with GTK+
9997         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
9998         
9999         * configure.in: add contrib/*
10000
10001 2000-10-05  Havoc Pennington  <hp@redhat.com>
10002
10003         * demos/testpixbuf-save.c: add pixbuf save test
10004
10005         * demos/Makefile.am: add testpixbuf-save.c
10006
10007 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
10008
10009         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
10010         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
10011         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
10012         * gtk/gtktreeselection.[ch]: Replaced
10013         "node_selected"/"node_unselected" signal with "selection_changed"
10014         signal.
10015
10016 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10017
10018         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
10019         tree widget.
10020
10021 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
10022
10023         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
10024         drawing.
10025
10026 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
10027
10028         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
10029         Move list pointer forwards before removing item from
10030         list. (Crash reported by Salmaso Raffaele)
10031
10032         * gdk/gdkwindow.h: Remove spurious trailing ,
10033
10034         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
10035         dependencies on uninstalled libraries, sorry folks.
10036
10037 2000-10-04  Havoc Pennington  <hp@redhat.com>
10038
10039         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
10040         gtk/gtkiconfactory.c: Fix copyrights    
10041
10042         * demos/testpixbuf.c: add inline pixbuf test
10043         
10044 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
10045
10046         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
10047         Add gdk_window_iconify.
10048
10049         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
10050         (gdk_window_set_geometry_hints): Add win_gravity
10051         to geometry structure.
10052
10053         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
10054         Implement _NET_WM_PING.
10055
10056         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
10057         Set _NET_WM_PID on the client leader.
10058
10059         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
10060         Handle UTF-8 better.
10061
10062         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
10063         UTF-8 better, set _NET_WM_NAME as well. Only set
10064         icon name if it hasn't previously been explicitely 
10065         set.
10066
10067 2000-10-03  Havoc Pennington  <hp@redhat.com>
10068
10069         * gtk/testtextbuffer.c: clean up trailing whitespace,
10070         add extensive tests for tag toggle iteration.
10071         
10072         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
10073         distance
10074
10075         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10076         optimize case where the tag root is on level 1
10077         (gtk_text_line_previous_could_contain_tag): attempt to implement
10078         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
10079         functionality
10080
10081         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
10082         Implement this, though not very efficiently.
10083
10084         * gtk/gtktextiterprivate.h: reformat
10085
10086         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
10087         iterator
10088
10089         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
10090         this to properly revalidate the iterators.
10091
10092         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
10093         properly at the end of the line (and therefore on empty lines)
10094
10095         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
10096         maybe we should return a value...
10097
10098 2000-10-03  Tor Lillqvist  <tml@iki.fi>
10099
10100         * config.h.win32: Guard definition of alloca(). glib.h now handles
10101         that.
10102
10103         * gdk/gdk.def
10104         * gtk/gtk.def: Add new entry points.
10105
10106         Changes just to make GTK+ build without errors on Win32. No hope
10107         of it working in its current state, though...:
10108         
10109         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
10110         some functions from the X11 backend, just to make GTK+ build.
10111
10112         * gdk/makefile.mingw.in
10113         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
10114         number. Add new object files.
10115
10116         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
10117         GetMessageTime to get timestamp (where on X11 uses
10118         gdk_x11_get_server_time()).
10119
10120 2000-10-02  Havoc Pennington  <hp@pobox.com>
10121
10122         * gtk/gtktextview.c: text_window_* weren't static and should have
10123         been.
10124         Start work on child widgets; not yet complete, syncing to 
10125         office computer.
10126
10127         * gtk/gtktextchild.h: change this to contain a public interface,
10128         starting work on child interfaces.
10129         * gtk/gtktextchildprivate.h: move private interfaces here
10130
10131         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
10132
10133         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
10134         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
10135         gtk/gtktextmark.c: copyright notices
10136
10137         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
10138         internal functions      
10139
10140         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
10141         internal function
10142
10143         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10144         Reformatting    
10145
10146 2000-09-30  Havoc Pennington  <hp@pobox.com>
10147
10148         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
10149         NULL start/end pointers
10150
10151         * gtk/gtktextbuffer.c: Write some docs
10152         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
10153         NULL, so you can just check whether there's a selection.        
10154
10155         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
10156         cleanup_line or segments_changed ourselves, it gets done 
10157         in unlink_segment
10158
10159         * gtk/gtktextmark.h:
10160         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
10161         
10162         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
10163
10164         * gtk/gtktextmark.c: delete some more old Tk cruft
10165
10166         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
10167         mark before removing it, so we can emit MARK_DELETED with a valid
10168         pointer.
10169         (gtk_text_buffer_mark_set): hold ref across signal emission
10170
10171         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
10172         whining about attempts to delete special marks
10173
10174         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
10175         underscore, since it's internal.
10176
10177         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
10178         now implemented in terms of iterators in gtktextiter.h
10179
10180         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
10181         New function, destructively sets contents of buffer. Also 
10182         a convenient way to clear the buffer by setting text to ""
10183
10184         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
10185         multiline string literal
10186
10187         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
10188         text changes.
10189
10190         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
10191         is not dereferenceable
10192         (gtk_text_iter_forward_lines): fix return value
10193
10194 2000-09-29  Havoc Pennington  <hp@redhat.com>
10195
10196         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
10197
10198         * gtk/gtktextview.c: Implement drag thresholding; change functions 
10199         that set border window size to have nicer name
10200         (gtk_text_view_mark_set_handler):  Fix this to have the 
10201         right signature.
10202
10203         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
10204
10205         * gtk/testtext.c: Update with API changes, put line numbers on 
10206         both sides.
10207         
10208         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
10209         with this
10210
10211         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
10212         pixbuf; delete a big block of #if 0 Tk code
10213
10214         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
10215         insert_pixmap with insert_pixbuf
10216
10217 2000-09-29  Martin Baulig  <baulig@suse.de>
10218
10219         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
10220         confusion with the GdkPixbuf of the GNOME 1.x platform.
10221
10222 2000-09-29  Havoc Pennington  <hp@pobox.com>
10223
10224         * gtk/gtktextview.c: Implement the side windows.
10225
10226         * gtk/testtext.c: Implement simple line numbering in the 
10227         left side window; seems to make scrolling sloooow. Oops.
10228         Also, cursor blink is for some reason causing redraws
10229         of the line numbers. Should investigate...
10230
10231 2000-09-28  Havoc Pennington  <hp@redhat.com>
10232
10233         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
10234         scrolling child windows, and draw focus rectangle properly.
10235         
10236         (gtk_text_view_buffer_to_window_coords):
10237         Coordinate transformation to deal with all these freaking windows
10238         and offsets
10239         (gtk_text_view_window_to_buffer_coords): transform the other way
10240
10241         * gtk/testtext.c (create_buffer): Update to match Pango API change
10242
10243         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
10244         anonymous tags
10245         (foreach_unref): don't emit remove signal from finalize, just
10246         set tag's parent to NULL
10247
10248 2000-09-26  Havoc Pennington  <hp@redhat.com>
10249
10250         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
10251         Fix some warnings       
10252
10253 2000-09-26  Havoc Pennington  <hp@redhat.com>
10254
10255         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
10256         headers into the private header list
10257
10258         * Makefile.am (pkgconfig_DATA): install pkg-config files
10259
10260         * configure.in: add pkg-config files
10261
10262         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
10263
10264         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
10265         outstanding icon caches on theme change.
10266
10267         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
10268         important types:
10269
10270         (GtkIconSource): Specification for creating a pixbuf 
10271         appropriate for a direction/state/size triplet from 
10272         a source pixbuf or filename
10273
10274         (GtkIconSet): List of GtkIconSource objects that are used to
10275         create the "same" icon (e.g. an OK button icon), and cache for
10276         rendered icons
10277
10278         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
10279         up the icon set for a given stock ID.  GTK maintains a stack of
10280         GtkIconFactory to search, and applications or libraries can add
10281         additional icon factories on top of the stack
10282         
10283         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
10284         the set of GtkIconSource specified for a given stock ID into 
10285         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
10286         RcStyle, under the specified stock ID.
10287
10288         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
10289         render_icon used to derive a GdkPixbuf from a GtkIconSource.
10290         This allows people to theme how prelight, insensitive, etc. are
10291         done.
10292
10293         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
10294         icon factories for a style, and return the resulting 
10295         icon set if any.
10296
10297         (gtk_style_render_icon): Render an icon using the render_icon 
10298         method in the GtkStyleClass.
10299
10300         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
10301         Use the style for a given widget to look up a stock ID, get the
10302         icon set, and render an icon using the render_icon method 
10303         of the style
10304
10305         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
10306         (contains information about a stock item), the built-in stock item
10307         IDs, and functions to add/lookup stock items.
10308
10309         * gtk/stock-icons/*: Stock icons that come with GTK
10310
10311         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
10312         a button based on a GtkStockItem
10313         (gtk_button_new_accel): Takes a uline string and accel group, and
10314         installs the accelerator.
10315
10316         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
10317         image-display widget.
10318
10319 2000-09-25  Havoc Pennington  <hp@redhat.com>
10320
10321         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
10322
10323         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
10324         Fix a bug when removing node data, we didn't properly 
10325         re-splice the linked list after removing the data.
10326
10327         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
10328         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
10329
10330         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
10331
10332         * gtk/gtktextlayout.c (set_para_values): Set tab array 
10333         for the layout from the GtkTextTag.
10334
10335         * gtk/gtktexttypes.h: delete tab and search cruft, 
10336         remove g_convert() in favor of GLib version
10337
10338         * gtk/gtktexttypes.c: remove tab implementation from here,
10339         move to Pango
10340
10341         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
10342         tab stuff using new PangoTabArray from Pango
10343
10344         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
10345         unused border_width stuff
10346
10347 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
10348
10349         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
10350         glib) and now useless utf_to_latin1() latin1_to_utf()
10351
10352         * gtk/gtktextview.[ch]: Change ::move_insert and
10353         ::delete_text action signals to ::move and ::delete;
10354         create the signals with the right enumeration type,
10355         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
10356         C-v bindings, change Home, End to move to beginning/end
10357         of line, Add C-Home C-End to move to beginning/end
10358         of buffer. Change ::cut_text to ::cut_clipboard, etc;
10359         combine ::scroll_text into ::move; use new GtkSelectionData
10360         functions to simplify DND text handling.
10361         
10362         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
10363         deletion enumerations here, rename enumeration values to 
10364         be consistently plural.
10365
10366         * gtk/gtktextbuffer.c: Use new clipboard interfaces
10367         for cut/copy/paste and primary selection.
10368
10369         * gtk/gtktextbuffer.[ch]: Remove excess time and
10370         'interactive' arguments from cut/copy/paste;
10371         rename cut to cut_clipboard, etc; remove
10372         gtk_text_buffer_get_clipboard_contents().
10373
10374         * gtk/gtktextlayout.[ch]: Add 
10375         gtk_text_layout_move_iter_to_line_end() to move the iter to 
10376         line ends.
10377
10378         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
10379         Functions to set or get a UTF-8 string on the selection
10380         data.
10381
10382         * gtk/gtkclipboard.[ch]: New, simplified selection handling
10383         interfaces.
10384
10385         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
10386         created widgets - one of these is useless if we don't.
10387
10388         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
10389         a public function clear all targets registered for the
10390         widget.
10391
10392         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
10393         Never call gtk_widget_realize() - that was just asking
10394         for bizarre side-effects.
10395
10396         * gtk/gtkselection.c (gtk_selection_owner_set): Call
10397         gdk_selection_owner_set even if the widget is the
10398         same so that we reliably update the timestamp on
10399         the server.
10400
10401         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
10402         gdk_x11_get_server_time() function.
10403         
10404         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
10405         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
10406         Add some tricky filtering on serial numbers for
10407         selection clear events to fix up long-standard
10408         race condition FIXME's in gtkselection.c.
10409
10410         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
10411         routines to convert from utf8 to compound text or
10412         STRING and from a text property to UTF-8.
10413
10414         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
10415         a convenience function gdk_get_current_event_time().
10416
10417         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
10418         and free selection_data->data properly
10419
10420 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
10421
10422         * gtk/gtkthemes.c: Remove some unecessary includes.
10423
10424 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
10425
10426         * gtk/gtktextdisplay.c
10427         * gtk/gtktextlayout.c
10428         * gtk/gtktexttag.c
10429         * gtk/gtktexttag.h
10430         * gtk/testtext.c: Change the overstrike property to strikethrough,
10431         to closer match pango.
10432
10433 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
10434
10435         * gtk/gtktextview.c: Fix up visibility so that focus,
10436         cursor_visible and blink interact properly.  Reenable cursor blink
10437         which had been roughly disabled. Make blink and focus
10438         properly per-view.
10439
10440         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
10441         Add a flag for whether to display insertion cursor and
10442         a function to set the flag.
10443
10444         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
10445         get_line_y() to get_line_yrange(), to be a bit more generally
10446         useful.
10447
10448 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
10449
10450         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
10451           do stop_navigating_submenu, to clear last timeout properly.
10452           Also in gtk_menu_motion_notify move ignore_enter above
10453           the conditional to make it always happen as suggested by Owen
10454
10455 2000-09-07  Tor Lillqvist  <tml@iki.fi>
10456
10457         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
10458
10459         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
10460         w32api headers.
10461
10462         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
10463         declarations.
10464
10465         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
10466         (gdk_win32_get_colormap): A line had been deleted by mistake.
10467
10468         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
10469         (gdk_event_translate): Handle more virtual keycodes to be able to
10470         generate GDK events for Control-comma, Control-period, etc.
10471
10472         * gtk/gtk.def: Add some missing entry points.
10473
10474 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
10475
10476         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
10477         Doc comment fixing. (Mostly non-matching parameter names.)
10478
10479         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
10480         comments a little to avoid looking like a doc comment.
10481
10482         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
10483         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
10484         conversions be changed to GError?)
10485
10486         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
10487         Move private #defines into .c file.
10488
10489         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
10490         order of argument addition, remove duplicates.
10491
10492         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
10493         parent class is FrameClass, not BinClass.
10494
10495         * gtk/gtk.h: Add gtkinvisible, which was missing.
10496         (It's occasionalyl useful for client apps, if seldom.)
10497
10498         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
10499         #define.
10500
10501 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
10502
10503         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
10504         coordinates when creating window, instead of GDK-space
10505         coordinates. (Avoid BadValue on too large windows.)
10506
10507 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10508
10509         * configure.in (use_mmx_asm): Remove conftest* after use along the
10510         lines of AC_TRY_COMPILE.        
10511         
10512         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
10513         of g_dirname, which is deprecated.
10514         (gtk_rc_parse_any): Removed calls to
10515         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
10516
10517         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
10518         Removed calls to g_hash_table_{freeze,thaw}, as they are
10519         deprecated now.
10520
10521         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
10522         instead of g_basename.
10523         
10524 2000-09-04 Elliot Lee <sopwith@redhat.com>
10525         
10526         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
10527         ANSI warning.
10528
10529 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
10530
10531         * gtk/gtkwidget.h:  Add some documenting comments about 
10532           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
10533           just as owen said on irc.
10534
10535         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
10536           set HAS_DEFAULT.  Only set it if there isn't another window
10537           holding it (a focus window which RECEIVES_DEFAULT) and only unset
10538           it if the widget is not the focused window with RECEIVES_DEFAULT.
10539           This fixes weird double default bugs in dialogs which has things
10540           call gtk_window_set_default at times.
10541
10542 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
10543
10544         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
10545         Nils Barth and David Santiago to improve submenu
10546         navigation. The patch does this by creating a triangular
10547         region from the point where the pointer leaves the
10548         menu to the submenu.  While the pointer is in
10549         that region and a timeout has not expired, events 
10550         that would cause the active submenu to change are
10551         ignored.
10552
10553 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
10554
10555         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
10556         moving a toplevel window immediately after sizing it would
10557         result in it being sized back to the old size since 
10558         impl->width, impl->height aren't updated until we hear
10559         back from the server. There is still a (longstanding) bug
10560         here that gdk_window_get_size() will give the wrong size
10561         until we do hear back.
10562
10563 2000-08-31  Havoc Pennington  <hp@redhat.com>
10564
10565         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
10566         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
10567         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
10568         Rename GtkTextStyleValues to GtkTextAttributes
10569
10570 2000-08-31  Havoc Pennington  <hp@pobox.com>
10571
10572         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
10573         for rapid testing whether an iterator is the end iterator
10574         (gtk_text_btree_new): init end line cache
10575         (gtk_text_line_is_last): use fast cached line to 
10576         see if we're the last line.
10577         (get_last_line): use cached line here too, should 
10578         speed up some random unrelated code.
10579         
10580 2000-08-30  Havoc Pennington  <hp@pobox.com>
10581
10582         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
10583         signals.
10584
10585         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
10586         delete_text signals. This allows the signals to be used for
10587         implementing undo.
10588
10589         * gtk/gtktextbuffer.c: Change signal handler signatures; 
10590         provide "interactive" argument when emitting insert_text or
10591         delete_text signal.
10592         
10593 2000-08-30  Havoc Pennington  <hp@pobox.com>
10594
10595         * gtk/gtktextbuffer.c: Docs
10596
10597 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
10598
10599         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
10600         from switch statements, since Tor removed the enumeration
10601         value.
10602         
10603         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
10604         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
10605
10606 2000-08-29 Elliot Lee <sopwith@redhat.com>
10607         * */*.h: Use G_GNUC_CONST.
10608
10609 2000-08-27  Havoc Pennington  <hp@pobox.com>
10610
10611         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
10612         minor indentation fixes, inserted some FIXME about stuff I
10613         realized was broken while documenting it.
10614         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
10615         GTK convention  
10616
10617 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
10618
10619         * gtk/testgtk.c (create_styles): Fix double free of
10620         font desc.
10621
10622 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10623
10624         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
10625         
10626         * gtk/testgtk.c (create_styles): Add a test for modifying
10627         the style through gtk_widget_modify_*.
10628
10629         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
10630         a function to get the current modifier style.
10631
10632         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
10633         of the passed in GtkRcStyle instead of ref'ing it.
10634
10635         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
10636
10637 2000-08-20  Tor Lillqvist  <tml@iki.fi>
10638
10639         * gdk/gdkimage.h
10640         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
10641         shared memory image+pixmap GdkImage type, or
10642         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
10643         I am dropping that.
10644
10645         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
10646         actually call gtk_init_abi_check(), passing also
10647         sizeof(GtkWindow). Ditto for gtk_init_check(). 
10648
10649         * gtk/gtk.def
10650         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
10651         New functions, used to check that the GTK+-using code has been
10652         compiled using the correct compiler and switches. In particular,
10653         with gcc one has to use the -fnative-struct switch as GTK+ is
10654         compiled with that.
10655
10656 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
10657
10658         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
10659         ->prev fields when merging lists. (Found simultaneously
10660         by Pawel Salek and Jakub Jelinek)
10661
10662 2000-08-12  Tor Lillqvist  <tml@iki.fi>
10663
10664         * gdk/gdk.def
10665         * gtk/gtk.def: Add missing entries.
10666
10667         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
10668         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
10669
10670         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
10671         function. Dummy implementation at this point.
10672
10673         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
10674         rules. Undefine GTK_COMPILATION when compiling the test programs.
10675         
10676         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
10677
10678 2000-08-11  Tor Lillqvist  <tml@iki.fi>
10679
10680         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
10681         to convert back and forth from UTF-8 and the "system" (or "current
10682         locale") charset when necessary. Indentation/spacing cleanup.
10683
10684 2000-08-10  Havoc Pennington  <hp@redhat.com>
10685
10686         * Makefile.am (snapshot): Change the format of the snapshot
10687         version to match glib
10688
10689         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
10690         from EXTRA_DIST since it doesn't seem to exist
10691
10692 2000-08-10  Tor Lillqvist  <tml@iki.fi>
10693
10694         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
10695         version of the directory name (not the UTF-8 one) when building
10696         the path name to stat().
10697
10698 2000-08-03  Elliot Lee  <sopwith@redhat.com>
10699
10700         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
10701         PANGO_ATTR_SHAPE set.
10702
10703 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
10704
10705         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
10706         Peter Osterlund to simplify the code while keeping the
10707         functionality the same.
10708
10709 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
10710
10711         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
10712         is_viewable() test further inside the function, since removing the 
10713         window from the redraw list without clearing ->update_area
10714         was also very broken.
10715
10716 2000-08-02  Tor Lillqvist  <tml@iki.fi>
10717
10718         * configure.in: Check for <unistd.h>.
10719
10720 2000-08-01  Martin Baulig  <baulig@suse.de>
10721
10722         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
10723         to display the message that this is a development version of GTK+.
10724
10725 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
10726
10727         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
10728         was depending on widget->allocation instead of the width of text_area,
10729         which was incorrect for subclasses like GtkSpinButton.
10730
10731         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
10732         with width == 1 tests that should be width == -1.
10733
10734 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
10735
10736         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
10737         (broken, Elliot, every single window blank on X) custom code with call
10738         to gdk_window_is_viewable() which a) prevents code duplicate and
10739         b) works. 
10740
10741 2000-07-31  Elliot Lee  <sopwith@redhat.com>
10742
10743         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
10744         to get the GDK_PARENT_ROOT() macro to work.
10745         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
10746         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
10747         of, windows that aren't shown.
10748         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
10749         pointer grab stuff.
10750
10751 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
10752
10753         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
10754           s/gtk_main_iteration/g_main_iteration/
10755
10756           Did this already in change:
10757                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
10758           don't know how it got reverted.
10759
10760 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
10761
10762         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
10763         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
10764
10765         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
10766         not gdk_pixbuf.
10767
10768 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
10769
10770         * configure.in,po/{sp,sr}.po: Added Serbian files
10771
10772 2000-07-30  Tor Lillqvist  <tml@iki.fi>
10773
10774         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
10775
10776         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
10777         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
10778         GIOChannel implementation.
10779
10780         * gdk/win32/gdkinput.c
10781         * gdk/win32/gdkpango-win32.c: Update license name here, too.
10782
10783         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
10784         definition to match prototype.
10785
10786         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
10787
10788 2000-07-27  Elliot Lee  <sopwith@redhat.com>
10789
10790         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
10791         function, to allow handling image formats that cannot be detected
10792         by looking at content alone.
10793
10794 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
10795
10796         * docs/tutorial/*.gif *.jpg *.eps
10797           Update these to the same look-n-feel.
10798           Why does including images in DocBook suck so badly?
10799
10800 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
10801
10802         * gtk/gtktable.c: applied patch from Phil Thompson
10803         <phil@river-bank.demon.co.uk> that enables space settings for
10804         the last row/columns as well.
10805
10806 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
10807
10808         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
10809         updates the license headers to the GNU Lesser General Public License,
10810         as well as updating the copyright year to 2000.
10811
10812 2000-07-26  Robert Brady  <rwb197@zepler.org>
10813
10814         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
10815           and po/Makefile, was installing and looking for them under gtk20
10816           and gtk2 respectively.
10817
10818 2000-07-25  Havoc Pennington  <hp@redhat.com>
10819
10820         * gtk/testtext.c: Comment out some stuff that depends on the rest
10821         of my patches.
10822
10823 2000-07-25  Havoc Pennington  <hp@redhat.com>
10824
10825         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
10826         buffer
10827
10828 2000-07-25  Havoc Pennington  <hp@redhat.com>
10829
10830         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
10831         widget changes.
10832
10833         * gtk/gtktextview.h: To be consistent with usage of "line"
10834         throughout the API to mean "newline-terminated thingy", change
10835         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
10836         to MOVEMENT_LINE.
10837
10838         (GtkTextView): Add flags for default editability, and whether to
10839         show the cursor. Add functions to get/set that. Add 
10840
10841         (gtk_text_view_get_iter_location): new function
10842
10843         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
10844         gtktextlayout.h
10845         (g_convert): Add g_convert temporarily, will go in glib in a bit
10846         
10847         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
10848         GtkTextTagTableForeach instead of brokenly using GHFunc.
10849         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
10850
10851         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
10852         moved to public header.
10853
10854         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
10855         "invisible", since "elide" was a bad name.
10856         (gtk_text_tag_get_priority): Added
10857
10858         (GtkTextStyleValues): put this in public header, along with
10859         functions to use it.
10860
10861         * gtk/gtktextmarkprivate.h: Include more headers, since we no
10862         longer include gtktextbtree.h.
10863
10864         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
10865         gtk_text_mark_deleted
10866
10867         * gtk/gtktextlayout.h: Don't include the "really private" headers,
10868         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
10869         to make this possible. Now we only need to install
10870         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
10871         (However the Makefile.am isn't changed yet because of the
10872         logistics of merging gtk-hp-patches piecemeal)
10873
10874         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
10875         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
10876         gtk_text_iter_get_line is now used in the public API for a
10877         different purpose.
10878
10879         * gtk/gtktextiter.h: Clean up function names to be more
10880         consistent. Always call char offset "offset" and byte index
10881         "index". A "line" is always a line number. 
10882
10883         (gtk_text_iter_is_last): new function, more efficient than 
10884         the existing way to check
10885         (gtk_text_iter_is_first): new function, also more efficient
10886
10887         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
10888
10889         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
10890         gtk_text_iter_forward_char, etc.
10891
10892         (gtk_text_iter_forward_to_tag_toggle): Renamed from
10893         forward_find_tag_toggle, since this isn't a linear search
10894
10895         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
10896
10897         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
10898         New functions, search for a buffer substring.
10899
10900         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
10901         interactive and default editable (since we need to store that info
10902         until we receive the selection data).
10903
10904         Remove all the _at_char and at_line etc. versions of functions;
10905         only have iterator versions.
10906
10907         Add _interactive() versions of functions, that consider the
10908         editability of text. (FIXME add interactive flag to the 
10909         insert/delete signals per Darin's suggestion)
10910
10911         (gtk_text_buffer_get_tag_table): new function, demand-creates the
10912         tag table if necessary
10913
10914         Remove declaration of gtk_text_buffer_get_iter_from_string
10915
10916         (_gtk_text_buffer_get_btree): private/internal function, added.
10917         
10918
10919         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
10920         (gtk_text_line_is_last): new function
10921
10922 2000-07-25  Havoc Pennington  <hp@redhat.com>
10923
10924         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
10925         using GtkProgressBar. See Changes-2.0.txt for details.
10926
10927         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
10928         "pulse_step" which are the equivalent of
10929         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
10930         Implement new API.
10931         
10932         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
10933         (use_text_format) to mark whether text set on the progress bar is
10934         a format string. Deprecate entire GtkProgress interface.
10935
10936         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
10937         (gtk_progress_build_string): make this a no-op if use_text_format
10938         is FALSE
10939
10940         * docs/Changes-2.0.txt: Describe progress bar changes.
10941
10942 2000-07-25  Tor Lillqvist  <tml@iki.fi>
10943
10944         * Makefile.am: Include the build directory.
10945
10946         * configure.in: Generate build/Makefile, build/win32/Makefile,
10947         gdk/, gdk/win32/, and gtk/makefile.mingw.
10948
10949         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
10950         Add GETTEXT_PACKAGE.
10951         
10952         * gdk/gdk.def
10953         * gtk/gtk.def: Updates.
10954
10955         * gdk/gdkfont.h
10956         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
10957         need them any longer.
10958
10959         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
10960
10961         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
10962         PANGOWIN32_LIBS and gdk_pixbuf.
10963
10964         * gdk/win32: Compiles, but no doubt doesn't work at all.
10965
10966         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
10967
10968         * gdk/win32/gdkinput.c: New file, temporarily.
10969         
10970         * gdk/win32/gdkinput-win32.h: New file
10971
10972         * gdk/win32/gdkinputprivate.h: Remove.
10973
10974         * gdk/win32/gdkpango-win32.c: New file.
10975
10976         * gtk/makefile.mingw.in: New file
10977
10978         * gtk/makefile.cygwin: Removed
10979         
10980         * gtk/Makefile.am: Update accordingly.
10981
10982         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
10983         made externally visible.
10984
10985         * gtk/gtkmain.c: Use it.
10986         
10987         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
10988         is enough.
10989
10990         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
10991
10992 2000-07-24 Elliot Lee <sopwith@redhat.com>
10993         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
10994         individual backends already.
10995         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
10996         again. Yes, there really is a good reason for this, if you are using the gdkregion
10997         internals, and if you're not, why do you care?
10998         * gdk/gdkwindow.c: Fix inverted condition
10999         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
11000         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
11001         * gtk/gtkrange.c: Redraw trough when moving.
11002         * gtk/gtktypeutils.c: Fix warning by adding const cast.
11003         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
11004
11005 2000-07-23  Tor Lillqvist  <tml@iki.fi>
11006
11007         * configure.in: Check for mkstemp and sigsetjmp. Output
11008         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
11009
11010         More work on GDK for Win32. Still in an intermediate state.
11011
11012         * gdk/makefile.cygwin
11013         * gdk/win32/makefile.cygwin: Removed.
11014         
11015         * gdk/makefile.mingw.in
11016         * gdk/win32/makefile.mingw.in: New files.
11017
11018         * gdk/Makefile.am
11019         * gdk/win32/Makefile.am: Generate and distribute them.
11020
11021         * gdk/win32/gdkwindow-win32.h
11022         * gdk/win32/gdkdrawable-win32.h
11023         * gdk/win32/gdkpixmap-win32.h: New files.
11024
11025         * gdk/win32/gdkcolor-win32.c
11026         * gdk/win32/gdkcursor-win32.c
11027         * gdk/win32/gdkdrawable-win32.c
11028         * gdk/win32/gdkgc-win32.c
11029         * gdk/win32/gdkimage-win32.c
11030         * gdk/win32/gdkprivate-win32.h
11031         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
11032         Rename fields and variables called xcursor, xid, etc (these names
11033         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
11034
11035 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
11036
11037         * gtk/gtkentry.[ch]: Fix some problems with vertical
11038         alignment.
11039
11040         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
11041         char/byte confusion.
11042
11043 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
11044
11045         * gtk/gtktextview.c (changed_handler): Fix bug where
11046         redraw wasn't being done properly when height of
11047         dirty region changed.
11048
11049         * demos/Makefile.am: Remove various references to
11050         -lgmodule
11051
11052 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
11053
11054         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
11055         PangoAttrShape to reserve space for pixmaps, add 
11056         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
11057         in the display functions.
11058         
11059         * gtk/testgtk.c (create_layout): Set some more exotic
11060         scrolled window options
11061
11062         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
11063         Add function to set the shadow type of a window, to allow
11064         putting a shadow around widgets such as GtkLayout or GnomeCanvas
11065         which don't draw their own frame.
11066
11067 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
11068
11069         * docs/tutorial/package-db-tutorial.sh: New file for
11070           packaging DocBook format tutorial
11071
11072 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
11073
11074         * docs/tutorial/gtk-tut.sgml: Minor updates
11075
11076         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
11077
11078 2000-07-19  Tor Lillqvist  <tml@iki.fi>
11079
11080         * gtk/gtksignal.c: Fix C++ comment.
11081
11082         * gtk/gtkimmulticontext.c
11083         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
11084         don't return value from void functions.
11085
11086         * gtk/gtk.def: Add gtk_rc_style_unref.
11087
11088 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11089
11090         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
11091         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
11092         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
11093         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
11094         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
11095         gtk/gtktypeutils.h: Include files outside of the extern "C"
11096         block. Makes some C++ compiler happy. Reported by Denis Vakatov
11097         <vakatov@peony.nlm.nih.gov>.
11098
11099 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
11100
11101         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
11102           Completes first pass. Hurrah!
11103
11104 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
11105
11106         * docs/tutorial/gtk-tut.sgml: More clean ups.
11107
11108 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
11109
11110         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
11111         paint the background of the text area which was accidentally
11112         removed at some point.
11113
11114         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
11115           
11116          - Move most of the functionality from the theme vtable
11117            into GtkRcStyleClass and GtkStyleClass. The moved
11118            vtable functions were changed a bit in the move to
11119            work better in their new home.
11120
11121          - Get rid of the engine and engine_data fields from
11122            GtkRcStyle and GtkStyle; instead the theme
11123            engine derives theme-specific subclasses of GtkRcStyle
11124            and GtkStyle
11125
11126          - Add extra dlsym() found entry point to themes,
11127            theme_create_rc_style().
11128
11129         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
11130         in gtk_style_real_copy.
11131
11132         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
11133         to register a type associated with an engine. (The engine
11134         won't be unloaded as there is an instance of the type.)
11135
11136
11137 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
11138
11139         * docs/tutorial/gtk-tut.sgml: Clean ups.
11140
11141 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
11142
11143         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
11144           of cleaning up to do.
11145
11146 2000-07-15  Tor Lillqvist  <tml@iki.fi>
11147
11148         * gdk/testgdk.c: New file, quick hack to test backends for
11149         pixel-by-pixel correctness of the most simple graphic operations.
11150
11151 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
11152
11153         * Really release 1.3.1
11154         
11155         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
11156         include structure.
11157
11158 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
11159
11160         * Released 1.3.1
11161
11162 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
11163
11164         * gtk/gtktextlayout.c: use FALSE for size_only most
11165         of the time when calling gtk_text_layout_get_line_display()
11166         to avoid causing double reshapes when a redraw follows
11167         immediately after.
11168
11169 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
11170
11171         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
11172         appropriate region and gdk_window_process_updates() so trough
11173         updating doesn't lag behind the window being scrolled.
11174
11175         * gdk/gdkgc.c: Make parent_class pointer static.
11176          
11177 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
11178
11179         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
11180         include <string.h>.
11181          
11182         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
11183         cut-and-paste error in computing memory offset for 4 channels.
11184
11185 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
11186
11187         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
11188         gtk_rc_append_default_pixmap_path(), since it wasn't
11189         adding an interesting path and we don't have a meaningful
11190         default for this value.
11191
11192 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
11193
11194         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
11195         gtk-config to gtk-config-2.0 move gtk_.m4 to
11196         gtk-2.0.m4
11197
11198         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11199         gdk/Makefile.am demos/Makefile.am: Change 
11200         library names to libgtk-1.3.la, etc, so that we
11201         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
11202
11203         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
11204         gdk/Makefile.am gdk/x11/Makfile.am
11205         Move include files into /usr/include/gtk-2.0, 
11206         /usr/lib/gtk-2.0/include/
11207          
11208         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
11209         gtk/gtkintl.h: Change package for gettext from 
11210         gtk+ to gtk20. Put hack in autogen.sh to modify
11211         po/Makefile.in.in after gettextize to make this
11212         possible.
11213
11214         * gtk+.spec: Some updates, not tested.
11215
11216         * gdk-pixbuf/Makefile.am: Move loaders into
11217         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
11218
11219         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
11220         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
11221         to THEMENAME/gtk-2.0/. Move engine directory  to
11222         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
11223         
11224 2000-07-12  Tor Lillqvist  <tml@iki.fi>
11225
11226         Win32 changes, still doesn't build though.
11227
11228         * gdk/makefile.cygwin
11229         * gdk/win32/makefile.cygwin
11230         * gtk/makefile.cygwin: Updates.
11231
11232         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
11233         default values for fg and bg pixel as X11 does (0 and 1), not
11234         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
11235         Use 0 for pen width by default (treated as 1 anyway later, but for
11236         apps that might check the value in the GdkGC).
11237         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
11238         interface to gdk_gc_predraw and _postdraw.
11239
11240         * gdk/win32/gdkwin32.h
11241         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
11242
11243         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
11244         extraneous semicolon.
11245
11246         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
11247
11248         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
11249         not the Win32 bitspixel value.
11250
11251         * gdk/win32/gdkcc-win32.c:
11252         * gdk/win32/gdkcolor-win32.c 
11253         * gdk/win32/gdkprivate-win32.h
11254         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
11255         GDK object structure.
11256
11257 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
11258
11259         * docs/tutorial/gtk_tut_12.es.sgml (name): 
11260         * docs/tutorial/gtk_tut_it.sgml (name): 
11261         * docs/tutorial/gtk_tut_fr.sgml (name): 
11262         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
11263         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
11264
11265 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
11266
11267         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
11268           small changes.
11269
11270 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
11271
11272         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
11273         a bug here, never been here and never fixed anything ;(
11274         (don't segfault if tree->root_tree is NULL, which happens prior
11275         to widget realization, but puke instead).
11276
11277 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
11278
11279         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
11280         add the necessary tokens.
11281
11282         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
11283         (gtk_rc_style_to_style): copy thicknesses.
11284         (gtk_rc_init_style): apply thicknesses.
11285         (gtk_rc_parse_style): parse xthickness and ythickness.
11286
11287         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
11288
11289         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
11290         (gdk_window_new): 
11291         (_gdk_windowing_window_init): 
11292         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
11293         (gdk_pixmap_create_from_data): 
11294         (gdk_bitmap_create_from_data): 
11295         (gdk_pixmap_new): 
11296         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11297         (gdk_image_new): 
11298         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
11299         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
11300         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
11301         (gdk_colormap_get_system): 
11302         (gdk_colormap_new): 
11303         * gdk/gdkwindow.c (gdk_window_init): 
11304         * gtk/gtkstyle.c (gtk_style_new):
11305         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
11306         * gdk/gdkpixmap.c (gdk_pixmap_init): 
11307         * gtk/gtkrc.c (gtk_rc_style_new):
11308         use g_object_new() instead of g_type_create_instance() which
11309         is a private function for fundamental type implementations.
11310
11311 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
11312
11313         * configure.in: Add check for db2html
11314
11315 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
11316
11317         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
11318         hack to set glib_debug_objects based on gtk_debug_flags.
11319
11320 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
11321
11322         * INSTALL.in: Update the Prerequisites section.
11323
11324         * Makefile.am demos/Makefile.am docs/Makefile.am
11325         docs/tutorial/Makefile.am gdk/x11/Makefile.am
11326         gdk/linux-fb/Makefile.am: Dist fixes
11327
11328 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
11329
11330         * NEWS: 10,000 foot view of 1.3.1 changes.
11331
11332 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
11333
11334         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
11335         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
11336         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
11337         gdk/x11/gdkmain-x11.c: 
11338
11339         Patch from George Lebl to add a GdkGrabStatus enumeration to use
11340         as a return value of gdk_*_grab(). Previously, we just
11341         returned the X11 values directly.
11342
11343 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
11344
11345         * gdk/x11/Makefile.am: Patch from George Lebl to 
11346         install all the headers in the right place.
11347
11348 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
11349
11350         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
11351           initial conversion to DocBook.
11352
11353 2000-07-04  Tor Lillqvist  <tml@iki.fi>
11354
11355         * README.win32: Improve a bit.
11356
11357         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
11358         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
11359         Alt+0nnn on the numpad (used to enter characters by numeric code
11360         from current DOS or ANSI codepage) working correctly, as in other
11361         Windows apps.
11362
11363         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
11364         same argument validity tests as in X11 version.
11365         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
11366
11367         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
11368         definitions in case missing from headers.
11369
11370         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
11371         destroy the window-specific cursor.
11372         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
11373         calling GetModuleHandle(NULL).
11374         (gdk_window_set_cursor): Reworked to always copy the passed cursor
11375         with CopyCursor before setting it as the window-specific
11376         cursor. It is OK for the caller to destroy the GdkCursor (and thus
11377         also its Windows cursor) after calling this function. Destroy any
11378         previous window-specific cursor.
11379
11380 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
11381
11382         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
11383         font charset is iso8859-1, not iso-8859-1.
11384
11385 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
11386
11387         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
11388         Use g_get_charset() instead of g_get_codeset().
11389
11390         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
11391         Comment out some strdup'ing functions to keep timj
11392         happy until we finish fighting this out.
11393
11394 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
11395
11396         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
11397         <= width or height.
11398
11399         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
11400         from 1.2 for parent/child states.
11401
11402         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
11403         of typos.
11404
11405         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
11406         event structures, replace with a generic axes field. Replace 
11407         deviceid/sourec with GdkDevice *device.
11408
11409         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
11410         to extract particular axis use value from event. (Also
11411         can be used for normal X/Y.)
11412
11413         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
11414         allow for arbitrary number of axes, namespace everything
11415         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
11416         everywhere.
11417
11418         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
11419         Get rid of the gdk_input_vtable setup if favor of simply
11420         defining the functions in gdkinput-none/gxi/xfree.c in
11421         a similar fashion to the way that the port structure is 
11422         done.
11423
11424         * gtk/gtkdnd.c: Fix fields of synthesized button press event
11425         for new event structures. 
11426
11427         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
11428         new device interfaces.
11429
11430 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
11431
11432         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
11433         set the initial text.
11434
11435         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
11436         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
11437         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
11438         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
11439
11440         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11441         pango_layout_set_font_description to simplify.
11442
11443 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
11444
11445         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
11446         pango_layout_set_font_description to simplify.
11447
11448 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
11449
11450         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
11451         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
11452         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
11453
11454         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
11455         PANGO_PIXELS() macro.
11456
11457 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
11458
11459         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
11460         that returns a PangoContext owned by the widget and updated to
11461         match future changes in the widget. Also, make 
11462         gtk_widget_create_pango_layout() use this context. If we ever
11463         add a ::changed signal to PangoContext, this will make things
11464         much more convenient. 
11465
11466         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
11467         in the appropriate places instead of destroying the layouts and
11468         creating new ones.
11469
11470         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
11471         in a few strategic places.
11472
11473 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
11474
11475         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
11476         gtk_widget_size_request() on reparented child, if one. Otherwise,
11477         queue_resize() on the child never results in it getting size-requested
11478         at all.
11479
11480         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
11481         in option menus, so that (with luck) people won't copy it into
11482         their apps in the future.
11483
11484         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
11485         to gtk_option_menu_calc_size. This isn't perfect, but should fix
11486         a lot of problems with changing the size of the menu's menu
11487         items after adding it to the option menu.
11488
11489         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
11490
11491         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
11492         the text direction for a widget changes.
11493
11494         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
11495         ::direction_changed to get rid of various hacks.
11496
11497 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
11498
11499         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
11500         name.
11501
11502 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
11503
11504         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
11505         flag to the structure. Do not call XFreePixmap on pixmaps created
11506         by gdk_pixmap_foreign_new().
11507
11508 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
11509
11510         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
11511         value using GdkRGB functionality given GdkColormap and GdkColor.
11512         (name not final, waiting for inspiration.)
11513         
11514         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
11515         set the foreground/background of a GC using the GC's colormap
11516         and GdkRGB. (name not final, waiting for inspiration.)
11517
11518         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
11519         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
11520
11521         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
11522         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
11523         purely a function of the corresponding colormap. Make
11524         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
11525
11526         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
11527         gdk_pixbuf_*create_from_xpm_* in terms of
11528         gdk_pixbuf_new_from_xpm_data(), move into platform independent
11529         code.
11530
11531         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
11532         advantage of the new draw_rgb_32_image_dithalign.
11533
11534         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
11535
11536         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
11537         on each created GC.
11538
11539         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
11540
11541         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
11542         which we initialize from the drawable when the GC is created,
11543         if the drawable has a colormap.
11544
11545         * gdk/x11/gdkgc-x11.c: include string.h for memset.
11546
11547         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
11548
11549         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
11550
11551 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
11552
11553         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
11554         actually returning expose events, make sure to set
11555         the count field properly.
11556
11557         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
11558         accidentally reintroced bug which always cleared
11559         the graphics_exposures value. 
11560
11561 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
11562
11563         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
11564
11565 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
11566
11567         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
11568
11569 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
11570
11571         * docs/faq/gtk-faq.sgml: Start of Section 6.
11572
11573 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
11574
11575         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
11576         
11577         (Fixes problem with drawing childless frames. Pointed out
11578         by and a first patch from Anders)
11579         
11580         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
11581         compute a child_allocation, even if we don't have a child.
11582
11583         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
11584         Always chain to the parent's impl, even if we don't have a child.
11585
11586 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11587
11588         * gdk/gdkrgb.c: If possible, create only a single shm segment and
11589         use multiple parts of it instead of creating a bunch of separate
11590         segments, since the maximum number of segments per system is not
11591         large. (This might be worth backporting to GTK+-1.2.x if we make a
11592         new release )
11593
11594         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
11595         structure in preparation for per-colormap GdkRGB.
11596
11597         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
11598         to False when we get EINVAL from shmget so that the caller of
11599         gdk_image_new can retry with a smaller segment size.
11600
11601 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
11602
11603         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
11604
11605 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
11606
11607         * configure.in: make the current version number 1.3.1 (binary age 0,
11608         interface age 0).
11609         
11610         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
11611         gtkcompat.h is all we want.
11612
11613         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
11614         GLib primitive types. fixed g_type_register_fundamental() argument
11615         ordering.
11616
11617         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
11618         compiles.
11619
11620         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
11621         object code cleanup, comment trigraph fixes, etc...
11622
11623 2000-06-23  Havoc Pennington  <hp@redhat.com>
11624
11625         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
11626         instead of making up a bogus name for first_para_mark
11627
11628         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
11629         0 as a context ID
11630
11631 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
11632
11633         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
11634
11635 2000-06-21  Havoc Pennington  <hp@pobox.com>
11636
11637         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
11638         we didn't check window->bg_pixmap != GDK_NO_BG.
11639
11640         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
11641         gdk-pixbuf
11642
11643 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
11644
11645         * docs/faq/gtk-faq.sgm: Move file to here.
11646           TODO: Update Makfile.am 
11647
11648 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
11649
11650         * docs/gtk-faq.sgm: Add Section 2
11651
11652 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
11653
11654         * docs/gtk-faq.sgm: New file. Start of DocBook
11655           version of the FAQ.
11656
11657 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
11658
11659         * configure.in (GDK_PIXBUF_MAJOR): Define version
11660         numbers for GDK_PIXBUF_*, as they get substituted
11661         into a header file. Need to consider versioning
11662         for gdk-pixbuf more carefully later.
11663
11664 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
11665
11666         Work with srcdir != builddir.   
11667         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
11668         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
11669         * demos/testpixbuf.c: Likewise.
11670         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
11671         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
11672         <gdk/x11/gdkx.h>.
11673         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
11674         "gdk-pixbuf.h".
11675         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
11676
11677 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
11678
11679         * TODO.xml: Change 1.4 version numbers to 2.0.
11680
11681 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
11682
11683         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
11684         fixups to GTK+ standard.
11685
11686 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
11687
11688         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
11689         gdk-pixbuf.
11690
11691         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
11692         fixups for GObject.
11693
11694         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
11695         gdk-pixbuf with GDK dependencies moved into GDK.
11696         
11697         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
11698         move gdk-pixbuf-loader here until GObject has signals.
11699
11700         * demos/: New directory of demos. Move demos from
11701         gdk-pixbuf here.
11702
11703         * demos/pixbuf-init.c: Small bit of code to check for
11704         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
11705         set GDK_PIXBUF_MODULEDIR appropriately.
11706
11707         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
11708         define which no longer makes sense.
11709
11710 2000-06-21  Havoc Pennington  <hp@redhat.com>
11711
11712         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
11713         gtk_get_default_language
11714
11715         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
11716         new function to get the default language
11717
11718         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
11719         s/gtk_text_view_style_values/gtk_text_style_values/
11720
11721         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
11722         Add a "language" field to tags.
11723
11724         (gtk_text_tag_set_arg): Fix bug in setting
11725         "bg_full_height_set" tag.
11726
11727 2000-06-21  Havoc Pennington  <hp@redhat.com>
11728
11729         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
11730         in the interfaces
11731
11732         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
11733         stuff instead when possible.
11734
11735         * gtk/gtktexttypes.h: Delete some unused constants
11736
11737         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
11738         testtextbuffer.c: use glib instead of custom unicode routines
11739
11740 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
11741
11742         * docs/es/: Removed mistakenly added generated sgml
11743
11744         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
11745         Remove outdated info files.
11746
11747         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
11748         Moved tutorial files into subdir
11749
11750         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
11751         subdir.
11752
11753         * docs/man/gtk_button.pod: Remove. (contents will be
11754         integrated into gtk-reference button page.)
11755
11756         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
11757         docs/faq/Makefile.am: Adjust for new organization
11758
11759 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
11760
11761         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
11762         not $(MKINSTALLDIRS)
11763
11764 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
11765
11766         * gtk/testgtk.c (create_text): Finish the job Elliot started
11767         of removing font setting test for text widget. (Since text widget
11768         and GdkFont are not deprecated, and cause portability problems.)
11769
11770 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
11771
11772         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
11773         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
11774         Remove use of libunicode in favor of new GLib functions.
11775
11776         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
11777         nano-x, framebuffer. The X11 include is just a hack until we get
11778         the necessary functions in gdkcolor.h, so there is no reason to
11779         add other includes of platforms.
11780
11781         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
11782         window bigger than the screen change.
11783
11784         * gtk/testgtk.c: Revert some random changes from Elliot
11785         that had no particular point and were causing testgtkrc
11786         not to function correctly.
11787         
11788         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
11789         because GdkSegment and GdkRegionBox have the same fields,
11790         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
11791         results in clearer code.
11792
11793         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
11794         gdk_input_translate_coordinates): Fix missed GdkObjectification
11795
11796 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11797
11798         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
11799         * gtk/gtk{plug,socket}.h: Missed commits from previous.
11800
11801 2000-06-20  Havoc Pennington  <hp@redhat.com>
11802
11803         * modules/linux-fb/Makefile.am: Make this compile
11804         without framebuffer enabled
11805
11806         * gdk/linux-fb/Makefile.am: Add conditional to not build
11807         framebuffer unless specified in configure
11808
11809         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
11810         the size of the target instead of source if -1 was passed for
11811         width/height
11812
11813         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
11814         width/height confusion.
11815
11816 2000-06-19  Havoc Pennington  <hp@redhat.com>
11817
11818         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
11819         GDK_DRAWABLE_XID. In the future, we probably want to make it
11820         faster with G_DISABLE_CHECKS turned on.
11821
11822 2000-06-14  Havoc Pennington  <hp@redhat.com>
11823
11824         * gdk/Makefile.am: add gdkpixmap.c
11825
11826         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
11827         s/gdk_image_init/_gdk_windowing_image_init
11828
11829         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
11830         ref/unref
11831
11832         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
11833
11834         * gdk/gdkcompat.h: remove GdkWindowType compat, since
11835         GdkWindowType is now non-deprecated; 
11836         change gdk_window_get_type() compat to be
11837         gdk_window_get_window_type().
11838
11839         * gdk/gdkdnd.h: make GdkDragContext a GObject.
11840
11841         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
11842         virtual GObject. Make all functions call into the vtable.
11843         Move gdk_image_put() guts in here. Remove GdkDrawableType
11844         and gdk_drawable_get_type(), these are now GdkWindow-specific.
11845         draw_image, get_depth, get_size, set_colormap, get_colormap,
11846         get_visual added to the vtable.
11847         
11848         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
11849         GObject. Virtualize everything. 
11850         (gdk_gc_new_with_values): remove check for destroyed window,
11851         because now GdkWindow::create_gc will check this.
11852         (gdk_gc_set_values): New function to set GC values, this 
11853         was already implemented but wasn't in the header
11854
11855         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
11856
11857         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
11858         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
11859         remove _gdk_window_class; add _gdk_window_impl_get_type() and
11860         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
11861         _gdk_windowing_window_init, rename gdk_image_init to
11862         _gdk_windowing_image_init.
11863         
11864         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
11865         (gdk_draw_layout): Remove check for destroyed window, 
11866         because all the drawable methods already check it.
11867         
11868         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
11869         Add gdkpixmap.c which contains implementation of GdkDrawable
11870         virtual table (by chaining to a platform-specific implementation
11871         object).
11872         
11873         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
11874         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
11875         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
11876         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
11877         GdkColormapPrivate. 
11878
11879         * gdk/gdktypes.h: #include <glib-object.h>
11880
11881         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
11882         Move most functionality to platform-specific implementation
11883         object. GdkWindow itself now handles the backing store, then
11884         chains to the platform-specific implementation.
11885         (gdk_window_get_window_type): return GdkWindowType of the window.
11886         (gdk_window_peek_children): New routine, returns the children of 
11887         a GdkWindow
11888         (gdk_window_get_children): Was in X11-specific code and did 
11889         XQueryTree. Changed to simply return a copy of window->children; 
11890         so it can go in cross-platform code.
11891         
11892         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
11893
11894         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
11895         GdkColormap; just changed to use the new private data instead
11896         of casting to GdkColormapPrivate.
11897
11898         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
11899         gdk_cursor_new().
11900
11901         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
11902         (private data member in the GObject). 
11903         (xdnd_manager_source_filter): Function had broken 
11904         error handling, fix it (use gdk_error_trap_push).
11905
11906         * gdk/x11/gdkdrawable-x11.c: This file now implements
11907         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
11908         base class is purely for the convenience of the X port,
11909         and not part of the interface to cross-platform GDK.
11910
11911         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
11912         
11913         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
11914         specific to X, and returned by the create_gc virtual method
11915         of GdkDrawableImplX11. 
11916         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
11917         rather than gchar, this was also changed in the GdkGC vtable.
11918         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
11919         mask is 0, return immediately, instead of checking every flag.
11920         This is faster, and keeps us from segfaulting if values is NULL
11921         and the mask contains some nonzero flags.
11922
11923         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
11924         GdkWindow.
11925
11926         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
11927         GdkWindowPrivate is gone.
11928
11929         * gdk/x11/gdkim-x11.c: rename things that got renamed.
11930
11931         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
11932         remove the image_put stuff that got transferred to GdkDrawable.
11933         
11934         * gdk/x11/gdkinput.c: renamings
11935
11936         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
11937
11938         * gdk/x11/gdkpixmap-x11.c: GObject conversion
11939
11940         * gdk/x11/gdkprivate-x11.h: indentation fixes
11941
11942         * gdk/x11/gdkproperty-x11.c: renamings
11943
11944         * gdk/x11/gdkselection-x11.c: renamings
11945
11946         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
11947         implements the platform-specific "impl" object.
11948         Moved gdk_window_get_children to gdk/gdkwindow.c
11949
11950         * gdk/x11/gdkx.h: Remove all the private structs and private datas
11951         that no longer exist. Add declaration of GdkGCX11 object here.
11952         Fix all the macros to still work. 
11953
11954         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
11955         GdkDragContext from the boxed types since they are now GObjects.
11956
11957         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
11958         moved xthickness/ythickness into the instance. GtkStyleClass
11959         functions are now in the standard vtable for GtkStyle, so you have
11960         to create a GObject subclass to write a theme engine.
11961         (gtk_style_copy): fixed a leaked PangoFontDescription
11962         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
11963         can be the standard GObject function.
11964         
11965         * Throughout GTK:
11966         s/style->klass->[xy]thickness/style->[xy]thickness
11967         s/pango_layout_unref/g_object_unref/
11968
11969         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
11970         
11971         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
11972         accessing GDK internals.
11973
11974         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
11975         accessing GDK internals.
11976
11977 2000-06-18  Elliot Lee  <sopwith@redhat.com>
11978
11979         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
11980
11981         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
11982         problem by calculating event position relative to the trough
11983         rather than the slider.
11984         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
11985
11986         * gdk/gdkgc.h: Add GDK_NOR.
11987
11988         * configure.in, Makefile.am: Add modules top level dir
11989         * configure.in: Only use pangox library if building x11 target.
11990         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
11991
11992 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
11993
11994         * gtk/gtkcolorsel.c: Change private class member to be named
11995         private_data throughout the file.
11996
11997         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
11998         private_data to avoid clashing with keyword.
11999
12000 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
12001
12002         * gdk/gdkdnd.h: Add comment to remove warning.
12003
12004 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
12005
12006         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
12007         Byelorussian language; changed the Makefile and file names 
12008         to reflect that.
12009
12010 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
12011
12012         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
12013         rather than gdk_window_hide; this makes things work
12014         correctly if the window is programmatically hidden while
12015         iconified.
12016
12017 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
12018
12019         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
12020         cut and paste typo where wrong pixmap was being
12021         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
12022
12023 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
12024
12025         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
12026         Add helper function to compute format / bytes 
12027         relationship. Use in a couple places to fix up
12028         errors which assume 8 * format.
12029
12030         * gtk/gtkselection.c (gtk_selection_request): Use 32
12031         rather than 8 * sizeof (GdkAtom), to work correctly
12032         on Alpha.
12033
12034 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
12035
12036         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
12037         libgtk.la
12038         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
12039         versions
12040
12041         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
12042         checking macros return NULL since the function has a return value.
12043
12044 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
12045
12046         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
12047         GTK+ from building at all.
12048
12049         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
12050
12051 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
12052
12053         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
12054         gtk/Makefile.am: make it possible to configure gtk for different
12055         targets on the same platform. The library name is now 
12056         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
12057         flag. Only the x11 target compiles right now.
12058         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
12059         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
12060         * gdk/nanox/gdk*generic*: delete generic region code.
12061         * gdk/linux-fb/gdk*generic*: delete generic region code.
12062         * README.nanox: update information.
12063         
12064 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
12065
12066         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
12067         prepend not append. (Pointed out by Brett Hall.)
12068
12069 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
12070
12071         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
12072
12073 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
12074
12075         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
12076         need this later, and this makes sure that the atexit for
12077         glib gets called after that for GDK, so atexits are
12078         properly ordered for object leak checking.
12079
12080         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
12081
12082         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
12083         pango_x_shutdown_display()
12084
12085         * gtk/simple.c (main): Close window on destroy.
12086
12087 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
12088
12089         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
12090         to treat initial creation different from setting with 
12091         regards to the graphics-exposures parameter, so add a parameter
12092         indicating whether this is initial or not.
12093
12094 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
12095
12096         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
12097         to sort of work by adding an extra return_exposes arg
12098         to gdk_event_translate() - it might be better to simply
12099         deprecate the function altogether and force people to rewrite
12100         without it. gdk_window_scroll() handles most of it, and where
12101         gdk_window_scroll() doesn't work, simply redrawing more does.
12102
12103         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
12104         assertion.
12105
12106         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
12107
12108         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
12109         bunch of pretty much useless /* Print debugging info */ comments 
12110         which had drifted away from the code they were commenting.
12111
12112 2000-06-02  Havoc Pennington  <hp@pobox.com>
12113
12114         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
12115         is in working order.
12116         
12117         * gtk/testtext.c: Change to reflect anonymous mark API
12118
12119         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
12120
12121         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
12122         field, which was unused.
12123
12124         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
12125         saves some typing.
12126
12127         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
12128
12129         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
12130         flag on the insertion point and selection bound
12131
12132         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
12133         make mark-manipulation functions take a GtkTextMark* instead of a
12134         mark name.
12135         
12136         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
12137         GtkTextMarkBody; will be used to detect attempts to delete
12138         the permanent marks (insert and selection bound)
12139
12140         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
12141
12142 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
12143
12144         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
12145         flag to on.
12146
12147         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
12148         Honor DOUBLE_BUFFRED_FLAG
12149
12150         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
12151         function to set the DOUBLE_BUFFERED flag.
12152
12153         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
12154         or not exposes done on the widget should be double-buffered.
12155
12156         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
12157         to be what would be expected. (Fixes problem with a
12158         g_return_if_fail() validating a TextDirection enumeration)
12159
12160 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
12161
12162         * gtk/gtkwidget.c: Remove all references to 
12163         offscreen flag which was no longer used.
12164
12165         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
12166
12167         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
12168         for non-null label_widget->parent.
12169
12170         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
12171         which no longer was used.
12172
12173         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
12174
12175         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
12176         for null arguments.
12177
12178         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
12179         check for destroyed windows.
12180
12181 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
12182
12183         * gtk/gtkimmulticontext.c: Add a finalize method and unref
12184         the slave context there.
12185
12186         * gtk/gtkinvisible.[ch]: Make reference counting behavior
12187         identical to GtkWindow.
12188
12189 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
12190
12191         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
12192         pangox to here, so we can write them independent of rendering
12193         system, using GDK primitives.
12194
12195         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
12196         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
12197         since we have a rendering-system independent implementation in
12198         terms of draw_glyphs().
12199         
12200         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
12201         function to render a single line.
12202
12203         * gdk/x11/gdkpango.c: Move the guts of this file mostly
12204         into ../gdkpango.c, which simplifies things, since we
12205         don't have to deal with raw X gc's.
12206
12207 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
12208
12209         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
12210         get the logical attributes for a given GtkTextLine.
12211
12212 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
12213
12214         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
12215         g_locale_get_codeset() to g_get_codeset() change.
12216
12217 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
12218
12219         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
12220         descriptions.
12221
12222         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
12223         the entry.
12224
12225         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
12226         redoing (vastly simplifying) for Pango. Still needs quite
12227         a bit of work. (Size selection is currently poor. List of 
12228         predefined sizes is not a good idea, since all of these
12229         sizes won't necessarily be distinct.)
12230
12231 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
12232
12233         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
12234         CODESET results for LANG=C.
12235
12236 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
12237
12238         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
12239         which takes a stringized pango font description;
12240         ignore the older 'font' and 'fontset' declarations.
12241
12242         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
12243         field with a GdkFont derived via gdk_font_from_description(),
12244         for compatibility. (Should we just remove it entirely?
12245         Probably too much compatibility breakage, but people
12246         should be migrating to the new Pango stuff as quickly
12247         as possible.)
12248
12249 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
12250
12251         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
12252
12253 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
12254
12255         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
12256         redoing; there are some bugs in size allocation right
12257         now, the semi-existant distinction between header / day
12258         fonts was removed, but, with Pango, could actually
12259         be made functional in a nice way.
12260         
12261         * gtk/testcalender: Move calender from examples into this
12262         directory as a test program. (We really need to restrcture
12263         testgtk into a whole directory full of tests for every
12264         widget or functionality group, separated into multiple .c
12265         files.)
12266
12267 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
12268
12269         * gtk/testgtk.c (file_exists): Fix stupid typo that
12270         was keeping RC file from being loaded.
12271
12272         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
12273         RC file font code.
12274
12275 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
12276
12277         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
12278         Add function to load a GdkFont from a PangoFontDescription.
12279
12280 2000-05-29  Tor Lillqvist  <tml@iki.fi>
12281
12282         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
12283         variable should be of type GdkEventPrivate.
12284
12285 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
12286
12287         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
12288         to have any widget for the label, use a GtkLabel widget
12289         to display the text. (Based partially on a patch from
12290         Anders Carlson.)
12291
12292         (Quite a bit of code reorganization - strip 90% of the
12293         guts out of gtkaspectframe and add a single virtual
12294         func to GtkFrameClass - compute_child_allocation.)
12295
12296 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
12297
12298         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
12299         (Removed clist->row_center_offset field because caching
12300         it wasn't saving time or code, added private function
12301         _gtk_clist_create_cell_layout()).
12302
12303 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
12304
12305         * gtk/gtkaccellabel.c: Pangoized.
12306
12307         * gtk/[hv]ruler.c: Pangoized
12308
12309 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
12310
12311         * gtk/gtkfilesel.c (gtk_file_selection_init):
12312         Use gtk_clist_set_column_auto_resize() to remove need
12313         need for manual column width computations.
12314
12315 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
12316
12317         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
12318         ensuring Pango correctness, and considerably simplifying the
12319         code.
12320         
12321         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
12322
12323         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
12324         getting of numbers of lines.
12325
12326         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
12327         to the actual requested width of the lable, not to the wrap
12328         width we set.
12329
12330         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
12331
12332         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
12333           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
12334
12335         * gtk/gtktextview.c: Fix structure inheritance.
12336
12337         * gtk/gtkprogressbar.c: Pangoize.
12338
12339 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
12340
12341         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
12342         in a function.
12343
12344         * gtk/gtktextlayout.c (find_display_line_above): Fixed
12345         bug with computing line tops.
12346
12347         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
12348
12349 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12350
12351         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
12352         and y_offset coordinates to do what we need now. (The offset between
12353         buffer and layout coordinates has been reintroduced, but is a 
12354         bit different than before.)
12355
12356         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
12357         handle the adjustments ourselves, and scroll as necessary using
12358         the new gdk_window_scroll().
12359         
12360         The advantage of this is that when we are incrementally revalidating,
12361         we are essentially rearranging things around the visible portion
12362         of the screen. With the old setup, the visible portion of the
12363         screen was moved around in the layout, so scrolling and redrawing
12364         to track that caused jumping of the display. Since we now
12365         control the scrolling ourselves, we can suppress this and
12366         only redraw when things actually change.
12367
12368 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
12369
12370         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
12371         the region not just redisplay it after-all, since we store the
12372         cursors in the LineDisplay. (Ugly interactions here between
12373         GtkLayout and GtkTextBTree here.)
12374         
12375         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
12376
12377 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12378
12379         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
12380         Added function to scroll contents of a window while keeping the
12381         window constant. Works by XCopyArea or guffaw-scrolling depending
12382         on the details of how the window is set up. (guffaw-scrolling
12383         still needs to be filled in.)
12384
12385 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
12386
12387         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
12388         move the debugging that was tied to a global variable
12389         to that.
12390
12391         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
12392
12393         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
12394         validated flag, in line data instead of setting height/width to
12395         -1. This allows us to perform operations with partially invalid
12396         buffer (using the old size for invalid lines) and thus to do
12397         incremental vaidation. Keep height/width aggregates up to date
12398         when deleting text and rebalancing the tree.
12399
12400         * gtk/gtktextbtree.[ch]: Add functions validate a line
12401         (gtk_text_btree_validate_line), and to validate up
12402         to a number of pixels (gtk_text_btree_validate).
12403
12404         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
12405         that indicates that something is changed and a revalidation
12406         pass is needed. Change ::need_repaint to ::changed, and
12407         make it take old and new yranges instead of a rectangle.
12408
12409         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
12410         the line_data_destroy() function from 
12411         gtk_text_btree_add_view() to a virtual function in 
12412         GtkTextLayout
12413
12414         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
12415         since we are handling partial repaints in a different fashion
12416         now.
12417
12418         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
12419         of the selection instead of queueing a repaint on the
12420         entire widget.
12421
12422         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
12423         get_selection_bounds() down to btree, make the function
12424         in buffer a wrapper around the btree function.
12425
12426         * gtk/gtktextlayout.[ch]: Add functions to check if the
12427         layout is valid and to recompute either a range of pixels
12428         aroudn a line or a certain total number of pixels.
12429
12430         * gtk/gtktextlayout.[ch]: Cache a single line display;
12431         now that we only redraw the needed portions, the hit rate
12432         for this cache is quite high.
12433         
12434         * gtk/gtktextview.[ch]: Keep track of the first paragraph
12435         on the screen so that when re-laying-out the buffer, we can
12436         keep the same place. This requires connecting to ::value_changed
12437         on the adjustments
12438
12439         * gtk/gtktextview.[ch]: Add idle functions to revalidate
12440         the buffer after we receive an ::invalidated signal.
12441         
12442 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
12443
12444         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
12445         to max of allocation and layout size, not just to the
12446         layout size.
12447
12448         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
12449         Invalidate window so it gets redrawn properly.
12450
12451         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
12452         to mean the entire window.
12453
12454         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
12455         into public header.
12456
12457 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12458
12459         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
12460         to get the name of a mark.
12461
12462         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
12463         to find the paragraph from a y position.
12464
12465 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
12466
12467         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
12468         nodes have width/height >= 0, not > 0.
12469
12470 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
12471
12472         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
12473         Add a size_only flag, so when we only need the size, we don't create
12474         useless appearance attributes.
12475
12476         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
12477         duplicate setting of font description.
12478
12479         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
12480
12481 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
12482
12483         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
12484         EXTRA_DIST. It does not work well when the file that
12485         everything depends on is not in the tarball.
12486
12487 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
12488
12489         * gtk/testgtk.c: Some hacks and fixes so that it basically
12490         works when not sitting in the GTK+ build tree.
12491
12492 2000-05-03  Havoc Pennington  <hp@redhat.com>
12493
12494         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12495         Properly determine the ordering of the tag root and the current
12496         line within the tree. Previous algorithm only worked if the tag
12497         root's immediate parent was the common root of both the current
12498         line and the tag root.
12499
12500 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
12501
12502         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
12503         alignment.
12504
12505         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
12506         the widget text directional dynamically.
12507
12508         * gtk/gtktextview.[ch]: Added functions to get and set default
12509         wrap mode.
12510
12511 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
12512
12513         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
12514         in cursor location computation.
12515
12516 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
12517
12518         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
12519         vadjusment values properly when layout gets smaller.
12520
12521         * gtk/gtktextview.c (need_repaint_handler): Areas being
12522         passed in are far completely inaccurate, and sometimes
12523         too small, so, for now, just queue a redraw on the
12524         whole visible region.
12525
12526 2000-04-25  Havoc Pennington  <hp@redhat.com>
12527
12528         * gtk/gtktextbtree.c (summary_destroy): new function to 
12529         destroy tag summary nodes
12530         (gtk_text_line_next_could_contain_tag): this function was 
12531         totally broken if the line passed in wasn't below the tag
12532         root. Fix it.
12533         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
12534         "wildcard" case, we have to do a linear scan. Blah.
12535         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
12536         we have to do the linear scan
12537         (tag_removed_cb): When a tag is removed from the tag table, 
12538         remove the GtkTextTagInfo node from the btree.
12539         (gtk_text_btree_spew): Implement the spew function, for 
12540         our debugging pleasure.
12541
12542 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
12543
12544         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
12545         a problem with referring to the wrong buffer.
12546
12547         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
12548
12549         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
12550         font description to gtk_style_new() - otherwise things
12551         don't work without a .gtkrc file.
12552
12553         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
12554         tags table if we create it ourself, too.
12555
12556         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
12557         it was conflicting with XKB modifiers.
12558
12559         * gtk/gtktextview.[ch]: Add simple support for 
12560         GtkIMContext.
12561
12562 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
12563
12564         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
12565         with deletion from last commit.
12566
12567 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
12568
12569         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
12570         in the context from the current locale.
12571         
12572         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
12573         context, not hardcoded value.
12574
12575         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
12576         not logical.
12577
12578 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12579
12580         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
12581         attributes - that doesn't handle partial-glyph selection
12582         properly. Instead use new pango_layout_line_get_x_ranges()
12583         functionality to draw the selection.
12584
12585         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
12586         now properly handles out-of-range coordinates.
12587
12588         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
12589
12590         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
12591         public.
12592
12593         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
12594         for paragraphs opposite to the base direction of the widget.
12595
12596         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
12597
12598         * gtk/gtktextlayout.c: Don't split segments on marks, since that
12599         causes Arabic words to reshape as you cursor through.
12600
12601         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
12602         cursor position when moving vertically with the arrow keys and
12603         scrolling with page-up/page-down. (Arrow keys save only the X,
12604         scrolling saves both X and Y.)
12605
12606         This means you can line-up / line-down or page-up / page-down
12607         without losing your place, and also that moving vertically
12608         with the cursor keys keeps the same X position, not the same
12609         character count:
12610
12611         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
12612         arrow keys move by display lines, not paragraphs.
12613
12614 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
12615
12616         * gtk/gtklayout.c: Make sure that the bin window is at least
12617         as big as the allocation. (Should we also make sure that the
12618         bin window is big enough to completely cover widget->window?)
12619
12620         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
12621         function to get the onscreen rectangle.
12622
12623         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
12624         for offsets in window coordinates.
12625
12626 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
12627
12628         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
12629         confusion.
12630
12631         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
12632         from the widget direction.
12633
12634         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
12635         Add a "direction" attribute.
12636
12637         * gtk/gtktextview.c: global s/tkxt/text_view/.
12638
12639         * gtk/testtext.c: Added long block of text in Arabic, to test out
12640         the direction attributes. (Some problems with the shaping system
12641         for arabic become obvious - like the fact the cursor splits words
12642         into unjoined pieces.)
12643
12644 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
12645
12646         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
12647
12648         * gtk/gtktextlayout.c: Fix up alignment.
12649
12650         * gtk/testtext.c: Add some tests for centering, wrapping.
12651
12652 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
12653
12654         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12655         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
12656         If we wrote GTK+-specific layout-render function this could just replace
12657         the draw_layout() operation in the vtable.
12658
12659         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
12660         pango_layout_get_cursor_pos() and use that function.
12661
12662         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
12663         is a non-static symbol.
12664
12665         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
12666         with gtk_text_btree_find_line_by_y()
12667
12668         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
12669         renderer that handles GtkTextAppearance attributes.
12670
12671         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
12672
12673           - Move the values in the style that don't affect geometry into a
12674             GtkTextAppearance structure.
12675           - Change underline to take a PangoUnderline and "font" a string
12676             representation of a font description
12677           - Add a "font_desc" attribute which takes a FontDescription structure.
12678
12679         * gtk/gtktextlayout.[ch]:
12680
12681           - Get rid of the display-line list per each line. Instead, we
12682             generate, on demand, a GtkTextLineDisplay structure which]
12683             contains a PangoLayout * and other necesary information
12684             (offsets, cursor locations) for displaying a paragraph.
12685           - Get rid of the code to wrap lines, create display chunks,
12686             etc. Instead, we just go through a paragraph and convert
12687             it into the necessary inputs to a PangoLayout.
12688           - Implement a new attribute type, GtkTextAttrAppearance. This
12689             holds a GtkTextAppearance, and is used to pass colors, 
12690             stipple, etc, through from the layout to the display without
12691             having to use lots and lots of individual attributes.
12692           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
12693             in terms of PangoLayout functions.
12694         
12695         * gtk/gtktextview.c: 
12696          
12697           - Handle passing the necessary PangoContext to the layout
12698           - Some fixups in painting to deal with the automatic backing store
12699             and offsetting of GTK+-1.4
12700           - Add a style_set handler so that the default style reacts
12701             properly to theme changes.
12702         
12703         * gtk/gtktext?*.[ch]: Random code-style fixes.
12704
12705         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
12706
12707 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
12708
12709         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
12710         in original form preparatory to Pango-ization and gdkimcontext-ization.
12711
12712 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
12713
12714         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
12715         so that we can derive from gtkimcontext in language bindings properly.
12716
12717 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
12718
12719         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
12720         Add a compose table including (almost) all the compose combinations
12721         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
12722         data in the XIM implementation.
12723
12724         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
12725         Moved functions to convert keyvalues from and to unicode here from
12726         the win32 port and made them public.
12727
12728 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12729
12730         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
12731
12732 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
12733
12734         * gtk/gtkimcontext.[ch]: Base class for new input context system
12735
12736         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
12737         the real input context implementation to be loaded from modules
12738         and switched on the fly.
12739
12740         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
12741         context that just does direct keysymbol => unicode translation.
12742
12743         * gtk/gtkentry.[ch]: Start switching editing over to using
12744         GtkInputContext. (No handling of preedit yet.)
12745
12746 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
12747
12748         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
12749         many substitutions. (klass should not be subsituted.)
12750
12751 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
12752
12753         * configure.in: Add checks for Pango
12754
12755         * configure.in docs/Makefile.am: Add test for sgml2html
12756         and allow 'make dist' without building html, but print out
12757         warnings in that case. (For making snapshots)
12758
12759         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
12760         Add Pango libraries and C flags
12761
12762         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
12763         Add function (gdk_draw_layout) to draw a pango layout.
12764
12765         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
12766         for getting Pango contexts for GDK.
12767
12768         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
12769
12770         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
12771         editing.
12772
12773         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
12774         keysym => unicode translations. More languages can be added
12775         here, but real input-method support is needed.
12776
12777         * docs/Changes-1.4.txt: Added note about entry behavior.
12778         
12779         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
12780         to set the reading direction for a widget and the global direction.
12781         Add test which allows toggling the global direction. Two private
12782         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
12783
12784         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
12785           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
12786
12787         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
12788
12789         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
12790         underlining now handled by Pango.
12791
12792         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
12793         to RCStyle and Style. (Having both this and the old font name and GdkFont 
12794         is temporary.)
12795
12796         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
12797         convenience functions for creating contexts and layouts for widgets.
12798
12799         * gtk/testgtk.c: Enhance label tests with multilingual labels.
12800
12801 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
12802
12803         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
12804         titles to be active, even if they aren't visible.
12805         (gtk_clist_column_titles_passive):  Ditto.
12806
12807 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
12808
12809         * gtkmenu.c:
12810         * gtkmenu.h:
12811         * gtktypeutils.h: Spelling/grammar fixes in comments.
12812
12813 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
12814
12815         * gdk/nanox/*.h: add missing header files.
12816
12817 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
12818
12819         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
12820         send_event to TRUE.
12821         (gtk_drawing_area_size): queue a resize.
12822
12823 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
12824
12825         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
12826         the handlers, also invalidate them. bug nailed down by Karl Nelson
12827         <kenelson@ece.ucdavis.edu>.
12828
12829 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
12830
12831         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
12832         "(nil)" foundries, patch from Grigorios Magklis.
12833
12834         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
12835         on non-available fonts, based on a patch by Grigorios Magklis
12836         <maglis@cs.rochester.edu>.
12837
12838 2000-05-18  Elliot Lee  <sopwith@redhat.com>
12839
12840         * gdk/x11/gdkregion-generic.c: If a region does not have any
12841         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
12842         instead of GDK_OVERLAP_RECTANGLE_IN.
12843
12844 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
12845
12846         * gtk/gtklayout.c (gtk_layout_map): Remove references to
12847         OFFSCREEN, as it is no longer necessary.
12848
12849 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
12850
12851         * gtk/gtkcolorsel.c: Patch from David Santiago
12852         <mrcooger@cyberverse.com> to change things so that the 
12853         indicator of the active palette entry is done independently,
12854         not via the focus, since it should always be visible.
12855
12856 2000-05-17  Tor Lillqvist  <tml@iki.fi>
12857
12858         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
12859         refcount leaks as in the X11 backend.
12860
12861         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
12862         cosmetics.
12863
12864         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
12865         backend. Add _gdk_windowing_window_destroy().
12866
12867         * gtk/gtkcolorsel.c: Include correct backend-specific header.
12868         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
12869         either, but these probably do exist on nanox?)
12870         
12871         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
12872         which isn't necessarily defined by <math.h>.
12873
12874         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
12875         ancestry past GtkObject.
12876
12877         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
12878         from DLL on Win32.
12879
12880         * gtk/gtk.def: Update corresponding to recent changes.
12881
12882         * gtk/makefile.{cygwin,msc}: Updates.
12883
12884 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
12885
12886         * docs/Changes-1.4.txt: A bit of editing.
12887
12888         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
12889         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
12890         to clear the update area for the window, and clear it
12891         when hiding a window.
12892
12893         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
12894         if window destroyed.
12895
12896         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
12897
12898         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
12899         gdk_window_destroy() to the generic code, since there was a lot of 
12900         window-system-independent logic it in. Add a function:
12901         
12902          _gdk_window_destroy() 
12903
12904         to the internal API to destroy a window without unreferencing it.
12905         Add a function:
12906
12907          _gdk_windowing_window_destroy()
12908
12909         That does the windowing-system-dependent part of destroying 
12910         the window.
12911
12912 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
12913
12914         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
12915
12916 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
12917
12918         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
12919         Make gtk_widget_shape_combine_mask() keep a reference count on
12920         the pixmap since it keeps it around.
12921
12922 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
12923
12924         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
12925         leak.
12926
12927         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
12928         leak with event filters.
12929
12930 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
12931
12932         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
12933         signal handlers with the right data arguments. (Fixes
12934         some warnings when a widget was repeatedly set as a drag
12935         destination.)
12936
12937         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
12938         window so we can avoid avoid setting the DND properties on the
12939         toplevel window repeatedly.
12940
12941 2000-05-13  Tor Lillqvist  <tml@iki.fi>
12942
12943         * gdk/win32/gdkwin32.h: Define more message types missing from
12944         mingw headers.
12945
12946         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
12947         call gdk_window_destroy_notify(). It was never called. This
12948         probably meant that the GdkWindow was never freed. Thanks Owen for
12949         noticing (!).
12950
12951         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
12952         window as destroyed before calling DestroyWindow(). DestroyWindow()
12953         causes a call to the window procedure (gdk_WindowProc), which
12954         calls gdk_event_translate(), which calls
12955         gdk_window_destroy_notify(), which gets confused unless the window
12956         is set as destroyed.
12957
12958         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
12959         this function to indicate it's win32 only. Put inside #ifdef
12960         G_ENABLE_DEBUG.
12961
12962         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
12963         debugging function. (gdk_event_translate:) Add a default branch
12964         that uses the above function to print debug messages with all
12965         Windows messages symbolically.
12966
12967         * gdk/win32/gdkprivate-win32.h: Declare it, and
12968         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
12969
12970 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
12971
12972         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
12973         public header file.
12974
12975 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
12976
12977         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
12978
12979         * gtk/gtktext.c: made the adjustments no-construct args, simply
12980         provide default adjustments.
12981         (gtk_text_destroy): release adjustments.
12982
12983         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
12984         adjustment argument non-construct.
12985
12986         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
12987         instead of in finalize.
12988         (gtk_progress_get_text_from_value): 
12989         (gtk_progress_get_current_text): 
12990         (gtk_progress_set_value): 
12991         (gtk_progress_get_percentage_from_value): 
12992         (gtk_progress_get_current_percentage): 
12993         (gtk_progress_set_percentage): 
12994         (gtk_progress_configure): ensure an adjustment is present.
12995
12996 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
12997
12998         * gtk/gtkcolorsel.[hc]:
12999         * gtk/gtkcolorseldialog.[hc]:
13000         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
13001         their parent implementation, use bit fields for boolean values, don't
13002         create unused widgets, usage of glib types, braces go on their own
13003         lines, function argument alignment, #include directives etc. etc. etc..
13004
13005         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
13006
13007 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
13008
13009         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
13010
13011         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
13012         of NULL.
13013
13014         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
13015         to freed data.
13016         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
13017
13018         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
13019         to NULL when the toplevel is getting destroyed.
13020         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
13021         (gtk_menu_destroy): 
13022         (gtk_menu_init): store the information of whether we have to
13023         readd the initial child ref_count during destruction in a new
13024         GtkMenu field needs_destruction_ref_count.
13025
13026         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
13027         here, those reading: learn from my mistake! ;)
13028         in order for set_?adjustment to support a default adjustemnt if
13029         invoked with an adjustment pointer of NULL, the code read (pseudo):
13030         if (v->adjustment) unref (v->adjustment);
13031         if (!adjustment) adjustment = adjustment_new ();
13032         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
13033         now imagine the first unref to actually free the old adjustment and
13034         adjustment_new() creating a new adjustment from the very same memory
13035         portion. here, the latter comparision will unintendedly fail, and
13036         all hell breaks loose.
13037         (gtk_viewport_set_hadjustment):
13038         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
13039         after unreferencing it.
13040
13041         * gtk/gtkcontainer.[hc]: removed toplevel registration
13042         functions: gtk_container_register_toplevel(),
13043         gtk_container_unregister_toplevel() and
13044         gtk_container_get_toplevels() which had wrong semantics
13045         anyways: it didn't reference and copy the list.
13046
13047         * gtk/gtkwindow.c: we take over the container toplevel registration
13048         bussiness now. windows are registered across multiple destructions,
13049         untill they are finalized. the initial implicit reference count
13050         users are holding on windows is removed with the first destruction
13051         though.
13052         (gtk_window_init): ref & sink and set has_user_ref_count, got
13053         rid of gtk_container_register_toplevel() call. add window to
13054         toplevel_list.
13055         (gtk_window_destroy): unref the window if has_user_ref_count
13056         is still set, got rid of call to
13057         gtk_container_unregister_toplevel().
13058         (gtk_window_finalize): remove window from toplevel list.
13059         (gtk_window_list_toplevels): new function to return a newly
13060         created list with referenced toplevels.
13061         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
13062
13063         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
13064         adjustment a non-construct arg.
13065         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
13066         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
13067         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
13068
13069         * gtk/gtkrange.c: added some realized checks.
13070         (gtk_range_destroy): get rid of the h/v adjustments in the
13071         destroy handler instead of finalize. remove timer.
13072         (gtk_range_get_adjustment): demand create adjustment.
13073
13074         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
13075         we simply create them on demand now and get rid of them in
13076         the destroy handler.
13077         (gtk_viewport_destroy): get rid of the h/v adjustments in the
13078         destroy handler instead of finalize.
13079         (gtk_viewport_get_hadjustment): 
13080         (gtk_viewport_get_vadjustment): 
13081         (gtk_viewport_size_allocate): demand create h/v adjustment
13082         if required.
13083
13084         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
13085         gtk_widget_real_destroy () functionality.
13086         (gtk_widget_real_destroy): reinitialize with a new style, instead
13087         of setting widget->style to NULL.
13088
13089 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
13090
13091         * gtk/gtkcalendar.c:
13092         * gtk/gtkbutton.c: ported _get_type() implementation over to
13093         GType, either to preserve memchunks allocation facilities,
13094         or because Gtk+ 1.0 GtkTypeInfo was still being used.
13095
13096         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
13097         over. prepare for ::destroy to be emitted multiple times.
13098         removed reference tracer magic. chain into GObjectClass.shutdown()
13099         to emit ::destroy signal.
13100
13101         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
13102         fundamental.
13103
13104         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
13105         cludge.
13106
13107         * gtk/gtksocket.c:
13108         * gtk/gtkplug.c:
13109         * gtk/gtklayout.c:
13110         * gtk/gtklabel.c:
13111         * gtk/gtkargcollector.c:
13112         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
13113         not being a fundamental anymore, and to work with the new
13114         type system (nuked fundamental type varargs clutter).
13115
13116         * gtk/*.c: install finalize handlers in the GObjectClass
13117         part of the class structure.
13118         changed direct GTK_OBJECT()->klass accesses to
13119         GTK_*_GET_CLASS().
13120         changed direct object_class->type accesses to GTK_CLASS_TYPE().
13121
13122         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
13123         GType. made most of the GTK_*() type macros and Gtk* typedefs
13124         simple wrappers around macros and types provided by GType.
13125         most notably, a significant portion of the old API vanished:
13126         GTK_TYPE_MAKE(),
13127         GTK_TYPE_SEQNO(),
13128         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
13129         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
13130         GTK_TYPE_ARGS,
13131         GTK_TYPE_CALLBACK,
13132         GTK_TYPE_C_CALLBACK,
13133         GTK_TYPE_FOREIGN,
13134         GtkTypeQuery,
13135         gtk_type_query(),
13136         gtk_type_set_varargs_type(),
13137         gtk_type_get_varargs_type(),
13138         gtk_type_check_object_cast(),
13139         gtk_type_check_class_cast(),
13140         gtk_type_describe_tree(),
13141         gtk_type_describe_heritage(),
13142         gtk_type_free(),
13143         gtk_type_children_types(),
13144         gtk_type_set_chunk_alloc(),
13145         gtk_type_register_enum(),
13146         gtk_type_register_flags(),
13147         gtk_type_parent_class().
13148         replacements, where available are described in ../docs/Changes-1.4.txt.
13149         implemented compatibility functions for the remaining API.
13150
13151         * configure.in: depend on glib 1.3.1, use gobject module.
13152
13153 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
13154
13155         * TODO.xml: Various updates to current status.
13156
13157 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
13158
13159         * gtk.m4: Print out version when test succeeds.
13160
13161 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
13162
13163         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
13164         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
13165         
13166         (Original triangle color selector from Simon Budig
13167         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
13168         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
13169         Santiago <mrcooger@cyberverse.com>)
13170
13171         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
13172         out into a separate widget.
13173
13174         * gtk/testgtk.c: Add some checkbuttons for toggling palette
13175         and opacity controls.
13176
13177 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
13178
13179         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
13180         snuck in prematurely.
13181
13182 2000-05-07  Tor Lillqvist  <tml@iki.fi>
13183
13184         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
13185         had deleted a ! operator by mistake, which caused
13186         GDK_SELECTION_CLEAR events never to be generated, which caused
13187         only the first copy to the clipboard from an gtkeditable to
13188         actually cause a copy to the Windows clipboard.
13189
13190 2000-05-06  Tor Lillqvist  <tml@iki.fi>
13191
13192         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
13193         compilation, too. Current mingw gcc distributions include the
13194         necessary headers. Also the necessary IIDs are now in mingw
13195         headers/libraries, and own definitions unnecessary.
13196
13197         More hacking on OLE2 DND, still doesn't work though, and thus
13198         ifdeffed out.
13199
13200         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
13201         here, too.
13202
13203 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
13204
13205         * gdk/nanox/*: nano-X port work in progress.
13206         * gdk/simple.c: simple test for Gdk.
13207         * README.nanox: notes about the port: read this first!
13208         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
13209         with nano-X.
13210
13211 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
13212
13213         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
13214         gdk_window_clear() into common code, implement in terms of
13215         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
13216         not redirected to the backing rectangle.
13217
13218 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13219
13220         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13221         EXTRA_DIST. It does not work well when the file that
13222         everything depends on is not in the tarball.
13223
13224 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
13225
13226         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
13227         with recursion where process_updates() is called from
13228         an expose handler. (GtkTextView is highly broken in
13229         doing this, but it should work, so it is a nice test
13230         case.)
13231
13232 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13233
13234         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
13235         handle the case where updates are queued during processing of
13236         updates.
13237
13238 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13239
13240         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
13241         window is on gdk_display - use that instead of segfaulting.
13242
13243 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
13244
13245         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
13246         broken and require an empty arg, give it to them.
13247
13248 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
13249
13250         * gtk/gtklabel.h: indentation fixes.
13251
13252 2000-05-02  Tor Lillqvist  <tml@iki.fi>
13253
13254         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
13255         draw too narrow or too low arcs, they seem to fail, at least with
13256         some display drivers.
13257
13258         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
13259
13260         Large changes to the Win32 backend, partially made necessary by
13261         the changes to the backend-independent internal
13262         structures. Attempts to implement similar backing store stuff as
13263         on X11. The current (CVS) version of the Win32 backend is *not* as
13264         stable as it was before the no-flicker branch was merged. A
13265         zipfile with that version is available from
13266         http://www.gimp.org/win32/. That should be use by "production"
13267         code until this CVS version is usable. (But note, the Win32
13268         backend has never been claimed to be "production quality".)
13269
13270         * README.win32: Add the above comment about versions.
13271
13272         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
13273
13274         * gdk/gdk.def: Update.
13275
13276         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
13277         presumably be replaced by some more better mechanism as 1.4 gets
13278         closer to release shape.
13279
13280         * gdk/makefile.{cygwin,msc}: Update.
13281
13282         * gdk/win32/*.c: Correct inclusions of the backend-specific and
13283         internal headers. Change code according to changes in these. Use
13284         gdk_drawable_*, not gdk_window_* where necessary.
13285
13286         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
13287         our old DND.
13288
13289         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
13290         to interpret single characters as UTF-8. Thanks to Hans Breuer.
13291         Use correct function name in warning messages.
13292
13293         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
13294         GSourceFuncs gdk_event_prepare and gdk_event_check.
13295         (gdk_event_get_graphics_expose): Do implement, use
13296         PeekMessage. Thanks to Hans Breuer.
13297         (event_mask_string): Debugging function to print an GdkEventMask.
13298         (gdk_pointer_grab): Use it.
13299
13300         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
13301         (old) book I used claimed was Hangul actually is CJK Unified
13302         Ideographs Extension A. Also, Hangul Syllables were missing.
13303         Improve logging.
13304
13305         * gdk/win32/gdkgc-win32.c: Largish changes.
13306
13307         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
13308         g_win32_getlocale() from GLib, and not setlocale() to get current
13309         locale name.
13310
13311         * gdk/win32/gdkprivate-win32.h
13312         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
13313         gdkwin32.h, similarily as in the X11 backend.
13314
13315         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
13316         assignment was used instead of equals in if test. Thanks to Hans
13317         Breuer.
13318
13319         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
13320         the X11 version.
13321
13322         * gdk/win32/makefile.{cygwin,msc}
13323         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
13324         path to the Win32 headers that works also with the mingw compiler.
13325
13326         * gtk/gtkstyle.c: Include <string.h>.
13327
13328 2000-04-26  Havoc Pennington  <hp@redhat.com>
13329
13330         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
13331         replacing the broken gtk_label_get ()
13332
13333 2000-04-15  Havoc Pennington  <hp@pobox.com>
13334
13335         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
13336         this keeps scanner scripts from getting confused.
13337
13338         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
13339         data, rather than void
13340
13341 2000-04-15  Tor Lillqvist  <tml@iki.fi>
13342
13343         * gtk/gtkclist.c (gtk_clist_motion)
13344         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
13345         with is_hint FALSE, get x and y from the event. They used to be
13346         used uninitialised. The Win32 backend never sends motion events
13347         marked as hints. This for instance fixes the annoying file and
13348         font selector behaviour in the Win32 version.
13349
13350 2000-04-14  Tor Lillqvist  <tml@iki.fi>
13351
13352         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
13353         gtk_private_n_signals variables, they are used by some software,
13354         sigh.
13355
13356         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
13357         installation directory from the Registry, where the installer
13358         should have put it.
13359
13360 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
13361
13362         * gdk/x11/Makefile.am: Fix problem with installation directory for
13363         gdkx.h
13364
13365         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
13366         <mrcooger@cyberverse.com> so that when selecting menus with the
13367         mouse, the first item will not be selected, but when selecting
13368         with an accelerator, or navigating left-right on a menubar with
13369         the menus popped up, the first item will be selected.
13370
13371 2000-04-05  Dan Damian  <dand@dnttm.ro>
13372
13373         * configure.in: Added "ro" to ALL_LINGUAS.
13374
13375 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
13376
13377         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
13378         indentation.
13379
13380         * Makefile.am (EXTRA_DIST): Fix typo.
13381
13382         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
13383         to catch gdkconfig.h
13384
13385         * gtk/gtkitemfactory.c: Added FIXME.
13386
13387 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
13388
13389         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
13390         s/return_if_fail/return_val_if_fail/g and add a return value.
13391
13392 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13393
13394         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
13395         merge slipup.
13396
13397         * gdk/gdkinput.h: Fix missing line from merge.
13398
13399 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
13400
13401         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
13402         instead of gdkprivate.h.
13403
13404 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
13405
13406         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
13407         parent class to correctly be GtkDialogClass.
13408
13409 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
13410
13411         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
13412         toplevel windows and their immediate children by their parents,
13413         since the size of toplevel windows is out of our immediate
13414         control and we don't get any real benefit from trying to track
13415         this size for clipping.
13416
13417         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
13418         for input_only windows.
13419
13420         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
13421         to fix some hacks and make sure that we don't try to set the
13422         background of input only windows.
13423
13424 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
13425
13426         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
13427         the _really_ internal stuff, and leave gdkprivate.h for the fake private
13428         stuff that we've traditionally exposed.
13429
13430         * gdk/**.c: Use gdkinternals.h where appropriate.
13431
13432         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
13433         not include gdkprivate-x11.h, move all stuff of conceivable public
13434         interest into gdkx.h; keep all really private stuff in
13435         uninstalled header gdkprivate-x11.h.
13436
13437         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
13438         image->image_put on windows through a new function _gdk_window_draw_image()
13439         to allow us to do backing store for images. (Sort of ugly)
13440
13441         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
13442         contexts locally so that we can offset them properly when drawing 
13443         onto backing pixmaps.
13444
13445         * gdk/gdkinput.h: Reindented
13446
13447         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
13448         pixmap or color for the window, so we can properly initialize
13449         our double-buffer pixmaps, and also so that we temporarily set
13450         a background of None while scrolling.
13451
13452         * gdk/gdkregion.h: Revise region boolean operators to have an
13453         interface that is actually convenient - switch from creating new
13454         regions on every op, to "methods" that modify existing regions
13455         (A = A OP B). 3 argument forms which allow dest == src, would also
13456         be possible, but the current interfaces seem to map nicely
13457         onto what needs to be done. (There is quite a lot of region
13458         code in GDK now.)
13459
13460         * gdk/gdkregion.h: Add constructor from rectangle and a copy
13461         operator.
13462
13463         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
13464         gdkpoly-generic.h: Copy region code from Xlib, switch it over
13465         to 32 bit coordinates, modify it to be mostly GTK+ style
13466         and to have interfaces that match gdkregion.h.
13467
13468         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
13469         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
13470         create a backing pixmap and redirect all drawing to
13471         that backing pixmap until a matching gdk_window_end_paint().
13472
13473         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
13474         Create a special drawable class for GtkWindow's that 
13475         redirects the drawing to the backing pixmap as necessary
13476         and then calls the real operations in _gdk_windowing_window_class.
13477
13478         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
13479         Store invalid region for each window. Generate expose events for invalid
13480         region in an idle. This replaces both the expose compression
13481         and the redrawing queuing in GTK+. It is both more efficient and
13482         simpler than either one individually and far more so then the
13483         combination.
13484
13485         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
13486         Emulate 32 bit coordinates for windows with 16 bit coordinates
13487         by offsetting drawing, guffaw scrolling techniques and
13488         mapping/unmapping child windows as necessary.
13489
13490         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
13491         where, when invalid regions are processed, the region is stored,
13492         and if expose events come in that are detectably duplicate
13493         the processed exposes (by comparison of event serial numbers),
13494         the stored region is subtracted out of those exposes.
13495
13496         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
13497         regions newly exposed when scrolling or resizing windows.
13498         This, combined with forcing processesing of queued invalidated
13499         regions, gives nice flicker-free scrolling.
13500
13501         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
13502         invalidated regions after every scroll.
13503
13504         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
13505         emulation in GDK. Its, for all practical purposes just a
13506         GtkViewport/GtkFixed hybrid now.
13507
13508         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
13509         (16-bit) structures as necessary instead of just casting.
13510
13511         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
13512         in terms of the structures from gdkregion-generic.c, using appropriate
13513         offsets from GDK to X11 coordinates. Cache clip mask and
13514         origin and ts origin locally and only flush to the server
13515         when drawing, to avoid constantly setting and resetting these
13516         values when offsetting GC's for scrolling and backing pixmaps.
13517
13518         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
13519
13520         * gtk/gtkcontainer.c: Call process_all_updates at end
13521         of resizing to reduce flicker. (Avoids having redraw
13522         lag arbitrarily behind resize under some circumstances)
13523
13524         * gtk/gtkentry.c: Remove old backing store code, and simply take
13525         advantage of the new backing store capabilities of GDK.
13526
13527         * gtk/gtkmain.c: Simple implementation of widget backing
13528         store - simply push a paint while handling each expose.
13529         (Should really be configurable widget for widget.)
13530         
13531         * gtk/gtkwidget.c: Remove all the old complicated redraw
13532         code, and simply invalidate the GDK windows from
13533         gdk_window_queue_clear(), etc. (Sigh, so much carefully
13534         debugged complexity ... gone to the winds.)
13535
13536         Remove all the code for suppressing expose events while
13537         resizes are pending; this isn't needed since the invalid
13538         areas won't be processed until after the resizes are
13539         processed, since they are in a lower priority idle.
13540
13541 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
13542
13543         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
13544         and height of dest rectangle for non-intersecting rectangles.
13545
13546 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
13547
13548         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
13549         for GdkRectangle.
13550
13551 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
13552
13553         * gdk/gdk{events,image,private,types,window}.h
13554          gdk/x11/gdkinputprivate.h: Change all coordinates
13555          from int16 to int. Also, Change width and height from
13556          unsigned to signed to avoid all the stupid C 
13557          signedness bugs.
13558
13559 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
13560
13561         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
13562         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
13563         Add some more detailed checking.
13564
13565         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
13566         New function to retrieve the depth of a drawable.
13567
13568         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
13569         field, reorder fields to save memory. 
13570
13571 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
13572
13573         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
13574         of the background image instead of scaling the background down to
13575         a line.
13576
13577         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
13578         which temporarily set slider to wrong size.
13579
13580         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
13581         queue_clear().
13582
13583 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
13584
13585 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
13586
13587         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
13588
13589 2000-03-17  Tor Lillqvist  <tml@iki.fi>
13590
13591         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
13592         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
13593
13594         * gdk/win32/gdkfont-win32.c
13595         * gdk/win32/gdkproperty-win32.c
13596         * gdk/win32/gdkselection-win32.c
13597         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
13598         now declared such.
13599
13600 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
13601
13602         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
13603
13604 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
13605
13606         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
13607         is called without trapping X errors.
13608
13609 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
13610
13611         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
13612         way into the fontset lists.
13613
13614 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
13615
13616         * gtk/gtkthemes.h: add extern "C" scope.
13617
13618 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
13619
13620         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
13621         to make appends to the list constant. (gtk-guy-990901-0.patch)
13622
13623 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
13624
13625         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
13626         for the typename hash table.
13627
13628 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
13629
13630         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
13631         to make sure we never divide by zero. 
13632         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
13633
13634 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
13635
13636         * gtk/gtkfontsel.c: Apply patch from
13637         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
13638         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
13639
13640         Also, some cleanups in atom handling.
13641
13642 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
13643
13644         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
13645         not GtkWidget.
13646
13647 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
13648
13649         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
13650         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
13651         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
13652         more guint wrap-around bugs before going to bed.
13653
13654 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
13655
13656         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
13657         guint wrap arounds in allocation.width.
13658
13659         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
13660         process untill we fit the allocation given.
13661
13662 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
13663
13664         * gtk/gtkwidget.c:
13665         (gtk_widget_unrealize): guard widget access with ref/unref
13666         around signal emission.
13667         (gtk_widget_hide): same here, but also check its destroyed
13668         state before queueing a resize.
13669
13670 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
13671
13672         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
13673         of gtk_default_insensitive_bg as insensitive base color.
13674
13675         * gtk/gtktext.c (gtk_text_style_set): set the background color according
13676         to the widget's state.
13677         (gtk_text_realize): same here.
13678         (gtk_text_state_changed): same here.
13679         (draw_bg_rect): compare background color against base[] from
13680         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
13681
13682 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
13683
13684         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
13685         grabs are active, unless a delete event is send to the toplevel
13686         of the currently grab holding widget.
13687
13688 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
13689
13690         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
13691         debugging g_print's.
13692
13693 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
13694
13695         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
13696         ever make the scrolled-window requisition ever depend on the 
13697         visibility state of the scrollbars for the AUTOMATIC policy. 
13698         This breaks the GTK+ requisition model, and causes loops.
13699
13700 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
13701
13702         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
13703         the default font to avoid problems with XFree86-4.0 where the
13704         default charset is iso10646-1, not iso8859-1.
13705
13706 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
13707
13708         * acinclude.m4
13709         * config.guess
13710         * config.sub
13711         * ltconfig
13712         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
13713
13714         * gtk/Makefile.am: minor cosmetic consistency tweak
13715
13716 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
13717
13718         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
13719         the activate_time to 0, so that we handle a quick
13720         press/release press/release properly and don't suppress
13721         the second release. (Red Hat bug #7545)
13722
13723 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
13724
13725         * gtk/gtkctree.c (row_delete):
13726         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
13727         bugs with destruction notifier, *always* update internal
13728         structures *before* calling user code.
13729
13730 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
13731
13732         A few more fixes for bug #5487, #2051, #2677.
13733         * gtk/gtkclist.c : 
13734         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
13735         not GDK_BUTTON_PRESS.
13736         (resync_selection): resync only if selection_mode is
13737         GTK_SELECTION_EXTENDED
13738         * gtk/gtkctree.c (resync_selection): same here
13739
13740 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
13741
13742         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
13743         gdk_drag_get_selection() and gtk_menu_detach().
13744
13745         [ From Jeroen Ruigrok/Asmodai ]
13746
13747 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
13748
13749         * gtk/gtknotebook.c (gtk_notebook_size_request): 
13750         page->tab_label can be NULL.
13751
13752 2000-01-25  Havoc Pennington  <hp@pobox.com>
13753         
13754         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
13755         arg is boolean
13756
13757         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
13758
13759         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
13760
13761         * gdk/gdkproperty.c (gdk_property_get): return boolean
13762
13763         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
13764
13765         * gdk/gdkim.c (gdk_im_ready): return boolean
13766
13767         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
13768
13769         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
13770         glib clash, should fix glib)
13771
13772         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
13773         (gdk_get_show_events): return gboolean, and canonicalize 
13774         to TRUE/FALSE
13775
13776         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
13777         colormap is private
13778         (gdk_colors_alloc): gboolean whether to be contiguous
13779         (gdk_color_equal): return gboolean since we are a predicate
13780         and not a qsort() (this looks semi-wrong due to glib breakage,
13781         IMO glib should be fixed)
13782         
13783         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
13784         (gdk_get_use_xshm): return gboolean
13785         (gdk_pointer_is_grabbed): return gboolean
13786
13787         * gdk/gdk.h: Change prototypes to match all the above changes,
13788         and re-run egtk-format-protos as required.
13789
13790 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
13791
13792         * gtk/gtkctree.c (resync_selection): 
13793         * gtk/gtkclist.c (resync_selection):
13794
13795         Return immediately if clist->drag_pos < 0. This is a workaround
13796         for the corrupt state that the clist gets into when a
13797         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
13798
13799         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
13800         
13801         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
13802         variable from recent commit.
13803
13804 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
13805
13806         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
13807
13808 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
13809
13810         * gtk/Makefile.am: prefix all autogenerated source that get build in
13811         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
13812         in builddir. since we subsequently cd into srcdir for autogeneration,
13813         the paths have to be stripped from the target file names, thusly we
13814         use $(@F) as target names now.
13815         put a comment about configure.in's --disable-rebuilds option,
13816         which can be used for non-writable source directories, for development
13817         setups though, srcdir has to be *writable*.
13818
13819 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
13820
13821         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
13822           Finish the job of allowing event to be NULL.
13823           (Fixes bug #4283, reported by Chris Blizzard)
13824
13825         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
13826           things so that the cursor appears on screen, properly
13827           take into account INNER_BORDER.
13828           (Fixes bug #4754, reported by Antonio Campos)
13829
13830 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
13831
13832         * gtk/gtknotebook.c (gtk_notebook_map): Don't
13833           show the tab_label unless it itself is visible.
13834
13835           gtk/gtknotebook.c (gtk_notebook_size_request):
13836           Do a better job of making sure that the visibility
13837           of the tab label corresponds to whether it should
13838           be mapped or not.
13839
13840 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
13841
13842         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
13843           Use the requisition, not the allocation, since the
13844           allocation has not necessarily been computed yet.
13845           (Pointed out by Eugene Osintsev)
13846
13847 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
13848
13849         * gtk/gtkstyle.c (gtk_style_new): Dont' set
13850           style/base[GTK_STATE_INSENSITIVE] both to
13851           gtk_default_insensitive_bg!
13852           (Bug #2187, reported by Jonathan Blandford)
13853
13854         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
13855           Add Alt_L, Alt_R to list of invalid accelerators.
13856           (Bug #3736, reported by Vlad Harchev)
13857
13858 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
13859
13860         * gtk/gtkfilesel.c (open_ref_dir): Fix several
13861         bugs which occured after an attempt to open 
13862         invalid home directory left cmpl_state->reference_dir == NULL.
13863
13864          - completion on files in home directory didn't work
13865          - completion on an empty string caused  segfault
13866
13867          (Bug #3678, reported by Steve Ratcliffe)
13868
13869         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
13870         cut and paste error that was causing scales to
13871         be incorrectly positioned.
13872         (Bug #2956,
13873          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
13874
13875 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
13876
13877         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
13878         when checking for dcgettext, if we've found we needed
13879         it for dgettext.
13880 +
13881 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
13882
13883         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13884         queue_clear on NO_WINDOW widgets during a reparent,
13885         since at that point the window and widget heirarchies
13886         are out of sync. This stops crashing in some cases
13887         (the scrolled window reparent test, for instance), and
13888         _probably_ won't cause drawing errors.
13889
13890         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
13891         test do what it was supposed to do and be robust against
13892         window closings, etc. (Bug #2443)
13893
13894 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
13895
13896         * gtk/gtkentry.c: Fix return values on mouse events.
13897         (Bug #2686, Sky <seb_sky@yahoo.com>)
13898
13899         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
13900         (pointed out by George Lebl)
13901
13902         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
13903         (From Ettore Perazzoli  <ettore@helixcode.com>)
13904  
13905 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
13906
13907         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
13908         clicks between rows or outside calender area correctly.
13909         (Patch from Damon Chaplin)
13910
13911         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
13912         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
13913           Call destroy function when overwriting existing data. 
13914           (Pointed out by Damon Chaplin)
13915
13916 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
13917
13918         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
13919           which was causing problems on various systems with Xmu.
13920           This hasn't been needed for a very long time.
13921           (Fixes #1185 3167)
13922
13923 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
13924
13925         * gdk/gdki18n.h: Include <ctype.h> when defining
13926           gdk_isw* in terms of is* as a fallback.
13927           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
13928
13929 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
13930
13931         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
13932           realize the widget when it is size allocated!
13933           (old, old bug)
13934
13935         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
13936           Removed unused call to gdk_window_get_size() that
13937           showed up when the above was fixed.
13938
13939 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
13940
13941         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
13942           fix up widget->window when the widget is a
13943           NO_WINDOW container widget.
13944
13945 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
13946
13947         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
13948           to account for the fact that feof() does _not_ 
13949           return TRUE on errors, and thus avoid infinite loops
13950           when trying to use gdk_pixmap_create_from_xpm()
13951           on unreadable values.
13952
13953 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
13954
13955         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
13956
13957 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
13958
13959         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
13960           gdk_gc_set_dashes to take gint8 instead of gchar to
13961           make it clearer that it is _not_ a NULL terminated string.
13962
13963         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
13964           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
13965           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
13966           arguments.
13967
13968 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
13969
13970         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
13971         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
13972         background size relative to our allocation, guard against small
13973         allocations, we may have not yet been size allocated.
13974
13975 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
13976
13977         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
13978         not just version == 3. We implement all 3 + most of 4 - 
13979         (we don't support matching text/plain;charset=iso-8859-1
13980         to a dest that expects text/plain). We'll still advertise
13981         3 to be safe, but any client implementing version >= 3
13982         must interoperate with 3.
13983         
13984 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13985
13986         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
13987         background and gc members, add a warning in gtk_tooltips_set_color()
13988         indicating that this function is deprecated.
13989
13990 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
13991
13992         * docs/gtkfaq.sgml: FAQ Update:
13993           - Minor cleanups (Emmanuel, me)
13994           - New questions:
13995                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
13996                 How can I retrieve the text from a GtkMenuItem? (timj)
13997                 How do I validate/limit/filter the input to a GtkEntry? (me)
13998                 Memory does not seem to be released when I free the list
13999                         nodes I've allocated (timj)
14000
14001 2000-03-07  Tor Lillqvist  <tml@iki.fi>
14002
14003         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
14004         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
14005         for which it is no use to call GetLastError onWin9x.
14006         (gdk_other_api_failed) New function, for general error
14007         reporting without calling GetLastError.
14008         (gdk_win32_api_failed) OTOH, this function always calls
14009         GetLastError. (gdk_win32_last_error_string) Remove this function,
14010         GLib has the equivalent now.
14011
14012         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
14013         call them with function name, file name and line number in the
14014         arguments.
14015
14016         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
14017         functions.
14018         
14019         * gtk/gtk.def: Add some missing entry points.
14020
14021         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14022         gtk_paned_set_gutter_size, which don't exist any longer, as void.
14023         
14024         Fixes by Hans Breuer:
14025
14026         * gdk/makefile.msc: Update for debugging.
14027
14028         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
14029         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
14030         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
14031         in the dash_list.
14032
14033         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
14034         the x11 backend.
14035
14036         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
14037
14038         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
14039
14040 2000-03-04  Tor Lillqvist  <tml@iki.fi>
14041
14042         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
14043         just pixel value of background colour.
14044
14045         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
14046         containing code snippet previously duplicated in a couple of
14047         places.
14048         
14049         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
14050         gdk_colormap_color.
14051
14052         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
14053         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
14054         events for autorepeated Shift, Control and Alt keys. Use
14055         gdk_colormap_color.
14056
14057         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
14058         pointer is inside the window the cursor of which we are setting,
14059         call SetCursor immediately.
14060
14061         * gdk/win32/makefile.cygwin
14062         * gtk/makefile.cygwin: If we don't have the build number stamp
14063         file, use zero.
14064
14065         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
14066         gtk_paned_set_gutter_size as empty.
14067
14068         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
14069         
14070 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
14071
14072         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
14073           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
14074           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
14075           docs/gtk_tut.sgml docs/gtk.texi TODO:
14076
14077           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
14078
14079 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
14080
14081         * gtk/gtkcalendar.c: Implement num_marked_dates,
14082           and don't emit mutiple day_selected signals on
14083           month_prev.
14084
14085 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
14086
14087         * docs/make-todo (lineno): let title and logo be configurable so
14088         that GNOME can use this script too.
14089
14090         * TODO.xml: added logourl and a title
14091
14092 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
14093
14094         * TODO.xml: Added some UI items, and an explanatory
14095         comment at the top of the file.
14096
14097 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
14098
14099         * TODO.xml: some updates, added abunch of new entries.
14100         a note for those fiddeling with this file, when done
14101         with it, invoke:
14102         $ ./docs/make-todo TODO.xml >/dev/null
14103         and correct output errors before comitting changes.
14104
14105 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
14106
14107         * TODO.xml: Added XML-structured TODO file.
14108         * docs/make-todo: python script to turn TODO.xml into
14109           pretty XML output. 
14110
14111 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
14112
14113         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
14114         the function to let it draw the seven dots, instead of the old,
14115         much maligned, method.
14116         (draw_dot): New function to draw a dot.
14117
14118         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
14119         to draw the handle inside the border width as opposed to outside.
14120         Use paint function instead of gdk_draw_point.
14121
14122         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
14123         to draw the handle inside the border width as opposed to outside.
14124         Use paint function instead of gdk_draw_point.
14125
14126         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
14127         Change indenting to be more GTK like.
14128
14129 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
14130
14131         * docs/gtk_tut.sgml: New section on GtkCalendar
14132         * examples/calendar: Update example code
14133
14134 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
14135
14136         * docs/gtkfaq.sgml: FAQ Update
14137
14138 2000-02-19  Anders Carlsson  <andersca@gnu.org>
14139
14140         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
14141         to prevent the scroll event to be propagated upwards.
14142
14143 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14144
14145         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
14146         OwnerGrabButtonMask from button entries for
14147         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
14148
14149         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
14150         to the event mask (which will result in button/press release
14151         being added to the event mask on Unix) so scrolling works
14152         for layouts in scroll windows.
14153
14154         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
14155
14156         Patch from Anders Carlsson  <andersca@gnu.org> to add
14157         a scroll event.
14158
14159         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
14160         scrolling to the "Test Scrolling" part of testgtk.
14161  
14162         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
14163  
14164         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
14165         it against GDK_SCROLL.
14166  
14167         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
14168         way of mouse wheel scrolling.
14169  
14170         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
14171  
14172         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
14173  
14174         * gtk/gtkmain.c: Removed previous mouse wheel hack.
14175  
14176         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
14177         gdk_event_mask_table.
14178  
14179         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
14180         GdkEventScroll handler.
14181  
14182         * gdk/gdkevents.h: Added GdkEventScroll structure.
14183  
14184 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
14185
14186         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
14187         and Anders Carlsson to change the Paned widgets so that they
14188         can be dragged from anywhere along the length. Also change
14189         the way that this is drawn to make this apparent.
14190
14191         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
14192         from George Lebl to check that option_menu->menu is present
14193         before getting history.
14194
14195 2000-02-14  Tor Lillqvist  <tml@iki.fi>
14196
14197         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
14198         before the assertion for non-NULL segment list.
14199
14200         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
14201         Seems that pattern brushes *must* be 8x8 pixels! At least on my
14202         machine, but it might be display driver dependent. Sigh, so make
14203         sure the stipple is that size. Does Windows suck or what?
14204
14205         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
14206         places.
14207
14208 2000-02-13  Havoc Pennington  <hp@pobox.com>
14209
14210         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
14211         refcount to 1
14212         (gdk_cursor_new): init refcount to 1
14213
14214         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
14215
14216 2000-02-13  Tor Lillqvist  <tml@iki.fi>
14217
14218         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
14219         so that we don't have to do unnecessary settings to the HDC.
14220
14221         * gdk/win32/gdkdrawable-win32.c
14222         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
14223         gdk_gc_predraw.
14224
14225         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
14226         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
14227         GDI paths, call WidenPath to get the outline of the stroken path,
14228         and then fill the outline (with the brush that was built from the
14229         stipple).
14230
14231         * gdk/win32/gdkgc-win32.c: Factor out common code from
14232         _gdk_win32_gc_new and gdk_win32_gc_set_values into
14233         gdk_win32_gc_values_to_win32values. Use correct colour for
14234         SetBkColor() (Until now the code actually used a random colour in
14235         the call to SetBkColor()... but that didn't show up as not many
14236         GDI APIs use the background colour. Pattern (opaque stippled)
14237         brushes do.)
14238
14239         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
14240         gdk_win32_api_failed): New functions for error logging.
14241
14242         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
14243         WIN32_API_FAILED to call them, passing function or file name and
14244         line number.
14245
14246         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
14247
14248         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
14249         GdkColor for foreground and background in GdkGCWin32Data.
14250
14251         * gdk/makefile.cygwin: Link in the resource object separately.
14252
14253         * gdk/win32/rc/gdk.rc
14254         * gtk/gtk.rc (New file)
14255         * gdk/win32/makefile.cygwin
14256         * gtk/makefile.cygwin: Update build number in DLLs automatically,
14257         as in GLib.
14258
14259 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
14260
14261         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
14262         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
14263         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
14264         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
14265         parameters given and cursor->ref_count. coding style fixups.
14266
14267         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
14268         not GtkWidget.
14269         
14270         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
14271         fix up widget macros and add _GET_CLASS() variant.
14272         
14273         * gtk/*.c: some GtkType fixups.
14274
14275 2000-02-09  Tor Lillqvist  <tml@iki.fi>
14276
14277         * gdk/win32/gdkproperty-win32.c
14278         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
14279         were reversed.
14280
14281 2000-02-04  Tor Lillqvist  <tml@iki.fi>
14282
14283         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
14284         g_filename_to_utf8 to convert the font names Windows gives us from
14285         whatever is the default codepage to UTF-8.
14286         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
14287         in the other direction.
14288
14289         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
14290         error in debugging output.
14291
14292 2000-02-02  Tor Lillqvist  <tml@iki.fi>
14293
14294         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
14295         and height parameters to gdk_window_clear_area(). Not minus one.
14296
14297 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
14298
14299         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
14300         checks if the widget passed to gtk_drag_get_data() was not the
14301         dest widget.
14302
14303 2000-02-01  Tor Lillqvist  <tml@iki.fi>
14304
14305         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
14306         g_filename_from_utf8 functions (which were added a moment ago to
14307         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
14308         size buffers.
14309
14310         gtk_file_selection_get_filename returns the filename in the C
14311         runtime encoding. It calls g_filename_from_utf8, but copies the
14312         returned string to a static buffer, which is returned. I think
14313         this is better than returning the result from g_filename_from_utf8
14314         directly, which would mean all apps that use it would have to free
14315         the return value. Or should this function care about this issue at
14316         all? Maybe a new function with clearly defined semantics.
14317
14318         * gtk/gtkfilesel.h: Add comment about
14319         gtk_file_selection_get_filename returning the filename in the C
14320         runtime's encoding.
14321
14322         * README.win32
14323         * gdk/gdk.def
14324         * gdk/makefile.{cygwin,msc}
14325         * gtk/gtk.def: Updates.
14326
14327         * gdk/gdkcursor-win32.c: Initialise refcount.
14328
14329 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
14330
14331         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
14332
14333 2000-01-30  Havoc Pennington  <hp@pobox.com>
14334
14335         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
14336         destroy
14337
14338         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
14339
14340         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
14341         implemented in platform-specific code
14342
14343         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
14344
14345         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
14346         underscore in front
14347
14348         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
14349         put an underscore in front
14350
14351         * gdk/gdkcursor.c: new file, implements
14352         gdk_cursor_ref/gdk_cursor_unref
14353
14354         * gdk/gdkcursor.h: Refcount GdkCursor
14355
14356         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
14357
14358 2000-01-29  Tor Lillqvist  <tml@iki.fi>
14359
14360         * gdk/gdkwindow.h
14361         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
14362
14363 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14364
14365         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
14366         structures to properly inherit from GtkWidget not GtkBin.
14367
14368 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
14369
14370         * gtk+.spec.in: Added lib/gtk+/include/* to %files
14371         (bug #5178 - Peter Wainright)
14372         
14373         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
14374         so that it will be installed.
14375         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
14376
14377 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
14378
14379         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
14380         for the GtkStyleClass vtable const.
14381
14382         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
14383         take a const string argument like GtkTranslateFunc. This will
14384         require changes in use code.
14385
14386 2000-01-19  Tor Lillqvist  <tml@iki.fi>
14387
14388         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
14389         semantics (to mimic the X11 backend, which just calls XClearArea)
14390         is to check for zero width (and height), and in that case use the
14391         window's width minus x (height minus y). This fixes for instance
14392         some redraw problems with gtkclist, which were easily noticeable
14393         in the gtk file selection widget.
14394
14395         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
14396         windows.
14397
14398 2000-01-13  Tor Lillqvist  <tml@iki.fi>
14399
14400         * configure.in
14401         * gdk/Makefile.am
14402         * gdk/x11/Makefile.am
14403         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
14404         (bug #5177).
14405         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
14406         out later.
14407
14408 2000-01-09  Tor Lillqvist  <tml@iki.fi>
14409
14410         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
14411         WM_MOVE for iconified or invisible windows. This fixes various
14412         problems when minimising windows. Thanks to Bernd Herd.
14413
14414 2000-01-05  Tor Lillqvist  <tml@iki.fi>
14415
14416         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
14417         backend's draw_lines method, not draw_points.
14418
14419 2000-01-02  Tor Lillqvist  <tml@iki.fi>
14420
14421         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
14422         before Owen's reorganisation: Don't have queued_events and
14423         queued_tail statics in this file, but use gdk_queued_events and
14424         gdk_queued_tail. This makes exposure event compression work again.
14425
14426         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
14427         seem to be needed?
14428
14429 1999-12-30  Tor Lillqvist  <tml@iki.fi>
14430
14431         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
14432         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
14433         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
14434         doesn't do anything.
14435
14436         * gdk/gdk.def: Add gdk_xid_table_insert.
14437
14438         * gdk/win32/gdkprivate-win32.h
14439         * gdk/win32/gdkevents-win32.c
14440         * gdk/win32/gdkinput-win32.c
14441         
14442         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
14443         extension_events field in the GdkWindowWin32Data struct. Use only
14444         the extension_events field in GdkWindowPrivate. Previously one was
14445         set, and the other one tested, which broke tablet
14446         functionality. Thanks to Keishi Suenaga for pointing this out.
14447
14448 1999-12-18  Tor Lillqvist  <tml@iki.fi>
14449
14450         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
14451         When handling a single character (text length == 1), don't handle
14452         it as if it was UTF-8.
14453
14454 1999-12-11  Tor Lillqvist  <tml@iki.fi>
14455
14456         * Makefile.am: Distribute README.win32.
14457         
14458         * gdk/Makefile.am
14459         * gdk/win32/Makefile.am: Distribute Win32 files.
14460
14461         * gdk/makefile.msc: New file.
14462
14463         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
14464         after label).
14465
14466         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
14467         gdk_error_code as GDKVAR, as they are referred outside GDK.
14468
14469         * gdk/win32/makefile.msc: Update.
14470
14471         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
14472         tweaks. Check only if at least one of those Unicode subrange bits
14473         we care for is set. If no code page bits are set, guess (wildly)
14474         based on the charset.
14475
14476         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
14477
14478         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
14479         non-NULL.
14480
14481         * gtk/gtkdnd.c
14482         * gtk/gtklayout.c
14483         * gtk/gtkplug.c
14484         * gtk/gtkselection.c
14485         * gtk/gtksocket.c
14486         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
14487         appropriate. There must be a cleaner way to handle this?
14488
14489         * gtk/gtkrc.c: Must include windows.h on Win32.
14490
14491         * gtk/testgtk.c: No need to include gdkx.h.
14492
14493         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
14494
14495 1999-12-07  Tor Lillqvist  <tml@iki.fi>
14496
14497         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
14498         the rbearing is set to the same as the width, but this should be
14499         fixed.
14500
14501 1999-12-06  Tor Lillqvist  <tml@iki.fi>
14502
14503         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
14504         function. If Windows doesn't tell us what Unicode subranges a font
14505         covers, guesstimate based on the codepages it covers. This will
14506         hopefully help those Windows versions or fonts that don't give us
14507         any useful Unicode subrange information with GetTextCharsetInfo.
14508         Call this function in gdk_font_load_internal.
14509
14510         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
14511         minor changes.
14512
14513 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
14514
14515         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
14516         New function, long needed.
14517
14518 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
14519
14520         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
14521         only_if_exists argument of gdk_atom_intern to
14522         bool.
14523
14524 1999-11-25  Tor Lillqvist  <tml@iki.fi>
14525
14526         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
14527         Fix two copy&paste errors.
14528
14529         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
14530         win32 has changed.
14531
14532         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
14533         GdkWin32SingleFont struct.
14534
14535         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
14536         subranges of loaded fonts. Clear font signature first, in case
14537         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
14538         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
14539
14540         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
14541         Unoffset clip region.
14542
14543 1999-11-23  Tor Lillqvist  <tml@iki.fi>
14544
14545         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
14546         event->any.window before calling filter functions.
14547
14548 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
14549
14550         * gtk/gtkgamma.h: Adapt cast macros to standard.
14551
14552 [ Merges from 1.2 ]
14553
14554 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
14555
14556         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
14557         If translation does not include a '/', use entire
14558         translation instead of crashing.
14559
14560 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
14561
14562         * docs/gtk_tut.sgml:
14563         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
14564
14565 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
14566
14567         * gtk/gtkselection.c (gtk_target_list_remove): Use
14568         g_list_remove_link, not g_list_remove.
14569
14570         [ From Geert Bevin <gbevin@thunderstorms.org> ]
14571         
14572 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
14573
14574         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
14575         statement upon unselection (how the heck did that slip in?).
14576
14577 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
14578
14579         * gtk/gtktext.c (gtk_text_freeze): 
14580         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
14581         in frozen state (and aparently crashes). patch provided by Anders
14582         Melchiorsen <and@kampsax.dtu.dk>.
14583
14584 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
14585
14586         * fix insensitive default/focus widget activation,
14587         reported by Matt Goodall <mgg@isotek.co.uk>.
14588
14589         * gtk/gtkwindow.c (gtk_window_key_press_event): 
14590         (gtk_window_activate_default):
14591         (gtk_window_activate_focus):
14592         return handled=FALSE for actiavtion of insensitive default
14593         widgets. return handled=TRUE for activation of insensitive
14594         focus widgets. don't activate in either case.
14595
14596 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
14597
14598         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
14599         and $glib_cflags to match library order and in the
14600         theory that an old version of GLib is more likely to
14601         be in the include directory for X then vice-versa.
14602         (Bug #2776)
14603
14604 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14605
14606         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
14607         to determine the locale for fontsets, not LC_MESSAGES;
14608         the user may want English messages with a handling
14609         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
14610         will still be broken) (Bug #2891)
14611
14612 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14613
14614         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
14615
14616 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
14617
14618         * gtk/gtkrc.ko: Changed the Korean default fontset.
14619
14620 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
14621
14622         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
14623         where when scrolling to the left or top double exposes
14624         were done, causing major slowdowns.
14625
14626 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
14627
14628         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
14629         names to lowercase and alphanumeric, before looking
14630         them up.
14631
14632         * gtk/Makefile.am: Install codeset variant gtkrc files
14633         with normalized names.
14634
14635 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
14636
14637         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
14638         popup menus when the menu is already visible, but its parent
14639         is still hidden, (happens after tornoff window got hidden).
14640
14641 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
14642
14643         * gtk/Makefile.am (install-data-local): Fix
14644         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
14645         deleted, causing error messages on install.
14646
14647 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
14648
14649         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
14650         the handle as well, since we now sometimes ignore
14651         exposes on the handle while resizing.
14652
14653 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
14654
14655         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
14656         extra g_free introduced in one of the last one or two 
14657         commits.
14658
14659 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
14660
14661         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
14662         consistent, put each style that a gtkrc.* file creates
14663         in a unique namespace, remove old files before installing.
14664
14665 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
14666
14667         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
14668         gtk_rc_init is called multiple times. (Yes, people who
14669         do that have bugs in their code.)
14670
14671 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
14672
14673         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
14674         Remove it since it's generated by the Makefile anyway
14675
14676 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
14677
14678         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
14679         device->info.axes for core pointer.
14680
14681 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
14682
14683         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
14684         idle_id, to deal with obsolete, broken C libraries.
14685
14686 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
14687
14688         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
14689         allocation->x/y twice!
14690
14691         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
14692         consistent with gtk_vscale_pos_trough().
14693
14694 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
14695
14696         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
14697         be queueing a resize on a toplevel container between
14698         the time we show it and when we map it. So, we need
14699         to test GTK_WIDGET_VISIBLE() for toplevels, and only
14700         use GTK_WIDGET_DRAWABLE() for child windows.
14701
14702 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
14703
14704         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
14705         (fixes bug #2144)
14706
14707 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
14708
14709         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
14710         container DRAWABLE (instead of VISIBLE), so we don't queue
14711         resizes on non-toplevel containers.
14712
14713 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
14714
14715         * gtk/gtkselection.[ch]: Make the data argument
14716         const guchar *.
14717
14718 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
14719
14720         * gtk/gtkwindow.c: Try to behave sensibly if 
14721         the focus widget is the window itself. (Should
14722         we allow this at all?)
14723
14724 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14725
14726         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
14727         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
14728         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
14729         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
14730         in prototypes and implementations consistent (Tomas Ogren).
14731
14732         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
14733         before the widget is unparented (reported by damon).
14734
14735         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
14736         since we provide unsigned data anyways.
14737
14738 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
14739
14740         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
14741         the call to gtk_tooltips_layout_text() until later.
14742
14743         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
14744         Call gtk_widget_ensure_style() before using the style.
14745
14746 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
14747
14748         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
14749         for old widgets that don't propagate draws to all
14750         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
14751
14752 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
14753
14754         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
14755         for a redraw but just the widget that requested the resize.
14756
14757 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
14758
14759         * gtk/gtkcontainer.c: added new widget level method
14760         gtk_container_set_reallocate_redraws() and a GtkContainer flag
14761         reallocate_redraws : 1 to reflect the setting, exported this through
14762         the argument system as a boolean ::reallocate_redraws.
14763
14764         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
14765         on the widget because the allocation changes, do so as well for
14766         widget->parent if the parent has reallocate_redraws set to TRUE.
14767         with that containers requesting reallocation redraws get automatically
14768         redrawn if their children changed allocation (this unfortunately
14769         affects also other children that didn't change allocation, but we
14770         cannot work around that before 1.3).
14771
14772 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14773
14774         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
14775         _and_ height are >0 (not _or_).
14776
14777         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
14778         instead of gtk_container_queue_resize(), which is a core gtk internal
14779         function (must have been on crack when i queued that).
14780
14781         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
14782         we can check more reliably if we want to discard expose events.
14783         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
14784         flag.
14785         
14786         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
14787         we simply trust these events. for deciding whether to discard exposes,
14788         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
14789         
14790 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
14791
14792         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
14793         queues of areas that are completely off screen.
14794
14795         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
14796         logic for handleboxes.
14797
14798         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
14799         check on width/height.
14800
14801 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
14802
14803         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
14804         we are fine with using $@ the way we do (if we actually encounter
14805         brokeness with $@ in VPATH builds because of additional path prefixes,
14806         we need to use $(@F) actually).
14807
14808 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
14809
14810         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
14811         short lived bugs, that would allow language bindings to do surgeries
14812         to our guts.
14813
14814 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
14815
14816         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
14817         where comparison was being done against an uninitialized
14818         value causing intermittant results depending on
14819         compiler flags. Also make it clearer that we aren't
14820         ever initializing the child as 0x0 (though this will
14821         be caught in gtk_widget_size_allocate())
14822
14823 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
14824
14825         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
14826         gtk_window_unset_transient_for() call after we do checks
14827         involving the old transient parent.
14828         [ From Lance Capser <lmc@cyberhighway.net> ]
14829
14830 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
14831
14832         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
14833         an empty file.
14834
14835 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
14836
14837         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
14838         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
14839
14840 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
14841
14842         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
14843         `$@' is valid only in the build dir, not after we've done 
14844         `cd $srcdir'.  Also use `test -f' instead of less portable
14845         `test -e'.
14846
14847 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
14848
14849         * gtk/gtktext.c (correct_cache_insert): Rewrite
14850          for simplicity, and hopefully correctness.
14851          (Fixes bug #1322, which was a segfault when
14852           on some insertions with the properties around
14853           the insertion set up just wrong.)
14854
14855         * gtk/gtktext.c (gtk_text_adjustment): When we receive
14856          a "changed" signal, clamp the new value to the adjustment
14857          bounds to avoid segfaulting if someone tries to change
14858          the adjustment to a bogus value. (Bug #1795)
14859
14860 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14861
14862         * gtk/gtkmain.c: Ignore unexpected destroy notifies
14863         for children, for toplevel windows handle them
14864         like delete_event.
14865
14866         * gtk/gtkplug.c: Add an unrealize handler so that
14867         we unref plug->socket_window when we are done
14868         with it.
14869
14870 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
14871
14872         * gtk/gtktext.c (clear_area): Fix stupid signedness
14873          problem that was causing background to sometimes
14874          be misaligned.
14875
14876 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
14877
14878         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
14879         
14880         * gtk/gtkmenu.c (gtk_menu_position): Make
14881          sure we never position menus with negative x, y,
14882          since gtk_widget_set_uposition() can't handle that.
14883
14884         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
14885          Modify the positioning code a bit so that we always
14886          put the top-left corner onscreen. (This is for
14887          UI reasons, gtk_menu_position() now takes care of
14888          gtk_widet_set_uposition() brokeness.)
14889
14890 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
14891
14892         * gtk/Makefile.am: fixed up things for -jx, x > 1.
14893
14894 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
14895
14896         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
14897           RC style that is passed in. The lack of the ref
14898           before was a bug. If people worked around this
14899           bug, this will introduce a slight memory leak
14900           in their code. The code should typically look like:
14901
14902             rc_style = gtk_rc_style_new ();
14903             [...]
14904             gtk_widget_modify_style (widget, rc_style);
14905             gtk_rc_style_unref (rc_style);
14906
14907         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
14908           the style if it was already set.
14909
14910         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
14911           style if it was set before.
14912
14913 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14914
14915         * gtk/testgtk.c (main): Add a check to see if we
14916           are being run from the correct directory and
14917           to quit nicely if we are not.
14918
14919         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
14920           static.
14921
14922 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
14923
14924         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
14925
14926         * gtk/gtkwindow.c:
14927         queue resizes unconditionally (gtk_widget_queue_resize will figure
14928         what to do if the window is not realized).
14929         (gtk_window_move_resize): only recenter the window
14930         for GTK_WIN_POS_CENTER_ALWAYS.
14931         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
14932         the same way as GTK_WIN_POS_CENTER.
14933
14934 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
14935
14936         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
14937         with (!(info->last_flags & GDK_HINT_POS)) instead of
14938         (!info->last_flags & GDK_HINT_POS).
14939
14940         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
14941         new_height unconditionally, because we use these values even if
14942         !default_size_changed && !hints_changed.
14943         comented the (default_size_changed || hints_changed) case with
14944         respect to resize rejects from the window manager.
14945
14946         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
14947         in the zvt condition hack, since this includes the window hints, set
14948         the hints after the handling_resize case.
14949
14950         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
14951         window is initially shown with to the geometry.
14952
14953 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
14954
14955         * gtk/gtkwindow.c (gtk_window_move_resize):
14956         s/size_changed/default_size_changed/g so i know what's
14957         really going on (frying brain on smaller flame now).
14958
14959 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
14960
14961         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
14962         we have size_changed upon handling_resize. this is a gross
14963         workaround for the broken zvt widget and should be removed in
14964         1.3 again (search for FIXME).
14965         Owen provided an accurate comment for this:
14966
14967         /* We could be here for two reasons
14968          *  1) We coincidentally got a resize while handling
14969          *     another resize.
14970          *  2) Our computation of size_changed was completely
14971          *     screwed up, probably because one of our children
14972          *     is broken. It's probably a zvt widget.
14973          *
14974          * For 1), we could just go ahead and ask for the
14975          * new size right now, but doing that for 2)
14976          * might well be fighting the user (and can even
14977          * trigger a loop). Since we really don't want to
14978          * do that, we requeue a resize in hopes that
14979          * by the time it gets handled, the child has seen
14980          * the light and is willing to go along with the
14981          * new size. (this happens for the zvt widget, since
14982          * the size_allocate() above will have stored the
14983          * requisition corresponding to the new size in the
14984          * zvt widget)
14985          *
14986          * This doesn't buy us anything for 1), but it shouldn't
14987          * hurt us too badly, since it is what would have
14988          * happened if we had gotten the configure event before
14989          * the new size had been set.
14990          */
14991
14992 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
14993
14994         * gtk/gtkrc.c: deal properly with the fact that RC
14995           style lists may include rc styles more than once.
14996
14997         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
14998           unused static function.
14999
15000         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
15001           stack of directories of RC files currently being
15002           parsed and implicitely add them to pixmap path.
15003           
15004           This fixes a bug where the directory would get
15005           appended then overwritten by pixmap_path declarations.
15006
15007           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
15008
15009         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
15010           theme's exit function. (Patch from Peter Wainwright,
15011           bug #1454)
15012
15013         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
15014           Add a destroy() handler to take care of removing
15015           group for menu item. (Fixes bug #1197)
15016
15017         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
15018           in warning message.
15019
15020 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
15021
15022         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
15023         roundtrip to figure window's width and height, since we know that
15024         anyways from widget->allocation.
15025
15026 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
15027
15028         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
15029           the hints after we request the new size.
15030
15031 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
15032
15033         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
15034           GTK_WIDGET_REALIZED() assertion - we can compute the
15035           hints before we are realized.
15036
15037         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
15038           hint changing so that we have a value of hints_changed
15039           when we decide whether to constrain the window size.
15040
15041         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
15042
15043         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
15044         change back to G_MAXINT.
15045
15046 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
15047
15048         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
15049         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
15050         contain uncluttered values.
15051         (gtk_window_compute_hints): simply assert that window is realized
15052         and that geometry_info is valid, since we rely on this anyways.
15053         (gtk_window_constrain_size): major cleanups to the code.
15054         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
15055         for the base size, instead of the minimums. use 32767 as max width
15056         and height (like in gtkwindow.c) instead of G_MAXINT.
15057
15058 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
15059
15060         * cleaned up the GtkContainer.need_resize flag handling mess, we
15061         only need to force resize requests when we were prematurely
15062         realized, or our widget tree was modified when we were temporarily
15063         hidden. handling these cases directly upon showing the window (i.e.
15064         while the GdkWindow is still unmapped) avoids the need to wait for
15065         a configure event response and therefore makes the GUI more snappier
15066         and avoids blank windows during the roundtrip.
15067
15068         * gtk/gtkwidget.c:
15069         (gtk_widget_hide): 
15070         (gtk_widget_show): don't queue resizes on toplevels, they know how
15071         to deal with matters.
15072
15073         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
15074         flag directly for not visible resize containers and spare us unecessary
15075         signal emissions.
15076
15077         * gtk/gtkwindow.c:
15078         (gtk_window_realize): if we need to enforce premature size allocation,
15079         queue a container resize so we are correctly resized later on.
15080         (gtk_window_init):
15081         (gtk_window_size_request):
15082         don't freak around with the ->need_resize flag,
15083         gtk_container_queue_resize() will care about that.
15084         (gtk_window_show):
15085         handle initial resizing issues here, we can handle matters better in
15086         this place, especially since we know that our GdkWindow is still
15087         unmapped.
15088         (gtk_window_move_resize):
15089         don't care about ->need_resize at all.
15090         handle size changes properly that occoured while we waited for a
15091         configure event.
15092
15093 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
15094
15095         * gtk/gtkwidget.c (gtk_widget_set_uposition):
15096         * gtk/gtkwindow.[hc] (gtk_window_reposition):
15097         Move the hint setting code from gtk_widget_set_uposition
15098         to here; set the hints so that we respect any previously
15099         set geometry hints.
15100
15101         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
15102         change the window hints here or move the window here,
15103         let that happen in gtk_window_move_resize().
15104
15105 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
15106
15107         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
15108         to already queued resizes (and therefore redraws) on a widget, check
15109         its anchestry as well.
15110
15111         * gtk/gtkcontainer.c:
15112         (gtk_container_queue_resize): clear resize widgets for resize
15113         containers before aborting prematurely. this is especially important
15114         for toplevels which may need imemdiate processing or their resize
15115         handler to be queued.
15116         (gtk_container_dequeue_resize_handler): added new internal function for
15117         gtkwindow.c.
15118
15119         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
15120         configure event, take possible changes in window position into account
15121         as well.
15122         if we request a new window size, queue up a resize handler that will
15123         last until the configure event response arrives.
15124         combined the ->need_resize case (initial show) with the general size
15125         (hints) changed case and added even more comments.
15126         if !auto_shrink, only revert to the old allocation if the new size
15127         is smaller than the current allocation.
15128
15129 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
15130
15131         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
15132                            gtk_window_set_geometry_hints
15133                            gtk_window_set_default_size):
15134         When hints are set, queue a resize so that the hints will
15135         be eventually reset on the toplevel.
15136
15137         * gtk/gtkwindow.c (gtk_window_show): Use
15138         gtk_window_compute_default_size(). Clear the need_resize flag
15139         on the initail map so that we don't unnecessarily trigger the
15140         resize code.
15141
15142         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
15143         into separate functions. Compare the hints we are setting
15144         with what we set last time so that we can accurately
15145         tell when we need to reset the hints.
15146
15147         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
15148         function to figure out the size from requisition
15149         and default_size.
15150
15151         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
15152         from fvwm to constrain a size to the geometry hints.
15153
15154         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
15155         to compare two sets of geometry hints.
15156
15157         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
15158         from gtk_window_set_hints(), just compute the hints,
15159         don't set them.
15160
15161         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
15162         code from gtk_window_move_resize() to separate function,
15163         rationalize a bit.
15164
15165 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
15166
15167         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
15168         structure into a new private structure.
15169
15170         * gtkrc.c: Split GtkRcStyle into public/private.
15171         In the private part, add a list of pointers to the
15172         RcStyle lists this RcStyle participates in.
15173
15174         * gtkrc.c: When a RcStyle is free, remove all
15175         lists referencing it from the 
15176         realized_style_ht hash, and free those lists.
15177         
15178         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
15179         gtk_rc_init(), since that adds the default styles
15180         to the list of parsed RC files again.
15181
15182         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
15183         
15184 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
15185
15186         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
15187         checks that ensure that a widget's allocation is at least 1 in width
15188         and height. (GNOME note: this doesn't affect old panel code anymore,
15189         because GtkSocket will request width and height of at least 1 since
15190         Fri Jul 23).
15191
15192         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
15193         allocated yet (happens if the user realizes the window prematurely),
15194         size request and allocate it.
15195         (gtk_window_size_allocate): guard against guint underflows.
15196
15197 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
15198
15199         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
15200         in gtk_built_sources, so gtk.defs gets built prior to all other
15201         sources.
15202
15203 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
15204
15205         * gtk/Makefile.am:
15206         invoke indent on gtkmarshal.*. 
15207         rewrote source generation rules, use COPYING as oldest source tag for
15208         a piggyback rule to generate all sources from (don't touch it ;).
15209         major cleanups, strip spaces on build rules for GNU Make.
15210
15211         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
15212         source and target files from commandline arguments. don't invoke indent.
15213
15214 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15215
15216         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15217         notebook after switch to avoid drawing problems.
15218         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15219         
15220         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15221         show them instead. 
15222         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15223
15224 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
15225
15226         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
15227         notebook after switch to avoid drawing problems.
15228         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
15229         
15230         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
15231         show them instead. 
15232         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
15233
15234 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
15235
15236         * gtk/gtkwindow.c:
15237         we use window->need_resize from configure_event now, to indicate that
15238         the gtkwindow should keep its allocation (e.g. because the user resized
15239         the window through window manager handles). resize_count is now reliably
15240         used to figure whether we got the allocation we requested from the
15241         window manager.
15242         configure events get queued as resizes now, the real stuff (size
15243         computation and allocation) now only goes on in gtk_window_move_resize().
15244         GtkWindow's requisition now contains its *real* requisition (like all
15245         other widgets), *not* taking usize into account.
15246         geometry_info->last_{width|height} is now updated from set_hints() only
15247         so it always contains the last hints we set for the window manager.
15248         made some event handlers return TRUE instead of FALSE.
15249         the overall code should be much more straight forward now, and the
15250         significant code portions are accompanied by comments now.
15251         (gtk_window_set_hints):
15252         removed requisition argument and made it
15253         fetch the requisition through gtk_widget_get_child_requisition.
15254         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
15255         does that now.
15256         (gtk_window_show):
15257         ensure that the widget is realized before calling 
15258         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
15259         ensure that we got properly size requested and allocated before
15260         realization.
15261         (gtk_window_configure_event):
15262         ignore plain window moves, or reallocate the widget tree through the
15263         resize queue otherwise.
15264         (gtk_window_move_resize):
15265         mostly rewrote this function to figure window manager hints more
15266         reliably, coalesce window moves and resizes to reduce configure events
15267         and do actuall size allocations.
15268
15269 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
15270
15271         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
15272         that have a resize pending, because a redraw is already queued for them.
15273
15274         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
15275         hack to clear resize_widgets.
15276
15277         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
15278         for resize containers prior to size allocation. (this is also a bit
15279         ugly, but avoids side effects for stopped emissions and is thus more
15280         reliable).
15281         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
15282
15283         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
15284         function from gtk_tooltips_expose, as we connect to ::expose_event
15285         *and* ::draw now.
15286
15287 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
15288
15289         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
15290         checks.
15291         (gtk_target_list_unref): Likewise.
15292
15293         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
15294
15295 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
15296
15297         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
15298         guard against division by zero. (Fixes bug #1339)
15299
15300 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
15301
15302         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
15303         Prevent the trivial leak of information of allowing
15304         word motion when the entry is not visible.
15305
15306 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
15307
15308         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
15309         modality to error dialog as well as confirmation dialogs.
15310         (Bug #1803, reported by Rosanna Wing Sze Yuen)
15311
15312 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
15313
15314         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
15315         tree->view_lines.
15316         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
15317
15318         * gtk/Makefile.am (install-data-local): Solaris apparently
15319         has various troubles with ln -f; use rm first instead.
15320         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
15321
15322 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
15323
15324         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
15325         use `cp' followed by `rm' (the `rm' was already there).
15326
15327 July 30, 1999 Elliot Lee <sopwith@redhat.com>
15328         
15329         * configure.in: Fix autoconf warnings about cross compilation by
15330         trying to provide sane defaults for AC_TRY_RUN.
15331         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
15332         put them into $(srcdir) when generated. Also add a dependency of
15333         gtksignal.h on gtkmarshal.h for -j builds. 
15334         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
15335
15336 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
15337
15338         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
15339         GDK_THREADS_{LEAVE,ENTER} pair.
15340         (From Paul Fisher <pnfisher@redhat.com>)
15341
15342 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
15343
15344         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
15345         width and height are always >0 (owen).
15346
15347 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
15348
15349         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
15350         change that assured that a widget's allocated with and height are
15351         always >1, since this breaks *buggy* panel code. unfortunately this
15352         back-breaks the gimp's color selector.
15353
15354         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
15355         allocation is always >0 in width and height, before sending the
15356         configure event; this is a *gross* hack to get the gimp back to work.
15357         
15358         * marked both cases with TODO-1.3
15359
15360 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
15361
15362         * gtk/gtktext.c: Don't display wrap indicators when
15363         text is not editable and word wrap is on.
15364
15365 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
15366
15367         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
15368         option menus here as they are not derived from menu shell, assure that
15369         the option menu has a menu we can add items to.
15370
15371 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
15372
15373         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
15374         width/height to (gint) before calculations and check against < 0 to
15375         avoid guint wraparounds.
15376
15377 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
15378
15379         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
15380         width and height is never zero. sanity check both dimensions against
15381         32767 and issue a warning if the allocation is greater than that.
15382
15383 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
15384
15385         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
15386         to g_main_pending() as well.
15387
15388 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
15389
15390         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
15391         call to g_main_iteration() - since that will regrab
15392         GTK+ lock to process events.
15393
15394 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
15395
15396         * gtk/gtkwindow.c
15397         - Regularize with the rest of GTK+ by making widget->requisition
15398           not reflect the set_usize()
15399         - Always recompute geometry hints, then check if they
15400           changed before sending them to the X server. The
15401           previous checks for changes would fail in a number
15402           of circumstances. 
15403
15404 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
15405
15406         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
15407
15408 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
15409
15410         * gtk/gtkdnd.c:
15411         - Code cleanups
15412         - Instantaneously update on modifier key presses
15413         - Allow cancellation of the drag with Escape.
15414
15415 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
15416
15417         * gtk/testgtk.c (create_handle_box): Set the policy
15418         to auto_shrink - otherwise the appearance is rather
15419         strange when flipping between horizontal and vertical.
15420
15421 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
15422
15423         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
15424         (gtk_window_set_default_size): don't change a value if it's < 0.
15425         queue a resize.
15426
15427 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
15428
15429         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
15430
15431 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
15432
15433         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
15434         add an extra "/" when concating "/" + filename.
15435         (From Matt Grossman <mattg@oz.net>)
15436
15437 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
15438
15439         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
15440         for fg_gc if we set it for drawing pixmap.
15441
15442 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
15443
15444         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
15445         
15446         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
15447         already set, call old engine's destroy function and
15448         unref the old engine.
15449
15450 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
15451
15452         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
15453
15454 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
15455
15456         * gtk/gtkaccelgroup.h: mark certain functions as internal.
15457
15458 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
15459
15460         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
15461         expand behaviour changed.
15462
15463         * gtk/gtklabel.c (gtk_label_set_pattern):
15464         (gtk_label_set_justify):
15465         (gtk_label_set_line_wrap):
15466         don't bother invoking queue_clear, the reallocation does
15467         that for us, always free_words so the upcoming resize will
15468         relayout the label's contents.
15469
15470 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
15471
15472         * applied argument implementation patches from Elena Devdariani
15473         <elena@cogent.ca>.
15474
15475         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
15476         ::space_style, ::relief
15477         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
15478         * gtk/gtkpreview.c: ::expand
15479         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
15480         * gtk/gtknotebook.c: ::homogeneous
15481         * gtk/gtklabel.c: ::wrap
15482         * gtk/gtklist.c: ::selection_mode
15483         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
15484         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
15485         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
15486         * gtk/gtkclist.c: ::sort_type
15487         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
15488         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
15489
15490 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
15491
15492         * gtk/gtkstyle.c: Removed ill-thought-out part of last
15493         comment.
15494
15495 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
15496
15497         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
15498         counting right when we have to attach a new style
15499         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
15500
15501         * gtk/gtkstyle.c: Documented the refcounting
15502         peculularities of gtk_style_attach.
15503
15504 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15505
15506         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
15507         window types.
15508
15509         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
15510         of GTK_TOPLEVEL for creating the window.
15511
15512 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
15513
15514         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
15515         the last argument (reported by Per Winkvist).
15516         
15517 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
15518
15519         Fixes for invisible XOR lines (Frank Loemker
15520         <floemker@TechFak.Uni-Bielefeld.DE>)
15521         
15522         * gtk/gtkclist.c (gtk_clist_realize): Always use
15523         a non-zero pixel for GDK_XOR.
15524
15525         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
15526         Use GDK_INVERT instead of GDK_XOR.
15527
15528 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
15529
15530         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
15531         signals if h/voffsets differ from adjustment values.
15532         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
15533
15534 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
15535
15536         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
15537         ::selection-done emissions up to the topmost menu shell.
15538
15539 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
15540
15541         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
15542         the user data on the window before destroying it.
15543
15544         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
15545         unrealize handler to take care of destroying 
15546         notebook->panel properly. 
15547         (Bug #1198 - Morten Welinder <terra@diku.dk>)
15548
15549         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
15550         of g_new and g_realloc to stop memory leak. (Actually,
15551         we could just use g_realloc(), but I'm not 100% sure
15552         that is portable).
15553         (Bug #1196 - Morten Welinder <terra@diku.dk>)
15554
15555 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15556
15557         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
15558
15559         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15560         for fontsets.
15561
15562         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
15563         with bin/button confusion.
15564
15565 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
15566
15567         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
15568         and show how preselection of radio items is done.
15569
15570 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
15571
15572         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
15573         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
15574         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
15575         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
15576         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
15577         * gtk/gtktable.c (gtk_table_attach): 
15578         * gtk/gtklist.c (gtk_list_insert_items): 
15579         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
15580         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
15581         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
15582         * gtk/gtkbin.c (gtk_bin_add): 
15583         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
15584         * gtk/gtkfixed.c (gtk_fixed_put): 
15585         * gtk/gtklayout.c (gtk_layout_put):
15586         general fixups to container_add logic. always realize child if
15587         child->parent is realized, only map the child and queue a resize
15588         if child and child->parent are both visible.
15589
15590 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
15591
15592         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
15593         instead of gtk_container_foreach to walk and unrealize children, so
15594         composite children get also unrealized.
15595         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
15596         (gtk_widget_map): assert that the widget is visible (basic constrain).
15597         (gtk_widget_real_map): assert that the widget is realized (basic
15598         constrain).
15599
15600 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
15601
15602         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
15603
15604 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
15605
15606         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
15607         file for iso-8859-2 locales.
15608
15609         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
15610
15611 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
15612
15613         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
15614          (Pointed out by andy@rz.uni-karlsruhe.de and others).
15615          Remove some suspicious and useless lines. 
15616
15617 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
15618
15619         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
15620         width,height = 0, 0 to mean - here to edge of window,
15621         instead of -1, -1, since the former is all we support.
15622
15623 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
15624
15625         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
15626         when removing from quit_functions list.
15627
15628 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
15629
15630         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
15631
15632 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
15633
15634         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
15635          When redrawing characters on non-visible entry, use appropriate
15636          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
15637
15638 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
15639
15640         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
15641         from drag coordinates.
15642         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
15643         use drag_dest_cell.
15644
15645         * gtk/gtktree (drag_dest_cell)
15646         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
15647         (Bug #1129)
15648
15649 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
15650
15651         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
15652         translate_* fields.
15653         (gtk_item_factory_finalize): invoke translate_notify independant from
15654         translate_data.
15655         (gtk_item_factory_set_translate_func): likewise.
15656         (gtk_item_factory_destroy): only remove ifactory pointer from those
15657         widgets that belong to us (stupid me).
15658
15659 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
15660
15661         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
15662         rc_style list when lookup succeeeds.
15663
15664 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
15665
15666         * gtk/gtkctree.c (resync_selection): 
15667         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
15668         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
15669         bug.
15670
15671 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
15672
15673         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
15674         Add some missing GDK_THREADS_ENTER()/LEAVE around
15675         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
15676
15677 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
15678
15679         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
15680         rather than emit_by_name.
15681
15682         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
15683         on the widget across multiple signal emissions.
15684         (gtk_editable_delete_text): same here.
15685         (gtk_editable_class_init): set widget_class->activate_signal after
15686         editable_signals[ACTIVATE] has been created.
15687
15688 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
15689
15690         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
15691         position here prematurely -- we might not have the
15692         right ->min_position and ->max_position yet.
15693
15694 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15695
15696         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
15697         Add error traps so if the other end of the connection
15698         dies, we survive.
15699
15700         * gtk/gtkselection.c (gtk_selection_notify): Clean
15701         up properly when selection property retrieval fails.
15702         
15703         * gtk/gtkselection.c (gtk_selection_request): Correctly
15704         reject SelectionRequest notifies where the handler
15705         returns no data.
15706
15707 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15708
15709         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
15710         when we've previously highlighted.
15711
15712         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
15713         emit two "drag_leave" signals for Motif drops.
15714
15715         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
15716         back the correct status messages when dropping from
15717         Motif onto a proxy window that is rejecting the
15718         drop.
15719
15720 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
15721
15722         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
15723         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
15724         to compare two argument values. added gtk_arg_to_valueloc() to set a
15725         variable from an arg through its location (pointer).
15726
15727         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
15728         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
15729         as gfloat*, uchars are collected as guchar*, ints are collected as
15730         gint*, etc...
15731
15732 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
15733
15734         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
15735         Include <string.h> instead of <strings.h>.
15736
15737         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
15738         (actually, a lot more duplicate includes occur if
15739          you trace through the sequence of #include's)
15740         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
15741         
15742 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15743
15744         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15745         gtk-a-higuti-990322-[0-3]
15746
15747         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15748         that was causing -DX_LOCALE not to work.
15749
15750         * gtk/gtkrc.c (gtk_rc_init):
15751         X_LOCALE will never have LC_MESSAGES defined
15752
15753 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
15754
15755         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
15756         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
15757
15758         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
15759         left/right as well (gtk-michael-980726-0.patch.gz).
15760
15761         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
15762         for pointer values, use gchar instead of char. fixed uline allocation
15763         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
15764         chunks instead of G_ALLOC_ONLY.
15765         (gtk_label_size_request): always alter requisition as passed and leave
15766         widget->requisition alone.
15767         (gtk_label_set_text): allow NULL strings.
15768         (gtk_label_new): likewise.
15769
15770 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
15771
15772         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
15773
15774 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
15775
15776         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
15777         *and* mapped (i.e. drawable).
15778         (gtk_bin_expose): only send exposes to drawable children.
15779
15780         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
15781         (gtk_box_expose): only send exposes to drawable children.
15782
15783         * gtk/gtkhscale.c (gtk_hscale_draw): 
15784         * gtk/gtkvscale.c (gtk_vscale_draw):
15785         hm, this is an ugly one. we first compute the size of our trough area
15786         here (window relative) and then check intersection with the draw_area
15787         which is parent relative because we're a NO_WINDOW widget, so we need
15788         to offset the trough area by allocation.x and allocation.y before the
15789         check. (this must not be done for the background area though, since
15790         that's already computed parent relative).
15791
15792 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
15793
15794         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
15795         unrealize title buttons.
15796
15797 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
15798
15799         * gtk/gtkclist.c (gtk_clist_column_title_passive)
15800         (gtk_clist_column_title_active): 
15801         only connect/disconnect to GtkWidgetClass::event to block mouse events.
15802
15803         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
15804         zero initialize event, removed superfluous gdk_window_get_pointer call
15805
15806         * gtk/gtklist.c (gtk_list_vertical_timeout)
15807         (gtk_list_horizontal_timeout): removed superfluous
15808         gdk_window_get_pointer call
15809
15810 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15811
15812         * plugging problems reported by "Bruce Mitchener, Jr."
15813         <bruce@puremagic.com> due to a purify session.
15814
15815         * gtk/gtkstyle.c:
15816         (gtk_style_ref): 
15817         (gtk_style_unref): assert ref_count to be > 0.
15818
15819         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
15820         the requisition.
15821         (gtk_clist_set_shift): likewise.
15822
15823         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
15824         adjustments.
15825
15826         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
15827         event before sending it and set send_event to TRUE (which needs to
15828         be done for *all* synthesized events).
15829         (gtk_list_vertical_timeout): likewise.
15830
15831         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
15832         leaks.
15833
15834         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
15835         to TRUE when synthesizing events.
15836
15837 [ *** end of merges from 1.2 *** ]      
15838         
15839 1999-11-21  Tor Lillqvist  <tml@iki.fi>
15840
15841         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
15842         (or copied from gdkconfig.h.win32 on Win32, sigh).
15843
15844         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
15845
15846         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
15847
15848         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
15849
15850         * gdk/gdkconfig.h.win32: New file.
15851
15852         * gdk/win32/makefile.cygwin: Build just a static archive here.
15853
15854         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
15855         for the DLL from the static archive built above.
15856
15857         * gdk/gdk.def: Moved here from the win32 subdirectory.
15858
15859         * gdk/win32/*: Adapt for the changed private struct organisation.
15860
15861         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
15862
15863 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
15864
15865         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
15866         for wheel mice (buttons 4 and 5).
15867
15868 1999-11-18  Tor Lillqvist  <tml@iki.fi>
15869
15870         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
15871         drawables use just the pixel field in the foreground and
15872         background GdkColor of the GdkGC.
15873
15874         gdk_gc_set_{fore,back}ground() are called in the GIMP with
15875         GdkColors containing uninitialized (red,green,blue) fields, and
15876         just the pixel field filled in, and furthermore in the
15877         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
15878         It thus turns out that we really don't need to have the full
15879         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
15880         it later to have just the pixel values.
15881
15882 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15883
15884         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
15885
15886 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
15887
15888         * docs/gtkfaq.sgml: threads example from Erik Mouw.
15889         New question on GtkLabel background colors.
15890
15891         * docs/gtk_tut.sgml:
15892           - Correct the example code callback
15893             function definitions.
15894           - Update the gtkdial example code, from Frans van Schaik.
15895           - Update setselection.c to current API.
15896
15897         * examples/Makefile examples/*/*.c: Update to code
15898         listed in tutorial.
15899
15900 1999-11-10  Tor Lillqvist  <tml@iki.fi>
15901
15902         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
15903         subrange table (from the "Developing International Software for
15904         WIndows 95 and Windows NT" book) was missing the Hangul syllable
15905         block... Get the loaded font's charset correctly.
15906
15907         (Note that this, and the other *-win32.c files, still really are
15908         the old ones, the win32 subdirectory is not ready for compilation
15909         yet after the reorg.)
15910
15911 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
15912
15913         * gtk/gtkclist.c: Fix off-by-one bug in parameter
15914         check.
15915
15916 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
15917
15918         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
15919         on results of XQueryDeviceState().
15920
15921 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
15922
15923         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
15924         we need to accesss only ->children. We need an accessor
15925         for the children.
15926
15927         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
15928         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
15929         to get rid of gdkx.h include.
15930         
15931         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
15932         and random references to 'None'.
15933
15934         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
15935         Get rid of unused #include <gdk/gdkx.h>
15936
15937         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
15938         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
15939         gdkconfig.h.
15940
15941 1999-11-08  Tor Lillqvist  <tml@iki.fi>
15942
15943         * gdk/win32/gdkdraw.c
15944         * gdk/win32/gdkfont.c
15945         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
15946         following yesterday's changes. (Unrelated to Owen's reorg.)
15947
15948 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
15949
15950         * gdk/x11/gdkinput-gxi.c: Add missing include,
15951           fix GdkWindowPrivate => GdkDrawablePrivate.
15952
15953         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
15954
15955         * gdk/x11/Makefile.am (xinput_sources): Add missing
15956         backslash to fix building with --with-xinput=none
15957
15958 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
15959
15960         Move all X specific code into the x11/ directory.
15961         Aside from shuffling things around, did the following:
15962
15963        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
15964          gdk_arg_context_* - a simple argument parsing system
15965          in the style of popt.
15966
15967        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
15968          gdk/x11/gdkprivate-x11.h:
15969          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
15970          add ->klass and ->klass_data fields. The klass_data
15971          field points to an auxilliary structure that is
15972          windowing system dependent.
15973
15974        * gdk/gdkfont.c: Make most of the measurement functions
15975          simply wrappers around gdk_text_extents().
15976
15977        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
15978          _gdk_font_strlen() function that hides the weird
15979          behavior in gtk+-1.[02] where a string is interpreted
15980          differently for 8-bit and 16-bit fonts.
15981
15982        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
15983          to store common code for synthesizing double/triple
15984          press events.
15985         
15986        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
15987          Make all the function that modify an existing GC
15988          simply wrappers around gdk_gc_set_values().
15989          
15990        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
15991          for throwing out later.
15992
15993        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
15994          GdkImagePrivate and GdkColormapPrivate to have a
15995          windowing system dependent part (GdkFontPrivateX etc.)
15996          that "derives" from the system-independent part.
15997
15998        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
15999          Got rid of the included-source-files for XInput in
16000          favor of automake conditionals. (Which didn't exist
16001          when XInput support was originally added.)
16002
16003        * gdk/gdkrgb.c: Remove the visual id from the debugging
16004          statements since that is X11 specific; print out
16005          type/depth info instead.
16006          
16007
16008 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
16009
16010         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
16011         loading duplicates of hashed fonts.
16012
16013         * gdk/gdk.c (gdk_keysym_convert_case): rename
16014         gdk_XConvertCase to gdk_keysym_convert_case, allow
16015         results to be NULL in the GTK+ style.
16016
16017         * gdk/gdkcompat.h: Started compatibility header
16018         for renames.
16019
16020 1999-11-07  Tor Lillqvist  <tml@iki.fi>
16021
16022         * gdk/win32/gdkprivate.h: New font private structures, related to
16023         fontsets.
16024
16025         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
16026         gdk_font_list_free(). On X11, will just be wrappers to
16027         XListFonts() and XFreeFontNames(). On Win32, the code previously
16028         in gtkfontsel.c is now here.
16029
16030         New function gdk_font_xlfd_create(). On X11 will get the FONT
16031         property of the font (for GDK_FONT_FONTs), or call
16032         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
16033         builds a XLFD style name from the font information in the LOGFONT
16034         struct(s).
16035
16036         New function gdk_font_xlfd_free(), which correspondingly frees the
16037         string returned by gdk_font_xlfd_create().
16038
16039         Implement fontsets on Win32. Add a function that iterates over a
16040         wide char string and calls a callback function for each substring
16041         of wide chars from the same Unicode subrange (and thus probably
16042         available in the same real font).
16043
16044         Improve the XLFD emulation a bit.
16045
16046         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
16047
16048         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
16049         Beta3, WM_IME_CHAR messages don't seem to contain the composed
16050         multi-byte char as with the Active IMM on Win9x. Oh well, handle
16051         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
16052         ImmGetCompositionStringW() to get the composed Unicode chars.
16053
16054         * gdk/win32/gdkgc.c
16055         * gdk/win32/gdkdraw.c: Changes needed because of the font private
16056         struct changes.
16057
16058         * gdk/win32/gdk.def: Add the new functions.
16059
16060 1999-11-04  Tor Lillqvist  <tml@iki.fi>
16061
16062         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
16063         get the Platform SDK to get <dimm.h>.
16064
16065         * gdk/win32/gdkevents.c: More event handling fixes and
16066         simplification. Never generate motion events with is_hint true. We
16067         used to do that on bogus grounds earlier. Windows sends
16068         WM_MOUSEMOVE messages on button events even if the mouse hasn't
16069         moved, ignore these.
16070
16071         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
16072
16073         * gdk/win32/gdkglobals.c
16074         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
16075         the TrackMouseEvent function, and use it.
16076
16077         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
16078         char before calling WideCharToMultiByte in order to get a string
16079         for the window title.
16080
16081         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
16082
16083         * gdk/win32/gdk.def: Remove obsolete functions.
16084
16085         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
16086         /nodefaultlib and /defaultlib switches.
16087
16088         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
16089
16090 1999-10-31  Tor Lillqvist  <tml@iki.fi>
16091
16092         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
16093         EuroSign).
16094
16095         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
16096         same type as GdkWChar, especially on Win32.
16097
16098         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
16099
16100         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
16101         before passing to Windows GDI for drawing etc. Convert to the
16102         system default codepage before passing to Windows as window
16103         titles.
16104
16105         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
16106         support changing input locale on the fly.
16107
16108         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
16109         on-the-fly changes. Convert incoming characters from the current
16110         codepage to Unicode (and then to a UTF-8 multi-byte string) based
16111         on the current input language. Use keysym<->Unicode mapping tables
16112         and functions borrowed from xterm sources.
16113
16114         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
16115         editions of Win9x, use the ActiveX-based Active IMM (Input Method
16116         Manager) if available. IMEs and the Active IMM are available under
16117         the disguise of Chinese, Korean and Japanese support for IE and
16118         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
16119         support is present in all editions (as long as you install it).
16120
16121         Call DispatchMessage from gdk_events_queue() (and thus
16122         gdk_WindowProc()), instead of duplicating the code in
16123         gdk_WindowProc().
16124
16125         Reworked the grab handling and propagation code, factored out
16126         duplicated code snippets into separate functions. Other cleanups,
16127         too.
16128
16129         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
16130         the <dimm.h> header describing the Active IMM.
16131
16132         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
16133         just do the same as for "single" fonts.
16134
16135         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
16136         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
16137         the new keysyms from gdkkeysyms.h.
16138
16139         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
16140         fontset, so that gtkentry uses wide characters.
16141
16142         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
16143         GTk+'s system directory "gtk+", not "gtk".
16144
16145 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
16146
16147         * docs/gtkfaq.sgml: FAQ update
16148
16149 1999-10-21  Tor Lillqvist  <tml@iki.fi>
16150
16151         * gdk/win32/gdkprivate.h: Add more font private data.
16152
16153         * gdk/win32/gdkfont.c
16154         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
16155         fonts and strings. Now works much better. You still have to
16156         have a correct font selected, though. No fontset emulation yet.
16157
16158 1999-10-19  Tor Lillqvist  <tml@iki.fi>
16159
16160         * gtk/maketypes.awk: Use G_OS_WIN32.
16161
16162         * gtk/gtk.def: Add some missing entry points. Also some non-public
16163         ones, but PyGTK porter claims to need them.
16164
16165         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
16166         built-in type generation.
16167
16168 1999-10-14  Tor Lillqvist  <tml@iki.fi>
16169
16170         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
16171         GDK_FONT_FONT fonts (which is all we have for now, we don't
16172         emulate fontsets). The X11 version uses plain XDrawString in that
16173         case, too. The string passed to gdk_draw_text_wc seems to be in
16174         fact (at least, when used by gtkentry and gtktext) either in a
16175         single-byte charset, or a DBCS. Not Unicode.
16176
16177         This fixes the problem in gtkfontsel, where even if you had
16178         selected a font with a non-Latin1 charset (windows-greek, for
16179         instance), the preview still used Latin-1 glyphs.
16180
16181         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
16182         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
16183         (gdk_font_load): Recognize the demibold etc weights, even if we
16184         don't have the corresponding constants in the headers.
16185         (gdk_font_hash_insert): Use same hash mechanism as in the X11
16186         version. Should save font resources a bit, when we don't have
16187         multiple HFONTs for the same font.
16188
16189         * gdk/win32/gdkprivate.h: Add the names field as in the X11
16190         version.
16191
16192 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
16193
16194         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
16195         X values
16196
16197 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
16198
16199         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
16200         layout support (as mentioned on
16201         http://www.jcinteractive.com/gnome-ui/software/widgets/)
16202
16203 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
16204
16205         * gtk/fnmatch.c
16206         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
16207
16208 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
16209
16210         * configure.in (ALL_LINGUAS): Added Galician (gl)
16211
16212 1999-10-05  Tor Lillqvist  <tml@iki.fi>
16213
16214         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
16215
16216         * gdk/win32/gdkcompat.c: New file, actually provide an
16217         implementation for the deprecated functions. (Just temporarily.)
16218
16219         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
16220
16221         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
16222
16223         * gdk/win32/gdk.def gtk/gtk.def: Updates.
16224
16225 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
16226
16227         * configure.in: Added "uk" to ALL_LINGUAS.
16228         
16229 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
16230
16231         * configure.in: correct checking for BeOS check
16232
16233         * gdk/gdktypes.h
16234         * gtk/fnmatch.c
16235         * gtk/gtkfilesel.c
16236         * gtk/gtkitemfactory.c
16237         * gtk/gtkmain.[ch]
16238         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
16239
16240 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16241
16242         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
16243         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
16244         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
16245         by Bulgarian). 
16246
16247 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
16248
16249         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
16250         Fix a reference to window_private->destroyed.   
16251
16252         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
16253         (ugly) setting of an internal GdkWindow member to use
16254         a _slightly_ cleaner macro.
16255
16256         * gdk/gdkprivate.h: Split GdkWindowPrivate into
16257         GdkDrawablePrivate and GdkWindowPrivate.
16258         Add extra macros for accessing GDK_DRAWABLE_ components.
16259
16260         * *.[ch]: Massive adjustments for the above, use the
16261         new macros in a lot of places.
16262
16263 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
16264
16265         * gdk/gdktypes.h: Make GdkDrawable the base type,
16266         not GdkWindow.
16267
16268 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
16269
16270         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
16271
16272 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
16273
16274         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
16275
16276 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
16277
16278         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
16279         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
16280
16281         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
16282
16283         * docs/gtk-config.1: Now autogenerated.
16284         * docs/Changes-1.4.txt: started
16285         
16286 1999-10-03  Tor Lillqvist  <tml@iki.fi>
16287
16288         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
16289         to #ifdef also here.
16290
16291         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
16292         Owen did to the X11 backend.
16293
16294         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
16295         ScrollWindowEx when blitting inside a window, it can't be correct
16296         in the general case.
16297
16298         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
16299         WM_GETMINMAXINFO is easier.
16300
16301         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
16302         depth equal to the bitspixel value, not the visual's depth.
16303
16304         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
16305         to 24 even if the bitspixel value is 32.
16306
16307         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
16308         need to check for depth==32 when bpp==32, depth will always be 24.
16309
16310 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
16311
16312         * docs/Changes-1.4.txt: Started
16313         
16314         * gtk/Makefile.am (gdk_headers): Include all the new headers.
16315
16316         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
16317         
16318         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
16319         into C file.
16320         
16321         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
16322         header to gdkinputprivate.h.
16323
16324         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
16325         unused since before 1.2.
16326
16327 1999-09-30  Tor Lillqvist  <tml@iki.fi>
16328
16329         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
16330         expand possible hex escapes in the font family (put there by
16331         logfont_to_xlfd if the font name isn't a legal XLFD font family,
16332         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
16333         On Win32, add hex escapes here, too.
16334
16335 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
16336
16337         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
16338         to #ifdef GDK_WINDOWING_X11.
16339
16340 [ Merges from gtk-1-2 ]
16341
16342 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
16343
16344         * configure.in: fixed "GNU Make" check to pass with new make version
16345         3.77.95.
16346
16347 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
16348
16349         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
16350         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
16351         AM_PATH_GTK() macros don't get confused by the -pre1.
16352
16353 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16354
16355         * configure.in (REBUILD): Change check for perl5
16356           to check explicitely for v >= 5.002. (5.001
16357           does not work with our scripts.)
16358
16359 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
16360
16361         * configure.in: evaluate $PERL for the perl version check. added
16362         --disable-rebuilds to give the user an option to completely disable
16363         any source autogeneration rules.
16364
16365 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
16366
16367         * configure.in: evaluate $ac_make when checking for GNU Make.
16368
16369 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16370
16371         * docs/Makefile.am: added generation.txt.
16372
16373         * Makefile.am: require automake 1.4, build README from README.in and
16374         INSTALL from INSTALL.in in dist-hook.
16375         
16376         * README.in:
16377         * INSTALL.in: new files to autogenerate README and INSTALL from.
16378
16379         * configure.in: figure whether we have GNU Make
16380
16381         * docs/generation.txt: minor additions/corrections.
16382
16383 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16384
16385         * docs/gtkfaq.sgml: FAQ Update
16386
16387 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16388         
16389         * configure.in: Fix autoconf warnings about cross compilation by
16390         trying to provide sane defaults for AC_TRY_RUN.
16391
16392 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
16393
16394         * ltconfig
16395         * ltmain.sh: upgrade to libtool 1.3.3
16396
16397 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
16398
16399         * INSTALL: Indicate that the --with-glib= configure
16400         time flag is unsupported.
16401
16402 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
16403
16404         * docs/generation.txt: Added a file that gives
16405         documenation about the autogeneration process for
16406         various autogenerated files.
16407         
16408 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16409
16410         * configure.in (LIBS): Look for libgmodule in the
16411         right location.
16412
16413 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
16414
16415         * docs/gtk_tut.sgml: Removed references to
16416         code examples in my directory on gtk.org as
16417         they should all be in the tutorial now.
16418
16419         * docs/gtk_tut.sgml: Added sources for dial-test
16420         and scribble-xinput programs that were previously
16421         missing.
16422
16423 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
16424
16425         * TODO: Added entry about menu keyboard navigation, removed
16426         some finished items.
16427
16428 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
16429
16430         * acinclude.m4: Standardize on func_dgettext
16431         not func_gettext, so that the checks for dgettext
16432         actually are paid attention to.
16433
16434 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
16435
16436         * configure.in (LIBS): Add $INTLLIBS into $LIBS
16437         directly, rather than repeating the checks for
16438         gettext.
16439
16440         * INSTALL: Added information about gettext and
16441         NLS support.
16442
16443         * acinclude.m4 (LIBM): Check for dgettext, not
16444         just gettext. This should hopefully fix things wrt
16445         systems with old versions of GNU gettext installed.
16446
16447 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
16448
16449         * configure.in (LIBS): Look for libgmodule in the
16450         right location.
16451
16452 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16453
16454         * autogen.sh: add --enable-maintainer-mode
16455
16456         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
16457
16458 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
16459
16460         * docs/gtk-config.1.in:
16461           docs/Makefile.am:
16462           configure.in: gtk-config is now generated.
16463
16464         * docs/gtk-config.1: Removed, now generated.
16465
16466 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
16467
16468         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
16469         handle CreateNotify itself, still put out a debuging message for
16470         --gdk-debug=events. made the ReparentNotify debugging message more
16471         verbose.
16472         wrap xcoords translation for ConfigureEvents into an error trap,
16473         a destroy event may already be pending, and in that case, the
16474         actuall coordinate values are not at all critical.
16475
16476 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
16477
16478         * gdk/gdkcc.c: Stop leaking the color_hash all over
16479         the place. Simplify and improve the logic.
16480
16481 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16482
16483         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
16484         for prototypes and function implementations consistent (reported
16485         by Tomas Ogren).
16486
16487 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16488
16489         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
16490         send_event set in debugging output.
16491         (gdk_compress_exposures): default initialize the event so we don't
16492         operate on bogus values (namely send_event).
16493
16494 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16495
16496         * gdk/gdkwindow.c: When we receive an unexpected
16497         destroy notify on one of our windows, don't just
16498         warn about it, also mark our windows as destroyed.
16499
16500 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
16501
16502         * gdk/gdkfont.c (gdk_font_hash_insert): Add
16503           name => font and name => fontset hashes. The 
16504           name => fontset hash is a _big_ win since we
16505           weren't previously caching fontsets at all and loading
16506           fontsets is expensive. The name => font hash
16507           is less of a win, but it does save us from doing
16508           repeated XQueryFont calls on the same font.
16509
16510         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
16511           list so we can remove font/fontset from hash.
16512
16513 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16514
16515         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
16516           and slightly confusing test. [ XInternAtom (,,TRUE)
16517           will never return None ].
16518
16519 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
16520
16521         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
16522           gdk/gdkwindow.c (gdk_window_set_hints):
16523
16524         Don't omit setting the properties if flags == 0 -
16525         there may be an existing set of properties there
16526         already. (Very old bug. Would it be better to
16527         delete the property instead?)
16528
16529         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
16530           spelling error in comment.
16531
16532 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
16533
16534         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
16535           to avoid stomping over gdk_error_warnings.
16536
16537         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
16538           as (bits_per_pixel + 7) / 8. This gives the same
16539           result as before for multiples of 8, but actually
16540           a "reasonable" value for 1bit or 4bit displays.
16541
16542 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16543
16544         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
16545         GNU Make.
16546
16547 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16548
16549         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
16550         discarding configure events.
16551
16552 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16553
16554         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
16555         refcount is greater than zero.
16556
16557         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
16558
16559         * gdk/gdkfont.c (gdk_font_unref): Likewise.
16560
16561         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
16562
16563         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
16564
16565 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16566
16567         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
16568         that format 32 => sizeof(item) == 4. It really is
16569         sizeof(long).
16570
16571 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
16572
16573         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
16574         core dump at all on X IO errors, only core dump
16575         if --enable-debug for X errors.
16576
16577 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
16578
16579         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
16580         unknown window:" message. disabled ConfigureNotify discarding code,
16581         because it led to events being processed out of order.
16582
16583 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
16584
16585         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
16586
16587         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
16588         we export this function, supress error warnings and don't reset the
16589         error code in the first half of this function.
16590
16591         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
16592         code (instead of just -1) so gdk_error_trap_pop() reveals something
16593         actually informative about the error that happened.
16594
16595         * gdk/*.c:
16596         don't rely on gdk_error_code being -1 if an error occoured, but just
16597         gdk_error_code != 0.
16598
16599 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
16600
16601         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
16602         pointer *before* invoking the filter function, so we at least don't
16603         crash if a filter is removed that is currently executed. window filters
16604         *really* need to be made truely reentrant at some point.
16605
16606 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
16607
16608         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
16609         PropertyNotify debug messages.
16610
16611 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
16612         
16613         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
16614         
16615         * gdk/gdkim.c: Fix cut-and-paste errors for 
16616         x/y and PreeditAttributes/StatusAttributes.
16617
16618 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16619
16620         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
16621         G_MAXINT to 2^16 to alleviate overflow problems in
16622         various window managers.
16623
16624 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16625
16626         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16627         for fontsets.
16628
16629 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
16630
16631         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
16632         Initialize size_hints.x and size_hints.y because kwm
16633         brokenly pays attention to them.
16634         (Bug #1181 -  Lars Heete <hel@admin.de>)
16635
16636 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
16637
16638         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
16639         return value of gdk_list_visuals(). 
16640         (Bug #1193 - Morten Welinder <terra@diku.dk>)
16641
16642 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
16643
16644         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
16645         XSetIMValues to (void *) when comparing to NULL, to workaround
16646         the problem of some compilers barfing since older X headers don't
16647         have the prototype for it.
16648
16649 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
16650
16651         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
16652         for pseudocolor where colormap->colors was double
16653         allocated.
16654
16655         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
16656         color value in the hash table with the pixel filled
16657         in so when we do later hash table lookups, the color
16658         value is correct.
16659         
16660 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
16661
16662         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
16663         making the call
16664
16665 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
16666
16667         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
16668         pointed out by Morten Welinder <terra@diku.dk>.
16669
16670 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16671
16672         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16673           default filter from the list
16674
16675 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
16676
16677         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
16678           default filter from the list
16679
16680 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
16681
16682         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
16683
16684         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
16685         g_strdup_printf instead of calcing the length separately
16686
16687 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
16688
16689         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
16690         that we don't do in many other places. (Fixing duplicate 
16691         #include of config.h)
16692
16693         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
16694         Otherwise, #ifndef XINPUT_NONE check in the latter
16695         doesn't work. (Bug #546)
16696
16697 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
16698
16699         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
16700         "None" case insensitive.
16701
16702 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
16703
16704         * gdk/gdkselection.c: 
16705         Add error traps so if the other end of the connection
16706         dies, we survive.
16707
16708 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
16709
16710         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
16711         dest_xid field into two fields - one for the window
16712         to send in messages, one to indicate the last looked
16713         up window for caching purposes. This is needed, so
16714         that Leave messages get the correct window.
16715
16716 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
16717
16718         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
16719         Fix warning created by people mucking around
16720         with the gsource API.
16721
16722         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
16723         Change mapping between GIOCondition and GdkInputCondition
16724         to match the way the Linux kernel does it. This should
16725         fix problems where closed pipes were no longer signalling
16726         GDK_INPUT_READ on systems with a native poll().
16727
16728 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
16729
16730         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
16731         explicitly for the string "None" - it is in the XPM
16732         spec and some servers treat unknown colors in odd ways
16733         (like asking the user!)
16734
16735 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
16736
16737         * gdk/gdkevents.c: made "->" into a "." of previous change so
16738         it compiles
16739
16740 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
16741
16742         * gdk/gdkevents.c (gdk_compress_exposures): Set the
16743         window field of the event structure before calling
16744         user filters.
16745
16746 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16747
16748         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
16749         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
16750
16751 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
16752
16753         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
16754         intermediate text property - prevents major memory
16755         leak when gdk_use_mb.
16756         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
16757
16758 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
16759
16760         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
16761         gtk-a-higuti-990322-[0-3]
16762
16763         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
16764         sizeof(wchar_t) != sizeof (GdkWChar)
16765
16766         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
16767         that was causing -DX_LOCALE not to work.
16768
16769         * gtk/gtkrc.c (gtk_rc_init):
16770         X_LOCALE will never have LC_MESSAGES defined
16771
16772         * gdk/gdk.c (gdk_init_check):
16773         Remove --xim-preedit and --xim-status from argv properly.
16774
16775         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
16776         that the client window is present on the X server
16777         before we pass it to the input method.
16778
16779 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16780
16781         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
16782         if --display is specified on the command line, than
16783         the drag window will not be created on that display.
16784         
16785 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
16786
16787         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
16788         lookups with only_if_exists == TRUE were inserting
16789         bogus values into the atom cache.
16790
16791 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
16792
16793         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
16794         then reset it to NULL.
16795
16796         * gdk/gdkcolor.c:
16797         (gdk_colors_free): 
16798         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
16799         key for g_hash_table_remove() in both functions, this prevents us
16800         from accessing possibly uninitialized portions of a GdkColor structure
16801         where we are only interested in its pixel value.
16802
16803 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
16804
16805         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16806         font hash table, if we have a GdkFontPrivate entry for this font
16807         already, simply increment its reference count, provided by Olaf Dietsche
16808         <olaf.dietsche+list.gtk@netcologne.de>.
16809
16810 1999-09-21  Tor Lillqvist  <tml@iki.fi>
16811
16812         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
16813         just to be sure.
16814
16815         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
16816         unused variables, leftovers from the X11 version.
16817
16818         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
16819
16820         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
16821         downcase fields on X11.
16822
16823 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
16824         
16825         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
16826         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
16827
16828 1999-09-17  Tor Lillqvist  <tml@iki.fi>
16829
16830         * gdk/win32/gdk.def: Add gdk_threads_mutex.
16831
16832         * gtk/makefile.msc: Correct path to libintl.
16833
16834         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
16835         use of gint vs. int, and gint vs. gboolean in headers and
16836         definitions. Use GtkType for the *_get_type functions. Note that
16837         these changes preserve binary compatibility.
16838
16839         * gdk/gdk.c
16840         * gdk/win32/gdk.c
16841         * gdk/gdk.h: Fix inconsistencies: gint vs int.
16842
16843         * gtk/gtkmain.c
16844         * gtk/gtkclist.c
16845         * gtk/gtkmenufactory.c
16846         * gtk/gtknotebook.c
16847         * gtk/gtkwidget.c: Fix inconsistencies, also gint
16848         vs. gboolean.
16849
16850         * gtk/gtkcolorsel.[ch]
16851         * gtk/gtkcombo.[ch]
16852         * gtk/gtkdrawingarea.[ch]
16853         * gtk/gtkgamma.[ch]
16854         * gtk/gtkhandlebox.[ch]
16855         * gtk/gtkhpaned.[ch]
16856         * gtk/gtkhruler.[ch]
16857         * gtk/gtkplug.[ch]
16858         * gtk/gtkpreview.[ch]
16859         * gtk/gtkruler.[ch]
16860         * gtk/gtksocket.[ch]
16861         * gtk/gtkstatusbar.[ch]
16862         * gtk/gtktoolbar.[ch]
16863         * gtk/gtkvbbox.[ch]
16864         * gtk/gtkvpaned.[ch]
16865         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
16866         functions.
16867
16868         * gtk/gtkgamma.h: Fix bug, missing () in call of
16869         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
16870
16871 1999-09-14  Tor Lillqvist  <tml@iki.fi>
16872
16873         * gdk/gdkcolor.c (gdk_colormap_new)
16874         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
16875         colormap->colors was allocated twice.
16876
16877         * gdk/win32/gdk.c: Remove some unused stuff.
16878
16879         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
16880         colormap.
16881
16882         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
16883         * gtk/gtklabel.h (gtk_label_get_type)
16884         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
16885         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
16886         in a couple of places, not guint.
16887
16888 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16889
16890         * configure.in,po/et.po: added Estonian language file
16891
16892 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
16893
16894         * configure.in,po/da.po: added Danish file
16895
16896 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
16897
16898         * docs/gtkfaq.sgml: Minor FAQ Update
16899
16900 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
16901
16902         * docs/gtkfaq.sgml: FAQ update
16903
16904 1999-08-27  Tor Lillqvist  <tml@iki.fi>
16905
16906         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
16907         way to get window contents continually refreshed while resizing. I
16908         didn't like the effects myself, so it's not on by default.
16909
16910         * gdk/win32/gdkprivate.h: New flag variable
16911         gdk_event_func_from_window_proc, FALSE by default.
16912
16913         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
16914         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
16915         are passed --gdk-event-func-from-window-proc.
16916
16917         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
16918         and we have am event_func, call it instead of enqueing the event.
16919
16920 1999-08-23  Tor Lillqvist  <tml@iki.fi>
16921
16922         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
16923         Kelley: Set expose_count in GdkEventExposes correctly.
16924
16925         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
16926         MULTIPLE_WINDOW_CLASSES).
16927
16928         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
16929         for bug in NT, apparently NT *does* draw the end pixel, too, in
16930         LineTo with a one-pixel pen, so we don't have to do it ourselves.
16931
16932 1999-08-21  Tor Lillqvist  <tml@iki.fi>
16933
16934         Improvements by Hans Breuer: 
16935
16936         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
16937
16938         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
16939         CS_?REDRAW flags as they cause lots of (late) redraws when "show
16940         window contents while dragging" is turned on. Allocate at least
16941         one unique class for every GdkWindowType. If support for single
16942         window-specific icons is ever needed (eg. Dialog specific), every
16943         such window should get its own class.
16944
16945 1999-08-19  Tor Lillqvist  <tml@iki.fi>
16946
16947         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
16948         error that caused crashes.
16949
16950 1999-08-17  Tor Lillqvist  <tml@iki.fi>
16951
16952         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
16953         window, use ScrollWindowEx, and call UpdateWindow. This prevents
16954         bugs when for instance part of the window was outside the
16955         display. Thanks to Philippe Colantoni for finding and fixing this.
16956
16957 1999-08-16  Tor Lillqvist  <tml@iki.fi>
16958
16959         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
16960         endpoint calculations which were totally wrong. (A little RTFMing
16961         helps a lot ;-)
16962
16963         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
16964         from a separate directory, not from gettext, because of licensing
16965         issues (we want to use the LGPL version).
16966
16967         * README.win32: Mention the intl from glibc vs from gettext issue.
16968
16969 1999-08-13  Tor Lillqvist  <tml@iki.fi>
16970
16971         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
16972         in the key event handling: Now AltGr chars work again. Also,
16973         now Alt-digits are passed up as well as Control-digits.
16974         Pass keypad plus and minus as normal plus and minus.
16975
16976 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
16977
16978         * docs/gtkfaq.sgml: FAQ Update
16979
16980 1999-07-25  Tor Lillqvist  <tml@iki.fi>
16981
16982         * README.win32
16983         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
16984         the Wintab SDK.
16985
16986         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
16987         OK, but getting closer. Guard against bogus tilt data from Wacom
16988         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
16989         enable easier building without Wintab.
16990
16991         * gdk/win32/gdkinput.h
16992         * gdk/win32/gdkevents.c 
16993         * gdk/win32/gdkwindow.c: Minor changes related related to above.
16994         
16995         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
16996         code. As we have just one visual on Win32, no sense to have it in a
16997         table, and no need for the hash table.
16998
16999         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
17000         better on white background.
17001
17002 1999-07-21  Tor Lillqvist  <tml@iki.fi>
17003
17004         * README.win32: Update gcc build instructions. Mention gettext is
17005         GPL.
17006
17007         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
17008         supported cursor size with GetSystemMetrics.
17009
17010         * gdk/win32/gdkfont.c
17011         * gtk/gtkfontsel.c: Guard against some font weight and charset
17012         symbols being undefined (in mingw32 headers).
17013
17014         * gdk/win32/makefile.cygwin
17015         * gtk/makefile.cygwin
17016         * gtk/gtkthemes.c: No longer need to have differently named
17017         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
17018
17019 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
17020
17021         * docs/gtkfaq.sgml: Long awaited FAQ update.
17022
17023 1999-07-15  Tor Lillqvist  <tml@iki.fi>
17024
17025         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
17026         it. Obscure bit manipulation needed.
17027
17028         * gdk/win32/gdkevents.c: Logging.
17029         
17030         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
17031         style (file name include compiler name) for theme engines.
17032
17033 1999-07-13  Tor Lillqvist  <tml@iki.fi>
17034
17035         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
17036
17037         * gdk/win32/gdkevents.c: Fix long-standing bug in key
17038         events. The key.string wasn't zero-terminated, still we strdup'ed
17039         it in gdk_event_copy(). Synthesize crossing events for button
17040         events before possible propagation.
17041
17042         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
17043
17044         * gdk/win32/makefile.cygwin
17045         * gtk/makefile.cygwin: Use new DLL naming style for the
17046         GCC-compiled ones.
17047
17048         * gdk/win32/makefile.msc
17049         * gtk/makefile.msc: Cosmetics mostly.
17050
17051         * gtk/gtk.def: Add missing entry points.
17052
17053         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
17054
17055 1999-07-09  Tor Lillqvist  <tml@iki.fi>
17056
17057         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
17058         or height is zero. Don't print a warning if Pie or Arc fails, they
17059         always fail (?) for very narrow ellipses.
17060
17061         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
17062         the part or the destination window corresponding to source area
17063         outside of the source drawable's boundary.
17064
17065         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
17066         anything if less than two points.
17067
17068         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
17069         return NULL. Gtk cut-and-paste inside a single program works
17070         better this way. (It always gets the clipboard contents from
17071         Windows, not from its own copy, which is cleared anyway. I can't
17072         say I fully understand what happens... Emulating the X selection
17073         and property stuff is a bit of a mess.)
17074
17075         * gdk/win32/gdkevents.c
17076         * gdk/win32/gdkproperty.c: A bit more verbose logging.
17077
17078         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
17079         that never got deleted). Revamp gdk_region_shrink.
17080
17081         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
17082         after use.
17083
17084         * gtk/gtk.def: Add some missing entry points.
17085
17086         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
17087         component.
17088
17089 1999-07-04  Tor Lillqvist  <tml@iki.fi>
17090
17091         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
17092         Control-digits specially.
17093
17094 1999-07-03  Tor Lillqvist  <tml@iki.fi>
17095
17096         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
17097
17098 1999-06-28  Tor Lillqvist  <tml@iki.fi>
17099
17100         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
17101         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
17102         finding this.)
17103
17104 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
17105
17106         * gtk+.spec.in: Corrected some typos in files section.
17107         
17108 1999-06-15  Tor Lillqvist  <tml@iki.fi>
17109
17110         * README.win32: Mention using GNU gettext.
17111         * config.h.win32: Enable NLS stuff.
17112         * gtk/makefile.msc: Use GNU gettext.
17113         * gdk/win32/gdkdnd.c: Minor header reorg.
17114         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
17115         cosmetics.
17116         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
17117         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
17118
17119 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
17120
17121         * acinclude.m4
17122         * config.guess
17123         * config.status
17124         * ltconfig
17125         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
17126
17127 1999-05-30  Tor Lillqvist  <tml@iki.fi>
17128
17129         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
17130         SafeAdjustWindowRectEx. Don't override all calls to
17131         AdjustWindowRectEx by it, but use it only in two places: When
17132         creating a new top-level window and when moving a top-level
17133         window.
17134
17135         Use screen coordinate rectangle, not client rectangle, in
17136         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
17137         when we try to place a window so that the decoration (mainly,
17138         title bar) isn't visible.
17139
17140         These changes fix the bug that showed up for instance as the
17141         GIMP's saved top-level windows moving right and down (by an amount
17142         equal to the window decoration) for each session. This bug showed
17143         up also in testgtk's "Saved Position".
17144
17145         gdk_window_resize also redone a bit.
17146
17147 1999-05-25  Tor Lillqvist  <tml@iki.fi>
17148
17149         * gtk/testgtkrc: Add (commented out) Windows-style theme
17150         include line.
17151
17152         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
17153
17154 1999-05-18  Tor Lillqvist  <tml@iki.fi>
17155
17156         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
17157         gdkx.h to a gdk subdirectory, so that applications can include
17158         these with <gdk/*.h> without trouble.
17159
17160         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
17161         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
17162         have their bitmap destroyed.
17163
17164         * gdk/win32/gdk.def: Add gdk_root_parent.
17165
17166 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
17167
17168         * configure.in
17169           gtk-config.in
17170           ltconfig
17171           ltmain.sh     
17172           gtk/Makefile.am: changes to compile nicely (with xlib) 
17173           on BeOS
17174
17175 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
17176
17177         * acinclude.m4
17178         * config.guess
17179         * config.sub
17180         * ltconfig
17181         * ltmain.sh: upgrade to libtool 1.3
17182
17183 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
17184
17185         * gtk/gtkclist.c:
17186         * gtk/gtkctree.c: merges from gtk-1-2
17187
17188 1999-04-25  Tor Lillqvist  <tml@iki.fi>
17189
17190         Support added for building using a GNU toolchain on Win32,
17191         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
17192
17193         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
17194         * config.h.win32: Changes for gcc.
17195         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
17196         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
17197         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
17198         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
17199         Protect shl stuff unavaiilable with mingw32 headers.
17200         * gdk/win32/gdkevents.c: Fix typo.
17201         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
17202         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
17203         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
17204         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
17205         the mingw32 headers.
17206         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
17207         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
17208         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
17209         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
17210         Test for NATIVE_WIN32, not _MSC_VER.
17211         * gtk/gtkmain.c: No use warning about developer version on Win32,
17212         there aren't any non-developer versions anyhow.
17213         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
17214         * gtk/makefile.msc: Use pthread from another directory. Minor other
17215         changes. 
17216
17217 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
17218
17219         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
17220           default filter from the list
17221
17222 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
17223
17224         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
17225          when gtk_widget_grab_default() is called for a widget that
17226          is not within a GtkWindow.
17227
17228 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
17229
17230         * docs/gtk_tut.sgml, examples/clist.c: use a
17231           scrolled window in the clist example. Minor
17232           tutorial fixes.
17233
17234 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
17235
17236         * docs/gtk_tut.sgml: Style check from David King
17237           <dking@youvegotmail.net>
17238
17239 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
17240
17241         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
17242         compile with unknown value of GDK_WINDOWING
17243
17244 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
17245
17246         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
17247         after the rule is fired.
17248         (install-exec-local): Install gdkconfig.h only if the contents are
17249         different from the currently installed gdkconfig.h.
17250
17251 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
17252
17253         * gdk/Makefile.am (configexecincludedir): Rename from 
17254         configincludedir so that gdkconfig.h will be installed 
17255         as part of `make install-exec'. 
17256
17257 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
17258
17259         * acinclude.m4
17260         * config.guess
17261         * config.sub
17262         * ltconfig
17263         * ltmain.sh: upgrade to libtool 1.2f
17264
17265         * autogen.sh: libtool is not required to autogen gtk+
17266
17267         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
17268         needed)
17269
17270 1999-03-18  Tor Lillqvist  <tml@iki.fi>
17271
17272         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
17273         declaring gdk variables exported/imported from the DLL. New image
17274         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
17275         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
17276         GDK_DRAG_PROTO_OLE2.
17277
17278         * gdk/gdk.h: Merge in Win32 version: Two new functions,
17279         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
17280         declared only for the Win32 version, but could be in the X11
17281         version as well. (Needed for a Xlib-less gdk_imlib.)
17282         gdk_color_hash should have only one parameter. Declare
17283         gdk_threads_mutex with GDKVAR.
17284         
17285         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
17286         just one parameter.
17287
17288         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
17289         per pixel, not bits.
17290
17291         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
17292         Fetch bpp (which means bits-per-pixel here) from another place on
17293         Win32. Accept also depth==32 (which we might get on Win32) with
17294         bpp==32.
17295
17296         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
17297         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
17298         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
17299         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
17300         in the backend-dependent directory, not in the common gdk
17301         directory.
17302
17303         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
17304         headers.
17305
17306 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
17307
17308         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
17309         want to use the Gtk+ devel version (which is true, and yes - even i am
17310         currently working with the 1.2.x branch). so everyone reading this, you
17311         probably want to issue
17312         cvs checkout -r glib-1-2 glib
17313         and
17314         cvs checkout -r gtk-1-2 gtk+
17315         as your next two comands.
17316
17317 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
17318
17319         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
17320         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
17321
17322         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
17323         file. strongly deprecated the GTK_HAVE_* macros, we provide
17324         GTK_CHECK_VERSION() for people that need to check for certain
17325         Gtk+ versions.
17326
17327         * gtk/gtkcompat.h: removed this from CVS.
17328         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
17329         idea right from the start, it just didn't seem like that back then.
17330
17331 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
17332
17333         * merges from gtk-1-2:
17334
17335 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
17336
17337         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
17338         item factory class has been created.
17339         (gtk_item_factory_parse_rc): likewise.
17340
17341         * gtk/gtkmenu.c:
17342         keep proper references for old_active_menu_item.
17343         (gtk_menu_reparent): unset the usize of the new parent,
17344         so the menu can sanely be size requested and we don't get nasty screen
17345         artefacts upon next reparentation.
17346         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
17347         enter notify. only synthesize enter notifies if the pointer really is
17348         inside the event window.
17349         (gtk_menu_popdown): use gtk_menu_shell_deselect().
17350         (gtk_menu_popup): move the background setting stuff into
17351         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
17352
17353         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
17354         gtk_menu_shell_select_item() to select the new item.
17355         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
17356         do the right thing for deselection as well.
17357
17358 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
17359
17360         * gtk/gtkwidget.[hc]:
17361         (gtk_widget_accelerators_locked): return whether a widget's accelerators
17362         are locked.
17363
17364         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
17365         existing accelerators if the widget's accelerators are locked.
17366
17367 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
17368
17369         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
17370
17371         * gtk/gtkmenu.c: truely forward key press and key release events to
17372         the menu widget from the toplevel or tearoff window. we can't simply
17373         connect to that, we need to stop further processing of the events as
17374         well.
17375
17376 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
17377
17378         * gtk/gtkmenu.c:
17379         (gtk_menu_key_press): pass event->keyval, event->state to
17380         gtk_accelerator_valid, instead of event->keyval twice.
17381         refuse to install single letter accelerators for menus that use
17382         single letter shortcuts.
17383
17384         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
17385         gtk_menu_ensure_uline_accel_group().
17386
17387         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
17388         which will always return an uline accel group, made
17389         gtk_menu_get_uline_accel_group() return NULL if the group isn't
17390         yet created.
17391
17392 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
17393
17394         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
17395
17396         * gtk/gtkclist.c (gtk_clist_column_title_passive):
17397         Leave button sensitive, trap  button_press, button_release,
17398         motion_notify, enter_notify and leave_notify events instead.
17399         (gtk_clist_column_title_active): disconnect event handler.
17400         (gtk_clist_drag_data_get): fixed memory leak. Reported by
17401         Guillaume Laurent <glaurent@worldnet.fr>
17402
17403 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
17404
17405         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
17406         width/height mixups.
17407
17408         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
17409         if needed.
17410
17411 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
17412
17413         * gtk/testgtk.c (create_item_factory): unref the item factory after
17414         window's destruction.
17415
17416         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
17417         count on the menu shell around the menu item's activation, since the
17418         signal emission may cause menu shell destruction.
17419
17420         * gtk/gtkitemfactory.c:
17421         the previous code leaked one accel group per menu. we use
17422         gtk_menu_get_uline_accel_group() now to fix that, and with that
17423         also create the underline accelerator group of the menus only if
17424         required (i.e. an underline accelerator has been specified).
17425         (gtk_item_factory_construct):
17426         (gtk_item_factory_create_item): removed code that would create an
17427         extra accel group for the menu (and leak references).
17428         (gtk_item_factory_create_item): adapted the underline accelerator
17429         installation code to properly feature gtk_menu_get_uline_accel_group().
17430
17431         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
17432         menu->accel_group, this may return NULL if the accelerator group
17433         hasn't been set yet.
17434         added gtk_menu_get_uline_accel_group() to retrive the underline
17435         accelerator group of the menu, this will be created on demand
17436         and proper care is taken about its reference count.
17437
17438         * gtk/gtkitemfactory.h:
17439         * gtk/gtkitemfactory.c:
17440         dumped the approach of keeping a widgets by action list on the
17441         factory since the factory<->widget destroy negotiation didn't work
17442         and would be hard to get going at all. instead we keep a list of
17443         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
17444         persistant throughout a program's life time).
17445         also, i removed the static const gchar *key_* variables, and made
17446         them inline strings (they weren't actually used anyways).
17447         (gtk_item_factory_add_item): update ifactory->items.
17448         (gtk_item_factory_destroy): destroy ifactory->items (and remove
17449         the item factory pointer from the remaining ifactory widgets).
17450         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
17451         list to find the widget.
17452         (gtk_item_factory_get_item): new function that works around
17453         gtk_item_factory_get_widget() limitations, this function will only
17454         return menu items, even for <Branch> entries.
17455
17456 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17457
17458         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17459         font hash table, if we have a GdkFontPrivate entry for this font
17460         already, simply increment its reference count, provided by Olaf Dietsche
17461         <olaf.dietsche+list.gtk@netcologne.de>.
17462
17463         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17464         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17465
17466 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
17467
17468         * gtk/gtkcontainer.c:
17469         (gtk_container_add_with_args):
17470         (gtk_container_addv):
17471         (gtk_container_add): before adding a child to a conatiner, make sure
17472         it is (default) constructed, this is neccessary because under certain
17473         circumstances the child will get relized and mapped immediatedly, in
17474         which case it has to be constructed already.
17475
17476 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
17477
17478         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
17479         values > 1 as TRUE also.
17480
17481 1999-03-16  Tor Lillqvist  <tml@iki.fi>
17482
17483         * README.win32: New file.
17484                 
17485         * configure.in: Check for lstat.
17486
17487         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
17488         completeness.
17489
17490         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
17491
17492         * gtk/gtk.def: Removed CRs.
17493
17494         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
17495         ..\gdk\win32).
17496
17497         * gdk/win32/makefile.msc: Correct upwards relative paths.
17498         
17499 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
17500
17501         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
17502           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
17503           it was connecting a void function to expose_event and the int
17504           returning function to the draw signal
17505
17506 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
17507
17508         * configure.in:
17509         Use correct path to libgmodule.la when ref'ing uninstalled copy
17510         of glib.  (Already in stable branch, Bug #417)
17511
17512 1999-03-15  Tor Lillqvist  <tml@iki.fi>
17513
17514         Win32 merge and general portability stuff:
17515                 
17516         * acconfig.h,configure.in: Check for <sys/time.h>.
17517
17518         * gdk/win32: New directory (actually, been there for a while).
17519         
17520         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
17521         NATIVE_WIN32, and use these. Always case fold on Win32. No
17522         backslashed escapes on native Win32.
17523
17524         * gtk/{gtk.def,makefile.msc}: New files.
17525
17526         * gtk/Makefile.am: Add above new files.
17527         
17528         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
17529         instead of <strings.h>.
17530
17531         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
17532         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
17533         <unistd.h> appropriately.
17534
17535         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
17536         Use ABS() (from <glib.h>) instead of abs().
17537         
17538         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
17539         of gtk (and thus glib) headers, so that WIN32 will be
17540         defined. With MS C, include <direct.h> for mkdir prototype.
17541
17542         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
17543         some casts, needed by MS C.
17544
17545         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
17546         implemented).
17547
17548         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
17549         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
17550         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
17551
17552         * gtk/gtkmain.h: Mark variables for export/import on Win32.
17553                 
17554         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
17555         the event is not a hint, or its window is not the slider. Needed
17556         on Win32, at least.
17557
17558         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
17559         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
17560         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
17561         a subdirectory of the Windows directory as gtk system
17562         configuration directory.
17563
17564         * gtk/gtkselection.c: No chunks on Win32.
17565
17566         * gtk/gtksocket.c: Not implemented on Win32.
17567
17568         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
17569
17570         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
17571
17572         * gtk/maketypes.awk: Declare variables with a macro that expands to
17573         necessary export/import magic in the case of Win32.
17574                 
17575         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
17576
17577 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
17578
17579         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
17580         since those were meant only for gdki18n.h.  
17581         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
17582         for widechar tests.
17583         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
17584
17585 1999-03-13  Tor Lillqvist  <tml@iki.fi>
17586
17587         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
17588         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
17589
17590         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
17591         installed) to CFLAGS.
17592
17593         * gdk/Makefile.am: Add rules for gdkconfig.h.
17594
17595         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
17596         APIs.
17597
17598         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
17599         gdkx.h anyway when compiling for X11.
17600         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
17601         general): Merge in Win32 version.
17602         
17603         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
17604         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
17605         expansion (if we don't have HAVE_PWD_H), allow for drive
17606         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
17607         included code from Craig Setera's port to Win32 (the one that uses
17608         X11, and the cygwin dll), even if it probably will be abandoned.
17609
17610         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
17611         the user entered one herself.  This way one can complete *.h and
17612         don't get matches on any .help files, for instance.
17613         
17614 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
17615
17616         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
17617         font hash table, if we have a GdkFontPrivate entry for this font
17618         already, simply increment its reference count, provided by Olaf Dietsche
17619         <olaf.dietsche+list.gtk@netcologne.de>.
17620
17621         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
17622         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
17623
17624 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
17625
17626         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
17627         the number of calls to gdk_draw_point() (and thus to X) by
17628         clipping the points by hand.
17629
17630         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
17631         the clip parameter.
17632         (gtk_handle_box_paint): Only paint the handle if the expose area
17633         intersects it.
17634
17635 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17636
17637         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
17638
17639 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
17640
17641         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
17642         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
17643
17644 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
17645
17646         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
17647          textmode (O_TEXT) for OS/2 version.
17648
17649 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
17650
17651         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
17652         GtkSpinButton, "input" and "output", to make the output more flexible.
17653         The user has to provide a mapping between adjustment->value and the
17654         output string (and vice versa, if the spin button is editable). 
17655         See testgtk for examples.
17656
17657 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
17658
17659         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
17660         new one.
17661         
17662         * configure.in: set gtk+ version to 1.3.0.